/*
Theme Name: WAAN Transport
Theme URI: https://waantransport.pl/
Description: Motyw potomny GeneratePress dla strony WAAN Transport (Wersja A "Panorama Europy"). Kolory i typografia sterowane przez Global Colors / Global Fonts GeneratePress; fonty hostowane lokalnie.
Author: Szymon Kwiatkowski
Template: generatepress
Version: 0.1.0
Requires PHP: 7.4
Text Domain: waan
*/

/* =========================================================================
   1. FONTY LOKALNE (bez requestów do Google)
   Blok poniżej generuje scripts/02-2-fonty.sh — nie edytować ręcznie.
   ========================================================================= */
/* === FONTY: START === */
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/cormorant-garamond-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/cormorant-garamond-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/cormorant-garamond-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/cormorant-garamond-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/cormorant-garamond-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/cormorant-garamond-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/source-sans-3-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/source-sans-3-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/source-sans-3-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/source-sans-3-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
/* === FONTY: KONIEC === */

/* =========================================================================
   2. TOKENY POMOCNICZE
   Kolory bazowe pochodzą z Global Colors GeneratePress (:root { --tlo, --tekst, ... }).
   Poniżej tylko odcienie z makiety, których nie ma w palecie globalnej.
   ========================================================================= */
:root {
	/* krój szeryfowy do liczb i dat poza nagłówkami (Global Fonts obsługuje H1–H6) */
	--waan-serif: 'Cormorant Garamond', Georgia, serif;

	--waan-naglowek-lang: #8B8577;   /* przełącznik PL|EN|DE w nagłówku */
	--waan-stopka-tekst: #C9C4B6;    /* tekst kolumn stopki */
	--waan-tekst-na-czerni: #8F8A7C; /* opis pod logo w stopce, opisy w osi czasu */
	--waan-stopka-opis: var(--waan-tekst-na-czerni);
	--waan-stopka-drobne: #6E6A5E;   /* dolny pasek stopki */
	--waan-naglowek-h: 90px;         /* wysokość nagłówka (20 + logo 50 + 20; do offsetów kotwic) */

	/* --- etap 2: odcienie z makiety, których nie ma w palecie globalnej --- */
	--waan-hero-lead: #D8D2C2;         /* akapit w hero na zdjęciu */
	--waan-cta-podpis: #B4AD9C;        /* podpis w pasku CTA */
	--waan-obwodka-foto: #E0D9C6;      /* obwódka zdjęcia floty */
	--waan-obwodka-jubileusz: #3A3320; /* obwódka grafiki jubileuszowej */
	--waan-cien: 12, 11, 8;            /* baza RGB nakładek hero (rgba(var(--waan-cien), .8)) */

	/* --- etap 3: placeholdery zdjęć (ukośne pasy, jak w makietach K1/K3) --- */
	--waan-pasy-a: #F0EBDE;            /* jaśniejszy pas */
	--waan-pasy-b: #EAE4D4;            /* ciemniejszy pas */
	--waan-pasy-tekst: #9A927E;        /* podpis na placeholderze */
}

/* =========================================================================
   3. NAGŁÓWEK (sticky) — makieta: padding 20/72, linia 1px, tło #FBF9F4
   ========================================================================= */
.site-header {
	position: sticky;
	top: 0;
	z-index: 500;
	border-bottom: 1px solid var(--linia);
}

/* pasek admina nie może zasłaniać nagłówka */
.admin-bar .site-header { top: 32px; }
@media (max-width: 782px) {
	.admin-bar .site-header { top: 46px; }
}
@media (max-width: 600px) {
	.admin-bar .site-header { top: 0; }
}

.site-header .site-logo {
	display: flex;
	align-items: center;
	line-height: 0;
}

.site-header .site-logo img.header-image {
	height: 50px; /* powiększone na prośbę klienta 2026-09-09 (było 38 px) */
	width: auto;
	max-width: 100%;
}

/* --- menu --- */
.main-navigation .main-nav > ul {
	align-items: center;
}

.main-navigation .main-nav ul li a {
	line-height: 38px;
}

/* przełącznik języków (placeholder pod Polylang) */
.main-navigation .main-nav li.waan-lang > a,
.main-navigation .main-nav li.waan-lang > .waan-jezyki {
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 1px;
	color: var(--waan-naglowek-lang);
	cursor: default;
}

