.studio-kiwi-header {
	background: var(--studio-kiwi-color-white);
	height: var(--studio-kiwi-header-height, 117px);
	position: sticky;
	top: 0;
	transition: box-shadow 220ms ease, height 220ms ease;
	z-index: 9990;
}

.admin-bar .studio-kiwi-header { top: 32px; }

.studio-kiwi-header__inner {
	align-items: center;
	display: flex;
	gap: 32px;
	height: 100%;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 1144px;
	padding: 0;
}

.studio-kiwi-header__logo {
	display: block;
	flex: 0 0 auto;
	width: 176px;
}

.studio-kiwi-header__logo-image {
	display: block;
	height: 50px;
	max-width: 176px;
	object-fit: contain;
	object-position: left center;
	transition: height 220ms ease, max-width 220ms ease;
	width: auto;
}

.studio-kiwi-header__nav { margin-left: auto; }

.studio-kiwi-header__menu {
	align-items: center;
	display: flex;
	gap: 25px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.studio-kiwi-header__menu li { margin: 0; position: relative; }
.studio-kiwi-header__menu a {
	color: var(--studio-kiwi-color-text);
	display: block;
	font-family: "Work Sans", sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 26px;
	padding: 8px 0;
	text-decoration: none;
	transition: color 160ms ease;
}

.studio-kiwi-header__menu a:hover,
.studio-kiwi-header__menu .current-menu-item > a { color: var(--studio-kiwi-color-accent); }

.studio-kiwi-header__menu .sub-menu {
	background: var(--studio-kiwi-color-white);
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.1);
	display: none;
	left: -20px;
	list-style: none;
	margin: 0;
	min-width: 220px;
	padding: 12px 20px;
	position: absolute;
	top: 100%;
}

.studio-kiwi-header__menu li:hover > .sub-menu,
.studio-kiwi-header__menu li:focus-within > .sub-menu { display: block; }

.studio-kiwi-header__cta {
	align-items: center;
	background: var(--studio-kiwi-color-accent);
	border-radius: 8px;
	color: var(--studio-kiwi-color-white);
	display: inline-flex;
	font-family: "Work Sans", sans-serif;
	font-size: 16px;
	font-weight: 500;
	height: 56px;
	justify-content: center;
	line-height: 22px;
	min-width: 160px;
	padding: 0 24px;
	text-decoration: none;
	transition: background-color 160ms ease, height 220ms ease, box-shadow 160ms ease;
}

.studio-kiwi-header__cta:hover { background: var(--studio-kiwi-color-primary); color: var(--studio-kiwi-color-white); }
.studio-kiwi-header a:focus-visible,
.studio-kiwi-header button:focus-visible { outline: 3px solid var(--studio-kiwi-color-accent); outline-offset: 3px; }
.studio-kiwi-header__cta--mobile { display: none; }

/*
 * Keep the mobile navigation control outside Elementor/Hello button styling.
 * The root-scoped selector outranks generated `.elementor-kit-* button` and
 * Hello's `[type="button"]` without affecting ordinary buttons or the CTA.
 */
.studio-kiwi-header .studio-kiwi-header__toggle {
	-webkit-appearance: none;
	appearance: none;
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	color: var(--studio-kiwi-color-primary);
	display: none;
	font: inherit;
	margin: 0;
	min-height: 0;
	min-width: 0;
	padding: 0;
}

.studio-kiwi-header .studio-kiwi-header__toggle:hover,
.studio-kiwi-header .studio-kiwi-header__toggle:active,
.studio-kiwi-header .studio-kiwi-header__toggle:focus {
	background: transparent;
	border-color: transparent;
	color: var(--studio-kiwi-color-primary);
}

.studio-kiwi-header.is-scrolled {
	box-shadow: 0 8px 24px rgba(31, 31, 31, 0.08);
	height: 92px;
}
.studio-kiwi-header.is-scrolled .studio-kiwi-header__logo-image { height: 42px; max-width: 158px; }
.studio-kiwi-header.is-scrolled .studio-kiwi-header__cta { height: 48px; }

@media (max-width: 1240px) {
	.studio-kiwi-header__inner { padding-left: 32px; padding-right: 32px; }
	.studio-kiwi-header__menu { gap: 18px; }
}

@media (max-width: 960px) {
	:root { --studio-kiwi-header-height: 84px; }
	.studio-kiwi-header,
	.studio-kiwi-header.is-scrolled { height: 84px; }
	.studio-kiwi-header__inner { padding-left: 24px; padding-right: 24px; }
	.studio-kiwi-header__logo-image,
	.studio-kiwi-header.is-scrolled .studio-kiwi-header__logo-image { height: 42px; max-width: 148px; }
	.studio-kiwi-header .studio-kiwi-header__toggle {
		background: transparent;
		border: 0;
		display: grid;
		gap: 5px;
		margin-left: auto;
		padding: 12px;
	}
	.studio-kiwi-header__toggle span:not(.screen-reader-text) { background: var(--studio-kiwi-color-primary); display: block; height: 2px; transition: transform 180ms ease, opacity 180ms ease; width: 26px; }
	.studio-kiwi-header__toggle[aria-expanded="true"] span:nth-of-type(2) { transform: translateY(7px) rotate(45deg); }
	.studio-kiwi-header__toggle[aria-expanded="true"] span:nth-of-type(3) { opacity: 0; }
	.studio-kiwi-header__toggle[aria-expanded="true"] span:nth-of-type(4) { transform: translateY(-7px) rotate(-45deg); }
	.studio-kiwi-header__nav {
		background: var(--studio-kiwi-color-white);
		box-shadow: 0 18px 30px rgba(31, 31, 31, 0.1);
		display: none;
		left: 0;
		margin: 0;
		padding: 24px;
		position: absolute;
		top: 100%;
		width: 100%;
	}
	.studio-kiwi-header__nav.is-open { display: block; }
	.studio-kiwi-header__menu { align-items: stretch; flex-direction: column; gap: 0; }
	.studio-kiwi-header__menu a { padding: 10px 0; }
	.studio-kiwi-header__menu .sub-menu { box-shadow: none; display: block; padding: 0 0 0 20px; position: static; }
	.studio-kiwi-header__cta--desktop { display: none; }
	.studio-kiwi-header__cta--mobile { display: inline-flex; margin-top: 18px; }
}

@media (max-width: 782px) { .admin-bar .studio-kiwi-header { top: 46px; } }
@media (max-width: 600px) { .admin-bar .studio-kiwi-header { top: 0; } }
@media (prefers-reduced-motion: reduce) { .studio-kiwi-header, .studio-kiwi-header * { scroll-behavior: auto !important; transition-duration: 0.01ms !important; } }
