/* Passion of Dance - demo 10.10.2026. Paleta z sygnetu (pomarancz -> czerwien), czern i roz kurtyny z banera. */
:root{
  --ink:#141110; --ink-2:#2a2421; --tekst:#3b3330; --szary:#6f625d;
  --papier:#fbf8f6; --blush:#f3e9e6; --blush-2:#e8d7d3; --linia:#e3d5d1;
  --pom:#ee751c; --czer:#e41f16; --akc:#c22f14; --zloto:#d8a24a;
  --grad:linear-gradient(135deg,#f07a1d 0%,#e4421a 55%,#d81e14 100%);
  --grad-btn:linear-gradient(135deg,#cc4510 0%,#c2310f 50%,#b81d12 100%);
  --grad-tekst:linear-gradient(135deg,#e0601a 0%,#d23a16 55%,#c81e14 100%);
  --serif:"Bodoni Moda",Didot,"Times New Roman",serif;
  --sans:"Outfit",system-ui,-apple-system,"Segoe UI",sans-serif;
  --r:22px; --r-s:14px; --wrap:1240px;
  --cien:0 1px 2px rgba(20,17,16,.04),0 8px 24px -12px rgba(20,17,16,.18);
  --cien-d:0 2px 4px rgba(20,17,16,.05),0 24px 48px -20px rgba(20,17,16,.28);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:100px}
html.menu-open{overflow:hidden}
body{margin:0;background:var(--papier);color:var(--tekst);font:400 17px/1.65 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
p{margin:0 0 1em}
h1,h2,h3{font-family:var(--serif);color:var(--ink);font-weight:500;line-height:1.08;margin:0 0 .5em;letter-spacing:-.01em;text-wrap:balance}
h2{font-size:clamp(2rem,1.3rem + 3vw,3.6rem)}
h3{font-size:1.45rem}
h2 em,h1 em,.hero__haslo em,.stopka__haslo em{font-style:italic;font-weight:400;background:var(--grad-tekst);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.06em}
.wrap{width:min(100% - 32px,var(--wrap));margin-inline:auto}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:10px 16px;border-radius:10px;z-index:200}
.skip:focus{left:16px}
:focus-visible{outline:2px solid var(--akc);outline-offset:3px;border-radius:6px}
svg{width:1.1em;height:1.1em;flex:none}

/* przyciski */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;min-height:52px;padding:0 1.6em;border-radius:999px;font:600 1rem/1 var(--sans);text-decoration:none;border:1.5px solid transparent;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease,background-color .25s,color .25s}
.btn--sm{min-height:44px;padding:0 1.2em;font-size:.95rem}
.btn--grad{background:var(--grad);color:#fff;box-shadow:0 10px 24px -10px rgba(216,30,20,.7)}
.btn--grad:hover{transform:translateY(-2px);box-shadow:0 16px 30px -12px rgba(216,30,20,.75)}
.btn--jasny{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.35);backdrop-filter:blur(10px)}
.btn--jasny:hover{background:#fff;color:var(--ink)}
.btn--obrys{color:var(--ink);border-color:var(--ink)}
.btn--obrys:hover{background:var(--ink);color:#fff}
.link{display:inline-flex;align-items:center;gap:.45em;font-weight:600;color:var(--ink);text-decoration:none;border-bottom:1.5px solid var(--akc);padding-bottom:2px}
.link svg{transition:transform .25s}
.link:hover svg{transform:translateX(4px)}
.nad{display:inline-flex;align-items:center;gap:.5em;font:600 .78rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--akc);margin-bottom:1.1em}
.nad--jasny{color:#ffb27d}
.znaczek{font:500 .72rem/1 var(--sans);font-style:normal;letter-spacing:.04em;text-transform:uppercase;color:var(--akc);border:1px solid currentColor;border-radius:999px;padding:.35em .6em;vertical-align:middle;white-space:nowrap}

/* logo */
.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);min-width:0}
.logo img{width:42px;height:42px}
.logo__txt{display:flex;flex-direction:column;line-height:1}
.logo__txt b{font:800 1.12rem/1 Montserrat,var(--sans);letter-spacing:.01em}
.logo__txt i{font:600 .6rem/1 var(--sans);font-style:normal;letter-spacing:.42em;margin-top:5px;padding-left:2px}
.logo--jasne{color:#fff}

/* hero */
.hero{position:relative;background:var(--ink);color:#f4ece8;overflow:hidden;isolation:isolate}
.hero__foto{position:relative;aspect-ratio:4/3.4;overflow:hidden}
.hero__foto img{width:100%;height:100%;object-fit:cover;object-position:62% 20%}
.hero__foto::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,17,16,0) 55%,var(--ink) 100%)}
.hero__in{position:relative;z-index:3;padding:8px 0 64px}
.hero h1{font:600 .82rem/1.2 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:#ffb27d;margin:0 0 .9em}
.hero__nad{display:inline-flex;align-items:center;gap:.6em;font-size:.88rem;color:#e7d6cf;margin-bottom:1.3em;padding:.45em .9em;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.05)}
.kropka{width:8px;height:8px;border-radius:50%;background:#3ad07a;box-shadow:0 0 0 4px rgba(58,208,122,.2)}
.hero__haslo{font:400 clamp(2.9rem,1.6rem + 6.4vw,6.4rem)/.98 var(--serif);color:#fff;letter-spacing:-.02em;margin:0 0 .35em;max-width:11ch}
.hero__lead{font-size:1.08rem;color:#e2d4ce;max-width:46ch}
.hero__btn{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 30px}
.hero__ocena{display:inline-flex;align-items:center;gap:.8em;color:#e2d4ce;text-decoration:none;font-size:.95rem}
.hero__ocena strong{color:#fff}
.hero__gw{display:flex;color:var(--zloto)}
.hero__iskry{position:absolute;inset:0;z-index:1;pointer-events:none;background-image:radial-gradient(2px 2px at 12% 30%,rgba(255,214,140,.8),transparent 60%),radial-gradient(1.5px 1.5px at 30% 70%,rgba(255,214,140,.6),transparent 60%),radial-gradient(2px 2px at 48% 20%,rgba(255,214,140,.7),transparent 60%),radial-gradient(1.5px 1.5px at 8% 85%,rgba(255,214,140,.5),transparent 60%),radial-gradient(2.5px 2.5px at 40% 50%,rgba(255,214,140,.55),transparent 60%);animation:iskry 6s ease-in-out infinite alternate}
@keyframes iskry{to{opacity:.35;transform:translateY(-10px)}}
@media (min-width:900px){
  .hero{min-height:min(calc(100svh - 92px),860px);display:flex;align-items:center}
  .hero__foto{position:absolute;inset:0 0 0 auto;width:62%;aspect-ratio:auto}
  .hero__foto::after{background:linear-gradient(90deg,var(--ink) 0%,rgba(20,17,16,.55) 22%,rgba(20,17,16,0) 48%),linear-gradient(0deg,rgba(20,17,16,.5),rgba(20,17,16,0) 30%)}
  .hero__in{padding:90px 0 110px}
  .hero__in>*{max-width:600px}
}

/* wstega */
.wstega{position:absolute;left:0;width:100%;height:auto;pointer-events:none;z-index:2;overflow:visible}
.wstega path{stroke:rgba(243,233,230,.55);stroke-width:2.2;stroke-dasharray:1;stroke-dashoffset:0}
.js .wstega path{stroke-dashoffset:1;transition:stroke-dashoffset 2.6s cubic-bezier(.6,0,.2,1)}
.js .wstega.rys path{stroke-dashoffset:0}
.wstega--hero{bottom:6%;opacity:.8}
.wstega--phero{bottom:-10%;opacity:.55}
.wstega--stopka{top:-40px;opacity:.35}

/* sekcje */
.sec{padding:clamp(64px,5vw + 40px,128px) 0;position:relative}
.sec--blush{background:var(--blush)}
.sec--waska{padding:48px 0}
.sec__head{max-width:760px;margin-bottom:clamp(32px,4vw,56px)}
.sec__head--rzad{max-width:none;display:flex;flex-wrap:wrap;gap:16px 32px;justify-content:space-between;align-items:flex-end}
.sec__head--rzad h2{margin:0}
.dwie{display:grid;gap:32px}
@media (min-width:900px){.dwie{grid-template-columns:5fr 6fr;gap:64px;align-items:start}}
.dwie__txt p{font-size:1.06rem}
.dwie>*{min-width:0}

/* dlaczego */
.powody{display:grid;gap:16px}
@media (min-width:800px){.powody{grid-template-columns:repeat(3,1fr);gap:20px}}
.powod{background:#fff;border:1px solid var(--linia);border-radius:var(--r);padding:28px;box-shadow:var(--cien)}
.powod>svg{width:44px;height:44px;padding:11px;border-radius:50%;background:var(--grad);color:#fff;margin-bottom:18px}
.powod p{color:var(--szary);margin:0}

/* pierwszy taniec */
.ptaniec{background:var(--ink);color:#e2d4ce;overflow:hidden}
.ptaniec__in{display:grid;gap:40px;align-items:center}
.ptaniec h2{color:#fff}
.ptaniec__foto{margin:0;border-radius:200px 200px var(--r) var(--r);overflow:hidden;max-width:420px;aspect-ratio:3/4.3;justify-self:center;width:100%;box-shadow:0 30px 80px -30px rgba(228,31,22,.55)}
.ptaniec__foto img{width:100%;height:100%;object-fit:cover;object-position:60% 20%}
.ptaniec__cyt{margin:28px 0 30px;padding:22px 24px;border-left:3px solid var(--pom);background:rgba(255,255,255,.04);border-radius:0 var(--r-s) var(--r-s) 0;font:italic 400 1.25rem/1.45 var(--serif);color:#fff}
.ptaniec__cyt cite{display:block;margin-top:12px;font:500 .85rem/1 var(--sans);font-style:normal;color:#c8b6af}
@media (min-width:900px){.ptaniec__in{grid-template-columns:5fr 6fr;gap:80px}}

/* grafik */
.g-lista{list-style:none;margin:0;padding:0}
.g-wiersz{display:grid;grid-template-columns:1fr auto;gap:4px 16px;padding:16px 4px;border-bottom:1px solid var(--linia)}
.g-wiersz:last-child{border-bottom:0}
.g-czas{font:500 .95rem/1.2 var(--sans);color:var(--akc);font-variant-numeric:tabular-nums}
.g-czas small{display:block;color:var(--szary);font-weight:400;font-size:.78rem;margin-bottom:3px}
.g-nazwa{grid-column:1/-1;font:500 1.35rem/1.2 var(--serif);color:var(--ink);text-decoration:none}
.g-nazwa:hover{color:var(--akc)}
.g-kto{font-size:.92rem}
.g-kto small{display:none}
.g-sala{font-size:.82rem;color:var(--szary);justify-self:end;align-self:center;grid-row:1;grid-column:2}
@media (min-width:700px){
  .g-wiersz{grid-template-columns:120px 1fr 170px 90px;align-items:center;padding:18px 8px}
  .g-nazwa{grid-column:auto}
  .g-sala{grid-row:auto;grid-column:auto}
  .g-kto small{display:block;font-size:.72rem;color:var(--szary);letter-spacing:.08em;text-transform:uppercase}
}
.g-lista--kurs{background:#fff;border:1px solid var(--linia);border-radius:var(--r);padding:4px 16px;margin-top:20px}
@media (min-width:700px){.g-lista--kurs .g-wiersz{grid-template-columns:120px 1fr 150px}.g-lista--kurs .g-sala{display:none}}
.uwaga{font-size:.92rem;color:var(--szary);margin-top:18px}

/* CTA zapisu */
.zapis-cta{padding:clamp(56px,6vw,96px) 0}
.zapis-cta__in{display:grid;gap:24px;align-items:center;background:var(--ink);color:#e2d4ce;border-radius:calc(var(--r) + 8px);padding:clamp(28px,5vw,64px);position:relative;overflow:hidden;isolation:isolate}
.zapis-cta__in::before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:var(--grad);filter:blur(90px);opacity:.38;right:-160px;top:-220px;z-index:-1}
.zapis-cta h2{color:#fff;margin-bottom:.3em}
.zapis-cta p{margin:0;max-width:52ch}
.zapis-cta__btn{display:flex;flex-wrap:wrap;gap:12px}
.zapis-cta .btn--obrys{color:#fff;border-color:rgba(255,255,255,.45)}
.zapis-cta .btn--obrys:hover{background:#fff;color:var(--ink)}
@media (min-width:900px){.zapis-cta__in{grid-template-columns:1.3fr auto}}

/* naglowek podstrony */
.phero{position:relative;background:var(--ink);color:#e2d4ce;padding:56px 0 64px;overflow:hidden;isolation:isolate}
.phero::before{content:"";position:absolute;width:600px;height:600px;border-radius:50%;background:var(--grad);filter:blur(120px);opacity:.28;left:-260px;bottom:-360px;z-index:-1}
.phero__in{display:grid;gap:32px;align-items:center;position:relative;z-index:3}
.phero h1{color:#fff;font-size:clamp(2.6rem,1.4rem + 5vw,5.4rem);font-weight:400;margin:.2em 0 .3em}
.phero__lead{font-size:1.1rem;max-width:56ch;margin:0}
.phero__foto{margin:0;border-radius:var(--r);overflow:hidden;aspect-ratio:4/3;box-shadow:0 30px 60px -30px rgba(0,0,0,.7)}
.phero__foto img{width:100%;height:100%;object-fit:cover;object-position:50% 18%}
.phero__fakty{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.phero__fakty span{display:inline-flex;align-items:center;gap:.5em;font-size:.9rem;padding:.55em 1em;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.05);color:#f1e6e1}
.phero__fakty svg{color:#ffb27d}
@media (min-width:900px){.phero{padding:88px 0 96px}.phero--foto .phero__in{grid-template-columns:7fr 5fr;gap:64px}.phero--foto .phero__foto{aspect-ratio:4/5}.phero--szeroka .phero__in{grid-template-columns:1fr 1fr}.phero--szeroka .phero__foto{aspect-ratio:4/3}}
.okruszki ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px;font-size:.85rem;color:#b9a8a1}
.okruszki li+li::before{content:"/";margin-right:6px;opacity:.6}
.okruszki a{color:#e2d4ce;text-decoration:none}
.okruszki a:hover{color:#fff;text-decoration:underline}

/* oferta */
.o-lista{display:grid;gap:14px}
.o-kurs{display:grid;gap:14px;padding:26px;border-radius:var(--r);background:#fff;border:1px solid var(--linia);align-items:center;transition:box-shadow .3s,transform .3s}
.o-kurs:hover{box-shadow:var(--cien-d);transform:translateY(-2px)}
.o-kurs__nr{font:italic 400 2.4rem/1 var(--serif);color:var(--akc)}
.o-kurs h2{font-size:clamp(1.7rem,1.3rem + 1.4vw,2.3rem);margin:.25em 0 .3em}
.o-kurs p{margin:0;color:var(--szary)}
.o-kurs__fakty{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.o-kurs__fakty dt{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--szary)}
.o-kurs__fakty dd{margin:0;font-weight:500;color:var(--ink)}
@media (min-width:1000px){.o-kurs{grid-template-columns:80px 1.6fr 1.2fr auto;gap:32px;padding:30px 34px}}

/* podstrona kursu */
.program{list-style:none;counter-reset:p;margin:0;padding:0;display:grid;gap:10px}
.program li{counter-increment:p;display:flex;gap:18px;align-items:baseline;background:#fff;border:1px solid var(--linia);border-radius:var(--r-s);padding:18px 20px;font-size:1.02rem}
.program li::before{content:counter(p,decimal-leading-zero);font:italic 400 1.3rem/1 var(--serif);color:var(--akc)}
.dla{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.dla li{display:flex;gap:14px;align-items:center;font:400 1.35rem/1.3 var(--serif);color:var(--ink);padding-bottom:12px;border-bottom:1px solid var(--blush-2)}
.dla svg{color:var(--akc)}
.cenybox{background:var(--ink);color:#e2d4ce;border-radius:var(--r);padding:30px}
.cenybox h3{color:#fff}
.ceny{list-style:none;padding:0;margin:0 0 18px;display:grid;gap:14px}
.ceny li{display:flex;align-items:baseline;gap:10px}
.ceny i{flex:1;border-bottom:2px dotted rgba(255,255,255,.25);transform:translateY(-4px)}
.ceny strong{color:#fff;font:500 1.25rem/1 var(--serif);white-space:nowrap}
.cenybox__pod{display:flex;gap:.6em;align-items:center;font-size:.9rem}
.cenybox .link{color:#fff}
.dwie--terminy{align-items:end}
.chipy{display:flex;flex-wrap:wrap;gap:8px}
.chipy a{text-decoration:none;padding:.55em 1em;border-radius:999px;border:1px solid var(--linia);background:#fff;font-size:.92rem;transition:background-color .2s,color .2s}
.chipy a:hover{background:var(--ink);color:#fff}
.chipy--male a{font-size:.82rem;padding:.4em .8em;background:var(--blush);border-color:transparent}
.powrot{margin-top:24px}

/* cennik */
.plany{display:grid;gap:16px}
@media (min-width:960px){.plany{grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}}
.plan{display:flex;flex-direction:column;background:#fff;border:1px solid var(--linia);border-radius:var(--r);padding:30px}
.plan--wyroz{background:var(--ink);color:#e2d4ce;border-color:var(--ink);box-shadow:var(--cien-d)}
.plan__tag{display:inline-block;align-self:flex-start;font:600 .74rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;padding:.6em 1em;border-radius:999px;background:var(--blush);color:var(--akc)}
.plan--wyroz .plan__tag{background:rgba(255,255,255,.08);color:#ffb27d}
.plan__cena{margin:18px 0 4px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.plan__cena strong{font:400 clamp(2.4rem,2rem + 1.5vw,3.2rem)/1 var(--serif);color:var(--ink)}
.plan--wyroz .plan__cena strong{color:#fff}
.plan__pod{color:var(--szary);font-size:.92rem;padding-bottom:18px;border-bottom:1px solid var(--linia)}
.plan--wyroz .plan__pod{color:#b9a8a1;border-color:rgba(255,255,255,.12)}
.plan ul{list-style:none;padding:0;margin:4px 0 24px;display:grid;gap:10px;flex:1}
.plan li{display:flex;justify-content:space-between;gap:12px;font-size:.97rem;padding-left:22px;position:relative}
.plan li::before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;border-radius:50%;background:var(--grad)}
.plan li b{white-space:nowrap;font-weight:600}
.plan .btn{align-self:flex-start}
.plan--wyroz .btn--obrys{color:#fff;border-color:#fff}
.cennik-pt{margin-top:20px;display:grid;gap:16px;align-items:center;padding:26px 30px;border-radius:var(--r);background:var(--blush)}
.cennik-pt>svg{width:48px;height:48px;padding:12px;border-radius:50%;background:var(--grad);color:#fff}
.cennik-pt h3{margin-bottom:.2em}
.cennik-pt p{margin:0}
@media (min-width:800px){.cennik-pt{grid-template-columns:auto 1fr auto;gap:24px}}
.platnosci{display:grid;gap:12px}

/* kafelki danych (wzorzec Shiva) */
.dana{display:flex;align-items:center;gap:16px;padding:18px 20px;border-radius:var(--r-s);background:#fff;border:1px solid var(--linia);text-decoration:none;color:var(--tekst);margin-bottom:12px;transition:transform .25s,box-shadow .25s}
a.dana:hover{transform:translateY(-2px);box-shadow:var(--cien)}
.dana>svg{width:44px;height:44px;padding:11px;border-radius:50%;background:var(--blush);color:var(--akc)}
.dana strong{display:block;color:var(--ink);font-weight:600;overflow-wrap:anywhere}
.dana small{display:block;color:var(--szary);font-size:.88rem;line-height:1.5}
.dana div{min-width:0}
.dana--tel strong{font:500 1.7rem/1.1 var(--serif);color:var(--akc)}
.dana--tel>svg{background:var(--grad);color:#fff}

/* formularz */
.zapisy{display:grid;gap:36px}
.zapisy>*{min-width:0}
@media (min-width:960px){.zapisy{grid-template-columns:1.4fr 1fr;gap:64px}}
.zapisy--waskie{max-width:760px}
@media (min-width:960px){.zapisy--waskie{grid-template-columns:1fr}}
.form{display:grid;gap:16px}
.pole{display:grid;gap:6px;min-width:0}
.pole-rzad{display:grid;gap:16px}
@media (min-width:640px){.pole-rzad{grid-template-columns:1fr 1fr}}
.pole label{font-weight:500;font-size:.92rem;color:var(--ink)}
.opcjonalnie{font-weight:400;color:var(--szary)}
.pole input,.pole select,.pole textarea{width:100%;font:400 1rem/1.4 var(--sans);color:var(--ink);background:#fff;border:1.5px solid var(--linia);border-radius:var(--r-s);padding:14px 16px;min-height:52px;transition:border-color .2s,box-shadow .2s}
.pole input:focus,.pole select:focus,.pole textarea:focus{outline:0;border-color:var(--akc);box-shadow:0 0 0 4px rgba(210,54,26,.12)}
.pole textarea{resize:vertical}
.pole input[aria-invalid=true]{border-color:var(--czer)}
.pulapka{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.form__zgoda{font-size:.82rem;color:var(--szary);margin:0}
.form .btn{justify-self:start}
.form__status{margin:0;font-weight:500;color:var(--akc)}
.form--wyslano{padding:32px;border-radius:var(--r);background:var(--blush);text-align:center}
.zapisy__bok{display:grid;gap:14px;align-content:start}
.krok{display:flex;gap:16px;align-items:flex-start;padding:20px;border-radius:var(--r-s);background:var(--blush)}
.krok span{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-content:center;background:var(--ink);color:#fff;font:italic 500 1.1rem/1 var(--serif)}
.krok p{margin:0;font-size:.95rem}
.krok strong{display:block;color:var(--ink)}

/* instruktorzy */
.instr-siatka{display:grid;gap:16px}
@media (min-width:760px){.instr-siatka{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.instr-siatka{grid-template-columns:repeat(3,1fr)}}
.instr{display:flex;gap:18px;align-items:flex-start;background:#fff;border:1px solid var(--linia);border-radius:var(--r);padding:24px}
.instr--duzy{background:var(--ink);color:#e2d4ce;border-color:var(--ink)}
.instr--duzy h2{color:#fff}
@media (min-width:760px){.instr--duzy{grid-column:span 1}}
@media (min-width:1100px){.instr-siatka .instr--duzy:first-child{grid-column:span 2}}
.instr__ini{flex:none;width:64px;height:64px;border-radius:50%;display:grid;place-content:center;background:var(--grad);color:#fff;font:italic 400 1.6rem/1 var(--serif)}
.instr h2{font-size:1.8rem;margin:0 0 .15em}
.instr__co{font-size:.86rem;letter-spacing:.06em;text-transform:uppercase;color:var(--akc);margin-bottom:.8em}
.instr--duzy .instr__co{color:#ffb27d}
.instr--duzy .chipy--male a{background:rgba(255,255,255,.08);color:#f1e6e1}
.instr--duzy .chipy--male a:hover{background:#fff;color:var(--ink)}
.instr__txt{min-width:0}
.ramka{margin:0;border-radius:var(--r);overflow:hidden;max-width:460px}
.zespol{list-style:none;padding:0;margin:0;display:grid;gap:0}
.zespol li{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--blush-2)}
.zespol strong{font:500 1.3rem/1.2 var(--serif);color:var(--ink)}
.zespol span{font-size:.9rem;color:var(--szary);text-align:right}

/* warsztaty */
.wydarzenia{display:grid;gap:14px}
.wyd{display:grid;gap:16px;background:#fff;border-radius:var(--r);padding:26px;border:1px solid var(--linia)}
.wyd__data{font-size:.85rem;color:var(--szary)}
.wyd__data strong{display:block;font:400 1.6rem/1.1 var(--serif);color:var(--akc)}
.wyd p{margin:0}
@media (min-width:760px){.wyd{grid-template-columns:200px 1fr;gap:32px}}

/* galeria */
.gal{columns:1;column-gap:14px}
@media (min-width:640px){.gal{columns:2}}
@media (min-width:1000px){.gal{columns:3}}
.gal__el{break-inside:avoid;margin:0 0 14px;border-radius:var(--r-s);overflow:hidden;position:relative;background:var(--blush)}
.gal__el button{all:unset;display:block;cursor:zoom-in;width:100%}
.gal__el img{width:100%;transition:transform .6s ease}
.gal__el:hover img{transform:scale(1.04)}
.gal__el figcaption{position:absolute;left:10px;right:10px;bottom:10px;padding:8px 12px;border-radius:10px;background:rgba(20,17,16,.6);backdrop-filter:blur(8px);color:#fff;font-size:.85rem}
.lightbox{border:0;padding:0;background:transparent;max-width:min(92vw,1200px);max-height:90vh}
.lightbox::backdrop{background:rgba(20,17,16,.88)}
.lightbox img{max-height:86vh;width:auto;border-radius:var(--r-s)}
.lightbox__x{position:fixed;top:16px;right:16px;width:48px;height:48px;border-radius:50%;border:0;background:#fff;display:grid;place-content:center;cursor:pointer}
.lightbox__x svg{transform:rotate(45deg);width:22px;height:22px}

/* opinie i ocena */
.ocena{display:grid;gap:32px;align-items:center}
.ocena__liczba{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.ocena__liczba strong{font:400 6rem/1 var(--serif);color:var(--ink)}
.ocena__liczba .opinia__gwiazdki svg{width:24px;height:24px}
.ocena__liczba small{color:var(--szary)}
@media (min-width:800px){.ocena{grid-template-columns:auto 1fr;gap:72px}}

/* FAQ */
.faq{max-width:880px;display:grid;gap:10px}
.pyt{background:#fff;border:1px solid var(--linia);border-radius:var(--r-s);overflow:hidden}
.pyt summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 22px;cursor:pointer}
.pyt summary::-webkit-details-marker{display:none}
.pyt summary h2{font-size:1.35rem;margin:0}
.pyt summary svg{flex:none;width:36px;height:36px;padding:8px;border-radius:50%;background:var(--blush);color:var(--akc);transition:transform .3s,background-color .3s}
.pyt[open] summary svg{transform:rotate(45deg);background:var(--grad);color:#fff}
.pyt__odp{padding:0 22px 20px}
.pyt__odp p{margin:0;color:var(--tekst)}

/* stopka */
.stopka{position:relative;background:var(--ink);color:#b9a8a1;padding:96px 0 28px;overflow:hidden}
.stopka__cta{display:grid;gap:24px;align-items:end;padding-bottom:56px;border-bottom:1px solid rgba(255,255,255,.1)}
.stopka__haslo{color:#fff;font-size:clamp(2.6rem,1.4rem + 5vw,5.6rem);font-weight:400;margin:0;max-width:12ch}
.stopka__btn{display:flex;flex-wrap:wrap;gap:12px}
@media (min-width:900px){.stopka__cta{grid-template-columns:1fr auto}}
.stopka__grid{display:grid;gap:36px;padding:56px 0 40px}
@media (min-width:700px){.stopka__grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1050px){.stopka__grid{grid-template-columns:1.5fr 1fr 1fr 1.1fr}}
.stopka h3{color:#fff;font:600 .78rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;margin-bottom:1.2em}
.stopka ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.stopka a{color:#d9cbc5;text-decoration:none}
.stopka a:hover{color:#fff}
.stopka__marka p{margin:18px 0;max-width:34ch;font-size:.95rem}
.stopka__soc{display:inline-grid;place-content:center;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.2)}
.stopka__nap strong{color:#fff}
.stopka__dol{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);font-size:.85rem}

/* wejscia przy przewijaniu (tylko z JS) */
.js .wjazd{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.js .wjazd.on{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .js .wjazd{opacity:1;transform:none}
  .js .wstega path{stroke-dashoffset:0}
}

/* ===== runda 2 (11.10): naglowek i menu wg Shiva Dance ===== */
.site-header{position:sticky;top:0;z-index:60;background:rgba(251,248,246,.9);backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);border-bottom:1px solid var(--linia)}
.site-header__in{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;padding-block:10px}
.btn-tel{grid-column:1;justify-self:start;display:inline-flex;align-items:center;gap:8px;background:var(--grad);color:#fff;text-decoration:none;font-weight:600;font-size:.92rem;padding:11px 18px;border-radius:999px;white-space:nowrap;box-shadow:0 8px 20px -10px rgba(216,30,20,.7);transition:transform .25s,box-shadow .25s}
.btn-tel:hover{transform:translateY(-1px);box-shadow:0 12px 24px -10px rgba(216,30,20,.8)}
.logo-link{grid-column:2;justify-self:center}
.logo-link img{width:52px;height:52px}
.logo-link .logo__txt b{font-size:1.3rem}
.menu-toggle{grid-column:3;justify-self:end;border:0;background:none;padding:10px 6px;cursor:pointer;line-height:0}
.menu-toggle span{display:block;width:28px;height:3px;background:var(--ink);border-radius:3px;margin:5px 0;transition:transform .3s,opacity .2s,background-color .2s}
.menu-toggle:hover span{background:var(--akc)}
.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}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
@media (max-width:560px){
  .btn-tel{padding:10px 12px;font-size:.8rem;gap:6px}
  .btn-tel span{display:none}
  .btn-tel svg{width:20px;height:20px}
  .logo-link img{width:42px;height:42px}
  .logo-link .logo__txt b{font-size:1.05rem}
  .logo-link .logo__txt i{font-size:.52rem;letter-spacing:.36em}
}
.nav-overlay{position:fixed;inset:0;z-index:70;background:rgba(10,8,8,.55);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .4s,visibility 0s linear .4s}
.nav-overlay.open{opacity:1;visibility:visible;transition:opacity .4s,visibility 0s}
.mobile-nav{position:fixed;top:0;right:0;bottom:0;z-index:80;width:min(400px,88vw);background:linear-gradient(180deg,#26201e 0%,#141110 100%);color:#fff;padding:84px 34px 30px;display:flex;flex-direction:column;overflow-y:auto;box-shadow:-24px 0 60px rgba(0,0,0,.35);transform:translateX(104%);transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.mobile-nav.open{transform:none}
.nav-close{position:absolute;top:22px;right:24px;width:44px;height:44px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);color:#fff;cursor:pointer;display:grid;place-items:center;transition:background-color .25s,transform .3s}
.nav-close svg{transform:rotate(45deg);width:22px;height:22px}
.nav-close:hover{background:var(--akc);border-color:var(--akc);transform:rotate(90deg)}
.nav-tytul{margin:0 0 12px;font-size:.78rem;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.mobile-nav>a{display:block;padding:10px 0;text-decoration:none;color:#fff;font:800 clamp(1.05rem,2.4vw,1.3rem)/1.2 Montserrat,var(--sans);letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid rgba(255,255,255,.08);opacity:0;transform:translateX(40px);transition:opacity .45s,transform .45s,color .18s,padding-left .18s}
.mobile-nav>a:hover,.mobile-nav>a[aria-current]{color:#ff8a4c;padding-left:10px}
.mobile-nav.open>a{opacity:1;transform:none;transition-delay:calc(.08s + .03s * var(--n,0))}
.nav-dol{margin-top:auto;padding-top:24px;display:flex;gap:12px;align-items:center}
.nav-dol .btn{flex:1}
.nav-fb{display:grid;place-items:center;width:52px;height:52px;border-radius:999px;border:1px solid rgba(255,255,255,.2);color:#fff;flex:none}
.nav-fb:hover{background:var(--akc);border-color:var(--akc)}

/* hero bez leadu */
.hero__btn{margin-top:30px}

/* aktualnosci */
.akt-siatka{display:grid;gap:18px}
@media (min-width:760px){.akt-siatka{grid-template-columns:repeat(3,1fr);gap:22px}}
.akt{display:flex;flex-direction:column;background:#fff;border:1px solid var(--linia);border-radius:var(--r);overflow:hidden;box-shadow:var(--cien);transition:transform .35s,box-shadow .35s}
.akt:hover{transform:translateY(-4px);box-shadow:var(--cien-d)}
.akt__foto{margin:0;position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--blush)}
.akt__foto img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.akt:hover .akt__foto img{transform:scale(1.04)}
.akt__tag{position:absolute;left:14px;top:14px;font:600 .72rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;padding:.6em 1em;border-radius:999px;background:var(--grad);color:#fff}
.akt__txt{padding:22px 24px 26px;display:flex;flex-direction:column;gap:8px;flex:1}
.akt__txt h3{margin:0;font-size:1.55rem}
.akt__txt p{margin:0;font-size:.97rem;color:var(--szary)}
.akt__txt .link{align-self:flex-start;margin-top:auto;padding-top:8px}
p.akt__data{display:flex;align-items:center;gap:.5em;font-weight:600;color:var(--akc);font-size:.9rem}

/* karty kursow ze zdjeciem */
.kursy{display:grid;gap:16px}
@media (min-width:640px){.kursy{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1000px){.kursy{grid-template-columns:repeat(3,1fr);gap:20px}}
.kurs{display:flex;flex-direction:column;border-radius:var(--r);background:#fff;border:1px solid var(--linia);text-decoration:none;color:var(--tekst);overflow:hidden;box-shadow:var(--cien);transition:transform .35s,box-shadow .35s}
.kurs:hover{transform:translateY(-4px);box-shadow:var(--cien-d)}
.kurs__foto{margin:0;position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--ink)}
.kurs__img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.kurs:hover .kurs__img{transform:scale(1.05)}
.kurs__foto::after{content:"";position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(0deg,rgba(20,17,16,.55),transparent)}
.kurs__tag{position:absolute;left:14px;bottom:14px;z-index:1;font:600 .72rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#fff;padding:.55em .9em;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);backdrop-filter:blur(10px)}
.o-kurs .kurs__tag{position:static;color:var(--akc);background:none;border:0;padding:0;backdrop-filter:none}
.kurs__txt{padding:20px 22px 22px;display:flex;flex-direction:column;gap:8px;flex:1}
.kurs__nazwa{font-size:1.75rem;margin:0}
.kurs__txt p{margin:0;font-size:.96rem;flex:1;color:var(--szary)}
.kurs__wiecej{display:inline-flex;align-items:center;gap:.5em;font-weight:600;font-size:.92rem;color:var(--akc);margin-top:6px}
.kurs__wiecej svg{transition:transform .25s}
.kurs:hover .kurs__wiecej svg{transform:translateX(4px)}

/* oferta: miniatury */
.o-kurs__foto{margin:0;border-radius:var(--r-s);overflow:hidden;aspect-ratio:4/3}
.o-kurs__foto img{width:100%;height:100%;object-fit:cover}
@media (min-width:1000px){.o-kurs{grid-template-columns:200px 1.6fr 1.2fr auto}}
.sec__lead{max-width:56ch;margin:14px 0 0;color:var(--szary)}

/* opinie: zdjecie w tle + liquid glass */
.opinie-szklo{position:relative;isolation:isolate;overflow:hidden;color:#f4ece8}
.opinie-szklo__tlo{position:absolute;inset:0;z-index:-2}
.opinie-szklo__tlo img{width:100%;height:100%;object-fit:cover}
.opinie-szklo::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(20,17,16,.55),rgba(20,17,16,.35) 45%,rgba(20,17,16,.7))}
.opinie-szklo h2{color:#fff}
.link--jasny{color:#fff;border-color:#ff8a4c}
.slider__tor{display:grid;grid-auto-flow:column;grid-auto-columns:min(88%,440px);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:6px 2px 10px;scrollbar-width:none}
.slider__tor::-webkit-scrollbar{display:none}
@media (min-width:1000px){.slider__tor{grid-auto-columns:calc((100% - 36px) / 3)}}
.slider__tor>*{scroll-snap-align:start}
.opinia{margin:0;display:flex;flex-direction:column;gap:16px;padding:28px;border-radius:var(--r);background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.26);backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px) saturate(1.3);box-shadow:0 24px 48px -24px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.3)}
.opinia__gwiazdki{display:flex;gap:2px;color:#f6b73c}
.opinia blockquote{margin:0;flex:1}
.opinia blockquote p{margin:0;font-size:1rem;line-height:1.7;color:#fff}
.opinia figcaption{display:flex;align-items:center;gap:12px}
.opinia__ini{width:42px;height:42px;border-radius:50%;display:grid;place-content:center;background:var(--grad);color:#fff;font:500 1.1rem/1 var(--serif)}
.opinia figcaption strong{display:block;color:#fff;font-weight:600}
.opinia figcaption small{color:rgba(255,255,255,.7);font-size:.82rem}
.slider__nav{display:flex;justify-content:center;gap:14px;margin-top:26px}
.slider__btn{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;cursor:pointer;color:#fff;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.3);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:background-color .25s,color .25s,opacity .25s,transform .25s}
.slider__btn svg{width:22px;height:22px}
.slider__btn--wstecz svg{transform:rotate(180deg)}
.slider__btn:hover:not(:disabled){background:#fff;color:var(--ink);transform:translateY(-2px)}
.slider__btn:disabled{opacity:.35;cursor:default}
.ocena__liczba .opinia__gwiazdki{color:#f2a516}

/* kontakt wg Shiva Dance */
.contact{background:var(--ink);color:#e2d4ce}
.contact__h2{color:#fff;margin-bottom:clamp(28px,4vw,48px)}
.contact__h2 .kicker{display:block;font:600 .78rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:#ff9a62;margin-bottom:1.1em}
.kontakt__grid{display:grid;gap:24px}
.kontakt__grid>*{min-width:0}
@media (min-width:900px){.kontakt__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:stretch}}
.kontakt__dane{display:grid;gap:12px;align-content:start}
.contact .dana{margin:0;align-items:flex-start;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);box-shadow:0 18px 40px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.14);color:#e2d4ce}
.contact a.dana:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.3)}
.contact .dana>svg{width:24px;height:24px;padding:0;background:none;border-radius:0;color:#ff8a4c;margin-top:2px}
.contact .dana>span{flex:1;min-width:0}
.contact .dana strong{color:#fff;line-height:1.3}
.contact .dana small{color:rgba(255,255,255,.7)}
.contact .dana--tel{background:var(--grad);border-color:transparent;align-items:center}
.contact .dana--tel>svg{color:#fff;margin:0}
.contact .dana--tel strong{font:500 clamp(1.6rem,1.2rem + 1.4vw,2rem)/1.1 var(--serif);color:#fff}
.contact .dana--tel small{color:rgba(255,255,255,.9)}
.godziny{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:7px}
.godziny li{display:flex;align-items:baseline;gap:8px;font-size:.92rem;color:rgba(255,255,255,.72)}
.godziny i{flex:1;border-bottom:2px dotted rgba(255,255,255,.22);transform:translateY(-4px)}
.godziny b{color:#fff;font-weight:600;font-variant-numeric:tabular-nums}
.godziny__uwaga{display:block;font-style:normal;margin-top:10px;font-size:.88rem;font-weight:600;color:#ff9a62}
.kontakt__pary{display:grid;gap:12px}
@media (min-width:560px){.kontakt__pary{grid-template-columns:1fr 1fr}}
.kontakt__pary .dana{align-items:center}
.kontakt__pary .dana>svg{margin-top:0}
.kontakt__mapa{border-radius:var(--r);overflow:hidden;min-height:340px;background:#2a2421;border:1px solid rgba(255,255,255,.16);box-shadow:0 18px 40px rgba(0,0,0,.3)}
.kontakt__mapa iframe{width:100%;height:100%;min-height:340px;border:0;display:block}

/* wydarzenia nadchodzace */
.wyd--przed{background:linear-gradient(#fff,#fff) padding-box,var(--grad) border-box;border:1.5px solid transparent}
.stopka{border-top:1px solid rgba(255,255,255,.08)}

/* ===== runda 3 (11.10): jedna strona glowna, audyt ===== */
.sec__head{margin-bottom:clamp(28px,3.5vw,44px)}
.sec__lead{max-width:58ch;margin:14px 0 0;color:var(--szary);font-size:1.05rem}
.sec__lead a{color:var(--akc);font-weight:600}

/* filtry (kursy i grafik) */
.filtry{display:flex;gap:8px;margin:0 0 22px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.filtry::-webkit-scrollbar{display:none}
.filtry .chip{flex:none}
.ukryty{display:none!important}

/* kursy: zwarte karty, 4 w rzedzie */
.kursy{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (min-width:760px){.kursy{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}}
@media (min-width:1100px){.kursy{grid-template-columns:repeat(4,minmax(0,1fr))}}
.kurs__foto::after{display:none}
.kurs .kurs__tag{position:static;display:block;padding:0;border:0;background:none;backdrop-filter:none;color:var(--akc);font:600 .68rem/1.3 var(--sans);letter-spacing:.1em;text-transform:uppercase}
.kurs__txt{padding:14px 14px 16px;gap:6px}
.kurs__nazwa{font-size:1.3rem;line-height:1.1}
.kurs__txt p{display:none}
@media (min-width:760px){
  .kurs__txt{padding:18px 20px 20px}
  .kurs__nazwa{font-size:1.55rem}
  .kurs__txt p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:.94rem}
}

/* grafik: karty dni */
.tydzien{display:grid;gap:14px}
@media (min-width:700px){.tydzien{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1050px){.tydzien{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}}
.dzien{background:#fff;border:1px solid var(--linia);border-radius:var(--r);padding:20px 22px 10px;box-shadow:var(--cien)}
.dzien h3{display:flex;align-items:center;justify-content:space-between;font-size:1.5rem;margin:0 0 6px;padding-bottom:12px;border-bottom:1px solid var(--linia)}
.dzien__dzis{display:none;font:600 .7rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#fff;background:var(--grad);padding:.55em .9em;border-radius:999px}
.dzien.dzis{border-color:var(--akc);box-shadow:0 0 0 2px rgba(210,54,26,.15),var(--cien)}
.dzien.dzis .dzien__dzis{display:inline-block}
.dzien ul{list-style:none;margin:0;padding:0}
.zaj{display:grid;grid-template-columns:62px 1fr;gap:14px;padding:12px 0 12px 12px;border-bottom:1px solid var(--blush);position:relative}
.zaj:last-child{border-bottom:0}
.zaj::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:4px;border-radius:4px;background:var(--grad)}
.zaj--solo::before{background:var(--ink)}
.zaj--dzieci::before{background:#f2b33d}
.zaj--ruch::before{background:#8fb08d}
.zaj__czas{display:flex;flex-direction:column;font-variant-numeric:tabular-nums;font-size:.82rem;color:var(--szary);line-height:1.25}
.zaj__czas b{font-size:1.08rem;color:var(--ink);font-weight:600}
.zaj__opis{display:flex;flex-direction:column;gap:3px;min-width:0}
.zaj__opis a{font:500 1.18rem/1.2 var(--serif);color:var(--ink);text-decoration:none}
.zaj__opis a:hover{color:var(--akc)}
.zaj__opis small{font-size:.86rem;color:var(--szary)}
.zaj__opis em{font-style:normal;color:var(--akc);font-weight:600}
.chip--dzieci i{background:#f2b33d}.chip--ruch i{background:#8fb08d}

/* cennik */
.plan ul{margin-bottom:0}
.platnosc{display:flex;gap:.7em;align-items:center;margin:18px 0 0;color:var(--szary);font-size:.95rem}
.platnosc svg{color:var(--akc);width:1.3em;height:1.3em}

/* o nas + instruktorzy */
.onas{display:grid;gap:28px;align-items:center}
@media (min-width:900px){.onas{grid-template-columns:1.05fr 1fr;gap:64px}}
.onas__foto{margin:0;border-radius:var(--r);overflow:hidden;aspect-ratio:4/3;box-shadow:var(--cien-d)}
.onas__foto img{width:100%;height:100%;object-fit:cover}
.onas__txt p{font-size:1.05rem}
.fakty{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:12px}
.fakty li{display:flex;gap:12px;align-items:flex-start}
.fakty svg{flex:none;width:36px;height:36px;padding:8px;border-radius:50%;background:var(--grad);color:#fff}
.fakty span{padding-top:6px}
.instr-h{font-size:clamp(1.6rem,1.2rem + 1.5vw,2.2rem);margin:clamp(48px,6vw,80px) 0 20px}
.instr-duzi{display:grid;gap:14px}
@media (min-width:900px){.instr-duzi{grid-template-columns:1fr 1fr;gap:18px}}
.instr--duzy{display:flex;gap:18px;align-items:flex-start;background:var(--ink);color:#e2d4ce;border-radius:var(--r);padding:24px}
.instr--duzy h3{color:#fff;font-size:1.7rem;margin:0 0 .1em}
.instr--duzy p{margin:0;font-size:.95rem}
.instr--duzy .instr__co{color:#ffb27d;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:.7em}
.instr-mali{list-style:none;padding:0;margin:14px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.instr-mali li{display:flex;gap:12px;align-items:center;background:#fff;border:1px solid var(--linia);border-radius:var(--r-s);padding:12px 14px}
.instr-mali strong{display:block;color:var(--ink);font:500 1.15rem/1.2 var(--serif)}
.instr-mali small{color:var(--szary);font-size:.84rem}
.instr__ini--maly{flex:none;width:42px;height:42px;font-size:1.05rem}

/* galeria */
.gal{columns:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media (min-width:760px){.gal{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}}
.gal__el{margin:0;aspect-ratio:4/5;border-radius:var(--r-s);overflow:hidden;background:var(--blush)}
.gal__el[hidden]{display:none}
.gal__el button{height:100%}
.gal__el img{width:100%;height:100%;object-fit:cover}
.gal__wiecej{text-align:center;margin:24px 0 0}

/* pytania */
.faq-uklad{display:grid;gap:28px}
@media (min-width:900px){.faq-uklad{grid-template-columns:1fr 1.6fr;gap:64px;align-items:start}.faq-uklad>header{position:sticky;top:110px}}
.faq{max-width:none}
.pyt summary h3{font-size:1.25rem;margin:0}

/* zapisy */
.zapisy__form h2{margin-bottom:.6em}

/* pierwszy taniec */
.ptaniec__btn{display:flex;flex-wrap:wrap;gap:12px}

/* podstrona kursu */
.phero__btn{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.kurs-info{background:var(--ink);color:#e2d4ce;border-radius:var(--r);padding:28px}
.kurs-info__h{color:#fff;font-size:1.6rem;margin-bottom:.8em}
.terminy{list-style:none;padding:0;margin:0 0 20px;display:grid;gap:10px}
.terminy li{display:grid;grid-template-columns:auto 1fr;gap:2px 14px;padding:12px 14px;border-radius:var(--r-s);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}
.terminy__dzien{font:500 1.15rem/1.2 var(--serif);color:#fff}
.terminy b{justify-self:end;color:#ffb27d;font-variant-numeric:tabular-nums}
.terminy li>span:last-child{grid-column:1/-1;font-size:.86rem;color:#c8b6af}
.terminy em{font-style:normal;color:#ffb27d}
.terminy__ind{margin-bottom:20px}
.terminy__ind a{color:#ffb27d}
.kurs-info .ceny{margin-bottom:14px}
.kurs-info__pod{display:flex;gap:.6em;align-items:center;font-size:.9rem}
.kursy--4{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:1100px){.kursy--4{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* stopka bez duzego CTA */
.stopka{padding:64px 0 28px}
.stopka__grid{padding-top:0}
.stopka__kursy{columns:2;column-gap:20px}
.stopka__kursy li{break-inside:avoid;margin-bottom:8px}
@media (min-width:1050px){.stopka__grid{grid-template-columns:1.3fr 1.6fr .9fr 1.1fr}}

.chip{display:inline-flex;align-items:center;gap:.5em;min-height:44px;padding:0 18px;border-radius:999px;border:1px solid var(--linia);background:#fff;font:500 .95rem/1 var(--sans);color:var(--ink);cursor:pointer;white-space:nowrap;transition:background-color .2s,color .2s,border-color .2s}
.chip:hover{border-color:var(--ink)}
.chip i{width:10px;height:10px;border-radius:50%}
.chip--pary i{background:var(--grad)}.chip--solo i{background:var(--ink)}
.chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
@media (max-width:759px){.akt-siatka{grid-auto-flow:column;grid-auto-columns:84%;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -16px;padding:4px 16px 14px;scrollbar-width:none}.akt-siatka::-webkit-scrollbar{display:none}.akt{scroll-snap-align:start}}
.ceny li>span{min-width:0;flex:0 1 auto}.ceny i{min-width:10px}
@media (max-width:560px){.ceny li{flex-wrap:wrap;gap:4px 10px}.ceny i{display:none}.ceny strong{margin-left:auto}}

/* ===== runda 4 (11.10): jasne hero, najblizsze zajecia, instruktorzy ze zdjeciami ===== */
.hero--jasne{background:var(--papier);color:var(--tekst)}
.hero--jasne .hero__foto{display:block;position:relative;aspect-ratio:760/821;overflow:hidden}
.hero--jasne .hero__foto img{width:100%;height:100%;object-fit:cover;object-position:60% 40%}
.hero--jasne .hero__foto::after{content:"";position:absolute;inset:auto 0 0;height:30%;background:linear-gradient(0deg,var(--papier),rgba(251,248,246,0))}
.hero--jasne .hero__in{position:relative;z-index:2;display:grid;gap:24px;padding:0 0 48px;margin-top:-40px}
.hero--jasne h1{color:var(--akc)}
.hero--jasne .hero__haslo{color:var(--ink)}
.hero--jasne .hero__btn{margin:26px 0 0}
@media (min-width:900px){
  .hero--jasne{min-height:min(calc(100svh - 74px),820px);display:flex;align-items:center}
  .hero--jasne .hero__foto{position:absolute;inset:0;aspect-ratio:auto}
  .hero--jasne .hero__foto img{object-position:72% 50%}
  .hero--jasne .hero__foto::after{inset:0;height:auto;background:linear-gradient(90deg,rgba(251,248,246,.97) 0%,rgba(251,248,246,.9) 28%,rgba(251,248,246,.35) 50%,rgba(251,248,246,0) 62%)}
  .hero--jasne .hero__in{margin-top:0;padding:72px 0;align-content:center}
  .hero--jasne .hero__in>*{max-width:560px}
}
.nz{background:rgba(255,255,255,.82);backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);border:1px solid rgba(255,255,255,.9);border-radius:var(--r);padding:18px 20px 16px;box-shadow:var(--cien-d);max-width:440px}
.nz__tyt{display:flex;align-items:center;gap:.6em;margin:0 0 8px;font:600 .74rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--szary)}
.nz__lista{list-style:none;padding:0;margin:0 0 12px}
.nz__lista li{display:grid;grid-template-columns:52px 48px 1fr;align-items:baseline;gap:8px;padding:9px 0;border-bottom:1px solid var(--blush)}
.nz__lista li:last-child{border-bottom:0}
.nz__kiedy{font:600 .74rem/1 var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--akc)}
.nz__lista b{font-variant-numeric:tabular-nums;color:var(--ink)}
.nz__lista a{font:500 1.06rem/1.25 var(--serif);color:var(--ink);text-decoration:none}
.nz__lista a:hover{color:var(--akc)}
.nz .link{font-size:.92rem}

/* instruktorzy */
.osoby{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (min-width:760px){.osoby{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}
@media (min-width:1100px){.osoby{grid-template-columns:repeat(4,minmax(0,1fr))}}
.osoba{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;background:#fff;border:1px solid var(--linia);border-radius:var(--r);padding:20px 14px 18px}
.osoba__foto{width:96px;height:96px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 3px #fff,0 0 0 5px rgba(228,66,26,.55)}
.osoba h3{font-size:1.3rem;margin:0}
.osoba__co{font-size:.84rem;color:var(--szary);margin:2px 0 0}
.osoba--duza{grid-column:1/-1;flex-direction:row;text-align:left;align-items:center;gap:20px;background:var(--ink);border-color:var(--ink);color:#e2d4ce;padding:22px}
.osoba--duza .osoba__foto{width:120px;height:120px;flex:none}
.osoba--duza h3{color:#fff;font-size:1.7rem}
.osoba--duza .osoba__co{color:#ffb27d;text-transform:uppercase;letter-spacing:.06em;font-size:.78rem;margin:4px 0 8px}
.osoba--duza p:last-child{margin:0;font-size:.95rem}
@media (min-width:1100px){.osoba--duza{grid-column:span 2;grid-row:span 2}}
@media (max-width:520px){.osoba--duza{flex-direction:column;text-align:center}}

/* cennik: rowne kolumny */
.plan__tag{background:var(--blush)}

/* pasek CTA na telefonie */
.pasek-cta{position:fixed;left:12px;right:12px;bottom:12px;z-index:55;display:grid;grid-template-columns:1fr 1.4fr;gap:8px;padding:8px;border-radius:999px;background:rgba(251,248,246,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--linia);box-shadow:var(--cien-d);transform:translateY(140%);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.pasek-cta.on{transform:none}
.pasek-cta .btn{min-height:46px;padding:0 1em}
@media (min-width:900px){.pasek-cta{display:none}}
@media (max-width:899px){.stopka{padding-bottom:96px}}
@media (min-width:900px){.hero--jasne .hero__foto{width:auto;inset:0}.hero--jasne .hero__haslo{font-size:clamp(3.4rem,2rem + 3.6vw,5.4rem);max-width:none}}
@media (min-width:1100px){.osoba--duza{grid-row:auto}}
.slider--jedna .slider__tor{grid-auto-columns:minmax(0,680px);justify-content:center;overflow:visible}.slider--jedna .opinia blockquote p{font:italic 400 1.35rem/1.5 var(--serif)}
a[href^="tel"]{white-space:nowrap}
.stopka ul.stopka__kursy{display:block;columns:2;column-gap:20px}
.stopka__grid>div:nth-child(3) ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}
@media (max-width:699px){.stopka__grid{gap:28px}.stopka__marka p{margin:12px 0}}

/* audyt 3: kontrast tekstu na gradientach (biale litery min. 4,5:1) */
.btn--grad,.btn-tel,.akt__tag,.contact .dana--tel,.dana--tel,.dzien__dzis{background:var(--grad-btn)}
.contact h2 em,.ptaniec h2 em,.opinie-szklo h2 em{background:var(--grad);-webkit-background-clip:text;background-clip:text}
.zapisy__bok .dana--tel{border-color:transparent}.zapisy__bok .dana--tel strong,.zapisy__bok .dana--tel small{color:#fff}.zapisy__bok .dana--tel>svg{background:rgba(255,255,255,.18);color:#fff}
