/* Meet Cosmetics — inner pages v2 */
body:not(.home):before{content:'';position:fixed;z-index:-1;top:-20vw;right:-20vw;width:70vw;aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,rgba(233,167,154,.4),transparent);pointer-events:none;animation:drift 20s ease-in-out infinite alternate}
@keyframes drift{to{transform:translate(-6vw,5vw) scale(1.1)}}
.page-hd{padding:180px 0 44px}.page-hd .h2{margin:20px 0 18px}.page-hd p:not(.eyebrow){color:var(--ink2);max-width:36em;font-size:17px}.narrow{max-width:760px}
.page-hd>*{animation:rise 1.1s var(--ease) both}.page-hd>:nth-child(2){animation-delay:.08s}.page-hd>:nth-child(3){animation-delay:.16s}.page-hd>:nth-child(4){animation-delay:.24s}
.guj{font:500 18px var(--guj)!important;color:var(--plum)!important}

/* shop filters */
.fbar{display:grid;gap:16px;margin-bottom:24px;padding:18px;border-radius:32px;background:rgba(255,250,246,.8);border:1px solid var(--line);box-shadow:0 20px 50px -40px rgba(58,18,38,.4);animation:rise 1.1s var(--ease) .3s both}
.fbar .chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.fbar .chips::-webkit-scrollbar{display:none}
.chip small{opacity:.5;margin-left:2px;font-weight:800}.chip.sm{height:34px;font-size:12px;padding:0 14px}
.tools{display:flex;gap:10px;min-width:0}
.tools input,.tools select{height:52px;border:1px solid var(--line2);border-radius:99px;padding:0 22px;min-width:0;background:#fff;outline:0;font-weight:600;transition:border-color .3s,box-shadow .3s}
.tools input{flex:1}.tools select{flex:0 0 auto;width:178px}.tools input:focus,.tools select:focus{border-color:var(--plum);box-shadow:0 0 0 4px rgba(90,30,59,.08)}
@media(max-width:600px){.tools select{width:130px;padding:0 14px}}
.count{color:var(--mut);font:800 11px var(--sans);letter-spacing:.16em;text-transform:uppercase;margin:12px 0 26px}.more{display:flex;margin:60px auto 100px}

/* product page */
.pdp{display:grid;gap:40px;padding:130px 0 0}
.gal{animation:rise 1.2s var(--ease) both}
.gal .main{position:relative;aspect-ratio:1;border-radius:44px;background:linear-gradient(150deg,var(--blush),var(--peach) 60%,#fff);display:grid;place-items:center;perspective:1000px;overflow:hidden}
.halo{position:absolute;width:80%;aspect-ratio:1;border-radius:50%;background:conic-gradient(from 0deg,var(--rose),transparent 30%,var(--gold),transparent 70%,var(--rose));filter:blur(50px);opacity:.55;animation:spin 16s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.gal .main img{position:relative;width:68%;aspect-ratio:1;object-fit:cover;border-radius:36px;box-shadow:0 50px 80px -40px rgba(58,18,38,.6);transition:transform .7s var(--ease);animation:float 6s ease-in-out infinite}@keyframes float{50%{translate:0 -14px}}
.thumbs{display:flex;gap:10px;margin-top:14px}.thumbs a{width:78px;height:78px;border-radius:22px;overflow:hidden;border:2px solid transparent;opacity:.55;transition:opacity .3s,border-color .3s,transform .5s var(--ease)}
.thumbs a:hover{opacity:1;transform:translateY(-4px)}.thumbs a.on{border-color:var(--plum);opacity:1}.thumbs img{width:100%;height:100%;object-fit:cover}
.info>*{animation:rise 1.1s var(--ease) both}.info>:nth-child(2){animation-delay:.06s}.info>:nth-child(3){animation-delay:.12s}.info>:nth-child(4){animation-delay:.18s}.info>:nth-child(5){animation-delay:.24s}.info>:nth-child(n+6){animation-delay:.3s}
.info .eyebrow{transition:gap .4s var(--ease)}.info .eyebrow:hover{gap:18px}
.info .pb{font:800 11px var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--mut);margin-top:24px}.info .h2{font-size:clamp(40px,5.2vw,78px);margin:10px 0 20px}
.price.big{font-size:28px}.price.big s{font-size:16px}.price.big i{font-size:12px;padding:6px 12px}
.perks{list-style:none;display:grid;gap:10px;margin:28px 0;padding:22px 24px;border-radius:26px;background:rgba(255,250,246,.85);border:1px solid var(--line);color:var(--ink2);font-size:14px;font-weight:600}
.qrow{display:flex;gap:10px;margin-bottom:10px}.qrow .qty{margin:0;height:56px;padding:0 6px}.qrow .qty button{width:42px;height:42px}.qrow .btn{flex:1}.info .btn.wide{margin-bottom:10px}
details{border-top:1px solid var(--line);padding:20px 0}
details summary{cursor:pointer;font:800 15px var(--sans);list-style:none;display:flex;justify-content:space-between;align-items:center}details summary::-webkit-details-marker{display:none}
details summary:after{content:'+';width:32px;height:32px;border-radius:50%;border:1px solid var(--line2);display:grid;place-items:center;font-weight:400;transition:transform .5s var(--ease),background .3s}
details[open] summary:after{transform:rotate(135deg);background:var(--ink);color:#fff}
details p{color:var(--ink2);margin-top:12px;font-size:14px;animation:rise .7s var(--ease)}
.sticky-buy{position:fixed;z-index:54;left:12px;right:12px;bottom:calc(88px + env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 8px 8px 20px;border-radius:24px;background:var(--ink);color:#fff;box-shadow:var(--shadow);transform:translateY(calc(100% + 140px));transition:transform .8s var(--ease)}
.sticky-buy.on{transform:none}.sticky-buy small{display:block;font-size:11px;max-width:46vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.7}
.sticky-buy .btn{background:#fff;color:var(--ink);height:48px}.sticky-buy .btn:before{background:var(--rose)}
@media(min-width:900px){.pdp{grid-template-columns:1.1fr 1fr;gap:80px;align-items:start}.gal{position:sticky;top:110px}.sticky-buy{bottom:24px;left:auto;right:24px;width:440px}}

/* track */
.tform{display:grid;gap:10px;margin:34px 0}
.tform input,.ctc input,.ctc select,.ctc textarea{height:58px;border:1px solid var(--line2);border-radius:20px;padding:0 20px;background:#fff;width:100%;outline:0;font-weight:600;transition:border-color .3s,box-shadow .3s}
.tform input:focus,.ctc input:focus,.ctc select:focus,.ctc textarea:focus{border-color:var(--plum);box-shadow:0 0 0 4px rgba(90,30,59,.08)}
.ctc textarea{height:auto;padding:16px 20px;resize:vertical}
@media(min-width:700px){.tform{grid-template-columns:2fr 1.4fr auto}}
.tcard{border-radius:34px;padding:32px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);animation:pop .8s var(--ease)}
.trow{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px;color:var(--mut);font-weight:700}.trow b{font:400 28px var(--display);color:var(--ink)}
.steps{display:grid}.step{display:flex;gap:16px;align-items:center;padding:12px 0;color:var(--mut);position:relative;font-weight:700}
.step i{position:relative;z-index:1;width:16px;height:16px;border-radius:50%;border:2px solid var(--line2);flex:none;background:#fff;transition:.5s var(--ease)}
.step.lit{color:var(--ink)}.step.lit i{background:var(--plum);border-color:var(--plum)}.step.now.lit i{animation:pu2 2s infinite}
@keyframes pu2{0%{box-shadow:0 0 0 0 rgba(90,30,59,.35)}70%,100%{box-shadow:0 0 0 12px transparent}}
.step:not(:last-child):before{content:'';position:absolute;left:7px;top:32px;height:26px;width:2px;background:var(--line)}
.step.lit:not(.now):not(:last-child):after{content:'';position:absolute;left:7px;top:32px;height:26px;width:2px;background:var(--plum);transform-origin:top;animation:grow .5s var(--ease) both}@keyframes grow{from{transform:scaleY(0)}}
.eta{margin:22px 0;color:var(--ink2)}.cancel{margin:4px 0 22px;padding:16px 18px;border-radius:18px;background:#fbe9ec;color:#b4233a;font-weight:700}.err{color:#b4233a;font-weight:700;animation:pop .5s var(--ease)}
#recent .chip{margin:0 6px 8px 0}

/* order photos page (/o/{token}) */
.ophotos{display:grid;gap:14px;margin-bottom:100px}
.oitem{display:grid;grid-template-columns:120px 1fr;gap:20px;align-items:center;padding:16px;border-radius:30px;background:var(--card);border:1px solid var(--line);box-shadow:0 30px 60px -50px rgba(58,18,38,.45)}
.oimg{aspect-ratio:1;border-radius:22px;background:linear-gradient(160deg,#fff,var(--peach));display:grid;place-items:center;overflow:hidden}.oimg img{width:86%;aspect-ratio:1;object-fit:cover;border-radius:18px}
.otx .br{font:800 10px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--mut)}.otx h3{font:400 clamp(20px,2.4vw,26px)/1.2 var(--display);margin:6px 0 8px}
.oprice{color:var(--ink2);font-weight:600}.oprice b{color:var(--ink)}.olink{display:inline-block;margin-top:8px;font:800 13px var(--sans);color:var(--plum)}
.ototal{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-radius:24px;background:var(--wine);color:#fff;font:800 16px var(--sans)}.ototal b{font:400 30px var(--display)}
.oact{display:flex;gap:10px;flex-wrap:wrap}.oact .btn{flex:1}.onote{color:var(--mut);font-size:12px;text-align:center}
.ostat{display:inline-block;padding:4px 12px;border-radius:99px;font:800 11px var(--sans);letter-spacing:.06em;background:var(--blush);color:var(--plum)}.ostat.st0{background:#fdf0d9;color:#9a5b0e}.ostat.st5{background:#e2f5ea;color:#1d7a45}.ostat.st9{background:#fbe9ec;color:#b4233a}
@media(min-width:700px){.oitem{grid-template-columns:150px 1fr;gap:26px}}

/* store */
.ctc{display:grid;gap:18px;margin-bottom:40px}
.cbox{border-radius:34px;padding:26px;background:var(--card);border:1px solid var(--line);display:grid;gap:10px;align-content:start;box-shadow:0 30px 60px -50px rgba(58,18,38,.5)}
.cbox video{border-radius:24px;aspect-ratio:16/10;object-fit:cover;width:100%}.cbox h3{font:400 30px var(--display);letter-spacing:-.02em;margin-top:10px}.cbox p{color:var(--ink2)}
.cbox .row{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.cbox .row .btn{flex:1}
@media(min-width:900px){.ctc{grid-template-columns:1fr 1fr}}
.map{width:100%;height:420px;border:0;border-radius:40px;filter:grayscale(.35) sepia(.2);margin-bottom:100px}