/* pozycja menu z przełącznikiem nie ma własnego <a> (etap 4G) — odstępy
   przejmuje sam przełącznik, żeby nagłówek wyglądał jak przed zmianą */
.main-navigation .main-nav li.waan-lang > .waan-jezyki {
	display: inline-block;
	padding-left: 18px;
	padding-right: 18px;
	line-height: 38px;
}

/* GeneratePress robi z każdego <a> w menu blok z paddingiem 20 px i wysokim
   line-height — dla trzech skrótów językowych w jednym wierszu to za dużo
   (napis łamał się na trzy wiersze). Zerujemy to tylko w przełączniku. */
.main-navigation .main-nav ul li.waan-lang a.waan-jezyk {
	display: inline;
	padding: 0;
	line-height: inherit;
	font-size: inherit;
}

/* telefon */
.main-navigation .main-nav li.waan-tel > a {
	font-weight: 500;
	color: var(--tekst-wtorny);
	white-space: nowrap;
}
.main-navigation .main-nav li.waan-tel > a:hover {
	color: var(--zloto-male);
}

/* CTA "Wycena" — czarny prostokąt, bez zaokrągleń */
.main-navigation .main-nav li.waan-cta > a {
	background-color: var(--czern-cta);
	color: var(--tlo);
	padding: 12px 28px;
	line-height: 1.2;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0.5px;
	border-radius: 0;
}
.main-navigation .main-nav li.waan-cta > a:hover,
.main-navigation .main-nav li.waan-cta.current-menu-item > a {
	background-color: var(--czern);
	color: var(--tlo);
}

/* =========================================================================
   3b. TREŚĆ STRONY (bloki) — sekcje pełnej szerokości, hero tuż pod nagłówkiem
   ========================================================================= */

/* strony z kontenerem „Full Width” (metadana _generate-full-width-content):
   zero paddingu i marginesów wokół treści — sekcje same dają sobie padding */
.full-width-content .site-content,
.full-width-content .content-area,
.full-width-content .site-main,
.full-width-content .inside-article,
.full-width-content .entry-content {
	padding: 0;
	margin: 0;
}

.full-width-content .entry-content > *:first-child {
	margin-top: 0;
}

.full-width-content .entry-content > *:last-child {
	margin-bottom: 0;
}

/* sekcje strony głównej same dają sobie padding — bez marginesów treści wpisu */
.full-width-content .entry-content > section {
	margin-top: 0;
	margin-bottom: 0;
}

/* =========================================================================
   3c. STRONA 404
   ========================================================================= */
.waan-404 {
	background-color: var(--tlo);
	padding: 112px 72px;
}

.waan-404 .waan-404-wnetrze {
	width: 100%;
	max-width: 1296px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 22px;
	align-items: flex-start;
}

.waan-404 .waan-404-eyebrow {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 0;
	font-size: 14px;
	line-height: normal;
	letter-spacing: 3px;
	font-weight: 600;
	color: var(--zloto-male);
}

.waan-404 .waan-404-eyebrow::before {
	content: "";
	width: 48px;
	height: 1px;
	background-color: var(--zloto-male);
	flex-shrink: 0;
}

.waan-404 h1 {
	margin: 0;
	font-family: var(--waan-serif);
	font-size: 52px;
	line-height: 1.1;
	font-weight: 600;
	color: var(--tekst);
}

.waan-404 .waan-404-opis {
	margin: 0;
	font-size: 18px;
	line-height: 1.65;
	color: var(--tekst-wtorny);
	max-width: 720px;
}

.waan-404 .waan-404-przyciski {
	display: flex;
	align-items: center;
	gap: 20px;
	flex-wrap: wrap;
	margin-top: 8px;
}

.waan-404 .waan-404-tel {
	display: inline-block;
	background-color: var(--czern-cta);
	color: var(--tlo);
	padding: 16px 36px;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.5px;
	text-decoration: none;
	transition: background-color .2s ease;
}

.waan-404 .waan-404-tel:hover,
.waan-404 .waan-404-tel:focus {
	background-color: var(--czern);
	color: var(--tlo);
}

