/* Parkieciarnia Biernacki - Gorzow Wielkopolski | ekspres demo, runda 2
   Uklad z dema Shiva Dance (header z hamburgerem, szuflada z prawej,
   preloader, hero na kadrze, kafelki, grafik na kadrze pod welonem).
   Paleta: MIETA + TURKUS (runda 2: bez lososia). */

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font-body);font-size:var(--fs-base);line-height:var(--lh-body);color:var(--tekst);background:var(--krem)}
img{max-width:100%;height:auto;display:block}
a{color:var(--turkus-ciemny)}
h1,h2,h3{font-family:var(--font-heading);line-height:var(--lh-heading);letter-spacing:var(--tracking-heading);color:var(--granat);margin:0 0 var(--space-4)}
p{margin:0 0 var(--space-4)}
:root{
  --mieta:#CFF0E4;
  --mieta-jasna:#EAF8F2;
  --mieta-ciemna:#8FD9C3;
  --turkus:#1FA79B;
  --turkus-jasny:#4FC4B8;
  --turkus-ciemny:#137F76;
  --turkus-tlo:#DDF3F0;
  --granat:#123B3B;
  --granat-ciemny:#0B2A2A;
  --tekst:#2A4545;
  --cichy:#587070;
  --krem:#FBFAF6;
  --ramka:#D6E8E2;
  --grad:linear-gradient(135deg,#D7F3EA 0%,#BFEAE2 45%,#9FDBD3 100%);
  --r-karta:28px;
  --maxw:1140px;
}
.container{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--space-5)}
.section{padding-block:clamp(56px,8vw,96px)}
.section--tint{background:linear-gradient(180deg,var(--krem) 0%,var(--mieta-jasna) 18%,var(--mieta-jasna) 82%,var(--krem) 100%)}
.h2{font-size:clamp(28px,4.4vw,var(--fs-3xl));font-weight:800}
.h2--srodek{text-align:center}
.kicker{display:block;font-size:var(--fs-sm);letter-spacing:.16em;text-transform:uppercase;color:var(--turkus-ciemny);font-family:var(--font-body);font-weight:700;margin-bottom:var(--space-2)}
.znak{flex:none}

