:root{--bg:#F7EFEC;--bg2:#F1E4E0;--plum:#3E1A2B;--wine:#7A2240;--rose:#C77D8E;--blush:#E9C9C6;--gold:#C9A46A;--ink:#2B1620;--muted:#8a6a74;--line:#e6d3cf;--acc:#7A2240}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Jost',system-ui,sans-serif;font-weight:400;background:var(--bg);color:var(--ink);line-height:1.65;overflow-x:hidden;transition:background .8s}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
img,svg{display:block}
h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;line-height:1.02}
h1 em,h2 em,h3 em{font-style:italic;font-weight:500;color:var(--acc);transition:color .8s}
.wrap{width:min(1180px,92%);margin:0 auto}
section{padding:110px 0;position:relative}
.k{display:inline-flex;align-items:center;gap:10px;font-size:.74rem;letter-spacing:.32em;text-transform:uppercase;color:var(--rose);font-weight:500;margin-bottom:14px}
.k:before{content:'';width:28px;height:1px;background:currentColor}
.sh{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:50px;flex-wrap:wrap}
.sh h2{font-size:clamp(2.6rem,5.4vw,4.4rem)}
.sh p{max-width:420px;color:var(--muted)}
.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 28px;border-radius:999px;font-weight:500;letter-spacing:.06em;font-size:.92rem;transition:transform .25s,box-shadow .25s,background .3s,color .3s;position:relative;overflow:hidden}
.btn-p{background:var(--plum);color:#fff;box-shadow:0 14px 30px -14px rgba(62,26,43,.8)}
.btn-p:after{content:'';position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);transition:left .7s}
.btn-p:hover:after{left:120%}
.btn-p:hover{transform:translateY(-3px)}
.btn-o{border:1px solid var(--ink)}
.btn-o:hover{background:var(--ink);color:#fff}
.btn[disabled]{opacity:.35;pointer-events:none}

/* header */
header{position:sticky;top:0;z-index:100;background:rgba(247,239,236,.86);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:76px;gap:20px}
.logo{font-family:'Cormorant Garamond';font-style:italic;font-size:2rem;line-height:.8;font-weight:600}
.logo small{display:block;font-family:'Jost';font-style:normal;font-size:.56rem;letter-spacing:.42em;color:var(--rose);margin-top:5px;font-weight:500}
.menu{display:flex;gap:34px}
.menu a{font-size:.86rem;letter-spacing:.12em;text-transform:uppercase;position:relative;padding:6px 0}
.menu a:after{content:'';position:absolute;left:50%;bottom:0;width:5px;height:5px;border-radius:50%;background:var(--acc);transform:translateX(-50%) scale(0);transition:transform .3s}
.menu a:hover:after,.menu a.on:after{transform:translateX(-50%) scale(1)}
.menu a.on{color:var(--acc)}
.cta{padding:12px 22px;border-radius:999px;background:var(--plum);color:#fff;font-size:.82rem;letter-spacing:.1em;text-transform:uppercase}
.burger{display:none;width:44px;height:44px;border-radius:50%;border:1px solid var(--line);font-size:1.1rem}
.mnav{display:none}

/* glitter cursor */
#glit{position:fixed;inset:0;pointer-events:none;z-index:300}

/* intro */
#intro{position:fixed;inset:0;z-index:500;background:radial-gradient(ellipse at 50% 40%,#5a2640,#2a0f1c 70%);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#f6e6ea;user-select:none;-webkit-user-select:none;overflow:hidden}
#intro:before{content:'';position:absolute;inset:0;background:repeating-radial-gradient(circle at 30% 20%,rgba(255,255,255,.025) 0 2px,transparent 2px 5px);pointer-events:none}
#intro .ttl{font-family:'Cormorant Garamond';font-style:italic;font-size:clamp(2.2rem,5vw,3.6rem);line-height:1;text-align:center;position:relative;z-index:2}
#intro .sub{font-size:.78rem;letter-spacing:.3em;text-transform:uppercase;color:#e2b7c3;margin-top:10px;position:relative;z-index:2}
.bignail{position:relative;width:min(190px,40vw,24vh);aspect-ratio:.6;margin:28px 0 22px;touch-action:none;z-index:2}
.bignail .fing{position:absolute;left:-16%;right:-16%;top:24%;bottom:-22%;border-radius:46% 46% 18px 18px/30% 30% 18px 18px;background:linear-gradient(90deg,#d9a796,#f0c9b9 40%,#f3d1c2 60%,#d9a796);box-shadow:0 30px 60px -20px #000}
.bignail svg,.bignail canvas{position:absolute;inset:0;width:100%;height:100%}
.bignail canvas{cursor:crosshair}
.pbar{width:min(300px,70vw);height:3px;background:rgba(255,255,255,.15);border-radius:3px;position:relative;z-index:2}
.pbar i{display:block;height:100%;width:0;background:#f6e6ea;transition:width .2s}
#intro .hint{margin-top:14px;font-size:.88rem;color:#d6aab7;position:relative;z-index:2}
#intro .row{display:flex;gap:12px;margin-top:16px;position:relative;z-index:2}
#intro .row button{padding:9px 18px;border:1px solid rgba(255,255,255,.3);border-radius:999px;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase}
.lamp{position:absolute;left:50%;top:-60%;width:min(520px,94vw);aspect-ratio:1.6;transform:translateX(-50%);border-radius:50% 50% 14px 14px/80% 80% 14px 14px;background:linear-gradient(#fff,#e9e3ea);box-shadow:0 20px 40px -10px #000;transition:top .8s cubic-bezier(.5,0,.3,1.2);z-index:3;display:flex;align-items:flex-end;justify-content:center}
.lamp:after{content:'';position:absolute;left:8%;right:8%;bottom:-6px;height:14px;border-radius:10px;background:#8f5bff;box-shadow:0 0 40px 20px rgba(143,91,255,.7),0 0 120px 60px rgba(143,91,255,.35);opacity:0;transition:opacity .3s}
.lamp.on:after{opacity:1;animation:uv .5s infinite alternate}
@keyframes uv{to{box-shadow:0 0 50px 26px rgba(143,91,255,.9),0 0 160px 80px rgba(143,91,255,.45)}}
.lamp b{font-family:'Cormorant Garamond';font-size:3rem;color:#5a2640;margin-bottom:16%;font-variant-numeric:tabular-nums}
.lamp span{position:absolute;top:18%;font-size:.7rem;letter-spacing:.3em;color:#a68aa0}
#intro.uv{background:radial-gradient(ellipse at 50% 40%,#4b2a7a,#1a0b2c 70%)}
#intro.out{animation:iout 1s cubic-bezier(.7,0,.3,1) forwards}
@keyframes iout{to{clip-path:circle(0% at 50% 50%);visibility:hidden}}
#intro{clip-path:circle(150% at 50% 50%)}
#intro .skip{position:absolute;top:22px;right:22px;padding:9px 16px;border:1px solid rgba(255,255,255,.25);border-radius:999px;font-size:.74rem;letter-spacing:.2em;z-index:5}

/* hero */
.hero{padding:60px 0 30px;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.hero h1{font-size:clamp(3.2rem,7.6vw,6.8rem);letter-spacing:-.01em}
.hero h1 .l{display:inline-block;transition:transform .5s cubic-bezier(.3,1.6,.5,1),color .3s}
.hero h1 .l:hover{transform:translateY(-12px) rotate(-6deg);color:var(--acc)}
.hero p{font-size:1.1rem;color:var(--muted);max-width:480px;margin:22px 0 32px}
.btns{display:flex;gap:12px;flex-wrap:wrap}
.stars{margin-top:30px;font-size:.9rem;color:var(--muted)}
.stars b{color:var(--gold);letter-spacing:.2em}
.fan{position:relative;aspect-ratio:1;width:100%;max-width:540px;margin-left:auto}
.fan .tip{position:absolute;left:50%;bottom:48.4%;width:13%;aspect-ratio:.6;transform-origin:50% 280%;transform:translateX(-50%) rotate(0deg);transition:transform 1.1s cubic-bezier(.3,1.3,.4,1),filter .3s;cursor:pointer;filter:drop-shadow(0 10px 10px rgba(62,26,43,.25))}
.fan .tip svg{width:100%;height:100%;overflow:visible;transition:transform .35s cubic-bezier(.3,1.6,.5,1)}
.fan .tip:hover svg,.fan .tip.on svg{transform:translateY(-16%) scale(1.08)}
.fan .ring{position:absolute;left:50%;bottom:14%;width:22%;aspect-ratio:1;transform:translateX(-50%);border-radius:50%;border:10px solid var(--gold);box-shadow:inset 0 0 0 2px rgba(0,0,0,.1),0 10px 20px -8px rgba(0,0,0,.3)}
.fan .lbl{position:absolute;left:0;right:0;top:2%;text-align:center;font-family:'Cormorant Garamond';font-style:italic;font-size:1.7rem;color:var(--acc);transition:color .4s}
.wave{position:fixed;border-radius:50%;pointer-events:none;z-index:90;transform:translate(-50%,-50%) scale(0);opacity:.55;animation:wave 1s cubic-bezier(.3,.6,.3,1) forwards}
@keyframes wave{to{transform:translate(-50%,-50%) scale(1);opacity:0}}

/* cat eye */
.cat{background:var(--plum);color:#f6e6ea;overflow:hidden}
.cat .wrap{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.cat h2{font-size:clamp(2.6rem,5.4vw,4.4rem)}
.cat h2 em{color:#e9b3c4}
.cat p{color:#d6b4bf;margin:18px 0 26px;max-width:440px}
.catnail{position:relative;width:min(300px,70vw);aspect-ratio:.6;margin:auto;touch-action:none;cursor:none}
.catnail svg{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 30px 40px rgba(0,0,0,.5))}
.magnet{position:fixed;width:46px;height:46px;pointer-events:none;z-index:120;transform:translate(-50%,-50%);opacity:0;transition:opacity .3s;font-size:2rem;line-height:46px;text-align:center}
.magnet.on{opacity:1}
.sw{display:flex;gap:12px;flex-wrap:wrap}
.sw button{width:42px;height:42px;border-radius:50%;border:2px solid transparent;box-shadow:inset 0 0 0 3px var(--plum);transition:transform .2s,border-color .2s}
.sw button.on{border-color:#f6e6ea;transform:scale(1.12)}

/* before after */
.ba{position:relative;aspect-ratio:1.6;max-width:880px;margin:0 auto;border-radius:26px;overflow:hidden;background:var(--bg2);touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:ew-resize}
.ba .lay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.ba .lay svg{width:86%;height:auto}
.ba .aft{clip-path:inset(0 0 0 var(--x,50%));background:linear-gradient(135deg,#f3e1e4,#ead0d6)}
.ba .hd{position:absolute;top:0;bottom:0;left:var(--x,50%);width:2px;background:#fff;transform:translateX(-50%);box-shadow:0 0 10px rgba(0,0,0,.2)}
.ba .hd:after{content:'⟷';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:54px;height:54px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;color:var(--plum);font-size:1.3rem;box-shadow:0 8px 20px -6px rgba(0,0,0,.3)}
.ba .tg{position:absolute;top:20px;padding:6px 14px;border-radius:999px;background:rgba(255,255,255,.85);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase}

/* bottles shelf */
.shelf{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;align-items:end;position:relative;padding-bottom:26px}
.shelf:after{content:'';position:absolute;left:-2%;right:-2%;bottom:0;height:22px;border-radius:6px;background:linear-gradient(#e8d6cf,#d6bfb6);box-shadow:0 20px 30px -16px rgba(62,26,43,.5)}
.bot{display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;z-index:1}
.bot .bt{position:relative;width:62%;max-width:150px;aspect-ratio:.62;transition:transform .5s cubic-bezier(.3,1.5,.5,1)}
.bot .cap{position:absolute;left:30%;right:30%;top:0;height:42%;border-radius:8px 8px 4px 4px;background:linear-gradient(90deg,#1b0d14,#4a2a38 40%,#1b0d14);transition:transform .6s cubic-bezier(.3,1.4,.5,1);transform-origin:50% 100%;z-index:2}
.bot .cap:after{content:'';position:absolute;left:35%;width:30%;top:100%;height:60%;background:#2b1620;border-radius:0 0 6px 6px}
.bot .gl{position:absolute;left:4%;right:4%;bottom:0;height:62%;border-radius:22% 22% 18% 18%/30% 30% 18% 18%;background:var(--c);box-shadow:inset -12px 0 20px rgba(0,0,0,.25),inset 10px 0 14px rgba(255,255,255,.25),0 20px 30px -14px rgba(0,0,0,.4);overflow:hidden}
.bot .gl:before{content:'';position:absolute;left:14%;top:8%;width:12%;height:70%;border-radius:20px;background:rgba(255,255,255,.45)}
.bot .gl span{position:absolute;left:18%;right:18%;top:58%;padding:6px 4px;background:rgba(255,255,255,.88);border-radius:4px;font-family:'Cormorant Garamond';font-style:italic;font-size:1.05rem;color:var(--plum);line-height:1}
.bot:hover .bt{transform:rotate(-6deg) translateY(-8px)}
.bot:hover .cap{transform:translateY(-70%) rotate(18deg)}
.bot h3{font-size:1.6rem;margin-top:18px}
.bot p{font-size:.88rem;color:var(--muted);max-width:220px;margin-top:4px}
.drip{position:absolute;left:50%;top:42%;width:8px;height:0;background:var(--c);border-radius:0 0 6px 6px;transform:translateX(-50%);transition:height .5s .2s;z-index:1}
.bot:hover .drip{height:22%}

/* about */
.about .wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center}
.pola{width:100%;background:#fff;padding:16px 16px 60px;box-shadow:0 30px 50px -24px rgba(62,26,43,.5);transform:rotate(-4deg);transition:transform .5s cubic-bezier(.3,1.4,.5,1);max-width:400px;margin:auto;position:relative}
.pola:hover{transform:rotate(2deg) scale(1.03)}
.pola .ph{aspect-ratio:1;background:radial-gradient(circle at 50% 38%,#f3d6cc 0 14%,transparent 15%),radial-gradient(ellipse at 50% 100%,var(--rose) 0 38%,transparent 39%),linear-gradient(160deg,#e9c9c6,#c77d8e);display:flex;align-items:flex-end;justify-content:center;overflow:hidden;position:relative}
.pola .cap2{position:absolute;bottom:16px;left:0;right:0;text-align:center;font-family:'Cormorant Garamond';font-style:italic;font-size:1.5rem}
.pola .tape{position:absolute;top:-14px;left:50%;width:110px;height:30px;background:rgba(233,201,198,.8);transform:translateX(-50%) rotate(3deg)}
.nums{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}
.nums b{display:block;font-family:'Cormorant Garamond';font-size:3.2rem;line-height:1;color:var(--acc);transition:color .8s}
.nums span{font-size:.85rem;color:var(--muted)}
.ticks{list-style:none;margin-top:22px;display:grid;gap:8px}
.ticks li:before{content:'✦ ';color:var(--gold)}

/* reviews marquee */
.rev{overflow:hidden;padding:80px 0;background:var(--bg2)}
.mq{display:flex;gap:24px;width:max-content;animation:mq 50s linear infinite}
.rev:hover .mq{animation-play-state:paused}
@keyframes mq{to{transform:translateX(-50%)}}
.rc{width:360px;background:#fff;border-radius:22px;padding:28px;box-shadow:0 14px 30px -20px rgba(62,26,43,.4);flex:none}
.rc .st{color:var(--gold);letter-spacing:.25em}
.rc q{display:block;font-family:'Cormorant Garamond';font-style:italic;font-size:1.4rem;line-height:1.25;margin:12px 0}
.rc small{color:var(--muted)}

/* footer */
footer{background:var(--plum);color:#d6b4bf;padding:70px 0 90px}
footer .wrap{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px}
footer .logo{color:#f6e6ea}
footer h4{font-family:'Cormorant Garamond';font-size:1.4rem;color:#f6e6ea;margin-bottom:10px;font-weight:600}
footer li{list-style:none;font-size:.92rem}
.copy{margin-top:36px;font-size:.78rem;opacity:.6}
.toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%,calc(100% + 60px));background:var(--plum);color:#fff;padding:13px 24px;border-radius:999px;z-index:400;transition:transform .45s cubic-bezier(.3,1.4,.5,1);white-space:nowrap;max-width:92vw;overflow:hidden;text-overflow:ellipsis;font-size:.92rem}
.toast.on{transform:translate(-50%,0)}

/* page hero */
.phero{padding:80px 0 40px;position:relative;overflow:hidden}
.phero h1{font-size:clamp(3rem,7vw,6rem)}
.phero p{max-width:620px;color:var(--muted);font-size:1.08rem;margin-top:16px}
.crumb{font-size:.72rem;letter-spacing:.3em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}
.crumb a{color:var(--rose)}

/* nails generic */
.hand{width:100%;height:auto;overflow:visible}
.pt{transform-box:fill-box;transform-origin:50% 100%;animation:paint .8s cubic-bezier(.5,0,.3,1) both;animation-delay:var(--d,0s)}
@keyframes paint{from{transform:scaleY(0)}}
.nl{transition:transform .35s cubic-bezier(.3,1.6,.5,1);cursor:pointer}
.nl.sel .ed{stroke:var(--gold);stroke-width:2.4}
.tw{animation:tw 1.6s infinite alternate}
@keyframes tw{from{opacity:.35}to{opacity:1}}
.shp path{transition:d .6s cubic-bezier(.3,1.3,.5,1)}

/* kreator */
.kr{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:start}
.stage{position:sticky;top:96px;background:linear-gradient(160deg,#f6e4e6,#ead2d8);border-radius:30px;padding:30px 20px 0;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.6)}
.stage .cush{position:absolute;left:8%;right:8%;bottom:-40px;height:110px;border-radius:50%;background:radial-gradient(ellipse,#fff 0,#f2dfe2 60%,transparent 70%)}
.stage .lamp2{position:absolute;left:50%;top:-80%;width:90%;aspect-ratio:2.2;transform:translateX(-50%);border-radius:50% 50% 16px 16px/90% 90% 16px 16px;background:linear-gradient(#fff,#ece6ee);box-shadow:0 20px 40px -10px rgba(0,0,0,.4);transition:top .8s cubic-bezier(.5,0,.3,1.2);z-index:5;display:flex;align-items:flex-end;justify-content:center}
.stage .lamp2:after{content:'';position:absolute;left:8%;right:8%;bottom:-6px;height:12px;border-radius:10px;background:#8f5bff;box-shadow:0 0 40px 20px rgba(143,91,255,.7),0 0 120px 70px rgba(143,91,255,.3);opacity:0;transition:opacity .3s}
.stage.uv .lamp2{top:-6%}
.stage.uv .lamp2:after{opacity:1;animation:uv .5s infinite alternate}
.stage.uv{background:linear-gradient(160deg,#cdb6f2,#a88ad8)}
.stage .lamp2 b{font-family:'Cormorant Garamond';font-size:2.6rem;color:var(--plum);margin-bottom:10%;font-variant-numeric:tabular-nums}
.stage .shine{position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.75) 50%,transparent 65%);transform:translateX(-120%);pointer-events:none;z-index:4}
.stage.cured .shine{animation:shine 1.2s ease-out}
@keyframes shine{to{transform:translateX(120%)}}
.stage .tip2{position:relative;z-index:3;text-align:center;font-size:.85rem;color:var(--muted);padding:10px 0 20px}
.panel{background:#fff;border-radius:26px;padding:28px;box-shadow:0 20px 40px -26px rgba(62,26,43,.5)}
.panel h4{font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin:22px 0 10px;font-weight:500;display:flex;justify-content:space-between;gap:4px 12px;flex-wrap:wrap}
.panel h4:first-child{margin-top:0}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.chips button{padding:9px 14px;border-radius:999px;border:1px solid var(--line);font-size:.86rem;transition:all .25s}
.chips button.on{background:var(--plum);color:#fff;border-color:var(--plum)}
.chips button:active{transform:scale(.94)}
.pal{display:grid;grid-template-columns:repeat(8,1fr);gap:8px}
.pal button{aspect-ratio:1;border-radius:50%;box-shadow:inset 0 -6px 10px rgba(0,0,0,.18),inset 4px 4px 6px rgba(255,255,255,.35);transition:transform .25s cubic-bezier(.3,1.6,.5,1);position:relative}
.pal button:hover{transform:scale(1.15)}
.pal button.on:after{content:'';position:absolute;inset:-5px;border-radius:50%;border:2px solid var(--ink)}
input[type=range]{width:100%;accent-color:var(--plum)}
.sum{display:flex;justify-content:space-between;align-items:end;margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}
.sum b{font-family:'Cormorant Garamond';font-size:2.6rem;line-height:1;color:var(--acc);font-variant-numeric:tabular-nums}
.sum small{display:block;color:var(--muted);font-size:.82rem}
.mini{font-size:.82rem;color:var(--muted);margin-top:8px}

/* cennik */
.tabs{display:inline-flex;gap:4px;padding:5px;border-radius:999px;background:#fff;position:relative;margin-bottom:30px;box-shadow:0 10px 24px -18px rgba(62,26,43,.5);max-width:100%;overflow-x:auto}
.tabs button{padding:11px 22px;border-radius:999px;position:relative;z-index:1;transition:color .3s;font-size:.9rem;white-space:nowrap}
.tabs button.on{color:#fff}
.tabs .pill{position:absolute;top:5px;bottom:5px;border-radius:999px;background:var(--plum);transition:left .45s cubic-bezier(.3,1.3,.5,1),width .45s cubic-bezier(.3,1.3,.5,1)}
.cen{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:start}
.svc{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:20px 22px;border-radius:20px;background:#fff;margin-bottom:12px;cursor:pointer;transition:transform .3s cubic-bezier(.3,1.4,.5,1),box-shadow .3s;border:1px solid transparent;opacity:0;animation:svcin .5s forwards;animation-delay:var(--d)}
@keyframes svcin{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:none}}
.svc:hover{transform:translateX(6px);box-shadow:0 14px 30px -20px rgba(62,26,43,.5)}
.svc.on{border-color:var(--plum);background:#fdf6f7}
.svc .ck{width:26px;height:26px;border-radius:50%;border:1.5px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:.8rem;transition:all .3s}
.svc.on .ck{background:var(--plum);border-color:var(--plum);color:#fff;transform:rotate(360deg)}
.svc h3{font-size:1.45rem}
.svc small{color:var(--muted);font-size:.84rem}
.svc .pr{font-family:'Cormorant Garamond';font-size:1.6rem;font-weight:600;white-space:nowrap}
.btl{position:sticky;top:96px;background:#fff;border-radius:26px;padding:28px;box-shadow:0 20px 40px -26px rgba(62,26,43,.5);text-align:center}
.bottle{position:relative;width:170px;height:240px;margin:0 auto 10px}
.bottle svg{width:100%;height:100%;overflow:visible}
.tl{display:flex;height:12px;border-radius:9px;overflow:hidden;background:var(--bg2);margin:16px 0 6px}
.tl i{display:block;height:100%;transition:width .5s;border-right:2px solid #fff}
.tsum{display:flex;justify-content:space-between;font-size:.88rem;color:var(--muted)}
.big2{font-family:'Cormorant Garamond';font-size:3.2rem;line-height:1;color:var(--acc);font-variant-numeric:tabular-nums;margin:8px 0}
.gift{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.gcard{perspective:1200px;max-width:460px;margin:auto;width:100%}
.gcard .in{aspect-ratio:1.6;border-radius:20px;position:relative;overflow:hidden;background:radial-gradient(circle at 30% 20%,#8a3556,#3e1a2b 70%);color:#f6e6ea;padding:28px;transform-style:preserve-3d;transition:transform .2s;box-shadow:0 30px 50px -20px rgba(62,26,43,.7)}
.gcard .in:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(45deg,rgba(255,255,255,.03) 0 2px,transparent 2px 6px)}
.gcard .holo{position:absolute;inset:0;background:radial-gradient(circle at var(--hx,30%) var(--hy,30%),rgba(255,255,255,.35),transparent 40%),linear-gradient(115deg,transparent 30%,rgba(255,215,160,.25) var(--hx,50%),transparent 70%);mix-blend-mode:overlay;pointer-events:none}
.gcard .lg{font-family:'Cormorant Garamond';font-style:italic;font-size:2rem;line-height:1}
.gcard .am{position:absolute;right:28px;top:24px;font-family:'Cormorant Garamond';font-size:2.6rem;background:linear-gradient(90deg,#c9a46a,#f6e1b0,#c9a46a);-webkit-background-clip:text;background-clip:text;color:transparent}
.gcard .to{position:absolute;left:28px;bottom:26px;font-size:.74rem;letter-spacing:.24em;text-transform:uppercase;opacity:.7}
.gcard .nm{position:absolute;left:28px;bottom:44px;font-family:'Cormorant Garamond';font-style:italic;font-size:1.9rem;background:linear-gradient(90deg,#c9a46a,#f6e1b0,#c9a46a);-webkit-background-clip:text;background-clip:text;color:transparent;min-height:1.2em}
.fld{display:grid;gap:10px}
.fld input,.fld select,.fld textarea{width:100%;padding:14px 18px;border-radius:14px;border:1px solid var(--line);font:inherit;background:#fff}
.fld input:focus,.fld select:focus{outline:2px solid var(--rose);border-color:transparent}

/* galeria */
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:30px}
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.gi{background:#fff;border-radius:24px;padding:22px 18px 18px;cursor:pointer;transition:transform .5s cubic-bezier(.3,1.3,.5,1),opacity .4s,box-shadow .3s;box-shadow:0 14px 30px -24px rgba(62,26,43,.5)}
.gi:hover{transform:translateY(-8px) rotate(-1deg);box-shadow:0 26px 40px -24px rgba(62,26,43,.6)}
.gi.hide{display:none}
.gi.pop{animation:gpop .5s cubic-bezier(.3,1.4,.5,1) both;animation-delay:var(--d)}
@keyframes gpop{from{opacity:0;transform:scale(.85) translateY(20px)}}
.gi .bgd{border-radius:18px;background:var(--bg2);padding:18px 10px 0;overflow:hidden}
.gi h3{font-size:1.5rem;margin-top:14px}
.gi .tg{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.gi .tg span{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);padding:3px 10px;border-radius:999px}
.lb{position:fixed;inset:0;z-index:200;background:rgba(43,22,32,.85);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:20px}
.lb.on{display:flex}
.lb .bx{background:var(--bg);border-radius:28px;padding:30px;max-width:720px;width:100%;position:relative;animation:gpop .5s cubic-bezier(.3,1.4,.5,1)}
.lb .x{position:absolute;top:14px;right:14px;width:42px;height:42px;border-radius:50%;background:#fff;font-size:1.3rem}
.quiz{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.qq{min-height:260px}
.qq h3{font-size:2rem;margin-bottom:18px}
.qo{display:grid;gap:10px}
.qo button{text-align:left;padding:16px 20px;border-radius:16px;background:#fff;border:1px solid var(--line);transition:transform .25s,border-color .25s}
.qo button:hover{transform:translateX(6px);border-color:var(--plum)}
.qdots{display:flex;gap:6px;margin-bottom:16px}
.qdots i{width:28px;height:4px;border-radius:4px;background:var(--line);transition:background .3s}
.qdots i.on{background:var(--plum)}
.pour{position:relative;width:220px;height:300px;margin:auto}
.pour svg{width:100%;height:100%;overflow:visible}

/* rezerwacja */
.rz{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:start}
.cal{background:#fff;border-radius:26px;padding:26px;box-shadow:0 20px 40px -26px rgba(62,26,43,.5)}
.calh{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.calh b{font-family:'Cormorant Garamond';font-size:1.8rem;text-transform:capitalize}
.calh button{width:40px;height:40px;border-radius:50%;border:1px solid var(--line)}
.grid7{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;text-align:center}
.grid7 .dn{font-size:.72rem;letter-spacing:.14em;color:var(--muted);text-transform:uppercase;padding-bottom:6px}
.grid7 button{aspect-ratio:1;border-radius:50%;font-size:.95rem;position:relative;transition:background .25s,color .25s,transform .25s}
.grid7 button:not([disabled]):hover{background:var(--bg2);transform:scale(1.08)}
.grid7 button[disabled]{color:#ccb9bd;cursor:default}
.grid7 button.few:after{content:'';position:absolute;bottom:14%;left:50%;width:5px;height:5px;border-radius:50%;background:var(--rose);transform:translateX(-50%)}
.grid7 button.on{background:var(--plum);color:#fff}
.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:18px}
.slots button{padding:12px 0;border-radius:14px;border:1px solid var(--line);opacity:0;animation:svcin .4s forwards;animation-delay:var(--d)}
.slots button.on{background:var(--plum);color:#fff;border-color:var(--plum)}
.slots button[disabled]{text-decoration:line-through;color:#ccb9bd}
.inv{position:sticky;top:96px}
.env{position:relative;aspect-ratio:1.45;max-width:480px;margin:min(290px,56vw) auto 0;perspective:1200px}
.env .back{position:absolute;inset:0;background:#d9b8b9;border-radius:10px;box-shadow:0 30px 50px -24px rgba(62,26,43,.6)}
.env .front{position:absolute;inset:0;border-radius:10px;background:linear-gradient(160deg,#ecd2d2,#dfbfbf);clip-path:polygon(0 0,50% 56%,100% 0,100% 100%,0 100%);z-index:3;pointer-events:none}
.env .flap{position:absolute;left:0;right:0;top:0;height:58%;background:#cfa9ab;clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:top;transform:rotateX(180deg);transition:transform .8s .7s cubic-bezier(.5,0,.3,1);z-index:1;backface-visibility:visible}
.env.closed .flap{transform:rotateX(0);z-index:4}
.card2{position:absolute;left:6%;right:6%;top:-86%;height:88%;background:#fffaf8;border-radius:8px;padding:22px 24px;z-index:2;box-shadow:0 10px 20px -10px rgba(62,26,43,.4);transition:top .8s cubic-bezier(.5,0,.3,1);overflow:hidden}
.env.closed .card2{top:6%}
.card2 .lg{font-family:'Cormorant Garamond';font-style:italic;font-size:1.6rem;color:var(--plum);line-height:1}
.card2 .ttl{font-size:.68rem;letter-spacing:.3em;text-transform:uppercase;color:var(--rose);margin:6px 0 12px}
.card2 dl{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;font-size:.92rem}
.card2 dt{color:var(--muted)}
.card2 dd{font-weight:500}
.card2 .mh{width:120px;margin-top:8px}
.seal{position:absolute;left:50%;top:52%;width:76px;height:76px;margin:-38px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#b0304f,#6d1a30);color:#f3c9d3;font-family:'Cormorant Garamond';font-style:italic;font-size:2.4rem;display:flex;align-items:center;justify-content:center;z-index:6;box-shadow:0 6px 12px rgba(0,0,0,.35),inset 0 0 0 5px rgba(0,0,0,.15);transform:scale(3) rotate(-30deg);opacity:0;pointer-events:none}
.seal:before{content:'';position:absolute;inset:-6px;border-radius:46% 54% 50% 50%;background:inherit;z-index:-1;filter:blur(.3px)}
.env.sealed .seal{animation:seal .5s cubic-bezier(.6,0,.9,.5) forwards}
@keyframes seal{to{transform:scale(1) rotate(-8deg);opacity:1}}
.done{display:none;text-align:center;margin-top:30px}
.done.on{display:block;animation:gpop .6s}
.done h3{font-size:2.4rem}

.reveal{opacity:0;transform:translateY(40px);transition:opacity .9s,transform .9s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}

@media(max-width:1000px){
 .menu,.cta{display:none}.burger{display:inline-flex;align-items:center;justify-content:center}
 .mnav.open{display:flex;flex-direction:column;padding:6px 4% 18px;background:var(--bg)}
 .mnav a{padding:12px 0;border-bottom:1px solid var(--line);letter-spacing:.12em;text-transform:uppercase;font-size:.88rem}
 .mnav a.on{color:var(--acc)}
 .hero .wrap,.cat .wrap,.about .wrap,.kr,.cen,.gift,.quiz,.rz{grid-template-columns:1fr}
 .fan{margin:0 auto;max-width:440px}
 .shelf{grid-template-columns:1fr 1fr;row-gap:40px}
 .stage,.btl,.inv{position:static}
 .gal{grid-template-columns:1fr 1fr}
 footer .wrap{grid-template-columns:1fr}
}
@media(max-width:640px){
 section{padding:80px 0}
 .gal{grid-template-columns:1fr}
 .pal{grid-template-columns:repeat(6,1fr)}
 .slots{grid-template-columns:repeat(3,1fr)}
 .nums b{font-size:2.4rem}
 .ba{aspect-ratio:1.1}
 .rc{width:290px}
 .card2{padding:14px 16px}.card2 dl{font-size:.8rem}.card2 .lg{font-size:1.3rem}

}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
#rprev .hand{max-width:360px;margin:0 auto}