.waan-404 .waan-404-home {
	display: inline-block;
	border-bottom: 1px solid var(--zloto-jasne);
	padding: 4px 2px;
	font-size: 16px;
	font-weight: 600;
	color: var(--tekst);
	text-decoration: none;
}

.waan-404 .waan-404-home:hover,
.waan-404 .waan-404-home:focus {
	color: var(--zloto-male);
}

@media (max-width: 600px) {
	.waan-404 {
		padding: 72px 24px;
	}
	.waan-404 h1 {
		font-size: 34px;
	}
	.waan-404 .waan-404-przyciski {
		flex-direction: column;
		align-items: stretch;
		width: 100%;
	}
	.waan-404 .waan-404-tel {
		text-align: center;
	}
	/* link zostaje przy tekście — inaczej złota kreska ciągnie się przez cały ekran */
	.waan-404 .waan-404-home {
		align-self: flex-start;
	}
}

/* =========================================================================
   4. STOPKA — makieta: tło #141414, padding 56/72/40, 5 kolumn
   ========================================================================= */
.site-footer {
	background-color: var(--czern);
}

.site-footer .inside-footer-widgets {
	display: flex;
	justify-content: space-between;
	gap: 48px;
	margin-left: 0;
}

.site-footer .inside-footer-widgets > div {
	flex: 0 1 auto;
	min-width: 0;
}

/* Kolumna 1 (opis firmy) i kolumna 3 (dane rejestrowe sp. z o.o. — art. 206 KSH:
   KRS, kapitał zakładowy, sąd rejestrowy) mają długie wiersze. Bez ograniczenia
   szerokości rozpychają się na boki i ściskają pozostałe kolumny — wtedy adres
   e-mail w kolumnie 5 nie ma się gdzie złamać i wychodzi poza kontener stopki. */
.site-footer .footer-widget-1,
.site-footer .footer-widget-3 {
	max-width: 300px;
}

.site-footer .footer-widgets .widget,
.site-footer .footer-widgets .widget:last-child {
	margin-bottom: 0;
	padding: 0;
}

/* nagłówki kolumn — selektor z .widget bije regułę GeneratePressa
   `.footer-widgets .widget :last-child { margin-bottom: 0 }` (każdy blok stopki
   jest osobnym widgetem, więc jest jednocześnie ostatnim dzieckiem) */
.site-footer .widget .waan-stopka-tytul {
	font-family: inherit;
	font-size: 13px;
	line-height: 1.4;
	letter-spacing: 2px;
	font-weight: 600;
	color: var(--zloto-jasne);
	margin: 0 0 10px;
	text-transform: uppercase;
}

/* tekst kolumn */
.site-footer .waan-stopka-tekst,
.site-footer .waan-stopka-menu {
	font-size: 14px;
	line-height: 1.7;
	color: var(--waan-stopka-tekst);
	margin: 0;
}

.site-footer .waan-stopka-menu {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.site-footer .waan-stopka-menu li {
	margin: 0;
	line-height: 1.4;
}

.site-footer .waan-stopka-opis {
	font-size: 14px;
	line-height: 1.6;
	color: var(--waan-stopka-opis);
	margin: 0;
}

/* logo w stopce — 42 px wysokości (powiększone na prośbę klienta 2026-09-09) */
.site-footer .widget .waan-stopka-logo {
	margin: 0 0 18px;
	line-height: 0;
}
.site-footer .widget .waan-stopka-logo img {
	height: 42px;
	width: auto;
}

/* linki w stopce */
.site-footer a {
	color: inherit;
	text-decoration: none;
}
.site-footer a:hover,
.site-footer a:focus {
	color: var(--zloto-ciemne);
}

/* --- dolny pasek --- */
.site-footer .copyright-bar {
	display: none;
}

.site-footer .site-info {
	text-align: left;
	padding: 0 72px 40px;
}

.site-footer .inside-site-info {
	display: block;
	border-top: 1px solid var(--linia-ciemna);
	max-width: none;
	width: auto;
}

/* dolny pasek = dwa widgety blokowe w obszarze "Footer Bar" */
.site-footer .footer-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	width: 100%;
	margin: 0;
}

.site-footer .footer-bar .widget {
	padding: 0;
	margin: 0;
}

