:root{--paper: #f3ece2;--ink: #1b1612;--muted: #6b6158;--line: rgba(27, 22, 18, .1);--gold: #b08948;--gold-2: #d7b57a;--blush: #c98972;--white: #fffcf7;--shadow: 0 30px 80px rgba(27, 22, 18, .18);--serif: "Cormorant Garamond", "Times New Roman", serif;--sans: "Outfit", "Segoe UI", sans-serif;--radius: 22px;color:var(--ink);font-family:var(--sans);background:var(--paper)}[data-studio=hair]{--gold: #b08948;--accent-soft: #efe4d2}[data-studio=nails]{--gold: #c47a6a;--gold-2: #e3b5a8;--accent-soft: #f3e4dc}[data-studio=tattoo]{--paper: #161412;--ink: #f4efe6;--muted: #b4aaa0;--line: rgba(244, 239, 230, .12);--gold: #d4b07a;--gold-2: #f0d9aa;--accent-soft: #241f1b;--white: #1d1a17;--shadow: 0 30px 90px rgba(0, 0, 0, .45)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:var(--paper)}button,input,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}.app{min-height:100vh;background:radial-gradient(1200px 500px at 10% -10%,color-mix(in srgb,var(--gold) 18%,transparent),transparent 60%),var(--paper);color:var(--ink)}.demo-bar{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:24px;padding:12px 28px;background:color-mix(in srgb,var(--paper) 92%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px}.mark{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--ink);color:var(--paper);font-family:var(--serif);font-size:1.2rem}.brand p,.demo-note{margin:0;color:var(--muted);font-size:.78rem;letter-spacing:.02em}.brand strong{display:block;font-size:.92rem;font-weight:600}.verticals{display:flex;gap:6px;padding:4px;border-radius:999px;background:color-mix(in srgb,var(--ink) 6%,transparent)}.verticals button{border:0;background:transparent;color:var(--muted);padding:8px 14px;border-radius:999px}.verticals button.on{background:var(--white);color:var(--ink);box-shadow:0 8px 20px #1b161214}.demo-note{margin-left:auto}.stage{position:relative;min-height:calc(100vh - 62px)}.site{max-width:1120px;margin:0 auto;padding:28px 24px 120px}.site-nav{display:flex;align-items:center;gap:28px;margin-bottom:48px}.logo{font-family:var(--serif);font-size:1.7rem;font-weight:600}.site-nav nav{display:flex;gap:22px;margin-left:auto}.site-nav a{color:var(--muted);text-decoration:none;font-size:.92rem}.book-nav,.primary,.next-btn{border:0;background:var(--ink);color:var(--paper);padding:11px 18px;border-radius:999px;letter-spacing:.02em}.hero{display:grid;grid-template-columns:1fr 1.05fr;gap:48px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;color:var(--gold);margin:0 0 12px}h1{font-family:var(--serif);font-size:clamp(3.2rem,6vw,5.4rem);line-height:.92;font-weight:500;margin:0 0 18px}.hero-copy p{max-width:36ch;color:var(--muted);font-size:1.05rem;line-height:1.55}.hero-actions{display:flex;align-items:center;gap:18px;margin-top:28px}.rating{margin:0;color:var(--muted);font-size:.9rem}.hero-frame{border-radius:28px;overflow:hidden;box-shadow:var(--shadow);aspect-ratio:4 / 5}.hero-frame img{width:100%;height:100%;object-fit:cover}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin:72px 0 24px}h2{font-family:var(--serif);font-size:2.4rem;font-weight:500;margin:0}.section-head p{margin:0;color:var(--muted);max-width:36ch}.menu ul,.team ul,.service-list,.artist-list{list-style:none;margin:0;padding:0}.menu li{display:flex;justify-content:space-between;align-items:baseline;padding:18px 0;border-top:1px solid var(--line)}.menu li div{display:flex;gap:14px;align-items:baseline}.menu span,.menu em{color:var(--muted);font-style:normal}.team ul{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.team li{background:color-mix(in srgb,var(--white) 80%,transparent);border:1px solid var(--line);border-radius:22px;padding:14px}.team img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:16px;margin-bottom:12px}.team p{margin:4px 0 0;color:var(--muted)}.site-foot{margin-top:72px;padding-top:24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:24px;color:var(--muted)}.fab{position:fixed;right:28px;bottom:28px;z-index:15;width:76px;height:76px;border:0;border-radius:50%;background:var(--ink);color:var(--paper);box-shadow:0 16px 40px #1b161247;animation:pulse 2.8s ease-in-out infinite}.fab.hidden{opacity:0;pointer-events:none}.overlay{position:fixed;inset:61px 0 0;z-index:30;display:grid;justify-content:end}.scrim{position:absolute;inset:0;border:0;background:#120e0a6b}.widget{position:relative;width:min(440px,100vw);height:100%;background:var(--white);color:var(--ink);box-shadow:var(--shadow);display:grid;grid-template-rows:auto auto 1fr auto;animation:slide-in .42s cubic-bezier(.22,1,.36,1)}.widget:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-2))}.widget-head{display:flex;justify-content:space-between;align-items:start;padding:22px 22px 8px}.widget-kicker,.done-kicker{margin:0 0 4px;text-transform:uppercase;letter-spacing:.16em;font-size:.68rem;color:var(--gold)}.widget-head h2,.done-panel h3{margin:0;font-family:var(--serif);font-size:2rem;font-weight:500}.icon-btn,.back-btn,.ghost-btn{border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:999px}.icon-btn{width:36px;height:36px;display:grid;place-items:center}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;list-style:none;margin:0;padding:8px 22px 16px;font-size:.72rem;color:var(--muted)}.steps li{display:flex;align-items:center;gap:6px}.steps span{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);font-size:.65rem}.steps .current{color:var(--ink)}.steps .current span,.steps .done span{background:var(--ink);color:var(--paper);border-color:var(--ink)}.widget-body{overflow:auto;padding:8px 22px 24px}.prompt{font-family:var(--serif);font-size:1.55rem;margin:0 0 16px}.service-list,.artist-list{display:grid;gap:10px}.card,.any-card,.artist{width:100%;text-align:left;border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 55%,var(--white));border-radius:18px;padding:14px;color:inherit;transition:transform .18s ease,border-color .18s ease}.card:hover,.artist:hover,.any-card:hover,.card.selected,.artist.selected,.any-card.selected{border-color:var(--gold);transform:translateY(-1px)}.card.selected,.artist.selected,.any-card.selected{background:var(--accent-soft)}.card-top{display:flex;justify-content:space-between;margin-bottom:8px}.chip,.meta{font-size:.75rem;color:var(--muted)}.price{font-weight:600}.card strong,.artist strong,.any-card strong{display:block;font-size:1.05rem}.card p,.artist p,.any-card p{margin:6px 0 0;color:var(--muted);font-size:.88rem;line-height:1.4}.any-card,.artist{display:flex;gap:12px;align-items:center}.any-orb{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:var(--paper);font-family:var(--serif);font-size:1.4rem}.artist img{width:64px;height:64px;object-fit:cover;border-radius:50%}.blurb{font-size:.82rem!important}.day-strip{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px}.day{min-width:68px;border:1px solid var(--line);background:transparent;border-radius:16px;padding:10px 8px;display:grid;gap:4px;color:inherit}.day span,.day em{font-size:.7rem;color:var(--muted);font-style:normal}.day.selected{background:var(--ink);color:var(--paper);border-color:var(--ink)}.day.selected span,.day.selected em{color:color-mix(in srgb,var(--paper) 74%,transparent)}.day.closed{opacity:.38}.slot-label{margin:18px 0 10px;font-size:.8rem;color:var(--muted)}.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.slot{border:1px solid var(--line);background:transparent;border-radius:12px;padding:10px 0;color:inherit}.slot.selected{background:var(--ink);color:var(--paper);border-color:var(--ink)}.slot:disabled{opacity:.32;text-decoration:line-through}.summary{display:flex;gap:12px;padding:12px;border:1px solid var(--line);border-radius:16px;margin-bottom:16px;background:var(--accent-soft)}.summary img{width:52px;height:52px;border-radius:50%;object-fit:cover}.summary p{margin:3px 0 0;color:var(--muted);font-size:.85rem}label{display:grid;gap:6px;margin-top:12px;font-size:.82rem}label span{color:var(--muted)}input,textarea{border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 70%,var(--white));color:inherit;border-radius:12px;padding:11px 12px;outline:none}input:focus,textarea:focus{border-color:var(--gold)}.widget-foot{display:flex;justify-content:space-between;align-items:center;padding:14px 22px 20px;border-top:1px solid var(--line)}.back-btn,.ghost-btn{padding:10px 16px}.next-btn{min-width:160px}.done-panel{text-align:center;padding-top:12px}.check{width:72px;height:72px;margin:0 auto 12px}.check svg{width:100%}.check circle{fill:none;stroke:var(--gold);stroke-width:2}.check path{fill:none;stroke:var(--gold);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:draw .6s .15s ease forwards}.ticket{text-align:left;margin:22px 0;padding:18px;border-radius:18px;background:repeating-linear-gradient(-45deg,transparent,transparent 8px,color-mix(in srgb,var(--gold) 12%,transparent) 8px,color-mix(in srgb,var(--gold) 12%,transparent) 9px),var(--accent-soft);border:1px dashed color-mix(in srgb,var(--gold) 55%,transparent)}.ticket-code{margin:0 0 8px;letter-spacing:.18em;font-size:.78rem;color:var(--gold)}.ticket h4{margin:0 0 6px;font-family:var(--serif);font-size:1.6rem;font-weight:500}.ticket p{margin:4px 0;color:var(--muted)}.fineprint{color:var(--muted);font-size:.82rem}.shake{animation:shake .4s ease}@keyframes slide-in{0%{transform:translate(24px);opacity:0}to{transform:none;opacity:1}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes draw{to{stroke-dashoffset:0}}@keyframes shake{20%{transform:translate(-5px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}@media(max-width:900px){.demo-bar{flex-wrap:nowrap;gap:8px;padding:10px 12px}.brand p,.demo-note{display:none}.verticals button{padding:7px 10px;font-size:.75rem}.hero,.team ul,.site-foot{grid-template-columns:1fr;display:flex;flex-direction:column;align-items:stretch}.site-nav{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:12px}.site-nav nav{margin-left:auto}.hero-frame{aspect-ratio:4 / 3}.overlay{top:58px;justify-content:stretch;align-items:end}.widget{width:100%;height:min(92vh,100%);border-radius:24px 24px 0 0;animation-name:rise}}@keyframes rise{0%{transform:translateY(32px);opacity:0}to{transform:none;opacity:1}}
