:root{--pink:#d6246e;--blush:#fdeef4;--soft:#fff7fa;--ink:#2b1a22;--gold:#c9a24b;color-scheme:light}
@media (prefers-color-scheme:dark){:root{--blush:#3a1b2a;--soft:#2a1620;--ink:#fbeaf1;color-scheme:dark}}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:70px}
body{margin:0;font-family:Poppins,system-ui,-apple-system,Segoe UI,sans-serif;background:var(--soft);color:var(--ink);line-height:1.55}
.topbar{background:var(--pink);color:#fff;text-align:center;font-size:.78rem;padding:.5rem 1rem;letter-spacing:.03em}
.nav{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem 1rem;background:var(--soft);border-bottom:1px solid var(--blush)}
.nav nav{display:flex;gap:1rem;font-size:.9rem}
.nav nav a{color:var(--ink);text-decoration:none}
.logo{display:flex;align-items:baseline;gap:.4rem;text-decoration:none;color:var(--pink)}
.logo .mono{font-family:Georgia,serif;font-size:1.3rem;border:1.5px solid var(--gold);border-radius:50%;padding:.1rem .45rem}
.logo small{letter-spacing:.2em;font-size:.6rem;color:var(--ink)}
.script{font-family:"Brush Script MT","Segoe Script",cursive;color:var(--pink);font-weight:400}
.btn{display:inline-block;padding:.7rem 1.4rem;border-radius:8px;text-decoration:none;font-weight:600;font-size:.9rem}
.btn.gold{background:linear-gradient(135deg,#e6c36a,#b88a2e);color:#3a2800}
.btn.pink{background:var(--pink);color:#fff;margin-top:.5rem}
.btn.ghost{border:1.5px solid var(--pink);color:var(--pink)}
.btn.small{padding:.4rem .9rem}
section{padding:3rem 1.25rem;max-width:1000px;margin:0 auto;text-align:center}
.hero{background:linear-gradient(160deg,var(--blush),var(--soft));max-width:none;padding-top:3.5rem}
.eyebrow{letter-spacing:.3em;font-size:.85rem;margin:0}
.eyebrow.wide{letter-spacing:.5em;font-size:1.2rem}
.script.big{font-size:clamp(4rem,18vw,7rem);margin:0;line-height:1}
.tag{letter-spacing:.2em;font-size:.85rem;font-weight:600;margin:.8rem 0}
.lead{max-width:34rem;margin:0 auto 1.5rem}
.cta{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}
.badges{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;padding:0;margin:2rem 0 0}
.badges li{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--gold);border-radius:99px;padding:.3rem .8rem}
h2{font-size:1.6rem;margin:0 0 1rem}
h2.script{font-size:2.4rem}
.grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:1.5rem;text-align:left}
.card{background:var(--blush);border:1px solid rgba(201,162,75,.45);border-radius:14px;padding:1rem}
.card h3{margin:.6rem 0 .3rem}
.card ul{padding-left:1.1rem;margin:0 0 .5rem;font-size:.9rem}
.ph{height:120px;border-radius:10px;background:linear-gradient(135deg,#f6b6cf,#d6246e)}
.ph.wax{background:linear-gradient(135deg,#ffd0e1,#e8749f)}
.ph.facial{background:linear-gradient(135deg,#fde3c8,#e9a7bd)}
.classes{background:var(--blush);max-width:none}
.classes .grid{max-width:1000px;margin-inline:auto}
.classes .card{background:var(--soft)}
.note{font-size:.85rem;opacity:.7;font-style:italic}
footer{text-align:center;font-size:.8rem;padding:1.5rem 1rem calc(1.5rem + env(safe-area-inset-bottom,0px));background:var(--pink);color:#fff}