.site-footer .footer-bar p {
	font-size: 13px;
	line-height: 1.6;
	color: var(--waan-stopka-drobne);
	margin: 0;
}

.site-footer .footer-bar .waan-stopka-jezyki {
	letter-spacing: 1px;
}

/* =========================================================================
   5. RESPONSYWNOŚĆ
   ========================================================================= */

/* stopka: 5 kolumn → 2 */
@media (max-width: 1024px) {
	.site-footer .inside-footer-widgets {
		flex-direction: row;
		flex-wrap: wrap;
		gap: 40px 48px;
	}
	.site-footer .inside-footer-widgets > div,
	.site-footer .inside-footer-widgets > div:not(:last-child) {
		flex: 0 0 calc(50% - 24px);
		max-width: none;
		margin-bottom: 0;
	}
}

/* nagłówek na tablecie/telefonie: logo z lewej, hamburger z prawej
   (próg 1180 px ustawiony filtrem generate_mobile_menu_media_query w functions.php) */
@media (max-width: 1180px) {
	:root {
		--waan-naglowek-h: 72px; /* 16 + logo 40 + 16 */
	}
	.inside-header {
		flex-direction: row;
		align-items: center;
		text-align: left;
	}
	.site-header .site-logo img.header-image {
		height: 40px; /* powiększone na prośbę klienta 2026-09-09 (było 32 px) */
	}
	.main-navigation .main-nav li.waan-cta > a {
		display: inline-block;
		margin: 8px 0;
	}
	.main-navigation .main-nav ul li a {
		line-height: 2.4;
	}
	/* GeneratePress podkłada szare tło pod przełącznik i rozwinięte menu,
	   gdy tło nawigacji = tło nagłówka — w makiecie tego nie ma. */
	.mobile-menu-control-wrapper .menu-toggle,
	.mobile-menu-control-wrapper .menu-toggle:hover,
	.mobile-menu-control-wrapper .menu-toggle:focus,
	.has-inline-mobile-toggle #site-navigation.toggled {
		background-color: transparent;
	}
	.main-navigation.toggled .main-nav > ul {
		border-top: 1px solid var(--linia);
		padding-top: 8px;
	}
}

/* --- nagłówek 601–1180 px: hamburger + przycisk „Wycena” --- */
.site-header .waan-cta-mobile {
	display: none;
}

@media (min-width: 601px) and (max-width: 1180px) {
	.site-header .waan-cta-mobile {
		display: inline-block;
		align-self: center;
		margin-right: 18px;
		padding: 10px 24px;
		background-color: var(--czern-cta);
		color: var(--tlo);
		font-size: 15px;
		font-weight: 600;
		letter-spacing: 0.5px;
		line-height: 1.2;
		text-decoration: none;
	}
	.site-header .waan-cta-mobile:hover,
	.site-header .waan-cta-mobile:focus {
		background-color: var(--czern);
		color: var(--tlo);
	}
	/* w rozwiniętym menu ta sama pozycja byłaby zdublowana */
	.main-navigation .main-nav li.waan-cta {
		display: none;
	}
}

/* --- nagłówek ≤600 px: w rozwiniętym menu telefon jako duży przycisk --- */
@media (max-width: 600px) {
	.main-navigation .main-nav li.waan-tel > a {
		display: block;
		margin: 12px 0 4px;
		padding: 14px 16px;
		background-color: var(--zloto-ciemne);
		color: var(--czern);
		font-size: 20px;
		font-weight: 600;
		line-height: 1.3;
		text-align: center;
	}
	.main-navigation .main-nav li.waan-tel > a:hover,
	.main-navigation .main-nav li.waan-tel > a:focus {
		background-color: var(--zloto-jasne);
		color: var(--czern);
	}
	.main-navigation .main-nav li.waan-cta > a {
		display: block;
		text-align: center;
	}
}

/* stopka: 2 kolumny → 1 */
@media (max-width: 600px) {
	.site-footer .inside-footer-widgets {
		flex-direction: column;
		gap: 32px;
	}
	.site-footer .inside-footer-widgets > div,
	.site-footer .inside-footer-widgets > div:not(:last-child) {
		flex: 1 1 auto;
		margin-bottom: 0;
	}
	.site-footer .site-info {
		padding-left: 24px;
		padding-right: 24px;
	}
	.site-footer .footer-bar {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
	}
}