/* --- header: krem, napis zamiast logo (logo sie zmienia) --------------------- */
/* Bez backdrop-filter: filtr robi z headera kontener dla position:fixed i przycina szuflade menu. */
.site-header{position:sticky;top:0;z-index:50;background:var(--krem);border-bottom:1px solid var(--ramka)}
.site-header .container{display:flex;align-items:center;gap:var(--space-4);padding-block:12px}
.logo-link{display:flex;align-items:center;text-decoration:none}
.wordmark{display:flex;flex-direction:column;line-height:1;font-family:var(--font-heading);font-weight:900;font-size:clamp(22px,3.4vw,34px);letter-spacing:.02em;text-transform:uppercase;color:var(--granat)}
.wordmark small{font-family:var(--font-body);font-weight:700;font-size:10px;letter-spacing:.24em;color:var(--turkus);margin-top:5px}
.nav-social{display:inline-flex;align-items:center;gap:6px}
.nav-social a{display:grid;place-items:center;width:38px;height:38px;border-radius:var(--radius-pill);color:var(--granat);background:var(--mieta);transition:background var(--motion-dur) var(--motion-ease),color var(--motion-dur) var(--motion-ease),transform var(--motion-dur) var(--motion-ease)}
.nav-social a:hover{background:var(--turkus);color:#fff;transform:translateY(-1px)}
.nav-social--top{margin-left:auto}
.btn-tel{display:inline-flex;align-items:center;gap:8px;background:var(--turkus);color:#fff;text-decoration:none;font-weight:800;padding:11px 18px;border-radius:var(--radius-pill);font-size:var(--fs-sm);white-space:nowrap;transition:background var(--motion-dur) var(--motion-ease),transform var(--motion-dur) var(--motion-ease)}
.btn-tel:hover{background:var(--turkus-ciemny);transform:translateY(-1px)}
.menu-toggle{border:0;background:none;padding:10px 6px;cursor:pointer;line-height:0;display:inline-block}
.menu-toggle span{display:block;width:26px;height:3px;background:var(--granat);border-radius:3px;margin:5px 0;transition:transform .3s var(--motion-ease),opacity .2s,width .3s var(--motion-ease)}
.menu-toggle:hover span{background:var(--turkus)}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;width:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
@media(max-width:700px){
  .nav-social--top{display:none}
  .btn-tel{margin-left:auto}
  .btn-tel span{display:none}
  .btn-tel{padding:11px 12px}
}

/* Szuflada z prawej w miecie i turkusie: przyciemnienie, panel wjezdza, linki po kolei. */
.nav-overlay{position:fixed;inset:0;z-index:70;background:rgba(11,42,42,.35);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);opacity:0;visibility:hidden;transition:opacity .4s var(--motion-ease),visibility 0s linear .4s}
.nav-overlay.open{opacity:1;visibility:visible;transition:opacity .4s var(--motion-ease),visibility 0s}
.mobile-nav{position:fixed;top:0;right:0;bottom:0;z-index:80;width:min(400px,88vw);background:linear-gradient(165deg,#D9F4EA 0%,#9FDDD2 45%,#1FA79B 100%);color:var(--granat);padding:80px 32px 28px;display:flex;flex-direction:column;box-shadow:-24px 0 60px rgba(11,42,42,.25);transform:translateX(104%);transition:transform .5s cubic-bezier(.2,.8,.2,1);overflow-y:auto}
.mobile-nav.open{transform:none}
.nav-close{position:absolute;top:22px;right:24px;width:44px;height:44px;border-radius:var(--radius-pill);border:1px solid rgba(255,255,255,.6);background:rgba(255,255,255,.85);color:var(--granat);cursor:pointer;display:grid;place-items:center;transition:background var(--motion-dur) var(--motion-ease),transform var(--motion-dur) var(--motion-ease)}
.nav-close:hover{background:var(--turkus);border-color:var(--turkus);color:#fff;transform:rotate(90deg)}
.nav-tytul{margin:0 0 14px;font-size:var(--fs-sm);font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:var(--turkus-ciemny)}
.mobile-nav a{display:block;padding:9px 0;text-decoration:none;color:var(--granat);font-family:var(--font-heading);font-weight:800;font-size:clamp(19px,2.6vw,24px);letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid rgba(18,59,59,.12);opacity:0;transform:translateX(40px);transition:opacity .45s var(--motion-ease),transform .45s var(--motion-ease),color .18s,padding-left .18s}
.mobile-nav a:hover{color:var(--turkus-ciemny);padding-left:10px}
.mobile-nav.open a{opacity:1;transform:none}
.mobile-nav.open a:nth-child(3){transition-delay:.08s}.mobile-nav.open a:nth-child(4){transition-delay:.12s}.mobile-nav.open a:nth-child(5){transition-delay:.16s}.mobile-nav.open a:nth-child(6){transition-delay:.2s}.mobile-nav.open a:nth-child(7){transition-delay:.24s}.mobile-nav.open a:nth-child(8){transition-delay:.28s}.mobile-nav.open a:nth-child(9){transition-delay:.32s}.mobile-nav.open a:nth-child(10){transition-delay:.36s}
.mobile-nav a.nav-cta{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:var(--radius-pill);background:var(--granat);color:#fff;font-size:var(--fs-lg);padding:14px 20px;text-transform:none;letter-spacing:0;transition-delay:.4s;box-shadow:0 10px 24px rgba(19,127,118,.3)}
.mobile-nav a.nav-cta:hover{padding-left:20px;background:var(--granat-ciemny);color:#fff}
.mobile-nav .nav-social--mobil{padding:16px 0 0;gap:14px;justify-content:center;opacity:0;transform:translateX(40px);transition:opacity .45s var(--motion-ease) .44s,transform .45s var(--motion-ease) .44s}
.mobile-nav.open .nav-social--mobil{opacity:1;transform:none}
.mobile-nav .nav-social a{display:grid;place-items:center;width:46px;height:46px;border:1px solid rgba(255,255,255,.6);background:rgba(255,255,255,.85);color:var(--turkus-ciemny);padding:0;opacity:1;transform:none;border-bottom:1px solid rgba(255,255,255,.6);border-radius:var(--radius-pill);font-size:0;line-height:0}
.mobile-nav .nav-social a:hover{background:var(--turkus);border-color:var(--turkus);color:#fff;padding-left:0}
html.menu-open{overflow:hidden}
html.menu-open main,html.menu-open .site-footer{filter:blur(8px)}
main,.site-footer{transition:filter .4s var(--motion-ease)}

/* --- przyciski ------------------------------------------------------------- */
.btn{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-weight:700;padding:14px 26px;border-radius:var(--radius-pill);transition:all var(--motion-dur) var(--motion-ease);line-height:1.2}
.btn--primary{background:var(--turkus);color:#fff;border:0;box-shadow:0 8px 22px rgba(19,127,118,.28)}
.btn--primary:hover{background:var(--turkus-ciemny);transform:translateY(-1px);box-shadow:0 12px 26px rgba(19,127,118,.36)}
.btn--ghost{border:2px solid var(--granat);color:var(--granat)}
.btn--ghost:hover{background:var(--granat);color:#fff}
.btn--tel-duzy{font-size:var(--fs-lg);letter-spacing:.03em;font-weight:800}

/* --- hero: tancerze na miescie (Higgsfield), ciemne pismo po lewej, zoom Ken Burns --- */
.hero{position:relative;overflow:hidden;background:var(--mieta-jasna);color:var(--granat)}
.hero__tlo{position:absolute;inset:0;z-index:0;background-image:url('images/hero-tlo.jpg?v=3');background-size:cover;background-position:66% 50%;animation:kenburns 18s ease-in-out infinite alternate}
@keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.08)}}
.hero__tlo::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(251,250,246,.94) 0%,rgba(251,250,246,.7) 36%,rgba(251,250,246,.1) 62%,rgba(251,250,246,0) 75%)}
.hero .container{position:relative;z-index:1;display:grid;grid-template-columns:1fr;align-content:end;min-height:clamp(560px,74vh,780px);padding-block:clamp(120px,16vw,220px) clamp(56px,7vw,96px)}
.hero h1{font-size:clamp(46px,8.6vw,96px);font-weight:900;text-transform:uppercase;line-height:1.08;letter-spacing:.01em;margin-bottom:var(--space-6);color:var(--granat)}
.hero h1 .grad{display:block}
.hero h1 .miasto{display:block;font-size:.34em;letter-spacing:.22em;color:var(--turkus);font-weight:700;margin-top:16px}
.hero-ctas{display:flex;flex-wrap:wrap;gap:var(--space-3)}
@media(max-width:899px){
  .hero__tlo{background-position:60% 50%}
  .hero__tlo::after{background:linear-gradient(180deg,rgba(251,250,246,.92) 0%,rgba(251,250,246,.8) 50%,rgba(251,250,246,.45) 100%)}
}

/* --- zmiana logo: stare -> nowe, samo z siebie -------------------------------
   Dwie karty jedna na drugiej. Klasa .nowe (JS, co 3,2 s) obraca scene
   w osi Y: stara karta odplywa, nowa wjezdza. Zero hovera, dziala na dotyku. */
.rebrand{background:linear-gradient(135deg,var(--mieta) 0%,#E6F5EE 45%,var(--turkus-tlo) 100%);padding-block:clamp(40px,6vw,72px)}
.rebrand__grid{display:grid;gap:var(--space-6);align-items:center}
@media(min-width:900px){.rebrand__grid{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}}
.rebrand__scena{position:relative;aspect-ratio:16/10;max-width:560px;width:100%;margin-inline:auto;perspective:1400px}
.rebrand__karta{position:absolute;inset:0;display:grid;place-items:center;padding:clamp(24px,5vw,48px);background:#fff;border-radius:var(--r-karta);box-shadow:0 24px 60px rgba(18,59,59,.14),inset 0 1px 0 rgba(255,255,255,.9);backface-visibility:hidden;transform-style:preserve-3d;transition:transform 1.1s cubic-bezier(.65,0,.2,1),opacity .5s ease .3s}
.rebrand__karta img{width:100%;max-height:100%;object-fit:contain}
.rebrand__karta--nowe{transform:rotateY(180deg);opacity:0}
.rebrand__scena.nowe .rebrand__karta--stare{transform:rotateY(-180deg);opacity:0}
.rebrand__scena.nowe .rebrand__karta--nowe{transform:rotateY(0);opacity:1}
.rebrand__etykieta{position:absolute;top:16px;left:18px;font-size:var(--fs-xs);font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--cichy);padding:5px 11px;border-radius:var(--radius-pill);background:var(--mieta-jasna)}
.rebrand__karta--nowe .rebrand__etykieta{background:var(--turkus-tlo);color:var(--turkus-ciemny)}
.rebrand__blysk{position:absolute;inset:-6%;border-radius:50%;background:radial-gradient(closest-side,rgba(31,167,155,.22),rgba(31,167,155,0));z-index:-1;opacity:.6;transition:opacity .8s ease,transform 1.1s ease}
.rebrand__scena.nowe .rebrand__blysk{transform:scale(1.12);opacity:1;background:radial-gradient(closest-side,rgba(31,167,155,.38),rgba(31,167,155,0))}
.rebrand__tresc .h2{font-size:clamp(28px,4vw,40px)}
.rebrand__tresc p{color:var(--tekst);max-width:52ch}
.rebrand__uwaga{font-size:var(--fs-sm);color:var(--cichy);font-style:italic;margin:0}
@media (prefers-reduced-motion:reduce){.rebrand__karta{transition:none}.hero__tlo{animation:none}}

/* --- aktualnosci: tlo mieta/turkus, kafelki przesuwane strzalkami ------------- */
.wydarzenia{background:var(--grad);background-size:200% 100%;animation:gradsweep 9s var(--motion-ease) infinite alternate}
@keyframes gradsweep{from{background-position:0 0}to{background-position:100% 0}}
@media(prefers-reduced-motion:reduce){.wydarzenia{animation:none}}
.wydarzenia .h2{margin-bottom:var(--space-5)}
.karuzela--wyd .wyd-siatka{display:flex;gap:var(--space-4);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:8px 4px 12px;scrollbar-width:none;align-items:stretch}
.karuzela--wyd .wyd-siatka::-webkit-scrollbar{display:none}
.karuzela--wyd .wyd-siatka>*{flex:0 0 min(86vw,340px);scroll-snap-align:start;height:auto}
@media(min-width:900px){.karuzela--wyd .wyd-siatka>*{flex:0 0 calc((100% - 2*var(--space-4))/3)}}
.wyd{display:flex;gap:16px;align-items:flex-start;border-radius:var(--r-karta);padding:22px 24px;background:rgba(255,255,255,.86);border:1px solid rgba(255,255,255,.9);box-shadow:0 14px 34px rgba(18,59,59,.1),inset 0 1px 0 #fff;backdrop-filter:blur(14px);transition:transform var(--motion-dur) var(--motion-ease),box-shadow var(--motion-dur) var(--motion-ease)}
.wyd:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(18,59,59,.14)}
.wyd--glowny{background:linear-gradient(135deg,var(--granat) 0%,#166361 100%);border-color:transparent;color:#fff}
.wyd--glowny h3,.wyd--glowny .wyd__data b{color:#fff}
.wyd--glowny .wyd__data span,.wyd--glowny .wyd__kto{color:rgba(255,255,255,.72)}
.wyd--glowny .wyd__kiedy{color:var(--mieta-ciemna)}
.wyd--glowny .wyd__data{border-right-color:rgba(255,255,255,.25)}
.wyd--glowny .lvl{background:var(--mieta);color:var(--granat)}
.wyd__data{flex:none;text-align:center;line-height:1;padding-right:16px;border-right:2px solid var(--turkus-jasny)}
.wyd__data b{display:block;font-family:var(--font-heading);font-size:34px;font-weight:800;color:var(--granat)}
.wyd__data span{display:block;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--cichy);margin-top:4px}
.wyd h3{font-size:var(--fs-base);margin:0 0 6px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.wyd__kiedy{margin:0;font-weight:700;font-size:var(--fs-sm);color:var(--turkus-ciemny)}
.wyd__kto{margin:2px 0 0;font-size:var(--fs-sm);color:var(--cichy)}
.wyd-stopka{margin:var(--space-5) 0 0;text-align:center}
.lvl{display:inline-block;font-size:11px;font-weight:700;border-radius:8px;padding:2px 8px;background:var(--turkus-tlo);color:var(--turkus-ciemny);vertical-align:1px}

/* --- o nas: tekst i kadr do krawedzi ----------------------------------------- */
.section--list{padding:0;background:linear-gradient(180deg,var(--krem),var(--mieta-jasna))}
.list-uklad{display:grid;align-items:center}
@media(min-width:900px){.list-uklad{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.list-uklad__tresc{padding:clamp(48px,6vw,96px) clamp(20px,4vw,64px);max-width:640px;margin-left:auto;width:100%}
.list-uklad__kadr{height:100%;padding:clamp(0px,2vw,24px)}
.list-uklad__kadr img{width:100%;height:100%;min-height:clamp(260px,40vw,560px);max-height:680px;object-fit:cover;object-position:center 30%;border-radius:var(--r-karta)}
@media(max-width:899px){.list-uklad__kadr{padding:0 var(--space-5) var(--space-6)}}
.list-uklad__cta{text-align:center;margin:0}
.atuty{list-style:none;margin:var(--space-5) 0;padding:0;display:grid;gap:var(--space-3)}
.atuty li{display:flex;gap:12px;align-items:flex-start;font-size:var(--fs-base)}
.atuty .znak{color:var(--turkus);margin-top:3px}
.atuty b{color:var(--granat)}

/* --- kursy: kafelki ze zdjeciem, nazwa na kadrze; dolny rzad wysrodkowany ------ */
.cards{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-5)}
.card{flex:1 1 250px;max-width:100%;background:#fff;border:1px solid var(--ramka);border-radius:var(--r-karta);overflow:hidden;box-shadow:0 10px 30px rgba(18,59,59,.06);display:flex;flex-direction:column;transition:transform var(--motion-dur) var(--motion-ease),box-shadow var(--motion-dur) var(--motion-ease)}
@media(min-width:700px){.card{flex:0 1 calc(50% - var(--space-5))}}
@media(min-width:1000px){.card{flex:0 1 calc(25% - var(--space-5)*3/4)}}
.card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(18,59,59,.12)}
.card-kadr{position:relative;overflow:hidden}
.card-kadr img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center 25%;transition:transform .5s var(--motion-ease)}
.card:hover .card-kadr img{transform:scale(1.04)}
.card-kadr::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,42,42,0) 45%,rgba(11,42,42,.78) 100%)}
.card-tytul{margin:0;position:absolute;left:18px;right:18px;bottom:14px;z-index:1;font-family:var(--font-heading);font-weight:800;font-size:var(--fs-lg);color:#fff;text-transform:uppercase;letter-spacing:.05em;line-height:1.2;text-shadow:0 2px 12px rgba(0,0,0,.45)}
.card-tytul::before{content:"";display:block;width:28px;height:3px;border-radius:2px;background:var(--turkus-jasny);margin-bottom:8px}
.card-body{padding:var(--space-4) var(--space-5) var(--space-5);display:flex;flex-direction:column;gap:8px;flex:1}
.card .tag{display:inline-block;font-size:var(--fs-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--turkus-ciemny)}
.card p{font-size:var(--fs-sm);color:var(--cichy);margin:0}
.card .grupy{margin-top:auto;padding-top:6px;display:flex;flex-wrap:wrap;gap:6px}
.card .grupy span{font-size:11px;font-weight:700;border-radius:8px;padding:2px 9px;background:var(--mieta);color:var(--granat)}

/* --- sekcje na kadrze (grafik, galeria, opinie) --------------------------------- */
.sekcja--foto{position:relative;overflow:hidden}
.sekcja--foto::before{content:"";position:absolute;inset:0;z-index:0;background-image:var(--foto);background-size:cover;background-position:center}
.sekcja--foto::after{content:"";position:absolute;inset:0;z-index:0;background:rgba(11,42,42,.45)}
.sekcja--foto>*{position:relative;z-index:1}

/* grafik: kadr z Higgsfield pod ciemnym welonem, kafelki ze szkla */
#grafik.sekcja--foto::after{background:linear-gradient(120deg,rgba(11,42,42,.9) 0%,rgba(19,127,118,.72) 100%)}
@media(min-width:900px) and (hover:hover){#grafik.sekcja--foto::before{background-attachment:fixed}}
#grafik{color:#fff}
#grafik .h2{color:#fff}
#grafik .legend{color:rgba(255,255,255,.75)}
#grafik .legend a{color:#fff}
.karuzela--grafik .grafik{display:flex;gap:var(--space-4);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:8px 4px 12px;scrollbar-width:none;align-items:stretch}
.karuzela--grafik .grafik::-webkit-scrollbar{display:none}
.karuzela--grafik .grafik>*{flex:0 0 min(86vw,300px);scroll-snap-align:start;height:auto}
@media(min-width:900px){.karuzela--grafik .grafik>*{flex:0 0 calc((100% - 3*var(--space-4))/4)}}
.day{border-radius:var(--r-karta);padding:var(--space-5)}
.day.szklo--ciemne{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);box-shadow:0 18px 40px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.25);color:rgba(255,255,255,.92);backdrop-filter:blur(14px)}
.day h3{font-size:var(--fs-base);text-transform:uppercase;letter-spacing:.12em;padding-bottom:var(--space-2);margin-bottom:var(--space-3);border-bottom:3px solid var(--mieta-ciemna);color:#fff}
.day ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.day li{font-size:var(--fs-sm);display:grid;grid-template-columns:52px 1fr;gap:8px;align-items:baseline}
.day .t{font-weight:800;font-family:var(--font-heading);color:var(--mieta-ciemna)}
.day .who{display:block;color:rgba(255,255,255,.62);font-size:var(--fs-xs)}
.legend{margin-top:var(--space-5);font-size:var(--fs-sm);text-align:center}

/* --- cennik: kafelki pakietow, wysrodkowane ---------------------------------------- */
.pakiety{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-4)}
@media(min-width:900px){.pakiety>.pakiet{flex:0 1 calc((100% - 2*var(--space-4))/3);max-width:calc((100% - 2*var(--space-4))/3)}}
.pakiet{flex:1 1 240px;max-width:100%;background:#fff;border:1px solid var(--ramka);border-radius:var(--r-karta);padding:26px 24px 22px;box-shadow:0 10px 30px rgba(18,59,59,.06);display:flex;flex-direction:column;transition:transform var(--motion-dur) var(--motion-ease),box-shadow var(--motion-dur) var(--motion-ease)}
.pakiet:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(18,59,59,.12)}
.pakiet--wyroz{background:linear-gradient(160deg,var(--granat) 0%,#166361 100%);border-color:transparent;color:#fff}
.pakiet h3{font-size:var(--fs-base);text-transform:uppercase;letter-spacing:.1em;margin:0 0 12px;color:var(--granat)}
.pakiet--wyroz h3,.pakiet--wyroz .pakiet__cena b,.pakiet--wyroz li b{color:#fff}
.pakiet__cena{margin:0 0 14px;line-height:1}
.pakiet__cena b{display:block;font-family:var(--font-heading);font-size:clamp(34px,4vw,42px);font-weight:900;color:var(--turkus-ciemny)}
.pakiet__cena span{display:block;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.12em;color:var(--cichy);margin-top:6px}
.pakiet--wyroz .pakiet__cena span,.pakiet--wyroz li,.pakiet--wyroz small{color:rgba(255,255,255,.75)}
.pakiet ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pakiet li{display:flex;align-items:baseline;gap:8px;font-size:var(--fs-sm);color:var(--cichy)}
.pakiet li i{flex:1;border-bottom:2px dotted var(--ramka);transform:translateY(-4px)}
.pakiet--wyroz li i{border-bottom-color:rgba(255,255,255,.3)}
.pakiet li b{color:var(--granat);font-weight:700}
.pakiet small{display:block;margin-top:auto;padding-top:14px;font-size:var(--fs-xs);color:var(--cichy)}
.pakiet--wyroz li,.pakiet--wyroz small,.pakiet--wyroz .pakiet__cena span{color:rgba(255,255,255,.8)}.pakiet--wyroz li b{color:#fff}
.cennik__uwaga{margin:var(--space-5) auto 0;max-width:70ch;text-align:center;font-size:var(--fs-sm);color:var(--cichy)}

/* --- galeria jak u Mali Odkrywcy: dwa rzedy marquee na tle z Higgsfield ---------- */
.galeria{position:relative;overflow:hidden}
.galeria::before{content:"";position:absolute;inset:0;z-index:0;background-image:var(--foto);background-size:cover;background-position:center}
.galeria::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,rgba(251,250,246,.55),rgba(251,250,246,.3))}
.galeria>*{position:relative;z-index:1}
.gallery{display:grid;gap:12px;overflow:hidden;padding-block:6px}
.marquee-row{display:flex;gap:12px;will-change:transform}
.g-item{position:relative;margin:0;border-radius:22px;overflow:hidden;cursor:pointer;flex:0 0 auto;width:clamp(200px,32vw,320px);aspect-ratio:4/3;background:var(--mieta-jasna);box-shadow:0 10px 30px rgba(18,59,59,.12);border:1px solid rgba(255,255,255,.8)}
.g-item img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.6,.2,1)}
.g-item:hover img{transform:scale(1.06)}
.g-cap{position:absolute;inset:auto 0 0 0;padding:28px 14px 12px;background:linear-gradient(180deg,transparent,rgba(11,42,42,.85));font-size:13px;font-weight:700;color:#fff;opacity:0;transform:translateY(8px);transition:all .3s ease}
.g-item:hover .g-cap,.g-item:focus-visible .g-cap{opacity:1;transform:translateY(0)}
.gallery-foot{margin:26px 0 0;text-align:center}
.lightbox{position:fixed;inset:0;z-index:120;display:grid;place-items:center;background:rgba(11,42,42,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:58px 12px;animation:fade .22s ease}
@keyframes fade{from{opacity:0}to{opacity:1}}
.lb-fig{margin:0;max-width:min(1100px,100%);display:grid;gap:12px;justify-items:center}
.lb-fig img{max-height:74svh;width:auto;max-width:100%;border-radius:22px;box-shadow:0 30px 80px rgba(0,0,0,.5)}
.lb-fig figcaption{color:#DAEDE8;font-size:14.5px;text-align:center}
.lb-close,.lb-nav{position:absolute;z-index:2;width:46px;height:46px;border-radius:50%;cursor:pointer;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);color:#fff;display:grid;place-content:center;backdrop-filter:blur(10px);transition:background .2s ease,transform .2s ease}
.lb-close:hover,.lb-nav:hover{background:var(--turkus);transform:scale(1.06)}
.lb-close{top:14px;right:14px}
.lb-prev{left:12px;top:50%;margin-top:-23px}
.lb-next{right:12px;top:50%;margin-top:-23px}
body.lb-open{overflow:hidden}
.lightbox[hidden]{display:none}

/* --- opinie: liquid glass na kadrze z Higgsfield ------------------------------------ */
.szklo{background:linear-gradient(135deg,rgba(255,255,255,.34) 0%,rgba(255,255,255,.14) 100%);-webkit-backdrop-filter:blur(22px) saturate(1.5);backdrop-filter:blur(22px) saturate(1.5);border:1px solid rgba(255,255,255,.45);box-shadow:0 22px 50px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.65),inset 0 -1px 0 rgba(255,255,255,.12)}
#opinie.sekcja--foto::after{background:linear-gradient(180deg,rgba(11,42,42,.5),rgba(19,127,118,.55))}
#opinie .h2{color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.4)}
#opinie .btn--ghost{border-color:#fff;color:#fff;background:rgba(255,255,255,.1);backdrop-filter:blur(8px)}
#opinie .btn--ghost:hover{background:#fff;color:var(--granat)}
.karuzela{position:relative}
.karuzela .reviews{display:flex;gap:var(--space-5);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:8px 4px 12px;scrollbar-width:none}
.karuzela .reviews::-webkit-scrollbar{display:none}
.karuzela .reviews>*{flex:0 0 min(86vw,340px);margin:0;scroll-snap-align:start}
@media(min-width:900px){.karuzela .reviews>*{flex:0 0 calc((100% - 2*var(--space-5))/3)}}
.review{border-radius:var(--r-karta);padding:var(--space-6);display:flex;flex-direction:column;color:#fff}
.review .stars{color:var(--mieta-ciemna);letter-spacing:3px;margin-bottom:var(--space-3);font-size:var(--fs-base)}
.review blockquote{margin:0 0 var(--space-4);font-size:var(--fs-sm);color:rgba(255,255,255,.92)}
.review figcaption{margin-top:auto;font-weight:700;font-size:var(--fs-sm);color:#fff}
.review figcaption span{display:block;font-weight:400;color:rgba(255,255,255,.7);font-size:var(--fs-xs)}
.karuzela__strzalki{display:flex;gap:12px;justify-content:center;margin-top:var(--space-4)}
.karuzela__btn{display:grid;place-items:center;width:48px;height:48px;border-radius:var(--radius-pill);cursor:pointer;color:var(--granat);background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border:1px solid var(--ramka);transition:all var(--motion-dur) var(--motion-ease)}
.karuzela__btn:hover{background:var(--turkus);color:#fff;border-color:transparent}

/* --- kontakt jak u Sztorca: gradient, biale karty, mapa obok, bez formularza ------- */
.contact{background:var(--grad);background-size:200% 100%;animation:gradsweep 9s var(--motion-ease) infinite alternate;color:var(--tekst)}
@media(prefers-reduced-motion:reduce){.contact{animation:none}}
.contact .h2{color:var(--granat)}
.kontakt__grid{display:grid;gap:var(--space-6)}
@media(min-width:900px){.kontakt__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch}}
.kontakt__dane{display:grid;gap:var(--space-3);align-content:start}
.dana{display:flex;gap:14px;align-items:flex-start;text-decoration:none;background:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.9);border-radius:22px;padding:16px 18px;box-shadow:0 10px 26px rgba(18,59,59,.08);backdrop-filter:blur(10px);transition:transform var(--motion-dur) var(--motion-ease),box-shadow var(--motion-dur) var(--motion-ease),background var(--motion-dur) var(--motion-ease)}
a.dana:hover{background:#fff;transform:translateY(-2px);box-shadow:0 16px 34px rgba(18,59,59,.14)}
.dana .znak{flex:none;color:var(--turkus-ciemny);margin-top:2px}
.dana strong{display:block;color:var(--granat);font-size:var(--fs-base);word-break:break-word;line-height:1.3}
.dana small{display:block;color:var(--cichy);font-size:var(--fs-sm);margin-top:2px}
.dana>span{flex:1;min-width:0}
.dana--tel{background:var(--turkus);border-color:var(--turkus)}
a.dana--tel:hover{background:var(--turkus-ciemny)}
.dana--tel .znak,.dana--tel strong{color:#fff}
.dana--tel small{color:rgba(255,255,255,.85)}
.dana--tel strong{font-family:var(--font-heading);font-size:clamp(24px,3.2vw,30px)}
.kontakt__pary{display:grid;gap:var(--space-3)}
@media(min-width:560px){.kontakt__pary{grid-template-columns:1fr 1fr 1fr}}
.kontakt__pary .dana{align-items:center}
.kontakt__pary .dana .znak{margin-top:0}
.kontakt__mapa{border-radius:var(--r-karta);overflow:hidden;box-shadow:0 18px 40px rgba(18,59,59,.18);min-height:320px;background:#fff;border:1px solid rgba(255,255,255,.9)}
.kontakt__mapa iframe{width:100%;height:100%;min-height:360px;border:0;display:block}

/* --- footer ------------------------------------------------------------------------- */
.site-footer{background:var(--granat-ciemny);color:rgba(255,255,255,.6);font-size:var(--fs-sm);border-top:1px solid rgba(255,255,255,.08)}
.site-footer .container{padding-block:var(--space-6);display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-6);justify-content:space-between;align-items:center}
.site-footer a{color:#fff;text-decoration:none}
.site-footer__sociale{display:inline-flex;align-items:center;gap:8px}
.site-footer__sociale a[aria-label]{display:grid;place-items:center;width:34px;height:34px;border-radius:var(--radius-pill);border:1px solid rgba(255,255,255,.18)}
.site-footer__sociale a[aria-label]:hover{background:var(--turkus);border-color:var(--turkus)}
.site-footer__sociale a:first-child{margin-right:8px;font-weight:700}

/* --- reveal ----------------------------------------------------------------------------- */
.rv{opacity:0;transform:translateY(18px);transition:opacity .6s var(--motion-ease),transform .6s var(--motion-ease)}
.rv.in{opacity:1;transform:none}
.cards .card.rv:nth-child(2),.wyd-siatka .wyd.rv:nth-child(2),.pakiety .pakiet.rv:nth-child(2){transition-delay:.08s}
.cards .card.rv:nth-child(3),.wyd-siatka .wyd.rv:nth-child(3),.pakiety .pakiet.rv:nth-child(3){transition-delay:.16s}
.cards .card.rv:nth-child(4),.wyd-siatka .wyd.rv:nth-child(4),.pakiety .pakiet.rv:nth-child(4){transition-delay:.24s}
.cards .card.rv:nth-child(5),.wyd-siatka .wyd.rv:nth-child(5),.pakiety .pakiet.rv:nth-child(5){transition-delay:.32s}
.cards .card.rv:nth-child(6),.wyd-siatka .wyd.rv:nth-child(6){transition-delay:.4s}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}

.hero .container>*,.list-uklad>*,.kontakt__grid>*,.rebrand__grid>*{min-width:0}
html,body{overflow-x:clip}

/* --- preloader: napis wypelnia sie od lewej, pod nim pasek mieta -> turkus --- */
#preloader{position:fixed;inset:0;z-index:9999;background:radial-gradient(80% 80% at 50% 40%,#17514E 0%,var(--granat-ciemny) 70%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;transition:opacity .6s ease,visibility .6s ease}
#preloader.done{opacity:0;visibility:hidden}
.loader-logo{position:relative;font-family:var(--font-heading);font-weight:900;font-size:clamp(28px,7vw,54px);letter-spacing:.04em;text-transform:uppercase;line-height:1;animation:loaderIn .7s var(--motion-ease) both}
.loader-logo span{display:block}
.loader-logo .ghost{color:rgba(255,255,255,.16)}
.loader-logo .fill{position:absolute;inset:0;color:#fff;clip-path:inset(0 100% 0 0);transition:clip-path .25s ease-out}
.loader-bar{width:160px;height:4px;background:rgba(255,255,255,.14);border-radius:99px;overflow:hidden;animation:loaderIn .7s var(--motion-ease) .1s both}
.loader-bar span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--mieta-ciemna),var(--turkus));border-radius:99px;transition:width .25s ease-out}
@keyframes loaderIn{from{opacity:0;transform:translateY(14px) scale(.94)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){#preloader{display:none}}
