/**
 * GoTango — header (core Navigation block) and mobile overlay menu.
 */

.wp-site-blocks > header.wp-block-template-part:has(.site-header) {
	position: sticky;
	top: 0;
	z-index: 1000;
}
.admin-bar .wp-site-blocks > header.wp-block-template-part:has(.site-header) { top: 32px; }
@media (max-width: 782px) { .admin-bar .wp-site-blocks > header.wp-block-template-part:has(.site-header) { top: 0; } }

.site-header {
	background: var(--gt-canvas);
	border-bottom: 1px solid var(--gt-border);
	width: 100%;
}

.site-header .site-header-inner {
	box-sizing: border-box;
	width: 100%;
	max-width: calc(var(--gt-container) + 2 * var(--gt-pad));
	margin: 0 auto;
	padding: 0 var(--gt-pad);
	min-height: 84px;
	gap: 32px;
}

.gt-brand {
	display: flex;
	align-items: baseline;
	gap: 10px;
	text-decoration: none;
	color: var(--gt-ink);
	flex: none;
}

.gt-brand:hover { color: var(--gt-ink); text-decoration: none; }

.gt-brand-title {
	font-family: var(--gt-font-serif);
	font-size: 34px;
	line-height: 1;
	letter-spacing: -0.01em;
}

.gt-brand-sub {
	font-size: 10px;
	line-height: 1;
	letter-spacing: 0.24em;
	text-transform: uppercase;
	font-weight: 600;
}

.site-header .gt-header-right { gap: 36px; }

/* Desktop navigation */
.gt-main-nav { font-size: 15px; font-weight: 500; }
.gt-main-nav .wp-block-navigation__container { gap: 36px; }
.gt-main-nav .wp-block-navigation-item__content { color: var(--gt-ink); text-decoration: none; padding: 6px 0; }
.gt-main-nav .wp-block-navigation-item__content:hover,
.gt-main-nav .current-menu-item > .wp-block-navigation-item__content {
	text-decoration: underline;
	text-underline-offset: 6px;
	text-decoration-thickness: 1px;
}

/* Language switch */
.gt-lang-switch { display: flex; gap: 6px; font-size: 14px; color: var(--gt-muted); }
.gt-lang-switch a { color: var(--gt-muted); text-decoration: none; }
.gt-lang-switch a:hover { color: var(--gt-ink); }
.gt-lang-switch .is-active { color: var(--gt-ink); font-weight: 600; }
.gt-lang-switch > * + *::before { content: "·"; margin-right: 6px; color: var(--gt-border); }
#trp-floater-ls { display: none !important; }

/* Menu that doesn't fit in one row (e.g. a phone in landscape) collapses to "Menu" too — see main.js initNavFit(). */
.gt-main-nav.is-collapsed .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none; }
.gt-main-nav.is-collapsed .wp-block-navigation__responsive-container-open { display: flex; }

/* Mobile: hamburger + full-screen overlay (core Navigation overlay restyled) */
.gt-main-nav .wp-block-navigation__responsive-container-open {
	font-size: 15px;
	font-weight: 500;
	color: var(--gt-ink);
	gap: 6px;
}
.gt-main-nav .wp-block-navigation__responsive-container-open::after { content: "Menu"; }
.gt-main-nav .wp-block-navigation__responsive-container-open svg { display: none; }

.gt-main-nav .wp-block-navigation__responsive-container.is-menu-open {
	background: var(--gt-ink) !important;
	color: var(--gt-canvas) !important;
	padding: 0;
}
.gt-main-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	padding: 96px 24px 40px;
	align-items: flex-start;
}
.gt-main-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	gap: 0;
	width: 100%;
	align-items: stretch;
}
.gt-main-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	border-bottom: 1px solid var(--gt-border-dark);
	width: 100%;
}
.gt-main-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	display: block;
	width: 100%;
	padding: 18px 0;
	font-family: var(--gt-font-serif);
	font-size: clamp(38px, 10vw, 56px);
	font-weight: 400;
	line-height: 1.05;
	color: var(--gt-canvas);
	text-decoration: none;
}
.gt-main-nav .wp-block-navigation__responsive-container-close {
	top: 22px;
	right: 20px;
	color: var(--gt-canvas);
	font-size: 15px;
	font-weight: 500;
	display: flex;
	align-items: center;
	gap: 8px;
}
.gt-main-nav .wp-block-navigation__responsive-container-close::before { content: "Zamknij"; }
:lang(en) .gt-main-nav .wp-block-navigation__responsive-container-close::before { content: "Close"; }

@media (max-width: 599px) {
	.site-header .site-header-inner { min-height: 64px; }
	.gt-brand-title { font-size: 28px; }
	.site-header .gt-header-right { gap: 20px; }
}
