/* clinic calm: porcelain white, cool mint, deep teal ink; slow, soft motion */
:root{--bg:#f7faf9;--ink:#0f2a2c;--mu:#58706f;--mint:#bfe7dc;--teal:#13706b;--card:#ffffff;--line:rgba(15,42,44,.12);
--disp:'Manrope',system-ui,sans-serif;--body:'DM Sans',system-ui,sans-serif;color-scheme:light}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.65 var(--body)}
a{color:inherit}
.nav{position:fixed;z-index:30;top:44px;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:14px max(16px,4vw)}
.logo{display:flex;align-items:center;gap:10px;font:800 19px var(--disp);letter-spacing:-.02em;text-decoration:none;background:rgba(255,255,255,.8);backdrop-filter:blur(10px);padding:9px 16px 9px 12px;border-radius:99px}
.dot{width:14px;height:14px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 5px var(--mint)}
.nav-links{display:flex;gap:24px;align-items:center;font-weight:500;background:rgba(255,255,255,.75);backdrop-filter:blur(10px);padding:6px 6px 6px 20px;border-radius:99px}.nav-links a{text-decoration:none}
.pill{background:var(--teal);color:#fff;padding:9px 18px;border-radius:99px}
.nav-toggle{display:none;background:#fff;border:0;width:44px;height:44px;border-radius:50%;padding:12px;cursor:pointer}.nav-toggle span{display:block;height:2px;background:var(--ink);margin:5px 0}
@media(max-width:760px){.nav-toggle{display:block}.nav-links{display:none;position:absolute;top:100%;left:16px;right:16px;flex-direction:column;border-radius:20px;padding:20px}.nav-links.open{display:flex}}
.sticky{position:sticky;top:0;height:100vh;overflow:hidden}
.open{height:250vh;position:relative}
.open .sticky{display:grid;place-items:center}
.circle{position:absolute;inset:0;clip-path:circle(calc(14vmin + var(--p,0)*var(--p,0)*90vmax) at 50% 50%)}
.circle img{width:100%;height:100%;object-fit:cover;transform:scale(calc(1.25 - var(--p,0)*.25))}
.half{position:absolute;top:50%;margin:0;font:800 clamp(52px,10vw,170px)/1 var(--disp);letter-spacing:-.06em;transform:translateY(-50%)}
.half.l{right:calc(50% + 15vmin + var(--p,0)*60vw)}
.half.r{left:calc(50% + 15vmin + var(--p,0)*60vw);color:var(--teal)}
.sub{position:absolute;bottom:14vh;left:0;right:0;text-align:center;color:var(--mu);margin:0;padding:0 16px;opacity:calc(1 - var(--p,0)*4)}
.btn{display:inline-block;background:var(--teal);color:#fff;text-decoration:none;font-weight:700;padding:16px 28px;border-radius:99px;transition:transform .2s,box-shadow .2s;box-shadow:0 14px 30px -14px rgba(19,112,107,.8)}
.btn:hover,.btn:focus-visible{transform:translateY(-3px)}
.after{position:absolute;bottom:10vh;opacity:calc(var(--p,0)*3 - 1.8)}
@media(max-width:700px){.half{top:auto;bottom:auto;transform:none;font-size:15vw}.half.l{top:22%;right:auto;left:calc(16px - var(--p,0)*100vw)}.half.r{top:auto;bottom:28%;left:auto;right:calc(16px - var(--p,0)*100vw)}}
.leczenie{max-width:1200px;margin:0 auto;padding:clamp(80px,10vw,140px) max(16px,4vw)}
.head{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;flex-wrap:wrap;margin-bottom:44px}
h2{font:800 clamp(40px,5.6vw,80px)/1 var(--disp);letter-spacing:-.05em;margin:0}
.head p{max-width:38ch;color:var(--mu);margin:0}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.grid article{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:26px;display:flex;flex-direction:column;gap:8px;transition:transform .4s,box-shadow .4s}
.grid article:hover{transform:translateY(-6px);box-shadow:0 30px 50px -30px rgba(15,42,44,.35)}
.ic{width:46px;height:46px;border-radius:14px;background:var(--mint);display:grid;place-items:center;color:var(--teal);font-size:22px}
.grid h3{font:800 20px var(--disp);margin:8px 0 0;letter-spacing:-.02em}.grid p{color:var(--mu);margin:0;font-size:15px;flex:1}.grid b{color:var(--teal)}
@media(max-width:960px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.grid{grid-template-columns:1fr}}
.steps{height:300vh;position:relative;background:var(--ink);color:#e9f4f2}
.steps .sticky{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(24px,5vw,80px);align-items:center;padding:100px max(16px,5vw) 40px}
.st-list{list-style:none;margin:0;padding:0;display:grid;gap:26px}
.st-list li{display:flex;gap:20px;opacity:.28;transition:opacity .5s,transform .5s;transform:translateX(-10px)}
.st-list li.on{opacity:1;transform:none}
.st-list span{font:800 16px var(--disp);color:var(--mint);padding-top:6px}
.st-list h3{font:800 clamp(26px,3vw,40px)/1.05 var(--disp);margin:0 0 6px;letter-spacing:-.03em}.st-list p{margin:0;color:#b5cbc8}
.st-pics{position:relative;aspect-ratio:4/3;border-radius:28px;overflow:hidden}
.st-pics img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.08);transition:opacity .8s,transform 1.2s}
.st-pics img.on{opacity:1;transform:none}
@media(max-width:820px){.steps .sticky{grid-template-columns:1fr;align-content:center;gap:24px}.st-pics{aspect-ratio:16/9;order:-1}.st-list{gap:14px}.st-list p{font-size:14px}}
.nums{max-width:1100px;margin:0 auto;padding:clamp(70px,9vw,120px) max(16px,4vw);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;text-align:center}
.nums b{display:block;font:800 clamp(56px,7vw,96px)/1 var(--disp);color:var(--teal);letter-spacing:-.05em;font-variant-numeric:tabular-nums}.nums span{color:var(--mu)}
@media(max-width:700px){.nums{grid-template-columns:1fr}}
.kontakt{max-width:1100px;margin:0 auto;padding:0 max(16px,4vw) clamp(70px,9vw,120px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}
.smile{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:50%}
.tel{font:800 44px var(--disp);color:var(--teal);margin:10px 0}.kontakt p{color:var(--mu)}
@media(max-width:760px){.kontakt{grid-template-columns:1fr}.smile{max-width:320px;margin:auto}}
.foot{text-align:center;padding:30px 16px;border-top:1px solid var(--line);color:var(--mu)}
a:focus-visible{outline:2px solid var(--teal);outline-offset:3px}
