@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";
:root{--bg:#fbfdff;--bg-soft:#f2f6ff;--text:#0f172a;--muted:#4f5e73;--border:#dbe4f3;--card:#fff;--accent:#2f87ff;--accent-strong:#0b64ff;--accent-soft:#e7f1ff;--glow:#2f87ff33;--page-max:1100px;--radius:24px}*,:before,:after{box-sizing:border-box}body{color:var(--text);background-color:var(--bg);min-height:100vh;margin:0;font-family:Inter,sans-serif;line-height:1.6}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}.page{flex-direction:column;gap:120px;padding:12px 6vw 120px;display:flex}section{scroll-margin-top:120px}.topbar{z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffeb;border-bottom:1px solid #0f6bff1f;justify-content:space-between;align-items:center;padding:20px 6vw;display:flex;position:sticky;top:0}.logo{letter-spacing:.3em;text-transform:uppercase;background:var(--card);border:1px solid #0f6bff38;border-radius:999px;padding:10px 16px;font-family:Inter,sans-serif;font-size:14px}.nav{text-transform:uppercase;letter-spacing:.18em;gap:24px;font-size:13px;display:flex}.nav a{padding-bottom:4px;position:relative}.nav a:after{content:"";background:linear-gradient(90deg,transparent,var(--accent),transparent);transform-origin:50%;width:100%;height:1px;transition:transform .2s;position:absolute;bottom:0;left:0;transform:scaleX(0)}.nav a:hover:after,.nav a:focus-visible:after,.nav a.is-active:after{transform:scaleX(1)}.nav a.is-active{color:var(--accent-strong)}.editable-text{cursor:text;border-radius:6px;outline:1px dashed #0f6bff40;min-width:1ch;padding:2px 4px}.editable-text:hover{outline-color:#0f6bff73}.editable-text:focus{outline-color:var(--accent-strong);background:var(--bg-soft)}.section{width:100%;max-width:var(--page-max);margin:0 auto}.hero{gap:20px;padding:0 0 20px;display:grid}.hero h1{letter-spacing:-.02em;margin:0;font-family:Sora,sans-serif;font-size:clamp(36px,5vw,56px)}.hero p{color:var(--muted);max-width:60ch;margin:0}.cta-button{color:#fff;letter-spacing:.2em;text-transform:uppercase;background:linear-gradient(135deg,#a855f7,#6d28d9);border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:14px 28px;font-size:12px;transition:transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 18px 40px #6d28d947}.cta-button:hover,.cta-button:focus-visible{transform:translateY(-1px);box-shadow:0 24px 48px #6d28d961}.hero-image{border:1px dashed var(--border);background:#fff;border-radius:28px;min-height:clamp(220px,40vw,360px)}.hero-extra{gap:8px;max-width:70ch;display:grid}.hero-extra-title{margin:0;font-family:Sora,sans-serif;font-size:clamp(20px,2.6vw,28px)}.hero-extra-body{color:var(--muted);margin:0}.calendly-block{box-shadow:none;background:0 0;border:none;border-radius:0;overflow:visible}.calendly-inline-widget{width:100%}.booking-title{letter-spacing:-.02em;color:#000;margin:0;font-family:Inter,sans-serif;font-size:clamp(32px,4vw,50px)}.section-title{letter-spacing:.3em;text-transform:uppercase;color:var(--accent-strong);margin-bottom:16px;font-size:12px}.faq{margin-top:48px}.faq-list{gap:16px;display:grid}.faq-item{border:1px solid var(--border);background:var(--card);border-radius:18px;padding:16px 20px}.faq-item summary{cursor:pointer;font-weight:500;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item p{color:var(--muted);margin:12px 0 0}.blog-list{gap:36px;display:grid}.blog-header h1{letter-spacing:-.02em;margin:0 0 12px;font-family:Sora,sans-serif;font-size:clamp(32px,4vw,50px)}.blog-header p{color:var(--muted);max-width:60ch;margin:0}.blog-grid{gap:24px;display:grid}.blog-card-link{color:inherit;text-decoration:none;display:block}.blog-card{border:1px solid var(--border);background:var(--card);border-radius:28px;grid-template-columns:minmax(0,240px) 1fr;align-items:stretch;gap:24px;padding:clamp(20px,3vw,28px);transition:border-color .2s,box-shadow .2s;display:grid;box-shadow:0 30px 60px #0f6bff14}.blog-card-link:hover .blog-card,.blog-card-link:focus-visible .blog-card{border-color:#0f6bff66;box-shadow:0 36px 70px #0f6bff29}.blog-card-image{background:linear-gradient(135deg,#e7f1ff,#f6f9ff);border:1px dashed #0f6bff33;border-radius:20px;min-height:180px}.blog-card-body{gap:12px;display:grid}.booking-shell{max-width:1400px}.booking-header,.admin-toolbar,.admin-section-header,.admin-appointment-header,.admin-appointment-grid,.admin-inline-actions,.admin-hours-row,.admin-block-row,.booking-calendar-toolbar,.booking-month-actions,.booking-location-meta,.booking-step-heading,.admin-cancel-row,.admin-locations-layout{gap:12px;display:flex}.booking-header,.admin-toolbar,.admin-section-header,.admin-appointment-header,.booking-calendar-toolbar{justify-content:space-between;align-items:flex-start}.booking-copy,.booking-inline-status,.admin-muted-copy,.booking-empty-state,.booking-legal-copy,.admin-appointment-card p{color:var(--muted);margin:0}.booking-demo-pill,.admin-integrations span,.admin-status-pill{border-radius:999px;align-items:center;padding:10px 14px;font-size:12px;font-weight:700;display:inline-flex}.booking-demo-pill,.admin-integrations .is-on{color:#146c43;background:#e7fff3}.admin-integrations .is-off{color:#8a6410;background:#fff6d9}.booking-layout-card,.booking-card,.admin-login-card{border:1px solid var(--border);background:#fff;border-radius:32px;box-shadow:0 20px 60px #0f172a14}.booking-layout-card{grid-template-columns:340px minmax(0,1.2fr) minmax(320px,.9fr);gap:0;display:grid;overflow:hidden}.booking-card,.admin-login-card{padding:28px}.booking-card-stack,.admin-stack,.admin-subsection,.booking-location-list,.booking-slot-list,.admin-location-list,.admin-weekday-list,.admin-appointment-list{gap:18px;display:grid}.booking-step{min-height:100%;padding:28px}.booking-step+.booking-step{border-left:1px solid var(--border)}.booking-step-heading{margin-bottom:18px}.booking-step-heading h2,.admin-section-header h2,.admin-section-header h3,.booking-success-card h1,.admin-appointment-card h3{margin:0}.booking-location-card,.booking-slot,.booking-day,.admin-location-link{border:1px solid var(--border);width:100%;color:var(--text);text-align:left;cursor:pointer;background:#fff;border-radius:20px;padding:18px 20px;transition:border-color .2s,transform .2s,box-shadow .2s}.booking-location-card:hover,.booking-slot:hover,.booking-day:hover,.admin-location-link:hover{border-color:#0f6bff59;transform:translateY(-1px);box-shadow:0 16px 36px #0f6bff1f}.booking-location-card.is-selected,.booking-slot.is-selected,.booking-day.is-selected,.admin-location-link.is-active{color:#fff;background:#1f2f63;border-color:#1f2f63}.booking-location-title{font-size:1.05rem;font-weight:700}.booking-location-meta{align-items:center;margin-top:10px}.booking-location-meta span,.admin-status-pill{color:#24345d;background:#eef3fb;border-radius:999px;padding:6px 10px;font-size:.88rem}.booking-location-card.is-selected .booking-location-meta span{color:#fff;background:#ffffff29}.booking-calendar-grid{grid-template-columns:minmax(0,1fr) 260px;gap:24px;display:grid}.booking-month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;display:grid}.booking-weekday{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);padding-bottom:6px;font-size:.78rem}.booking-day{text-align:center;justify-content:center;min-height:72px;padding:0}.booking-day.is-available{background:#f0f2f5}.booking-day:disabled{cursor:default;opacity:.45;box-shadow:none;transform:none}.booking-slots-panel{gap:14px;display:grid}.booking-slot{text-align:center}.booking-form,.admin-login-form,.admin-form-grid{gap:16px;display:grid}.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-field,.booking-toggle-field{gap:8px;display:grid}.booking-field span{font-weight:600}.booking-field input,.booking-field textarea,.booking-field select,.admin-hours-row input,.admin-block-row input[type=date],.admin-block-row input[type=time],.admin-cancel-row textarea{border:1px solid var(--border);width:100%;font:inherit;color:var(--text);background:#fff;border-radius:18px;padding:14px 16px}.booking-toggle-field{grid-template-columns:auto 1fr;align-items:center}.booking-consent{grid-template-columns:auto 1fr;align-items:start;gap:12px;display:grid}.booking-button{cursor:pointer;font:inherit;border:none;border-radius:999px;justify-content:center;align-items:center;padding:14px 22px;font-weight:700;display:inline-flex}.booking-button-primary{color:#fff;background:#5c618e}.booking-button-secondary{color:#24345d;background:#eef3fb}.booking-calendar-back-button{width:fit-content}.booking-button-danger{color:#fff;background:#a53d3d}.admin-toolbar,.admin-shell,.booking-success-shell{gap:24px;display:grid}.admin-locations-layout{align-items:start;gap:24px}.admin-location-sidebar{flex:0 0 320px;width:320px}.admin-location-link{gap:4px;display:grid}.admin-location-link small{color:inherit;opacity:.78}.admin-appointment-card{border:1px solid var(--border);border-radius:22px;gap:14px;padding:18px;display:grid}.admin-appointment-grid{flex-wrap:wrap}.admin-appointment-grid>div{min-width:160px}.admin-cancel-row{align-items:start}.admin-cancel-row textarea{min-height:100px}.admin-hours-row,.admin-block-row{align-items:center}.admin-hours-row span{color:var(--muted)}.admin-weekday-card{border:1px solid var(--border);border-radius:20px;gap:12px;padding:16px;display:grid}.booking-success-card{border:1px solid var(--border);background:#fff;border-radius:32px;gap:16px;max-width:760px;padding:32px;display:grid}.status-confirmed{color:#146c43;background:#e7fff3}.status-pending_payment{color:#8a6410;background:#fff6d9}.status-cancelled_by_admin,.status-cancelled_by_customer{color:#8c2f2f;background:#ffe8e8}@media (max-width:1120px){.booking-layout-card{grid-template-columns:1fr}.booking-step+.booking-step{border-left:none;border-top:1px solid var(--border)}.booking-calendar-grid{grid-template-columns:1fr}.admin-locations-layout{flex-direction:column}.admin-location-sidebar{flex:auto;width:100%}}@media (max-width:760px){.page{gap:64px;padding:12px 16px 80px}.admin-form-grid{grid-template-columns:1fr}.admin-cancel-row,.admin-hours-row,.admin-block-row,.admin-toolbar,.booking-header,.admin-section-header,.booking-calendar-toolbar{flex-direction:column}}.blog-card-meta{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;gap:12px;font-size:11px;display:flex}.blog-card-title{letter-spacing:-.01em;margin:0;font-family:Sora,sans-serif;font-size:22px}.blog-card-preview{color:var(--muted);margin:0}.blog-card-tldr{border-top:1px solid var(--border);gap:8px;padding-top:12px;font-size:13px;display:grid}.blog-card-tldr span{text-transform:uppercase;letter-spacing:.2em;font-size:11px}.blog-card-tldr ul{color:var(--muted);gap:6px;margin:0;padding:0;list-style:none;display:grid}.testimonials{gap:32px;display:grid}.testimonials-header h2{margin:0 0 8px;font-family:Sora,sans-serif;font-size:clamp(26px,3vw,38px)}.testimonials-header p{color:var(--muted);max-width:60ch;margin:0}.testimonials-list{gap:16px;display:grid}.testimonial-row{border:1px solid var(--border);background:var(--card);border-radius:22px;grid-template-columns:44px 1fr;align-items:start;gap:18px;padding:20px 24px;display:grid;box-shadow:0 20px 40px #0f6bff14}.testimonial-icon{background:linear-gradient(135deg,#2f87ff33,#0000);border:1px solid #0f6bff4d;border-radius:14px;width:44px;height:44px}.testimonial-content{gap:8px;display:grid}.testimonial-name{text-transform:uppercase;letter-spacing:.2em;font-size:12px}.testimonial-quote{color:var(--muted);margin:0;font-size:15px}.blog-detail{gap:32px;display:grid}.blog-article{border:1px solid var(--border);background:var(--card);border-radius:30px;gap:24px;padding:clamp(28px,5vw,64px);display:grid;position:relative;box-shadow:0 40px 80px #0f6bff1a}.blog-article:before{content:"";opacity:.5;background:linear-gradient(90deg,#0000,#2f87ffcc,#0000);height:2px;position:absolute;top:0;left:24px;right:24px}.blog-article-hero{background:linear-gradient(135deg,#e7f1ff,#f6f9ff);border:1px dashed #0f6bff33;border-radius:22px;min-height:220px}.blog-article h1{letter-spacing:-.02em;margin:0;font-family:Sora,sans-serif;font-size:clamp(34px,4vw,56px)}.blog-article-intro{color:var(--muted);max-width:60ch;margin:0;font-size:18px}.blog-article-meta{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;gap:16px;font-size:12px;display:flex}.blog-article-tldr{border:1px solid var(--border);background:var(--bg-soft);border-radius:20px;gap:8px;padding:20px 24px;display:grid}.blog-article-tldr h2{text-transform:uppercase;letter-spacing:.3em;margin:0;font-size:12px}.blog-article-tldr ul{color:var(--muted);gap:6px;margin:0;padding:0;list-style:none;display:grid}.blog-article-toc{border-top:1px solid var(--border);padding-top:16px}.blog-article-toc h3{letter-spacing:.2em;text-transform:uppercase;margin:0 0 12px;font-size:13px}.blog-article-toc ul{color:var(--muted);gap:8px;margin:0;padding:0;list-style:none;display:grid}.blog-article-body h2{letter-spacing:-.01em;margin:0;font-family:Sora,sans-serif;font-size:20px}.blog-article-body p{margin:0 0 16px}.blog-article-body ul{color:var(--muted);margin:0 0 16px;padding-left:18px}.blog-article-body blockquote{border-left:3px solid var(--accent-strong);background:var(--bg-soft);color:var(--muted);border-radius:16px;margin:0;padding:18px 24px}.admin-shell{gap:20px;padding-bottom:80px;display:grid}.admin-header{justify-content:space-between;align-items:center;gap:24px;padding:20px 6vw 0;display:flex}.admin-title{font-family:Sora,sans-serif;font-size:20px}.admin-subtitle{letter-spacing:.24em;text-transform:uppercase;color:var(--muted);font-size:11px}.admin-save{border:1px solid var(--accent-strong);background:var(--accent-strong);color:#fff;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;border-radius:999px;padding:10px 20px;font-size:12px}.admin-save:disabled{opacity:.6;cursor:not-allowed}.admin-tabs{flex-wrap:wrap;gap:12px;padding:0 6vw;display:flex}.admin-tab{border:1px solid var(--border);background:var(--card);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;border-radius:999px;padding:8px 16px;font-size:12px}.admin-tab.is-active{border-color:var(--accent-strong);color:var(--accent-strong);background:var(--accent-soft)}.admin-status{color:var(--muted);padding:0 6vw;font-size:13px}.admin-preview{padding-top:12px}.admin-login{gap:16px;display:grid}.admin-login form{gap:10px;max-width:320px;display:grid}.admin-label{letter-spacing:.24em;text-transform:uppercase;color:var(--muted);font-size:11px}.admin-login input{border:1px solid var(--border);border-radius:10px;padding:10px 12px;font-family:inherit;font-size:14px}.admin-login button{border:1px solid var(--accent-strong);background:var(--accent-strong);color:#fff;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;border-radius:999px;padding:10px 20px;font-size:12px}@media (max-width:720px){.page{gap:80px;padding:10px 6vw 100px}.topbar{flex-direction:column;align-items:flex-start;gap:12px}.nav{flex-wrap:wrap;gap:16px;font-size:12px}.calendly-block{border-radius:18px}.blog-card{grid-template-columns:1fr}.blog-article{padding:28px 22px}.blog-article:before{left:16px;right:16px}.testimonial-row{grid-template-columns:36px 1fr;padding:18px}.testimonial-icon{border-radius:12px;width:36px;height:36px}}.public-booking-shell{gap:8px;max-width:644px;font-size:.82rem;line-height:1.45;display:grid}.public-booking-shell .booking-title{font-size:clamp(22px,2.4vw,34px)}.public-booking-shell .booking-copy,.public-booking-shell .booking-inline-status,.public-booking-shell .booking-legal-copy{font-size:.82rem}.public-booking-shell .booking-field span{font-size:.8rem}.public-booking-shell .booking-field input{border-radius:13px;padding:10px 11px;font-size:.84rem}.public-booking-shell .booking-consent{gap:8px}.public-booking-shell .booking-button{padding:10px 15px;font-size:.8rem}.booking-embed-page{background:0 0;padding:0}:is(html:has(.booking-embed-page),body:has(.booking-embed-page)){background:0 0}.booking-embed-page .page{justify-content:center;align-items:flex-start;gap:0;min-height:auto;padding:0;display:flex}.booking-embed-page .public-booking-shell{width:100%;max-width:100%;margin:0 auto}.booking-embed-page .booking-demo-pill-inline{display:none}.booking-embed-page .booking-stage{min-height:auto;box-shadow:none}@media (min-width:800px){.booking-embed-page .public-booking-shell{max-width:1200px;font-size:1.18rem;line-height:1.45}.booking-embed-page .booking-stage-datetime{min-height:820px}.booking-embed-page .booking-picker-layout{grid-template-columns:minmax(0,1fr) 430px}.booking-embed-page .booking-calendar-pane{gap:18px;padding:0 28px 28px}.booking-embed-page .booking-slots-pane{gap:16px;padding:0 28px 28px}.booking-embed-page .booking-slot-stack{gap:10px;max-height:620px}.booking-embed-page .booking-stage-header-compact{padding:0 28px}.booking-embed-page .booking-stage{border-radius:28px}.booking-embed-page .booking-stage-location,.booking-embed-page .booking-stage-details{min-height:820px;padding:38px 10%}.booking-embed-page .booking-stage-content{gap:18px}.booking-embed-page .booking-stage-header{gap:16px}.booking-embed-page .booking-calendar-back-button{min-width:84px;padding:18px 22px;font-size:1.08rem}.booking-embed-page .public-booking-shell-location .booking-title,.booking-embed-page .public-booking-shell-details .booking-title{font-size:clamp(3.2rem,4.8vw,4.6rem)}.booking-embed-page .public-booking-shell-location .booking-stage-content-compact,.booking-embed-page .public-booking-shell-details .booking-stage-content-compact{justify-self:center;width:100%;max-width:none;margin:auto}.booking-embed-page .public-booking-shell-location .booking-location-row{text-align:left;padding:24px 28px}.booking-embed-page .public-booking-shell-location .booking-location-row-title{font-size:1.45rem}.booking-embed-page .public-booking-shell-location .booking-location-row-meta{justify-content:flex-start;gap:10px;margin-top:14px}.booking-embed-page .public-booking-shell-location .booking-location-row-meta span,.booking-embed-page .public-booking-shell-details .booking-location-row-meta span{padding:10px 15px;font-size:1rem}.booking-embed-page .booking-month-display{font-size:1.58rem}.booking-embed-page .booking-arrow-button{width:54px;height:54px}.booking-embed-page .booking-arrow-button:before{border-top-width:3px;border-right-width:3px;width:14px;height:14px}.booking-embed-page .booking-weekday-row,.booking-embed-page .booking-day-grid{gap:8px}.booking-embed-page .booking-weekday-label{font-size:.8rem}.booking-embed-page .booking-day-cell{border-radius:16px;font-size:1.14rem}.booking-embed-page .booking-slots-heading{font-size:1.34rem}.booking-embed-page .booking-hour-toggle{border-radius:15px;padding:4px}.booking-embed-page .booking-hour-toggle button{padding:8px 12px;font-size:1rem}.booking-embed-page .booking-slot-row{border-radius:16px;padding:14px 16px;font-size:1.1rem}.booking-embed-page .public-booking-shell-details .booking-copy{font-size:1.16rem}.booking-embed-page .public-booking-shell-details .booking-summary-card{border-radius:20px;gap:10px;padding:18px 20px}.booking-embed-page .public-booking-shell-details .booking-form-compact{gap:18px}.booking-embed-page .public-booking-shell-details .booking-field span,.booking-embed-page .public-booking-shell-details .booking-consent{font-size:1.08rem}.booking-embed-page .public-booking-shell-details .booking-field input{border-radius:18px;padding:18px 20px;font-size:1.08rem}.booking-embed-page .public-booking-shell-details .booking-button{padding:18px 22px;font-size:1.08rem}}.booking-demo-pill-inline{justify-self:start}.booking-stage{border:1px solid var(--border);background:#fff;border-radius:22px;gap:11px;min-height:455px;padding:13px;display:grid;box-shadow:0 14px 42px #0f172a14}.booking-stage-datetime{gap:11px;padding:13px 0 0;overflow:hidden}.booking-stage-location,.booking-stage-details{place-items:center;padding:18px}.booking-stage-content{align-content:start;gap:11px;display:grid}.booking-stage-content-compact{width:100%;max-width:430px;margin:auto}.public-booking-shell-location .booking-stage-content-compact,.public-booking-shell-details .booking-stage-content-compact{max-width:500px}.public-booking-shell-location .booking-stage-content-compact{justify-self:center;margin:auto}.booking-stage-header{align-items:flex-start;gap:10px;display:flex}.booking-stage-header-compact{padding:0 17px}.booking-stage-heading-group{gap:4px;display:grid}.booking-back-button{border:1px solid var(--border);min-width:59px;color:var(--text);font:inherit;cursor:pointer;background:#fff;border-radius:999px;justify-content:center;align-items:center;padding:7px 11px;font-weight:600;display:inline-flex}.booking-stage-datetime .booking-back-button{min-width:0;padding:6px 10px}.booking-location-stack{border:1px solid var(--border);border-radius:15px;gap:0;display:grid;overflow:hidden}.booking-location-row{border:0;border-bottom:1px solid var(--border);width:100%;color:var(--text);text-align:left;cursor:pointer;background:#fff;padding:10px 11px;transition:background .2s}.booking-location-row:last-child{border-bottom:0}.booking-location-row:hover{background:#f7f9fc}.booking-location-row-title{font-size:.86rem;font-weight:700;line-height:1.25}.booking-location-row-meta{flex-wrap:wrap;align-items:center;gap:7px;margin-top:8px;display:flex}.booking-location-row-meta span{color:#24345d;background:#eef3fb;border-radius:999px;justify-content:center;align-items:center;padding:5px 8px;font-size:.72rem;line-height:1;display:inline-flex}.public-booking-shell-location .booking-location-row{text-align:left;padding:14px 16px}.public-booking-shell-location .booking-location-row-title{font-size:1rem}.public-booking-shell-location .booking-location-row-meta{justify-content:flex-start;margin-top:10px}.public-booking-shell-location .booking-location-row-meta span{padding:7px 11px;font-size:.82rem}.booking-picker-layout{grid-template-columns:minmax(0,1fr) 218px;align-items:start;gap:0;display:grid}.booking-calendar-pane{gap:13px;padding:0 17px 17px;display:grid}.booking-calendar-topbar{justify-content:space-between;align-items:center;gap:11px;display:flex}.booking-month-display{letter-spacing:-.02em;font-size:.96rem;font-weight:700}.booking-arrow-button{color:#8190a5;width:34px;height:34px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d8dfec;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:0;line-height:0;transition:color .2s,border-color .2s,background .2s,box-shadow .2s;display:inline-flex;position:relative}.booking-arrow-button:before{content:"";border-top:2.5px solid;border-right:2.5px solid;width:10px;height:10px;display:block;transform:rotate(225deg)}.booking-arrow-button[aria-label=Next\ month]:before{transform:rotate(45deg)}.booking-arrow-button:hover,.booking-arrow-button:focus-visible{color:#24345d;background:#5c618e14;border-color:#5c618e66;box-shadow:0 8px 18px #12233c14}.booking-weekday-row{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.booking-weekday-label{text-align:center;letter-spacing:.08em;text-transform:uppercase;color:#24345d;font-size:.56rem;font-weight:700}.booking-day-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.booking-calendar-grid-wrap.is-loading{opacity:.55;pointer-events:none}.booking-day-cell{aspect-ratio:1;color:var(--text);font:inherit;cursor:pointer;background:#fff;border:1px solid #0000;border-radius:10px;font-size:.72rem;font-weight:600;transition:background .2s,color .2s,border-color .2s}.booking-day-cell.is-available{background:#e9edf3}.booking-day-cell.is-selected{color:#fff;background:#5c618e}.booking-day-cell.is-unavailable{color:#99a2b1;cursor:default;background:#fff}.booking-day-cell:disabled{cursor:default}.booking-day-cell-empty{visibility:hidden;pointer-events:none}.booking-slots-pane{border-left:1px solid var(--border);gap:11px;min-width:0;padding:0 17px 17px;display:grid}.booking-slots-toolbar{justify-content:space-between;align-items:center;gap:8px;display:flex}.booking-slots-heading{font-size:.84rem;font-weight:700}.booking-hour-toggle{background:#f4f6fa;border-radius:12px;align-items:center;gap:3px;padding:3px;display:inline-flex}.booking-hour-toggle button{color:#24345d;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:5px 7px;font-weight:600}.booking-hour-toggle button.is-active{background:#fff;box-shadow:0 2px 8px #0f172a14}.booking-slot-stack{gap:7px;max-height:378px;padding-right:2px;display:grid;overflow:auto}.booking-slot-row{border:1px solid var(--border);width:100%;color:var(--text);text-align:center;font:inherit;cursor:pointer;background:#fff;border-radius:11px;padding:8px 10px;font-size:.78rem;font-weight:600}.booking-slot-row:hover,.booking-slot-row.is-selected{color:#5c618e;border-color:#5c618e}.booking-summary-card{border:1px solid var(--border);background:#f9fbff;border-radius:15px;gap:7px;padding:10px 11px;display:grid}.public-booking-shell-details .booking-title,.public-booking-shell-location .booking-title{font-size:clamp(28px,4.2vw,40px)}.public-booking-shell-details .booking-copy,.public-booking-shell-details .booking-inline-status,.public-booking-shell-details .booking-legal-copy{font-size:.94rem}.public-booking-shell-details .booking-summary-card{border-radius:18px;padding:14px 16px}.public-booking-shell-details .booking-location-row-meta{margin-top:0}.public-booking-shell-details .booking-location-row-meta span{padding:7px 11px;font-size:.82rem}.public-booking-shell-details .booking-form-compact{gap:14px}.public-booking-shell-details .booking-field span{font-size:.95rem}.public-booking-shell-details .booking-field input{border-radius:16px;padding:13px 15px;font-size:.98rem}.public-booking-shell-details .booking-consent{gap:10px;font-size:.94rem}.public-booking-shell-details .booking-button{padding:13px 18px;font-size:.92rem}.booking-form-compact{gap:10px;display:grid}.booking-consent-compact{margin-top:4px}.booking-form-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.booking-form-actions .booking-button{min-width:84px}.booking-slot-stack.is-loading{opacity:.55;pointer-events:none}@media (max-width:760px){.public-booking-shell{max-width:100%}.booking-stage{min-height:auto;padding:22px}.booking-stage-datetime{padding:22px}.booking-stage-header-compact{padding:0}.booking-stage-content-compact{max-width:none}.public-booking-shell-location .booking-stage,.public-booking-shell-details .booking-stage{padding:24px 20px}.public-booking-shell-location .booking-title,.public-booking-shell-details .booking-title{font-size:clamp(36px,8vw,44px)}.public-booking-shell-location .booking-location-row{padding:18px 16px}.public-booking-shell-location .booking-location-row-title{font-size:1.15rem}.public-booking-shell-location .booking-location-row-meta span,.public-booking-shell-details .booking-location-row-meta span{padding:10px 14px;font-size:.98rem}.public-booking-shell-details .booking-copy,.public-booking-shell-details .booking-inline-status,.public-booking-shell-details .booking-legal-copy,.public-booking-shell-details .booking-consent,.public-booking-shell-details .booking-field span{font-size:1.08rem}.public-booking-shell-details .booking-field input{padding:15px 16px;font-size:1rem}.public-booking-shell-details .booking-button{padding:14px 18px;font-size:1.04rem}.public-booking-shell-details .booking-summary-card strong{font-size:1.05rem}.booking-month-display{font-size:1.18rem}.booking-slots-heading{font-size:1.12rem}.booking-hour-toggle button{font-size:.96rem}.booking-picker-layout{grid-template-columns:1fr;gap:14px}.booking-calendar-pane,.booking-slots-pane{padding:0}.booking-slots-pane{border-left:0;border-top:1px solid var(--border);align-content:start;padding-top:14px}.booking-slot-stack{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;max-height:180px;overflow-y:auto}}@media (max-width:680px){.booking-stage-header,.booking-calendar-topbar,.booking-form-actions{flex-direction:column;align-items:stretch}.booking-back-button,.booking-calendar-back-button{width:fit-content}.booking-weekday-label{letter-spacing:.04em;font-size:.8rem}.booking-day-cell{font-size:1rem}.booking-slots-heading{font-size:1.18rem}.booking-slot-row{font-size:1.05rem}.booking-form-actions .booking-button{width:100%}}.admin-dashboard{gap:28px}.admin-page{gap:0;min-height:100vh;padding:0}.admin-page .admin-shell{box-sizing:border-box;width:100%;max-width:none;min-height:100vh;padding:32px 10vw 40px}.admin-page .admin-shell-auth{place-items:center;padding:32px 18px}.admin-dashboard-stack{gap:28px;display:grid}.admin-page-header{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.admin-page-title-group{gap:10px;max-width:760px;display:grid}.admin-page-eyebrow{letter-spacing:.18em;text-transform:uppercase;color:#5c618e;margin:0;font-size:.82rem;font-weight:700}.admin-page-title{color:#113350;letter-spacing:-.04em;margin:0;font-size:clamp(2.4rem,4vw,3.6rem);line-height:.98}.admin-page-copy{color:#48556b;max-width:56ch;margin:0;font-size:1rem;line-height:1.7}.admin-page-badges{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.admin-badge{border-radius:999px;justify-content:center;align-items:center;min-height:40px;padding:0 16px;font-size:.82rem;font-weight:700;display:inline-flex}.admin-badge.is-on{color:#1d724b;background:#e9f8ef}.admin-badge.is-off{color:#936725;background:#fff0d9}.admin-surface{background:#ffffffeb;border:1px solid #1133501a;border-radius:30px;padding:28px;box-shadow:0 22px 52px #12233c14}.admin-panel-header,.admin-subpanel-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.admin-panel-header-inline{align-items:center}.admin-panel-copy,.admin-subpanel-header>div:first-child{gap:6px;display:grid}.admin-panel-copy h2,.admin-subpanel-header h3{color:#113350;margin:0;font-size:1.45rem;line-height:1.15}.admin-panel-copy p,.admin-subpanel-header p{color:#617086;margin:0;font-size:.95rem;line-height:1.55}.admin-panel-tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.admin-view-switch{flex-wrap:wrap;gap:10px;display:inline-flex}.admin-chip-button{color:#27415c;font:inherit;cursor:pointer;background:#fff;border:1px solid #1133501f;border-radius:999px;align-items:center;gap:10px;padding:10px 14px;font-weight:700;display:inline-flex}.admin-chip-button span{min-width:28px;min-height:28px;color:inherit;background:#eef1f6;border-radius:999px;justify-content:center;align-items:center;font-size:.78rem;display:inline-flex}.admin-chip-button.is-active{color:#113350;background:#5c618e1a;border-color:#5c618e4d}.admin-filter-field{gap:6px;min-width:220px;display:grid}.admin-filter-field span{color:#617086;letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;font-weight:700}.admin-filter-field select{width:100%;font:inherit;color:#113350;background:#fff;border:1px solid #d8dfec;border-radius:16px;padding:12px 14px}.admin-empty-state{text-align:center;color:#617086;place-items:center;gap:8px;min-height:220px;display:grid}.admin-empty-state h3{color:#113350;margin:0;font-size:1.2rem}.admin-empty-state p{max-width:40ch;margin:0;line-height:1.6}.admin-table-wrap{overflow-x:auto}.admin-appointments-table{border-collapse:collapse;width:100%;min-width:900px}.admin-appointments-table th,.admin-appointments-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #e7ebf3;padding:16px 14px}.admin-appointments-table thead th{color:#617086;letter-spacing:.14em;text-transform:uppercase;font-size:.8rem;font-weight:700}.admin-table-primary{gap:4px;display:grid}.admin-table-primary strong{color:#113350;font-size:1rem}.admin-table-primary span,.admin-table-muted{color:#617086;font-size:.94rem}.admin-price-cell{vertical-align:middle}.admin-price-value{color:#113350;align-items:center;min-height:48px;font-size:1rem;font-weight:800;display:inline-flex}.admin-status-chip{color:#27415c;background:#eef1f6;border-radius:999px;justify-content:center;align-items:center;padding:8px 12px;font-size:.82rem;font-weight:700;display:inline-flex}.admin-status-chip.status-confirmed{color:#1d724b;background:#e9f8ef}.admin-status-chip.status-pending_payment{color:#936725;background:#fff0d9}.admin-status-chip.status-cancelled_by_admin,.admin-status-chip.status-cancelled_by_customer{color:#a04636;background:#fde9e6}.admin-status-chip.status-payment_failed,.admin-status-chip.status-expired{color:#617086;background:#eef1f6}.admin-inline-button{min-width:104px}.admin-inline-row td{background:#fbf6f0}.admin-cancel-inline{gap:16px;display:grid}.admin-locations-layout{grid-template-columns:320px minmax(0,1fr);align-items:start;gap:24px;display:grid}.admin-location-list{gap:12px;display:grid}.admin-location-sidebar>.admin-panel-header{margin-bottom:14px}.admin-location-link{color:#113350;text-align:left;cursor:pointer;background:#fff;border:1px solid #dbe2ee;border-radius:22px;gap:8px;width:100%;padding:18px 18px 16px;transition:border-color .2s,box-shadow .2s,transform .2s;display:grid}.admin-location-link:hover{border-color:#5c618e59;transform:translateY(-1px);box-shadow:0 14px 32px #12233c14}.admin-location-link.is-active{color:#113350;background:#5c618e1a;border-color:#5c618e66}.admin-location-link.is-active .admin-location-link-copy{color:#4e5e75}.admin-location-link-title{font-size:1rem;font-weight:800}.admin-location-link-copy{color:#617086;font-size:.92rem;line-height:1.45}.admin-location-link-meta{flex-wrap:wrap;gap:8px;display:flex}.admin-location-link-meta span,.admin-location-summary span{color:#27415c;background:#eef1f6;border-radius:999px;justify-content:center;align-items:center;min-height:32px;padding:0 12px;font-size:.82rem;font-weight:700;display:inline-flex}.admin-editor-surface{gap:20px;display:grid}.admin-location-summary{flex-wrap:wrap;gap:10px;display:flex}.admin-compact-button{align-self:center;width:auto;min-height:40px;padding:9px 16px;font-size:.9rem}.admin-editor-grid{gap:20px;display:grid}.admin-editor-grid.has-settings{grid-template-columns:minmax(0,1fr) 360px;align-items:start}.admin-editor-main{gap:20px;display:grid}.admin-subpanel,.admin-settings-drawer{background:#fff;border:1px solid #e7ebf3;border-radius:24px;gap:18px;padding:20px;display:grid}.admin-settings-drawer{position:sticky;top:24px}.admin-gear-button,.admin-close-button{color:#113350;cursor:pointer;background:#fff;border:1px solid #d8dfec;border-radius:999px;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.2rem;display:inline-flex}.admin-gear-button.is-active{color:#5c618e;background:#5c618e1a;border-color:#5c618e59}.admin-hours-table-wrap{overflow-x:auto}.admin-hours-table{border-collapse:collapse;width:100%;min-width:760px}.admin-hours-table th,.admin-hours-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #e7ebf3;padding:16px 18px}.admin-hours-action-cell{white-space:nowrap;vertical-align:middle;text-align:right;width:58px;padding-top:0;padding-bottom:0}.admin-hours-table thead th{color:#617086;letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;font-weight:700}.admin-hours-table tbody th{color:#113350;width:240px;font-size:1rem;font-weight:700}.admin-day-header{display:block}.admin-day-toggle{color:#113350;width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) 76px;justify-content:start;align-items:center;gap:16px;padding:0;display:grid}.admin-day-mobile-actions{display:none}.admin-day-toggle span,.admin-day-toggle small,.admin-hours-table .admin-table-muted,.admin-hours-table .admin-range-row span,.admin-hours-table .admin-range-row input,.admin-hours-table .admin-link-button{font-size:1rem;line-height:1.25}.admin-day-toggle small{color:#617086;justify-self:start;min-width:76px;font-weight:600}.admin-day-toggle.is-closed{color:#7e8a9b}.admin-hours-table tbody tr.is-closed{opacity:.78}.admin-checkbox-inline{color:#27415c;align-items:center;gap:10px;font-size:.92rem;font-weight:600;display:inline-flex}.admin-checkbox-inline input{accent-color:#5c618e;width:18px;height:18px}.admin-range-stack{gap:10px;display:grid}.admin-range-row{grid-template-columns:1fr auto 1fr auto;align-items:center;gap:10px;display:grid}.admin-block-row{grid-template-columns:minmax(180px,220px) auto minmax(240px,1fr) auto;align-items:center;gap:10px;display:grid}.admin-range-row span{color:#617086;font-weight:600}.admin-range-row input,.admin-block-row input[type=date],.admin-block-row input[type=time],.admin-cancel-inline textarea,.admin-filter-field select{width:100%;font:inherit;color:#113350;background:#fff;border:1px solid #d8dfec;border-radius:16px;padding:12px 14px;font-weight:600}.admin-block-table{gap:12px;display:grid}.admin-block-actions{justify-content:flex-end;align-items:center;gap:12px;display:inline-flex}.admin-block-toggle{align-self:center;min-height:48px;margin:0}.admin-block-toggle span{font-weight:600}.admin-block-time-row{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.admin-block-time-placeholder{align-items:center;min-height:48px;font-size:.95rem;display:inline-flex}.admin-block-feedback,.admin-inline-validation{margin:4px 0 0;font-size:.92rem;line-height:1.4}.admin-block-feedback{color:#3f7a5f;grid-column:1/-1}.admin-inline-validation{color:#a04636}.admin-table-empty{color:#617086;text-align:center;background:#f7f8fb;border-radius:18px;padding:18px}.admin-link-button{color:#5c618e;font:inherit;cursor:pointer;background:0 0;border:0;font-weight:600}.admin-link-button-danger{color:#a04636}.admin-remove-range-button{justify-self:start}.admin-drawer-actions,.admin-inline-actions{flex-wrap:wrap;gap:12px;display:flex}.admin-form-grid-single{grid-template-columns:1fr}.admin-user-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:18px;display:grid}.admin-user-card{padding-right:88px;position:relative}.admin-user-card-main{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;gap:8px;padding:0;display:grid}.admin-user-card-actions{align-items:center;gap:8px;display:flex;position:absolute;top:16px;right:16px}.admin-circle-icon-button{color:#5c618e;cursor:pointer;background:#fff;border:1px solid #d8dfec;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;transition:transform .18s,border-color .18s,background .18s,color .18s;display:inline-flex}.admin-circle-icon-button:hover{background:#5c618e14;border-color:#5c618e66;transform:translateY(-1px)}.admin-circle-icon-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.admin-circle-icon-button-danger{color:#a53d3d}.admin-circle-icon-button-danger:hover{background:#a53d3d14;border-color:#a53d3d5c}.admin-user-card.is-active .admin-circle-icon-button{background:#ffffffe6}.admin-users-surface{gap:20px;display:grid}.admin-users-editor{margin-top:4px}.admin-choice-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.admin-choice-card{background:#f8f9fc;border:1px solid #dbe2ee;border-radius:18px;margin:0;padding:14px 16px}.admin-choice-card input{accent-color:#5c618e}.admin-add-range-button{color:#5c618e;background:#fff;border:1px solid #d8dfec;border-radius:999px;justify-content:center;align-self:center;align-items:center;width:42px;min-width:42px;height:42px;min-height:42px;margin-inline-start:auto;padding:0;display:inline-flex;transform:none}.admin-remove-day-button{color:#a04636}.admin-add-range-icon{justify-content:center;align-items:center;font-size:1.3rem;font-weight:600;line-height:1;display:inline-flex}.admin-add-range-text{display:none}.admin-block-everywhere-button:disabled{opacity:.45;cursor:not-allowed}.admin-auth-card{border-radius:28px;align-content:start;gap:16px;width:min(100%,520px);max-width:520px;margin:0;padding:34px 32px;display:grid;box-shadow:0 18px 42px #12233c14}.admin-auth-eyebrow{color:#5c618e;letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:.8rem;font-weight:700}.admin-auth-title{color:#113350;letter-spacing:-.04em;margin:0;font-size:clamp(2.4rem,4vw,3.3rem);line-height:.96}.admin-auth-copy{color:#617086;margin:0;font-size:1rem;line-height:1.65}.admin-shell-auth .admin-login-form{gap:14px}.admin-shell-auth .booking-field{gap:10px}.admin-shell-auth .booking-field span{color:#113350;font-size:.98rem}.admin-shell-auth .booking-field input{border-radius:18px;padding:16px 18px;font-size:1.02rem}.admin-shell-auth .booking-button{width:100%;min-height:62px;font-size:1rem}.admin-shell-auth .booking-inline-status{margin:0;font-size:.95rem}@media (max-width:1100px){.admin-locations-layout,.admin-editor-grid.has-settings{grid-template-columns:1fr}.admin-settings-drawer{position:static}}@media (max-width:900px){.admin-page-header,.admin-panel-header,.admin-subpanel-header{flex-direction:column;align-items:stretch}.admin-page-badges,.admin-panel-tools{justify-content:flex-start}}@media (max-width:760px){.admin-page .admin-shell{padding:20px 14px 28px}.admin-page .admin-shell-auth{padding:18px 14px}.admin-surface{border-radius:24px;padding:22px 18px}.admin-hours-table{min-width:0}.admin-hours-table thead{display:none}.admin-hours-table,.admin-hours-table tbody,.admin-hours-table tr,.admin-hours-table th,.admin-hours-table td{width:100%;display:block}.admin-hours-table tbody tr{gap:8px;padding:12px 0;display:grid}.admin-hours-table tbody tr+tr{border-top:1px solid #e7ebf3}.admin-hours-table th,.admin-hours-table td{border-bottom:0;padding:0}.admin-range-stack{gap:8px}.admin-range-row,.admin-block-row{grid-template-columns:1fr;gap:8px}.admin-range-row span{font-size:.84rem}.admin-day-header{align-items:center;gap:8px;display:flex}.admin-day-toggle{background:#f8f9fc;border:1px solid #dbe2ee;border-radius:16px;flex:auto;grid-template-columns:minmax(0,1fr) auto;gap:12px;min-height:44px;padding:10px 12px}.admin-day-toggle.is-closed{background:#f1f3f7}.admin-day-mobile-actions{flex:none;align-items:center;gap:8px;display:inline-flex}.admin-day-mobile-actions .admin-add-range-button{width:40px;min-width:40px;height:40px;min-height:40px;margin-inline-start:0}.admin-block-actions{flex-wrap:wrap;justify-content:flex-start}.admin-block-time-row{grid-template-columns:1fr}.admin-hours-action-cell,.admin-remove-range-button{display:none}.admin-drawer-actions,.admin-inline-actions,.admin-panel-tools{flex-direction:column;align-items:stretch}.admin-inline-button,.admin-drawer-actions .booking-button,.admin-inline-actions .booking-button,.admin-panel-tools .booking-button{width:100%}.admin-user-list{grid-template-columns:1fr}.admin-user-card{padding-right:80px}.admin-user-card-actions{top:14px;right:14px}.admin-auth-card{border-radius:24px;width:100%;padding:26px 22px}}.admin-autosave-note{color:#617086;align-items:center;min-height:44px;font-size:.95rem;font-weight:600;display:inline-flex}.admin-pagination{justify-content:space-between;align-items:center;gap:16px;margin-top:18px;display:flex}.admin-pagination-copy,.admin-pagination-page{color:#617086;font-size:.92rem;font-weight:600}.admin-pagination-actions{align-items:center;gap:12px;display:inline-flex}.admin-revenue-panel{border-top:1px solid #e7ebf3;margin-top:24px;padding-top:24px}.admin-revenue-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.admin-revenue-card{background:#f8fafc;border:1px solid #dbe2ee;border-radius:22px;gap:8px;padding:18px 20px;display:grid}.admin-revenue-card span{color:#617086;letter-spacing:.06em;text-transform:uppercase;font-size:.85rem;font-weight:700}.admin-revenue-card strong{color:#113350;font-size:1.3rem;font-weight:800}.admin-revenue-location-list{gap:12px;margin-top:16px;display:grid}.admin-revenue-location-row{background:#fff;border:1px solid #dbe2ee;border-radius:20px;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.admin-revenue-location-values{color:#617086;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px;font-size:.92rem;font-weight:600;display:inline-flex}.admin-revenue-location-values strong{color:#113350;font-size:1rem;font-weight:800}@media (max-width:900px){.admin-revenue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.admin-pagination,.admin-pagination-actions,.admin-revenue-location-row,.admin-revenue-location-values{flex-direction:column;align-items:stretch}.admin-revenue-grid{grid-template-columns:1fr}}
