/* powder room: blush, warm milk, plum ink; soft blobs and arches, slow easing */
:root{--bg:#fbf3f1;--ink:#3a1f2b;--mu:#8c6b74;--blush:#f2c4c7;--rose:#d9707f;--milk:#fffaf7;--line:rgba(58,31,43,.12);
--disp:'Fraunces',Georgia,serif;--body:'Manrope',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:16px max(16px,4vw)}
.logo{font:600 25px var(--disp);text-decoration:none;letter-spacing:-.02em}.logo i{font-weight:400;color:var(--rose);margin-left:2px}
.nav-links{display:flex;gap:24px;align-items:center;font-weight:600;font-size:15px}.nav-links a{text-decoration:none}
.pill{background:var(--ink);color:var(--milk);padding:9px 20px;border-radius:99px}
.nav-toggle{display:none;background:none;border:0;width:42px;height:42px;padding:10px;cursor:pointer}.nav-toggle span{display:block;height:2px;background:var(--ink);margin:6px 0}
@media(max-width:760px){.nav-toggle{display:block}.nav-links{display:none;position:absolute;top:100%;left:16px;right:16px;flex-direction:column;background:var(--milk);padding:22px;border-radius:22px;box-shadow:0 20px 40px -20px rgba(58,31,43,.4)}.nav-links.open{display:flex}}
.sticky{position:sticky;top:0;height:100vh;overflow:hidden}
.hero{height:200vh;position:relative}
.hero .sticky{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:40px;padding:110px max(16px,5vw) 40px}
.blobs{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.blobs span{position:absolute;border-radius:50%;filter:blur(60px);opacity:.7;animation:float 14s ease-in-out infinite}
.blobs span:nth-child(1){width:46vmax;height:46vmax;background:var(--blush);left:-10vmax;top:-12vmax}
.blobs span:nth-child(2){width:34vmax;height:34vmax;background:#f7dccf;right:-8vmax;bottom:-10vmax;animation-delay:-5s}
.blobs span:nth-child(3){width:24vmax;height:24vmax;background:#e9b9d0;left:40%;top:30%;animation-delay:-9s}
@keyframes float{50%{transform:translate(4vmax,-3vmax) scale(1.1)}}
.arch{position:relative;order:2;justify-self:center;width:min(440px,80%);aspect-ratio:3/4;border-radius:999px 999px 24px 24px;overflow:hidden;clip-path:inset(calc(40% - var(--p,0)*80%) 0 0 0 round 999px 999px 24px 24px);box-shadow:0 40px 80px -40px rgba(58,31,43,.5)}
.arch img{width:100%;height:100%;object-fit:cover;transform:scale(calc(1.3 - var(--p,0)*.6))}
.hero-copy{position:relative}
.kick{font:700 12px var(--body);letter-spacing:.3em;text-transform:uppercase;color:var(--rose);margin:0 0 14px}
h1{font:400 clamp(52px,7.5vw,118px)/.95 var(--disp);letter-spacing:-.04em;margin:0 0 22px}
.lead{max-width:40ch;color:var(--mu);margin:0 0 28px}
.btn{display:inline-block;background:var(--rose);color:#fff;text-decoration:none;font-weight:700;padding:16px 30px;border-radius:99px;transition:transform .3s,box-shadow .3s;box-shadow:0 18px 30px -16px rgba(217,112,127,.9)}
.btn:hover,.btn:focus-visible{transform:translateY(-3px)}
@media(max-width:800px){.hero .sticky{grid-template-columns:1fr;align-content:center;gap:24px}.arch{order:0;width:min(260px,70%)}h1{font-size:44px}.lead{font-size:15px;margin-bottom:18px}}
.stack{max-width:1100px;margin:0 auto;padding:clamp(60px,8vw,110px) max(16px,4vw) 120px}
.st-title{font:400 clamp(48px,7vw,104px)/1 var(--disp);letter-spacing:-.04em;margin:0 0 40px;text-align:center}
.sc{position:sticky;top:120px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--milk);border-radius:32px;overflow:hidden;margin-bottom:28px;min-height:min(62vh,520px);box-shadow:0 -20px 50px -30px rgba(58,31,43,.35);border:1px solid var(--line);animation:shrink linear both;animation-timeline:view();animation-range:exit-crossing 0% exit-crossing 100%}
.sc:nth-of-type(2){top:140px}.sc:nth-of-type(3){top:160px}.sc:nth-of-type(4){top:180px}
@keyframes shrink{to{transform:scale(.9);filter:brightness(.9)}}
.sc img{width:100%;height:100%;object-fit:cover;min-height:260px}
.sc div{padding:clamp(26px,4vw,52px);display:flex;flex-direction:column;justify-content:center;gap:8px}
.no{font:400 15px var(--disp);color:var(--rose);margin:0}
.sc h3{font:400 clamp(30px,3.6vw,50px)/1.02 var(--disp);letter-spacing:-.03em;margin:0}
.sc p{color:var(--mu);margin:0}.sc b{margin-top:10px;font-weight:700}
@media(max-width:760px){.sc{grid-template-columns:1fr;top:100px}.sc:nth-of-type(n){top:100px}.sc img{height:200px;min-height:0}}
.cennik{max-width:1150px;margin:0 auto;padding:clamp(60px,8vw,110px) max(16px,4vw);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}
.pics{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pics img{width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;border-radius:999px 999px 20px 20px}
.cennik h2,.zapisy h2{font:400 clamp(44px,6vw,90px)/1 var(--disp);letter-spacing:-.04em;margin:0 0 28px}
.row{display:flex;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid var(--line);margin:0}
.row b{font:400 20px var(--disp);color:var(--rose);white-space:nowrap}
@media(max-width:800px){.cennik{grid-template-columns:1fr}}
.zapisy{text-align:center;padding:clamp(70px,10vw,130px) 16px;background:var(--blush);border-radius:40px 40px 0 0}
.zapisy p{color:var(--ink)}.tel{font:400 46px var(--disp);margin:6px 0 18px}
.foot{text-align:center;padding:24px 16px 40px;background:var(--blush);color:var(--mu)}
a:focus-visible{outline:2px solid var(--rose);outline-offset:3px}
@media (prefers-reduced-motion:reduce){.blobs span{animation:none}.sc{animation:none}}