/* --- Widoczność fokusu klawiatury (poprawka z odbioru etapu 3) -------------
   Domyślny pierścień przeglądarki jest czarny (outline: auto 1px) — na czarnym
   pasie CTA i w stopce praktycznie niewidoczny, a GeneratePress zdejmuje go
   przy obsłudze myszą (.using-mouse :focus { outline: 0 }).
   Jeden dyskretny pierścień dla nawigacji klawiaturą; TŁA elementów nie ruszamy
   (złote tło pod numerem telefonu w pasie CTA to celowy przycisk mobilny
   z briefu §10, nie efekt fokusu — sprawdzone w przeglądarce).
   Kolor --zloto-male (#8A6D14) ma kontrast ≥ 3:1 i na kremowym tle (4,5:1),
   i na czerni (3,9:1) — jeden kolor wystarcza na całej stronie. */
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline: 2px solid var(--zloto-male);
	outline-offset: 3px;
}

/* klik myszą nie ma zostawiać obwódki */
:where(a, button, input, select, textarea, summary, [tabindex]):focus:not(:focus-visible) {
	outline: none;
}

/* =========================================================================
   Formularz kontaktowy (Fluent Forms) — etap 4
   =========================================================================
   Fluent Forms renderuje własny HTML, więc wyglądu nie da się ustawić blokami.
   Kolory wyłącznie z Global Colors (var(--slug)) — tak jak w blokach.
   Wzorzec przycisku = „Zapytaj o wycenę” z hero (złoto na czerni, 16/600). */

#waan-formularz .fluentform .ff-el-group {
	margin-bottom: 20px;
}

#waan-formularz .fluentform .ff-el-input--label label {
	font-family: inherit;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
	color: var(--tekst);
	margin-bottom: 6px;
}

#waan-formularz .fluentform .ff-el-input--label.ff-el-is-required label::after {
	color: var(--zloto-male);
}

#waan-formularz .fluentform input[type="text"],
#waan-formularz .fluentform input[type="email"],
#waan-formularz .fluentform input[type="tel"],
#waan-formularz .fluentform textarea {
	width: 100%;
	box-sizing: border-box;
	background-color: #FFFFFF; /* pola formularza mają być bielsze niż kremowe tło strony */
	border: 1px solid var(--linia);
	border-radius: 0;
	padding: 12px 14px;
	font-family: inherit;
	font-size: 16px; /* 16 px = iOS nie przybliża strony przy wejściu w pole */
	line-height: 1.5;
	color: var(--tekst);
	box-shadow: none;
	transition: border-color .15s ease;
}

#waan-formularz .fluentform textarea {
	min-height: 150px;
	resize: vertical;
}

#waan-formularz .fluentform input:hover,
#waan-formularz .fluentform textarea:hover {
	border-color: var(--zloto-jasne);
}

#waan-formularz .fluentform input:focus,
#waan-formularz .fluentform textarea:focus {
	border-color: var(--zloto-male);
	outline: 2px solid var(--zloto-male);
	outline-offset: 2px;
}

#waan-formularz .fluentform .ff-el-help-message {
	font-size: 13px;
	line-height: 1.5;
	color: var(--tekst-wtorny);
	margin-top: 6px;
}

/* zgoda RODO: checkbox obok tekstu, tekst mniejszy */
#waan-formularz .fluentform .waan-zgoda .ff-el-form-check {
	display: flex;
	align-items: flex-start;
	gap: 10px;
}

#waan-formularz .fluentform .waan-zgoda .ff-el-form-check-label {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-size: 14px;
	line-height: 1.6;
	color: var(--tekst-wtorny);
	cursor: pointer;
}

#waan-formularz .fluentform .waan-zgoda input[type="checkbox"] {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	margin: 2px 0 0;
	accent-color: var(--zloto-male);
}

#waan-formularz .fluentform .waan-zgoda a {
	color: var(--zloto-male);
	text-decoration: underline;
}

/* komunikaty błędów */
#waan-formularz .fluentform .error,
#waan-formularz .fluentform .text-danger {
	font-size: 13px;
	line-height: 1.5;
	color: #A32020; /* czerwień komunikatu błędu — poza paletą marki, ma krzyczeć */
}

