/* PrestigeCar Bloki – mapki tras (kontury krajów, trasy do Olkusza, błyski): „Czy wiesz”, strony krajów, siedziby */
.mapa path, .mapa circle, .mapa-kraj path, .mapa-kraj circle { vector-effect: non-scaling-stroke; }
.mapa__tlo { fill: none; stroke: rgba(255, 255, 255, .045); stroke-width: 1px; }
.mapa__kraj { fill: rgba(255, 255, 255, .012); stroke: rgba(255, 255, 255, .12); stroke-width: 1px; stroke-linejoin: round; }
.mapa__kraj--pl { fill: none; stroke: rgba(255, 70, 60, .42); }
.mapa__kod { font: italic 700 64px/1 var(--font-h); fill: transparent; stroke: rgba(255, 255, 255, .12); stroke-width: 1px; letter-spacing: 2px; }
.mapa__miasto { fill: #0f1a24; stroke: rgba(255, 255, 255, .45); stroke-width: 1.5px; }
.mapa__trasa { fill: none; stroke: rgba(255, 59, 42, .4); stroke-width: 1.2px; stroke-dasharray: 3 9; }
.mapa__blysk { fill: none; stroke: #ff5a45; stroke-width: 2px; stroke-linecap: round; stroke-dasharray: 70 1000; stroke-dashoffset: 70; opacity: 0; filter: drop-shadow(0 0 5px #ff3b2a); }
.mapa__cel { fill: #ff3b2a; stroke: #ffd3c7; stroke-width: 1.5px; filter: drop-shadow(0 0 8px #ff3b2a); }
.mapa__cel-fala { fill: none; stroke: #ff3b2a; stroke-width: 1.5px; opacity: 0; transform-box: fill-box; transform-origin: center; }
.mapa__miejsce { font: 600 22px/1 var(--font-h); fill: rgba(255, 255, 255, .5); letter-spacing: 5px; }
html[data-theme="light"] .mapa__tlo { stroke: rgba(9, 19, 27, .06); }
html[data-theme="light"] .mapa__kraj { fill: rgba(9, 19, 27, .015); stroke: rgba(9, 19, 27, .16); }
html[data-theme="light"] .mapa__kraj--pl { fill: none; stroke: rgba(227, 38, 43, .5); }
html[data-theme="light"] .mapa__kod { stroke: rgba(9, 19, 27, .14); }
html[data-theme="light"] .mapa__miasto { fill: #fff; stroke: rgba(9, 19, 27, .45); }
html[data-theme="light"] .mapa__miejsce { fill: rgba(9, 19, 27, .5); }
@media (prefers-reduced-motion: no-preference) {
	/* pętle ozdobne grają kilka razy i stają (procesor odpoczywa); po powrocie mapki na ekran grają znowu (wspolne.js) */
	.mapa__trasa { animation: mapa-plyn 2.4s linear 4; }
	.mapa__blysk { animation: mapa-blysk 6s cubic-bezier(.45, 0, .3, 1) 2; animation-delay: calc(var(--i) * 1s); }
	.mapa__cel-fala { animation: mapa-fala 2.4s ease-out 4; }
	/* trasy grają tylko, gdy mapka jest na ekranie (klasa .gra z wspolne.js) */
	[data-pcb-gra]:not(.gra) .mapa__trasa, [data-pcb-gra]:not(.gra) .mapa__blysk, [data-pcb-gra]:not(.gra) .mapa__cel-fala { animation-play-state: paused; }
}
.mapa__trasy { transition: opacity .8s; }
html.js .mapa:not(.gra) .mapa__trasy { opacity: .35; }
@keyframes mapa-plyn { to { stroke-dashoffset: -120; } }
@keyframes mapa-blysk { 0% { stroke-dashoffset: 70; opacity: 0; } 5% { opacity: 1; } 40% { stroke-dashoffset: -930; opacity: 1; } 45%, 100% { stroke-dashoffset: -930; opacity: 0; } }
@keyframes mapa-fala { from { opacity: .8; transform: scale(1); } to { opacity: 0; transform: scale(4); } }

/* mapka jednego kraju (nagłówek strony kraju, blok „Mapka kraju”): zanik z lewej, wyróżniony kraj, kontur „rysuje się” po wejściu */
.mapa-kraj { display: block; width: 100%; height: auto; overflow: visible;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 18%); mask-image: linear-gradient(90deg, transparent, #000 18%); }
.mapa__kraj--wyr { fill: rgba(255, 255, 255, .035); stroke: rgba(255, 255, 255, .55); stroke-width: 1.4px; }
html[data-theme="light"] .mapa__kraj--wyr { fill: rgba(9, 19, 27, .04); stroke: rgba(9, 19, 27, .55); }
.mapa-kraj .mapa__kraj--pl { stroke: rgba(255, 70, 60, .55); }
.mapa-kraj .mapa__tlo { stroke: rgba(255, 255, 255, .07); }
.mapa-kraj .mapa__miasto { r: 5px; }
@media (prefers-reduced-motion: no-preference) {
	.mapa__kraj--wyr { stroke-dasharray: 6000; stroke-dashoffset: 6000; animation: kraj-rysuj 2.6s cubic-bezier(.45, 0, .2, 1) .3s forwards; }
	html.js [data-pcb-gra]:not(.wszedl) .mapa__kraj--wyr { animation-play-state: paused; }
}
@keyframes kraj-rysuj { to { stroke-dashoffset: 0; } }
/* małe kraje (BE / NL / LU): szerszy kadr, wyróżniony kraj grubszą linią, krótszy zanik z lewej */
.mapa-kraj--be .mapa__kraj--wyr, .mapa-kraj--nl .mapa__kraj--wyr, .mapa-kraj--lu .mapa__kraj--wyr { stroke-width: 2px; fill: rgba(255, 255, 255, .07); }
.mapa-kraj--be, .mapa-kraj--nl, .mapa-kraj--lu { -webkit-mask-image: linear-gradient(90deg, transparent, #000 5%); mask-image: linear-gradient(90deg, transparent, #000 5%); }

/* mapka siedzib (Kontakt, O nas): Rijswijk – Olkusz z napisami NL / PL */
.mapa-kontakt { -webkit-mask-image: none; mask-image: none; }
.mapa-kontakt .mapa__tlo { stroke: rgba(255, 255, 255, .08); }
.mapa-kontakt .mapa__trasa { stroke: rgba(255, 59, 42, .55); }
.pin__tekst { font: 700 30px/1 var(--font-h); letter-spacing: 3px; fill: var(--tekst); paint-order: stroke; stroke: var(--tlo); stroke-width: 6px; }
@media (prefers-reduced-motion: no-preference) {
	.mapa-kontakt .mapa__blysk { animation: mapa-blysk 4.5s cubic-bezier(.45, 0, .3, 1) 3; }
	.mapa-kontakt .pin--pl .mapa__cel-fala { animation-delay: 1.2s; }
	/* restart pętli po powrocie mapki na ekran (wspolne.js) */
	[data-pcb-gra].od-nowa .mapa__trasa, [data-pcb-gra].od-nowa .mapa__blysk, [data-pcb-gra].od-nowa .mapa__cel-fala { animation-name: none; }
}
