html{scroll-behavior:smooth}body{margin:0;padding:0}img{max-width:100%}:root{--bg:#efefef;--surface:#fff;--ink:#000;--muted:#6b6b6b;--line:#dadada;--line-strong:#c8c8c8;--accent:#000;--accent-hover:#262626;--accent-ink:#fff;--accent-text:#000;--soft:#f6f6f6;--soft-line:#e2e2e2;--ok:#2f6b4f;--err:#b3261e;--off:#b8b8b8;--grad:radial-gradient(circle at 16% 52%, #6e1a44 0%, #8f2d5a 14%, #b9518a 30%, #c2598c00 54%), radial-gradient(circle at 80% 16%, #c2598c 0%, #c2598c00 44%), radial-gradient(circle at 58% 64%, #f4e6eb 0%, #ddb9c7 50%, #d493b2 100%);--grad-text:linear-gradient(100deg, #6e1a44 0%, #9a3262 45%, #c2598c 100%);--font:"Figtree", "Helvetica Neue", Arial, sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0e0e0e;--surface:#1a1a1a;--ink:#f2f2f2;--muted:#a3a3a3;--line:#2a2a2a;--line-strong:#3a3a3a;--accent:#f2f2f2;--accent-hover:#fff;--accent-ink:#0e0e0e;--accent-text:#f2f2f2;--soft:#151515;--soft-line:#2e2e2e;--ok:#7cc9a2;--err:#f08a72;--off:#4a4a4a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--grad-text:linear-gradient(100deg, #c2598c 0%, #d993b6 55%, #f4e6eb 100%)}}:root[data-theme=dark]{--bg:#0e0e0e;--surface:#1a1a1a;--ink:#f2f2f2;--muted:#a3a3a3;--line:#2a2a2a;--line-strong:#3a3a3a;--accent:#f2f2f2;--accent-hover:#fff;--accent-ink:#0e0e0e;--accent-text:#f2f2f2;--soft:#151515;--soft-line:#2e2e2e;--ok:#7cc9a2;--err:#f08a72;--off:#4a4a4a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--grad-text:linear-gradient(100deg, #c2598c 0%, #d993b6 55%, #f4e6eb 100%)}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.55}.wrap{max-width:1080px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));margin:0 auto}a{color:var(--ink)}a:hover{color:var(--ink);text-decoration-thickness:2px}h1,h2,h3{text-wrap:balance;margin:0;font-weight:500}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:12px}button,input,textarea,select{font:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}nav{top:env(safe-area-inset-top,0px);z-index:20;background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);position:sticky}body:before{content:"";height:env(safe-area-inset-top,0px);z-index:10;background:var(--bg);position:fixed;inset:0 0 auto}nav .wrap{justify-content:space-between;align-items:center;gap:12px 24px;padding-block:14px;display:flex}.logo{letter-spacing:-.02em;color:var(--ink);font-size:22px;text-decoration:none}.logo:hover{color:var(--ink)}.logo b{font-weight:700}.nav-links{gap:22px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.nav-links a{color:var(--muted);text-decoration:none}.nav-links a:hover{color:var(--ink)}.btn{background:var(--accent);min-height:44px;color:var(--accent-ink);border:0;border-radius:999px;align-items:center;gap:8px;padding:0 22px;font-size:15px;font-weight:500;text-decoration:none;display:inline-flex}.btn:hover{background:var(--accent-hover);color:var(--accent-ink)}.btn.ghost{background:var(--surface);color:var(--ink);border:1px solid var(--line)}.btn.ghost:hover{background:var(--surface);border-color:var(--ink);color:var(--ink)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn:disabled:hover{background:var(--accent)}.btn.ghost:disabled:hover{background:var(--surface);border-color:var(--line)}@media (max-width:720px){.nav-links{display:none}}.hero{grid-template-columns:1.2fr .8fr;align-items:center;gap:40px;padding-block:64px 40px;display:grid}.hero h1{letter-spacing:-.04em;margin-top:12px;font-size:clamp(52px,10vw,112px);line-height:.95}.hero h1 em{color:#9a3262;font-style:normal}@supports ((-webkit-background-clip:text) or (background-clip:text)){.hero h1 em{background:var(--grad-text);color:#0000;-webkit-box-decoration-break:clone;box-decoration-break:clone;-webkit-background-clip:text;background-clip:text}}.hero p{max-width:44ch;color:var(--muted);margin:22px 0 28px;font-size:18px}.hero .ctas{flex-wrap:wrap;gap:12px;display:flex}.hero .ctas .btn{min-height:48px;padding:0 26px}.hero-side{justify-items:end;padding-bottom:8px;display:grid;position:relative}.orb{background:var(--grad);border-radius:50%;flex:none}.hero-side .orb{aspect-ratio:1;width:min(100%,340px)}.facts{background:var(--surface);border-radius:28px;gap:10px;width:min(100%,340px);margin-top:-72px;padding:20px 24px;display:grid;position:relative;box-shadow:0 1px 2px #0000000a}.facts div{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding-bottom:10px;font-size:15px;display:flex}.facts div:last-child{border-bottom:0;padding-bottom:0}.facts span:first-child{color:var(--muted)}.facts .open{align-items:center;gap:8px;font-weight:500;display:inline-flex}.dot{background:var(--grad);border-radius:50%;flex:none;width:10px;height:10px;display:inline-block}@media (max-width:820px){.hero{grid-template-columns:1fr;padding-block:40px 24px}.hero-side{justify-items:start}.hero-side .orb{width:min(70%,260px)}.facts{width:min(100%,380px);margin-top:-56px;margin-left:auto}}.swatches{scrollbar-width:none;gap:10px;padding-block:8px 32px;display:flex;overflow-x:auto}.bottle{flex:none;justify-items:center;gap:6px;width:64px;display:grid}.cap{background:var(--ink);border-radius:3px 3px 1px 1px;width:18px;height:22px}.glass{border-radius:12px 12px 16px 16px;width:44px;height:52px;position:relative;box-shadow:inset -6px -4px #0000001f}.glass:after{content:"";background:#ffffff73;border-radius:4px;width:6px;height:24px;position:absolute;top:8px;left:8px}.bottle small{color:var(--muted);white-space:nowrap;font-size:10px}section{border-top:1px solid var(--line);padding-block:56px}.sechead{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px;display:flex}.sechead h2{letter-spacing:-.035em;font-size:clamp(34px,5vw,52px);line-height:1.05}.menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px;display:grid}.cat{letter-spacing:.1em;text-transform:uppercase;color:var(--ink);grid-column:1/-1;align-items:center;gap:8px;margin-top:18px;padding-bottom:6px;font-size:12px;display:flex}.cat:before{content:"";background:var(--grad);border-radius:50%;width:10px;height:10px}.cat-note{text-transform:none;letter-spacing:0;color:var(--muted);margin-left:4px;font-size:13px}.item{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;gap:4px 16px;padding-block:14px;display:grid}.item h3{letter-spacing:-.01em;font-size:21px;font-weight:500;line-height:1.25}.item .price{font-variant-numeric:tabular-nums;font-size:21px;font-weight:500;line-height:1.25}.item p{color:var(--muted);margin:0;font-size:14px}.item .dur{color:var(--muted);text-align:right;font-size:12px}@media (max-width:720px){.menu{grid-template-columns:1fr}}.booker{background:var(--surface);border:0;border-radius:28px;grid-template-columns:260px minmax(0,1fr);display:grid;overflow:hidden}.steps{background:var(--soft);align-content:start;gap:4px;padding:28px 24px;display:grid}.steps ol{gap:4px;margin:16px 0 0;padding:0;list-style:none;display:grid}.steps li{color:var(--muted);border-radius:10px;align-items:center;gap:12px;padding:10px 12px;font-size:15px;display:flex}.steps li i{border:1px solid var(--off);border-radius:50%;flex:none;place-items:center;width:24px;height:24px;font-size:12px;font-style:normal;display:grid}.steps li.on{color:var(--ink);background:var(--surface);font-weight:500}.steps li.done i{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.steps li.on i{background:var(--grad);color:#fff;border-color:#0000;font-weight:600}.summary{border-top:1px solid var(--soft-line);gap:6px;margin-top:20px;padding-top:16px;font-size:14px;display:grid}.summary div{justify-content:space-between;gap:8px;display:flex}.summary span:first-child{color:var(--muted)}.summary span:last-child{text-align:right}.panel{min-width:0;padding:28px}.panel h3{letter-spacing:-.02em;margin-bottom:6px;font-size:28px;line-height:1.15}.panel .hint{color:var(--muted);margin:0 0 20px;font-size:15px}.choices{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;display:grid}.choice{text-align:left;background:var(--bg);border:1px solid var(--line);min-height:64px;color:var(--ink);border-radius:14px;align-content:start;gap:2px;padding:14px;display:grid}.choice:hover{border-color:var(--accent-text)}.choice[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:var(--surface)}.choice b{font-weight:500}.choice small{color:var(--muted);font-size:12px}.days{gap:8px;padding-bottom:6px;display:flex;overflow-x:auto}.day{background:var(--bg);border:1px solid var(--line);min-height:76px;color:var(--ink);border-radius:14px;flex:0 0 68px;justify-items:center;gap:2px;padding:10px 0;display:grid}.day small{text-transform:uppercase;color:var(--muted);font-size:11px}.day b{font-size:24px;font-weight:500;line-height:1.2}.day[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.day[aria-pressed=true] small{color:inherit}.day:disabled{opacity:.35;cursor:not-allowed;text-decoration:line-through}.slots{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;margin-top:22px;display:grid}.slot{background:var(--bg);border:1px solid var(--line);min-height:44px;color:var(--ink);font-variant-numeric:tabular-nums;border-radius:10px;font-size:14px}.slot:hover:not(:disabled){border-color:var(--accent-text)}.slot[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.slot:disabled{color:var(--off);cursor:not-allowed;text-decoration:line-through}.form{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form label{gap:6px;font-size:14px;font-weight:500;display:grid}.form .full{grid-column:1/-1}.form input,.form textarea,.form select{border:1px solid var(--line);background:var(--bg);min-height:46px;color:var(--ink);border-radius:10px;padding:12px 14px}.form textarea{resize:vertical}.form .err{color:var(--err);min-height:1em;font-size:13px;font-weight:400}.nav-row{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:26px;display:flex}.nav-row .btn{min-height:46px;padding:0 22px}.nav-row .btn.ghost{min-height:44px;padding:0 20px}.confirm{text-align:left}.ticket{border:1px solid var(--line);background:var(--soft);border-radius:20px;gap:8px;max-width:440px;margin:18px 0;padding:20px;display:grid}.ticket div{justify-content:space-between;gap:12px;display:flex}.ticket div>:last-child{text-align:right}.ticket .code{letter-spacing:.1em;color:var(--ink);font-size:20px;font-weight:500}@media (max-width:820px){.booker{grid-template-columns:1fr}.steps ol{display:flex;overflow-x:auto}.steps li{white-space:nowrap}.summary{display:none}.form{grid-template-columns:1fr}.panel{padding:22px 18px}}.mine{gap:10px;display:grid}.appt{background:var(--surface);border:0;border-radius:20px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.appt .when{font-size:20px;font-weight:500}.appt small,.empty{color:var(--muted)}.two{grid-template-columns:1fr 1fr;gap:28px 48px;display:grid}.two p{max-width:58ch;color:var(--muted)}.two .quote{letter-spacing:-.025em;color:var(--ink);margin:14px 0 0;font-size:30px;font-weight:500;line-height:1.2}.about-orb{aspect-ratio:1;width:120px;margin-bottom:22px}.hours{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;margin-top:8px}.hours td{border-bottom:1px solid var(--line);padding:9px 0}.hours td:last-child{text-align:right;font-size:14px}.hours tr.today td{color:var(--ink);font-weight:600}.hours tr.today td:first-child:before{content:"";background:var(--grad);vertical-align:0;border-radius:50%;width:10px;height:10px;margin-right:8px;display:inline-block}@media (max-width:820px){.two{grid-template-columns:1fr}}footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:10px;padding-block:32px;font-size:13px;display:flex}.toast{left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));background:var(--ink);color:var(--bg);z-index:30;border-radius:999px;padding:12px 18px;font-size:14px;position:fixed;transform:translate(-50%)}@media (prefers-reduced-motion:no-preference){.choice,.day,.slot,.btn{transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s}}.nav-right{align-items:center;gap:10px;display:flex}.lang-switch{position:relative}.lang-btn{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--ink);letter-spacing:.04em;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:500;display:inline-flex}.lang-btn:hover{border-color:var(--ink)}.lang-btn svg{width:17px;height:17px}.lang-menu{background:var(--surface);border:1px solid var(--line);z-index:30;border-radius:18px;min-width:170px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 10px 30px #00000014}.lang-menu a{min-height:44px;color:var(--ink);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:0 14px;font-size:15px;text-decoration:none;display:flex}.lang-menu a:hover{background:var(--bg);color:var(--ink)}.lang-menu a[aria-current]:after{content:"";background:var(--grad);border-radius:50%;width:8px;height:8px}@media (max-width:480px){nav .wrap{padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px));gap:8px}.logo{font-size:19px}.nav-right{gap:8px}.nav-right .btn{padding:0 16px;font-size:14px}.lang-btn{padding:0 10px}}.notice{background:var(--soft);border-radius:12px;margin:0 0 18px;padding:12px 14px;font-size:14px}.policy{color:var(--muted);margin:0;font-size:13px}.choice-group{margin-bottom:18px}.choice-cat{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-size:12px}.segmented{background:var(--bg);border:1px solid var(--line);border-radius:999px;gap:4px;padding:4px;display:inline-flex}.segmented button{min-height:40px;color:var(--ink);background:0 0;border:0;border-radius:999px;padding:0 20px;font-weight:500}.segmented button[aria-checked=true]{background:var(--accent);color:var(--accent-ink)}.late-note{color:var(--err);max-width:52ch;margin:8px 0 0;font-size:14px}.form .hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}footer a{color:inherit}.page{max-width:640px;padding-block:48px 64px}.page h1{letter-spacing:-.03em;margin-bottom:18px;font-size:clamp(36px,6vw,56px)}.page p{color:var(--muted)}.page .ticket{max-width:none}.actions{flex-wrap:wrap;gap:12px;margin-top:18px;display:flex}.admin{padding-block:32px 64px}.admin h1{letter-spacing:-.03em;font-size:clamp(34px,5vw,48px)}.admin h2{letter-spacing:-.02em;margin-bottom:6px;font-size:28px}.admin section{padding-block:36px}.admin .hint{color:var(--muted);margin:0 0 18px;font-size:15px}.admin-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.dayhead{letter-spacing:.1em;text-transform:uppercase;color:var(--ink);align-items:center;gap:8px;margin:22px 0 8px;font-size:12px;display:flex}.dayhead:before{content:"";background:var(--grad);border-radius:50%;width:10px;height:10px}.dayhead:first-child{margin-top:0}.appt .who{gap:2px;display:grid}.appt .who a{color:var(--ink)}.appt .tag{border:1px solid var(--line);color:var(--muted);border-radius:999px;margin-left:6px;padding:1px 8px;font-size:11px;font-weight:400}.appt form,.row-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.appt .fee{color:var(--err);font-weight:500}.appt label.small{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:flex}.addons{flex-wrap:wrap;gap:16px;display:flex}.addons label{align-items:center;gap:6px;font-weight:400;display:flex}.addons input,.form input[type=checkbox]{min-height:0}.msg{margin:12px 0 0;font-size:14px}.msg.ok{color:var(--ok)}.msg.bad{color:var(--err)}.copyrow{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.copyrow input{border:1px solid var(--line);background:var(--bg);min-width:0;min-height:44px;color:var(--ink);border-radius:10px;flex:260px;padding:10px 12px;font-size:13px}.login{max-width:380px;padding-block:72px}.login .form{grid-template-columns:1fr}