/* przycisk — jak „Zapytaj o wycenę” */
#waan-formularz .fluentform .ff-btn-submit {
	display: inline-block;
	background-color: var(--zloto-ciemne);
	color: var(--czern);
	border: 0;
	border-radius: 0;
	padding: 16px 36px;
	font-family: inherit;
	font-size: 16px;
	line-height: normal;
	font-weight: 600;
	letter-spacing: 0.5px;
	cursor: pointer;
	transition: background-color .2s ease;
}

#waan-formularz .fluentform .ff-btn-submit:hover {
	background-color: var(--zloto-jasne);
}

/* komunikat po wysłaniu */
#waan-formularz .ff-message-success {
	background-color: var(--tlo-alt);
	border-left: 3px solid var(--zloto-jasne);
	padding: 20px 24px;
	font-size: 17px;
	line-height: 1.6;
	color: var(--tekst);
}

/* widget Turnstile: odstęp nad przyciskiem */
#waan-formularz .cf-turnstile {
	margin-bottom: 20px;
}

@media (max-width: 600px) {
	#waan-formularz .fluentform .ff-btn-submit {
		width: 100%;
		text-align: center;
	}
}

/* przycisk „Ustawienia cookies” w stopce — ma wyglądać jak sąsiednie linki
   (Complianz otwiera okno zgód tylko z elementu <button class="cmplz-manage-consent">) */
.site-footer .waan-cookies {
	background: none;
	border: 0;
	padding: 0;
	margin: 0;
	font: inherit;
	color: inherit;
	text-decoration: none;
	cursor: pointer;
}

.site-footer .waan-cookies:hover {
	color: var(--zloto-ciemne);
}

/* mapa Google na /kontakt/ — wczytywana dopiero po zgodzie (Complianz) */
.waan-mapa {
	margin-top: 8px;
	border: 1px solid var(--linia);
	background-color: var(--tlo-alt);
	line-height: 0;
}

.waan-mapa iframe {
	display: block;
	width: 100%;
	height: 320px;
	border: 0;
}

/* zasłona Complianz w miejscu mapy: przycisk zgody w kolorach strony.
   Wtyczka ładuje własny arkusz (cookieblocker.css) z regułami na tej samej
   klasie, więc podnosimy specyficzność łańcuchem klas — bez !important. */
.waan-mapa .cmplz-blocked-content-container,
.cmplz-blocked-content-container.cmplz-blocked-content-container {
	background-color: var(--tlo-alt);
	min-height: 320px;
}

.cmplz-blocked-content-notice.cmplz-blocked-content-notice,
button.cmplz-blocked-content-notice.cmplz-accept-category {
	background-color: var(--zloto-ciemne);
	color: var(--czern);
	border: 0;
	border-radius: 0;
	padding: 14px 24px;
	font-family: inherit;
	font-size: 15px;
	line-height: 1.5;
	font-weight: 600;
	max-width: 340px;
	cursor: pointer;
	text-align: center;
	text-shadow: none;
}

.cmplz-blocked-content-notice.cmplz-blocked-content-notice:hover,
button.cmplz-blocked-content-notice.cmplz-accept-category:hover {
	background-color: var(--zloto-jasne);
}


/* przełącznik języków PL | EN | DE (etap 4G) */
.waan-jezyki {
	/* inline, nie flex — w pozycji menu flex łamał napis na trzy wiersze */
	display: inline;
	white-space: nowrap;
}

.main-navigation .main-nav li.waan-lang > a,
.main-navigation .main-nav li.waan-lang > .waan-jezyki {
	white-space: nowrap;
}

.waan-jezyk {
	color: inherit;
	text-decoration: none;
}

.waan-jezyk-aktywny {
	font-weight: 600;
	color: var(--zloto-male);
}

.waan-jezyk-brak {
	opacity: 0.45;
	cursor: default;
}

a.waan-jezyk:hover {
	color: var(--zloto-male);
	text-decoration: none;
}

.site-footer .waan-jezyk-aktywny {
	color: var(--zloto-ciemne);
}

.site-footer a.waan-jezyk:hover {
	color: var(--zloto-ciemne);
}
