:root{--ivory:#fbf7f3;--rose:#cb8b86;--rose-deep:#a96a65;--rose-soft:#f0ddd9;--ink:#0c0a09;--ink-soft:#4a403c;--gold-line:#c9a96a;--card:#fff;--shadow:0 18px 45px #0c0a0914;--radius:18px;--display:"Cormorant Garamond", Georgia, serif;--body:"Jost", "Segoe UI", system-ui, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--body);background:var(--ivory);color:var(--ink);-webkit-font-smoothing:antialiased;padding-bottom:var(--appbar-h,0px);margin:0;font-weight:300;line-height:1.65}h1,h2,h3,.display{font-family:var(--display);margin:0;font-weight:600;line-height:1.15}a{color:inherit}img{max-width:100%;display:block}.wrap{max-width:1100px;margin:0 auto;padding:0 20px}section{padding:64px 0}.kicker{letter-spacing:.32em;text-transform:uppercase;color:var(--rose-deep);margin-bottom:14px;font-size:12px;font-weight:500}.section-title{margin-bottom:10px;font-size:clamp(30px,5.5vw,46px)}.section-sub{color:var(--ink-soft);max-width:620px;font-size:17px}.nav{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fbf7f3eb;border-bottom:1px solid #cb8b8640;position:sticky;top:0}.nav-inner{justify-content:space-between;align-items:center;height:64px;display:flex}.brand{font-family:var(--display);letter-spacing:.02em;font-size:22px;font-weight:700;text-decoration:none}.brand em{color:var(--rose-deep);font-style:normal}.nav-links{align-items:center;gap:22px;display:flex}.nav-links a{letter-spacing:.12em;text-transform:uppercase;font-size:14px;font-weight:400;text-decoration:none}.nav-links a:hover{color:var(--rose-deep)}.nav-cta{background:var(--ink);border-radius:999px;padding:10px 20px;color:var(--ivory)!important;font-size:13px!important}.menu-btn{cursor:pointer;color:var(--ink);background:0 0;border:none;font-size:26px;display:none}.nav-side{align-items:center;gap:14px;display:flex}.nav-studio{background:var(--rose-deep);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:10px 22px;font-size:13px;font-weight:500;text-decoration:none;box-shadow:0 6px 18px #a96a6559;color:var(--ivory)!important}.nav-studio:hover{background:var(--rose)}.nav-studio:active{transform:scale(.97)}.nav-signin{border:1px solid var(--rose-deep);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:9px 20px;font-size:13px;font-weight:500;text-decoration:none;color:var(--rose-deep)!important}.nav-signin:hover{background:var(--rose-soft)}.nav-mybookings{letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;padding:10px 4px;font-size:13px;font-weight:500;text-decoration:none}.nav-mybookings:hover,.nav-mybookings.on{color:var(--rose-deep)}.nav-signout{cursor:pointer;color:var(--ink-soft);font-family:var(--body);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:0 0;border:none;padding:10px 2px;font-size:13px}.nav-signout:hover{color:var(--rose-deep)}.new-badge{background:var(--rose-deep);color:var(--ivory);letter-spacing:.14em;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:600}.push-card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #cb8b8659;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;padding:18px 22px;display:flex}.push-card .btn{white-space:nowrap}.studio-strip{background:var(--ink);color:var(--ivory);padding:12px 0}.studio-strip-inner{text-align:center;letter-spacing:.04em;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 18px;font-size:14px;display:flex}.studio-strip-link{color:var(--rose-soft);font-weight:500;text-decoration:none}.studio-strip-link:hover{color:var(--ivory);text-decoration:underline}.hero{text-align:center;padding:72px 0 56px;position:relative;overflow:hidden}.hero:before{content:"";background:radial-gradient(ellipse at 50% 0%, var(--rose-soft) 0%, transparent 65%);pointer-events:none;height:420px;position:absolute;inset:-40% -20% auto}.hero h1{margin:12px 0 8px;font-size:clamp(42px,9vw,78px)}.hero .tagline{font-family:var(--display);color:var(--rose-deep);font-size:clamp(18px,3.4vw,24px);font-style:italic}.hero p.lede{max-width:560px;color:var(--ink-soft);margin:18px auto 30px;font-size:17px}.btn-row{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.btn{letter-spacing:.06em;cursor:pointer;font-size:15px;font-weight:500;font-family:var(--body);border:none;border-radius:999px;padding:14px 30px;text-decoration:none;display:inline-block}.btn-primary{background:var(--ink);color:var(--ivory)}.btn-rose{background:var(--rose);color:#fff}.btn-outline{color:var(--ink);border:1px solid var(--rose);background:0 0}.btn:active{transform:scale(.98)}.proof-strip{flex-wrap:wrap;justify-content:center;gap:40px;margin-top:44px;display:flex}.proof{text-align:center}.proof .n{font-family:var(--display);color:var(--rose-deep);font-size:34px;font-weight:700}.proof .l{letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft);font-size:12px}.grid-3{grid-template-columns:repeat(3,1fr);gap:22px;margin-top:36px;display:grid}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #cb8b862e;overflow:hidden}.card-body{padding:22px}.card-body h3{margin-bottom:6px;font-size:24px}.price{font-family:var(--display);color:var(--rose-deep);font-size:22px;font-weight:700}.card img{aspect-ratio:3/4;object-fit:cover;width:100%}.rate-table{border-collapse:collapse;width:100%;margin-top:8px}.rate-table th{text-align:left;letter-spacing:.24em;text-transform:uppercase;color:var(--rose-deep);border-bottom:2px solid var(--rose);padding:14px 12px;font-size:12px}.rate-table td{vertical-align:top;border-bottom:1px solid #cb8b8638;padding:14px 12px}.rate-table tr:last-child td{border-bottom:none}.rate-table .svc{font-family:var(--display);font-size:19px;font-weight:600}.rate-table .desc{color:var(--ink-soft);margin-top:2px;font-size:14px}.rate-table .amt{font-family:var(--display);color:var(--rose-deep);white-space:nowrap;font-size:20px;font-weight:700}.rate-table .note{color:var(--ink-soft);font-size:12px;display:block}.cat-band{background:var(--rose-soft);border-left:4px solid var(--rose-deep);font-family:var(--display);border-radius:0 12px 12px 0;margin:44px 0 6px;padding:12px 18px;font-size:26px;font-weight:700}.filters{flex-wrap:wrap;gap:10px;margin:24px 0 8px;display:flex}.chip{border:1px solid var(--rose);font-family:var(--body);letter-spacing:.08em;cursor:pointer;color:var(--ink);background:0 0;border-radius:999px;padding:9px 18px;font-size:13px}.chip.on{background:var(--ink);color:var(--ivory);border-color:var(--ink)}.gallery{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px;display:grid}.g-item{box-shadow:var(--shadow);background:#fff;border-radius:14px;position:relative;overflow:hidden}.g-item img{aspect-ratio:3/4;object-fit:cover;width:100%}.g-item figcaption{color:var(--ink-soft);padding:10px 12px;font-size:13px}.form-card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #cb8b862e;max-width:620px;margin:30px auto 0;padding:34px}.field{margin-bottom:18px}.field label{letter-spacing:.2em;text-transform:uppercase;color:var(--rose-deep);margin-bottom:8px;font-size:12px;font-weight:500;display:block}.field input,.field select,.field textarea{width:100%;font-family:var(--body);background:var(--ivory);color:var(--ink);border:1px solid #0c0a092e;border-radius:12px;padding:13px 15px;font-size:16px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--rose);border-color:var(--rose)}.stars{cursor:pointer;gap:6px;font-size:34px;display:flex}.stars span{color:#d8cfc8}.stars span.lit{color:var(--gold-line)}.radio-row{flex-wrap:wrap;gap:10px;display:flex}.radio-pill{border:1px solid var(--rose);cursor:pointer;border-radius:999px;padding:10px 18px;font-size:14px}.radio-pill.on{background:var(--rose);color:#fff}.success{text-align:center;padding:40px 20px}.success .big{font-size:52px}.t-carousel{text-align:center;max-width:680px;margin:30px auto 0}.t-card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #cb8b862e;padding:34px 30px}.t-stars{color:var(--gold-line);letter-spacing:4px;margin-bottom:10px;font-size:18px}.t-body{font-family:var(--display);font-size:20px;font-style:italic}.t-name{letter-spacing:.2em;text-transform:uppercase;color:var(--rose-deep);margin-top:14px;font-size:13px}.t-dots{justify-content:center;gap:8px;margin-top:16px;display:flex}.t-dots button{cursor:pointer;background:#d8cfc8;border:none;border-radius:50%;width:10px;height:10px}.t-dots button.on{background:var(--rose-deep)}.admin-bar{background:var(--ink);color:var(--ivory);padding:14px 0}.admin-tabs{flex-wrap:wrap;gap:8px;margin:22px 0;display:flex}.atab{cursor:pointer;font-family:var(--body);background:#fff;border:1px solid #0c0a0933;border-radius:999px;padding:10px 18px;font-size:14px}.atab.on{background:var(--ink);color:var(--ivory);border-color:var(--ink)}.inbox-item,.rev-item{background:#fff;border:1px solid #cb8b8640;border-radius:14px;margin-bottom:14px;padding:18px}.status{letter-spacing:.18em;text-transform:uppercase;background:var(--rose-soft);color:var(--rose-deep);border-radius:999px;padding:5px 12px;font-size:11px;font-weight:500;display:inline-block}.status.confirmed{color:#2e6b34;background:#dcefdf}.status.declined{color:#a33a3a;background:#f6d9d9}.status.done{color:var(--ink-soft);background:#e6e1db}.row-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.mini-btn{border:1px solid var(--ink);cursor:pointer;font-family:var(--body);background:#fff;border-radius:999px;padding:8px 16px;font-size:13px}.mini-btn.solid{background:var(--ink);color:var(--ivory)}.mini-btn.danger{color:#a33a3a;border-color:#a33a3a}.edit-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.toggle{align-items:center;gap:10px;font-size:14px;display:flex}.demo-note{background:#fff4d6;border:1px solid #e5c964;border-radius:12px;margin-bottom:20px;padding:14px 18px;font-size:14px}.appbar{z-index:80;color:var(--ivory);padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#0c0a09f7;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -10px 34px #0c0a0947}.appbar-row{align-items:center;gap:14px;max-width:1100px;margin:0 auto;display:flex}.appbar-text{flex:1;min-width:0;line-height:1.3}.appbar-text strong{font-family:var(--display);font-size:20px;font-weight:700;display:block}.appbar-text span{color:#e9dad5;white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;display:block;overflow:hidden}.appbar-btn{background:var(--rose);color:#fff;font-family:var(--body);letter-spacing:.04em;cursor:pointer;white-space:nowrap;border:none;border-radius:999px;padding:13px 26px;font-size:15px;font-weight:600;text-decoration:none}.appbar-btn:active{transform:scale(.97)}.appbar-hint{max-width:1100px;color:var(--rose-soft);margin:8px auto 0;font-size:13.5px}.update-pill{bottom:calc(22px + var(--appbar-h,0px));z-index:90;background:var(--ink);color:var(--ivory);border-radius:999px;align-items:center;gap:14px;padding:13px 22px;font-size:14px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #00000040}.update-pill button{background:var(--rose);color:#fff;font-family:var(--body);cursor:pointer;border:none;border-radius:999px;padding:8px 18px;font-size:13px;font-weight:500}.install-card{background:linear-gradient(135deg, var(--rose-soft), #fff);border:1px solid var(--rose);border-radius:var(--radius);text-align:center;max-width:560px;box-shadow:var(--shadow);margin:34px auto 0;padding:26px}.install-card h3{margin-bottom:6px;font-size:24px}.install-card p{color:var(--ink-soft);margin:6px 0 16px;font-size:15px}.install-steps{text-align:left;max-width:420px;color:var(--ink-soft);margin:0 auto 16px;font-size:15px}.get-app{padding-top:6px}.get-app-card{max-width:640px;margin:0 auto}.slot-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;margin-top:6px;display:grid}.slot-chip{border:1.5px solid var(--rose);color:var(--ink);font-size:15px;font-weight:600;font-family:var(--body);cursor:pointer;background:#fff;border-radius:12px;padding:10px 6px}.slot-chip.on{background:var(--rose);color:#fff;border-color:var(--rose-deep)}.slot-chip.off{color:#b7a8a5;cursor:not-allowed;text-align:center;background:#faf6f5;border-color:#e7dad8}.slot-chip.off small{margin-top:2px;font-size:11px;font-weight:400;display:block}.slot-note{color:var(--ink-soft);margin:10px 0 0;font-size:14px}.ref-box{background:var(--rose-soft);border:1px solid var(--rose);border-radius:var(--radius);margin-top:18px;padding:18px}.ref-label{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);font-size:13px}.ref-code{font-family:var(--display);letter-spacing:.06em;margin:4px 0;font-size:34px}.ref-hint{color:var(--ink-soft);font-size:13px}footer{text-align:center;color:var(--ink-soft);border-top:1px solid #cb8b864d;margin-top:40px;padding:40px 0;font-size:14px}footer .brand{font-size:26px}footer .fine{margin-top:10px;font-size:12px}@media (width<=760px){.grid-3{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,1fr);gap:12px}.nav-links{background:var(--ivory);border-bottom:1px solid #cb8b864d;flex-direction:column;gap:16px;padding:20px;display:none;position:absolute;top:64px;left:0;right:0}.nav-links.open{display:flex}.menu-btn{display:block}.edit-grid{grid-template-columns:1fr}section{padding:48px 0}}
