/* Baner zgody na cookies (Etap 2).
   Pasek przy dole ekranu, nie blokuje strony. Kolory z motywu strony (#005789 / #2ab5f4). */
.mc-consent[hidden] { display: none !important; }
.mc-consent {
	position: fixed;
	left: 0; right: 0; bottom: 0;
	z-index: 10000;
	background: #fff;
	border-top: 3px solid #2ab5f4;
	box-shadow: 0 -4px 18px rgba(0, 0, 0, .18);
	font-family: 'Open Sans', Arial, sans-serif;
	font-size: 13px;
	line-height: 1.45;
	color: #1a2b3c;
	box-sizing: border-box;
}
.mc-consent *, .mc-consent *:before, .mc-consent *:after { box-sizing: border-box; }
.mc-consent-inner {
	max-width: 1100px;
	margin: 0 auto;
	padding: 12px 16px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 20px;
}
.mc-consent-text { flex: 1 1 520px; min-width: 0; }
.mc-consent-text strong#mc-consent-title { display: block; font-size: 14px; color: #005789; margin-bottom: 2px; }
.mc-consent-text p { margin: 0; font-size: 13px; line-height: 1.45; text-align: left; }
.mc-consent-text a { color: #005789; text-decoration: underline; }
.mc-consent-settings { margin-top: 8px; display: grid; gap: 6px; }
.mc-consent-settings[hidden] { display: none; }
.mc-consent-settings label { display: flex; align-items: flex-start; gap: 8px; cursor: pointer; font-size: 13px; }
.mc-consent-settings input { margin: 3px 0 0 0; width: 16px; height: 16px; flex: none; }
.mc-consent-settings label span { font-weight: 400; }
.mc-consent-actions { flex: 0 0 auto; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.mc-btn {
	font-family: inherit;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.2;
	padding: 9px 14px;
	min-height: 40px;
	border-radius: 4px;
	border: 1px solid #005789;
	background: #fff;
	color: #005789;
	cursor: pointer;
}
.mc-btn:hover { background: #eaf5fc; }
.mc-btn:focus { outline: 2px solid #2ab5f4; outline-offset: 2px; }
.mc-btn--primary { background: #005789; color: #fff; }
.mc-btn--primary:hover { background: #00466f; }
.mc-btn--link { border-color: transparent; background: transparent; text-decoration: underline; padding-left: 6px; padding-right: 6px; }
.mc-btn[hidden] { display: none; }

/* Telefon: kompaktowy baner (bez tytulu, mniejszy tekst, dwa rowne przyciski obok siebie, "Ustawienia" jako link pod spodem). */
@media (max-width: 767px) {
	#mc-consent-title { display: none !important; }
	.mc-consent-inner { padding: 10px 14px; gap: 8px; }
	.mc-consent-text p { font-size: 12px; line-height: 1.35; }
	.mc-consent-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; width: 100%; }
	.mc-consent-actions .mc-btn { min-height: 40px; padding: 8px 6px; }
	#mc-consent-nec { order: 1; }
	#mc-consent-all { order: 2; }
	#mc-consent-save { order: 2; grid-column: 1 / -1; }
	#mc-consent-set { order: 3; grid-column: 1 / -1; min-height: 28px; padding: 0; }
}

/* Przyciski przyklejone do dolu strony nie moga znikac pod paskiem - przesuwamy je o jego wysokosc. */
body.mc-consent-open .mc-whatsapp-fab { bottom: calc(var(--mc-consent-h, 0px) + 16px) !important; }
body.mc-consent-open { padding-bottom: var(--mc-consent-h, 0px); }

/* Stopka: linki prawne */
.mc-legal-links { display: block; margin-top: 6px; font-size: 12px; }
.mc-legal-links a { color: inherit; text-decoration: underline; margin-right: 12px; cursor: pointer; }
@media (max-width: 767px) {
	/* cele dotyku min. 24 px (Lighthouse target-size) */
	.mc-legal-links a { display: inline-block; min-height: 24px; padding: 4px 2px; line-height: 16px; }
}
/* Desktop: stopka ma stale wymiary, a linki w .copy dziedzicza position:absolute (logo), wiec dostaja druga linie w pasku. */
@media (min-width: 768px) and (not ((orientation: landscape) and (max-width: 960px) and (max-height: 500px))) {
	div#footer { padding-bottom: 44px; }
	div#footer div#fcontent div#fbox { height: 64px; }
	div#footer div#fcontent .copy span.ftext { left: 0; width: 100%; text-align: center; }
	div#footer div#fcontent .copy .mc-legal-links { position: absolute; top: 34px; left: 0; width: 100%; text-align: center; margin: 0; font-size: 12px; line-height: 24px; }
	div#footer div#fcontent .copy .mc-legal-links a { position: static; top: auto; left: auto; height: auto; margin: 0 10px; text-decoration: underline; }
}

/* Wtyczka Facebooka: karta zamiast wpisow, dopoki brak zgody na osadzenia (startpage.tpl) */
.fb-consent-placeholder { display: none; }
.fb-needs-consent .fb-content { display: none; }
.fb-needs-consent .fb-consent-placeholder {
	display: flex; flex-direction: column; align-items: center; justify-content: center;
	height: 100%; min-height: 300px; padding: 20px; text-align: center; color: #fff;
	font-family: 'Open Sans', Arial, sans-serif; font-size: 13px; line-height: 1.5; gap: 12px;
}
.fb-consent-placeholder strong { font-size: 15px; }
.fb-consent-placeholder .mc-btn--primary { background: #fff; color: #005789; border-color: #fff; }
.fb-consent-placeholder a { color: #fff; text-decoration: underline; }

/* Tlumacz Google przy opiniach: przycisk zamiast widzetu bez zgody */
.mc-translate-consent { font-size: 12px; }

@media (max-width: 767px) {
	.mc-consent-inner { padding: 10px 12px; gap: 8px; }
	.mc-consent-text p, .mc-consent-settings label { font-size: 12px; }
	.mc-consent-actions { width: 100%; }
	.mc-consent-actions .mc-btn { flex: 1 1 auto; text-align: center; }
	.mc-consent-actions .mc-btn--primary { flex-basis: 100%; }
}

/* Pasek miniatur filmow na stronie portu: bez zgody na osadzenia ciemny kafelek z ikona play */
.ytbox > .over .videos ul > li.yt-nothumb { position: relative; }
.ytbox > .over .videos ul > li.yt-nothumb::before { content: ''; position: absolute; left: 5px; top: 11px; width: 85px; height: 56px; background: #1b2a38; border-radius: 3px; }
.ytbox > .over .videos ul > li.yt-nothumb::after { content: ''; position: absolute; left: 50%; top: 50%; margin: -8px 0 0 -5px; border-style: solid; border-width: 8px 0 8px 13px; border-color: transparent transparent transparent #fff; }
