@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_c15e96cb-module__0bjUvq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_c15e96cb-module__0bjUvq__variable{--font-inter:"Inter", "Inter Fallback"}
:root{color:#22302c;font-family:var(--font-inter), ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;background:#f4f7f2}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:radial-gradient(900px 600px at 15% 0,#1d6f6112 0%,#0000 70%),radial-gradient(700px 500px at 85% 100%,#315f7a0d 0%,#0000 70%),#f4f7f2}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled,select:disabled{cursor:not-allowed;opacity:.58}:focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid #1d6f61}.app-shell{width:min(1180px,100% - 32px);margin:0 auto;padding:28px 0 56px}.topbar{color:#4f605b;justify-content:space-between;align-items:center;gap:18px;min-height:48px;font-size:.92rem;display:flex}.topbar [data-tenant]{color:#1d2d28;align-items:center;gap:8px;font-size:1.06rem;font-weight:800;display:inline-flex}.intro{grid-template-columns:minmax(0,1fr) minmax(280px,420px);align-items:end;gap:32px;padding:36px 0 28px;display:grid}.eyebrow{color:#3f766c;letter-spacing:0;text-transform:uppercase;margin:0 0 10px;font-size:.78rem;font-weight:800}.intro h1{letter-spacing:0;max-width:760px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.35rem,6vw,4.8rem);font-weight:500;line-height:1}.intro p:not(.eyebrow){color:#53655f;max-width:700px;margin:14px 0 0;font-size:1rem;line-height:1.55}.service-summary{background:#22302c1f;border:1px solid #22302c1f;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0;display:grid;overflow:hidden}.service-summary div{background:#ffffffb8;min-height:92px;padding:18px}.service-summary dt{color:#5d6c67;text-transform:uppercase;margin-bottom:8px;font-size:.78rem;font-weight:800}.service-summary dd{color:#1c2b26;overflow-wrap:anywhere;margin:0;font-size:1.35rem;font-weight:800}.public-hero{background:linear-gradient(90deg,#0f1f1cd1 0%,#0f1f1c8f 44%,#0f1f1c2e 100%),url(https://images.unsplash.com/photo-1540555700478-4be289fbecef?auto=format&fit=crop&w=2200&q=80) 50%/cover;border-radius:8px;align-items:end;min-height:clamp(500px,68vh,680px);margin:18px 0 22px;display:grid;position:relative;overflow:hidden;box-shadow:0 30px 90px #14201c2e}.public-hero-content{color:#fff;gap:20px;width:min(720px,100%);padding:clamp(28px,7vw,72px);display:grid}.public-hero .eyebrow{color:#bfe8d9}.public-hero h1{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.6rem,7vw,5.7rem);font-weight:500;line-height:.96}.public-hero h1:after{content:"";background:linear-gradient(90deg,#f4c38a,#f4c38a00);border-radius:999px;width:56px;height:2px;margin-top:18px;display:block}.public-hero p:not(.eyebrow){color:#ffffffe0;max-width:620px;margin:0;font-size:clamp(1rem,2vw,1.18rem);line-height:1.55}.hero-actions{flex-wrap:wrap;gap:10px;display:flex}.hero-actions .primary-link-button{color:#1d2d28;background:#f4c38a}.hero-actions .primary-link-button:hover{background:#f0b670;box-shadow:0 16px 36px #f0b67047}.hero-actions .secondary-link-button{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff24;border-color:#ffffff52}.hero-actions .secondary-link-button:hover{background:#ffffff38;border-color:#ffffff7a;box-shadow:0 14px 32px #0000002e}.hero-facts{background:#ffffff29;border:1px solid #ffffff2e;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;width:min(620px,100%);margin:8px 0 0;display:grid;overflow:hidden}.hero-facts div{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0d221e52;min-height:78px;padding:14px}.hero-facts dt{color:#ffffffb3;text-transform:uppercase;margin-bottom:7px;font-size:.74rem;font-weight:850}.hero-facts dd{color:#fff;overflow-wrap:anywhere;margin:0;font-size:1.12rem;font-weight:850}.public-trust-strip{background:#22302c1f;border:1px solid #22302c1f;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0 0 22px;display:grid;overflow:hidden;box-shadow:0 18px 56px #25342d12}.public-trust-strip div{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffd6;gap:5px;min-height:92px;padding:18px;transition:background .18s,transform .18s;display:grid}.public-trust-strip div:hover{background:#fffffff0;transform:translateY(-1px)}.public-trust-strip span{color:#60716b;text-transform:uppercase;font-size:.76rem;font-weight:850}.public-trust-strip strong{color:#1d2d28;font-size:1.02rem}.public-info-section{gap:18px;margin:0 0 24px;display:grid}.public-section-head{grid-template-columns:minmax(0,.82fr) minmax(280px,.72fr);align-items:end;gap:28px;padding:28px 0 6px;display:grid}.public-section-head h2{color:#1d2d28;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.9rem,4.4vw,3.4rem);font-weight:500;line-height:1.02}.public-section-head p{color:#53655f;margin:0;line-height:1.6}.public-info-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.public-info-grid article{background:#fff;border:1px solid #22302c1f;border-radius:8px;gap:12px;min-height:220px;padding:22px;display:grid;box-shadow:0 18px 56px #25342d12}.public-info-grid article>span{background:#c0834d;border-radius:999px;width:42px;height:4px}.public-info-grid h3{color:#1d2d28;margin:0;font-size:1.24rem}.public-info-grid p{color:#53655f;margin:0;line-height:1.55}.public-safety-note{background:#fff7ec;border:1px solid #a06c3b33;border-radius:8px;grid-template-columns:220px minmax(0,1fr);align-items:center;gap:18px;padding:18px 20px;display:grid}.public-safety-note strong{color:#7b4d22;font-size:1.05rem}.public-safety-note p{color:#5f5345;margin:0;line-height:1.5}.public-booking-intro{grid-template-columns:minmax(0,.9fr) minmax(280px,.7fr);align-items:end;gap:24px;padding:30px 0 18px;display:grid}.public-booking-intro h2{color:#1d2d28;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.9rem,4.2vw,3.2rem);font-weight:500;line-height:1.04}.public-booking-intro p{color:#53655f;margin:0;line-height:1.6}.public-booking-intro>.inline-error,.public-service-grid{grid-column:1/-1}.public-service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:6px;display:grid}.public-service-card{background:#fff;border:1px solid #22302c1f;border-radius:8px;gap:14px;min-height:280px;padding:18px;transition:box-shadow .2s,transform .2s,border-color .2s;display:grid;box-shadow:0 18px 56px #25342d12}.public-service-card:hover{border-color:#1d6f6133;transform:translateY(-3px);box-shadow:0 28px 80px #25342d21}.public-service-card>span{border-radius:999px;width:44px;height:5px}.public-service-card h3{color:#1d2d28;margin:0 0 8px;font-size:1.14rem;line-height:1.18}.public-service-card p:not(.eyebrow){color:#60716b;margin:0;font-size:.9rem;line-height:1.45}.public-service-card dl{background:#22302c1a;border:1px solid #22302c1a;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));align-self:end;gap:1px;margin:0;display:grid;overflow:hidden}.public-service-card dl div{background:#f8fbfc;padding:10px}.public-service-card dt{color:#60716b;text-transform:uppercase;margin-bottom:4px;font-size:.7rem;font-weight:850}.public-service-card dd{color:#1d2d28;margin:0;font-size:.9rem;font-weight:850}.public-service-card .secondary-link-button{align-self:end;width:100%}.notice{border:1px solid #0000;border-radius:8px;margin:0 0 18px;padding:14px 16px;font-weight:700}.notice.success{color:#1e664d;background:#e6f5ee;border-color:#2072543d}.notice.warning{color:#7b5518;background:#fff4df;border-color:#ac762447}.notice.error,.inline-error{color:#8b3333;background:#faeaea;border-color:#a040403d}.public-contact-section{grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);align-items:stretch;gap:22px;margin:0 0 24px;display:grid}.public-contact-copy{background:#ffffffc7;border:1px solid #22302c1f;border-radius:8px;align-content:center;gap:10px;padding:24px;display:grid}.public-contact-copy h2{color:#1d2d28;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,4vw,3rem);font-weight:500;line-height:1.04}.public-contact-copy p:last-child{color:#53655f;margin:0;line-height:1.58}.public-contact-grid{grid-template-columns:minmax(240px,.85fr) minmax(300px,1.15fr);gap:18px;min-width:0;display:grid}.contact-info-card,.map-card{background:#fff;border:1px solid #22302c1f;border-radius:8px;min-width:0;overflow:hidden;box-shadow:0 18px 56px #25342d12}.contact-info-card{align-content:space-between;gap:18px;padding:22px;display:grid}.contact-facts{gap:16px;margin:0;display:grid}.contact-facts div{border-bottom:1px solid #22302c1a;gap:5px;padding-bottom:14px;display:grid}.contact-facts div:last-child{border-bottom:0;padding-bottom:0}.contact-facts dt{color:#60716b;text-transform:uppercase;font-size:.76rem;font-weight:850}.contact-facts dd{color:#1d2d28;margin:0;font-weight:800;line-height:1.35}.contact-actions{flex-wrap:wrap;gap:10px;display:flex}.primary-link-button,.secondary-link-button{border-radius:8px;justify-content:center;align-items:center;min-height:42px;padding:0 15px;font-weight:850;transition:background .15s,box-shadow .15s,color .15s,border-color .15s,transform .1s;display:inline-flex}.primary-link-button{color:#fff;background:#1d6f61}.primary-link-button:hover{background:#166058;box-shadow:0 8px 24px #1d6f6138}.primary-link-button:active{transform:translateY(1px)}.secondary-link-button{color:#244c62;background:#eef5f8;border:1px solid #315f7a47}.secondary-link-button:hover{background:#e2edf3;border-color:#315f7a7a}.secondary-link-button:active{transform:translateY(1px)}.map-card{grid-template-rows:minmax(260px,1fr) auto;display:grid}.map-card iframe{border:0;width:100%;height:100%;min-height:260px}.map-card-footer{color:#4f605b;border-top:1px solid #22302c1a;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;font-size:.82rem;font-weight:800;display:flex}.map-card-footer a{color:#1d6f61}.reservation-pane{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd1;border:1px solid #22302c1f;border-radius:8px;box-shadow:0 22px 70px #25342d14}.booking-contact-fields label{color:#354a43;gap:8px;font-size:.86rem;font-weight:800;display:grid}.booking-contact-fields input,.booking-contact-fields select,.booking-contact-fields textarea,.booking-intake-fields select,.booking-intake-fields textarea{color:#1d2d28;background:#fff;border:1px solid #22302c29;border-radius:8px;width:100%;transition:border-color .15s,box-shadow .15s}.booking-contact-fields input:focus-visible,.booking-contact-fields select:focus-visible,.booking-contact-fields textarea:focus-visible,.booking-intake-fields select:focus-visible,.booking-intake-fields textarea:focus-visible{border-color:#1d6f61;outline:none;box-shadow:0 0 0 3px #1d6f611f}.booking-contact-fields input,.booking-contact-fields select,.booking-intake-fields select{min-height:44px;padding:0 12px}.booking-contact-fields textarea,.booking-intake-fields textarea{resize:vertical;min-height:104px;padding:12px}.primary-action{color:#fff;background:#1d6f61;border:0;border-radius:8px;justify-content:center;align-items:center;min-height:44px;font-weight:850;transition:background .15s,box-shadow .15s,transform .1s;display:inline-flex}.primary-action:not(:disabled):hover{background:#166058;box-shadow:0 8px 24px #1d6f6138}.primary-action:not(:disabled):active{transform:translateY(1px)}.price-pill span{color:#60716b;font-size:.82rem;font-weight:750}.reservation-pane{gap:24px;padding:24px;display:grid}.reservation-form{gap:24px;display:grid}.booking-calendar-workspace{grid-template-columns:minmax(220px,280px) minmax(0,1fr) minmax(260px,320px);align-items:start;gap:18px;display:grid}.booking-service-panel,.booking-calendar-panel,.booking-checkout-panel{gap:14px;min-width:0;display:grid}.booking-panel-kicker{background:#fff;border:1px solid #22302c1f;border-radius:8px;gap:5px;padding:16px;display:grid}.booking-panel-kicker span{color:#3f766c;text-transform:uppercase;font-size:.74rem;font-weight:850}.booking-panel-kicker strong{color:#1d2d28;font-size:1.02rem}.booking-panel-kicker small{color:#60716b;font-weight:750;line-height:1.35}.booking-checkout-panel{scrollbar-gutter:stable;background:#fff;border:1px solid #22302c1f;border-radius:8px;max-height:calc(100vh - 36px);padding:16px;position:sticky;top:18px;overflow:auto}.booking-checkout-head{gap:4px;display:grid}.booking-checkout-head h2{color:#1d2d28;margin:0;font-size:1.18rem}.booking-change-summary{background:#eef5f8;border:1px solid #315f7a29;border-radius:8px;gap:10px;margin:0;padding:12px;display:grid}.booking-change-summary div{gap:3px;display:grid}.booking-change-summary dt,.checkout-selected-slot span{color:#60716b;text-transform:uppercase;font-size:.76rem;font-weight:850}.booking-change-summary dd{color:#1d2d28;margin:0;font-weight:800}.booking-progress{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.booking-progress li{color:#60716b;background:#f6f8f7;border:1px solid #22302c1a;border-radius:8px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:7px;min-height:36px;padding:6px 8px;font-size:.76rem;font-weight:850;display:grid}.booking-progress li span{color:#3b4f49;background:#dfe7e4;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;font-size:.74rem;display:inline-flex}.booking-progress li[data-state=complete]{color:#245e52;background:#eff8f4;border-color:#1d6f612e}.booking-progress li[data-state=complete] span,.booking-progress li[data-state=active] span{color:#fff;background:#1d6f61}.booking-progress li[data-state=active]{color:#244c62;background:#eef5f8;border-color:#315f7a33}.checkout-selected-slot{background:#eff8f4;border:1px solid #1d6f612e;border-radius:8px;gap:7px;padding:14px;display:grid}.checkout-selected-slot strong{color:#1d2d28;line-height:1.3}.booking-contact-fields{gap:12px;display:grid}.booking-intake-fields{border-top:1px solid #22302c1a;gap:12px;padding-top:12px;display:grid}.booking-intake-head{gap:4px;display:grid}.booking-intake-head span{color:#60716b;text-transform:uppercase;font-size:.76rem;font-weight:850}.booking-intake-head strong{color:#1d2d28;font-size:.98rem}.booking-intake-fields label{color:#354a43;gap:8px;font-size:.86rem;font-weight:800;display:grid}.booking-intake-fields textarea{min-height:78px}.consent-checklist{background:#f5fbf8;border:1px solid #1d6f6124;border-radius:8px;gap:9px;padding:12px;display:grid}.consent-checklist label{color:#354a43;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:9px;font-size:.78rem;font-weight:750;line-height:1.35}.consent-checklist input{accent-color:#1d6f61;width:16px;height:16px;margin:1px 0 0}.booking-contact-fields.compact{gap:0}.client-reservation-summary{background:#eef5f8;border:1px solid #315f7a29;border-radius:8px;gap:5px;padding:14px;display:grid}.client-reservation-summary span,.client-reservation-summary small{color:#60716b;font-size:.78rem;font-weight:850}.client-reservation-summary span{text-transform:uppercase}.client-reservation-summary strong{color:#1d2d28;font-size:1.02rem;line-height:1.25}.booking-checkout-panel .primary-action{justify-self:stretch;width:100%}.booking-service-tabs{flex-wrap:wrap;gap:8px;display:flex}.booking-service-tabs a,.booking-service-tabs button{color:#243832;background:#fff;border:1px solid #22302c24;border-radius:8px;justify-content:center;align-items:center;min-height:38px;padding:0 12px;font-weight:850;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.booking-service-tabs a:not([aria-current=true]):hover,.booking-service-tabs button:not([aria-pressed=true]):hover{background:#f5f8f6;border-color:#22302c47}.booking-service-tabs a[aria-current=true],.booking-service-tabs button[aria-pressed=true]{color:#fff;background:#315f7a;border-color:#315f7a}.booking-service-list{gap:10px;display:grid}.booking-service-link{border:1px solid #22302c1f;border-left:5px solid var(--service-color,#1d6f61);background:#fff;border-radius:8px;gap:6px;min-height:92px;padding:13px;transition:border-color .15s,background .15s,box-shadow .15s;display:grid}.booking-service-link:not([aria-current=true]):hover{background:#f5fbf8;border-color:#1d6f6147;box-shadow:0 4px 16px #1d6f6114}.booking-service-link[aria-current=true]{background:#edf7f3;border-color:#1d6f616b;box-shadow:inset 0 0 0 1px #1d6f6138}.booking-service-link span,.booking-service-link small{color:#60716b;font-size:.8rem;font-weight:750}.booking-service-link strong{color:#1d2d28;overflow-wrap:anywhere;line-height:1.25}.booking-calendar-head{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:16px;display:grid}.booking-calendar-head h2{color:#1d2d28;margin:0;font-size:1.35rem}.booking-calendar-stat{text-align:right;background:#eef5f8;border:1px solid #315f7a2e;border-radius:8px;gap:4px;min-width:118px;padding:11px 13px;display:grid}.booking-calendar-stat span{color:#60716b;text-transform:uppercase;font-size:.76rem;font-weight:850}.booking-calendar-stat strong{color:#315f7a;font-size:1.22rem}.public-calendar-shell{background:#fff;border:1px solid #22302c1f;border-radius:8px;min-width:0;padding:12px}.booking-calendar-hint{color:#45635b;background:#f5fbf8;border:1px solid #1d6f6124;border-radius:8px;margin:0 0 12px;padding:12px 14px;font-size:.86rem;font-weight:750;line-height:1.45}.public-calendar-shell .fc{--fc-border-color:#22302c1f;--fc-button-bg-color:#315f7a;--fc-button-border-color:#315f7a;--fc-button-active-bg-color:#1d6f61;--fc-button-active-border-color:#1d6f61;color:#22302c;font-size:.88rem}.public-calendar-shell .fc-toolbar{gap:12px;margin-bottom:14px}.public-calendar-shell .fc-toolbar-title{color:#1d2d28;font-size:1.08rem}.public-calendar-shell .fc-button{letter-spacing:0;border-radius:8px;font-weight:850}.public-calendar-shell .fc-timegrid-slot{height:1.7em}.mobile-slot-agenda{display:none}.public-calendar-shell .fc-daygrid-day.fc-day-today,.public-calendar-shell .fc-timegrid-col.fc-day-today{background:#eff8f4}.public-slot-event,.public-own-booking-event{cursor:pointer;border-radius:7px;transition:box-shadow .12s,transform .12s}.public-slot-event:hover,.public-own-booking-event:hover{z-index:3;transform:scale(1.02);box-shadow:0 8px 18px #1d6f613d}.public-slot-event.selected,.public-own-booking-event.selected{box-shadow:inset 0 0 0 2px #123b34}.public-slot-content{gap:1px;min-width:0;padding:1px 2px;display:grid;overflow:hidden}.public-slot-content span{text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;font-weight:750;overflow:hidden}.public-slot-content.own-booking span{color:inherit}.public-month-slot{color:#fff;text-overflow:ellipsis;white-space:nowrap;background:#1d6f61;border-radius:999px;width:100%;min-height:18px;padding:2px 5px;font-size:.72rem;font-weight:850;line-height:1.2;display:block;overflow:hidden}.public-month-booking{color:#fff;text-overflow:ellipsis;white-space:nowrap;background:#315f7a;border-radius:999px;width:100%;min-height:18px;padding:2px 5px;font-size:.72rem;font-weight:850;line-height:1.2;display:block;overflow:hidden}.checkout-selected-slot.own-booking{background:#eef5f8;border-color:#315f7a38}.checkout-selected-slot small{color:#60716b;font-size:.78rem;font-weight:800}.checkout-next-step{background:#f8fbfc;border:1px dashed #315f7a52;border-radius:8px;gap:5px;padding:14px;display:grid}.checkout-next-step strong{color:#1d2d28}.checkout-next-step span{color:#60716b;font-size:.84rem;font-weight:750;line-height:1.45}.reservation-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:18px;display:grid}.reservation-head h2{color:#1d2d28;margin:0 0 8px;font-size:1.8rem;line-height:1.12}.reservation-head p{color:#53655f;max-width:640px;margin:0;line-height:1.6}.price-pill{text-align:right;background:#edf7f3;border:1px solid #1d6f612e;border-radius:8px;gap:4px;min-width:132px;padding:12px 14px;display:grid}.price-pill strong{color:#1d6f61;font-size:1.25rem}.policy-strip{flex-wrap:wrap;gap:8px;display:flex}.policy-strip span{color:#465b62;background:#eef2f5;border-radius:8px;padding:8px 10px;font-size:.84rem;font-weight:750}.field-quote-form{grid-template-columns:minmax(180px,260px) auto;align-items:end;gap:10px;display:grid}.field-quote-form label{color:#354a43;gap:8px;font-size:.86rem;font-weight:800;display:grid}.field-quote-form input{color:#1d2d28;background:#fff;border:1px solid #22302c29;border-radius:8px;width:100%;min-height:44px;padding:0 12px}.field-quote-form button{color:#fff;background:#315f7a;border:0;border-radius:8px;min-height:44px;padding:0 16px;font-weight:850}.quote-box{background:#1d6f612e;border:1px solid #1d6f612e;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.quote-box div{background:#eff8f4;min-height:84px;padding:14px}.quote-box span{color:#55706a;margin-bottom:8px;font-size:.8rem;font-weight:800;display:block}.quote-box strong{color:#1d6f61;font-size:1.22rem}.quote-box p{color:#8b3333;background:#faeaea;grid-column:1/-1;margin:0;padding:12px 14px;font-weight:800}.quote-box.error{background:#a040403d;border-color:#a040403d}.primary-action{justify-self:start;min-width:220px;padding:0 22px}.primary-action[aria-busy=true]{background:#315f7a;padding-right:44px;position:relative}.primary-action[aria-busy=true]:after,.secondary-action[aria-busy=true]:after{content:"";border:2px solid #ffffff70;border-top-color:#fff;border-radius:999px;width:16px;height:16px;position:absolute;right:16px}.secondary-action[aria-busy=true]{padding-right:42px;position:relative}.empty-state,.inline-error{border-radius:8px;margin:0;padding:14px;font-weight:700}.empty-state{color:#52656a;background:#eef2f5}.topnav{flex-wrap:wrap;flex:1;justify-content:flex-end;align-items:center;gap:12px 18px;min-width:0;display:flex}.topnav-links,.topnav-actions{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.topnav-actions{justify-content:flex-end;margin-left:auto}.topnav a,.topnav button{color:#243832;min-height:36px;font:inherit;background:#ffffffb8;border:1px solid #22302c24;border-radius:8px;padding:8px 12px;font-weight:800;text-decoration:none;transition:background .15s,border-color .15s,color .15s}.topnav button{cursor:pointer}.topnav a:not([aria-current]):hover,.topnav button:hover{background:#fffffff0;border-color:#22302c47}.topnav a[aria-current=true],.topnav a[aria-current=page],.topnav .topnav-primary{color:#fff;background:#1d6f61;border-color:#1d6f61}.topnav .topnav-primary:hover{background:#166058;border-color:#166058}.topnav span{color:#60716b;text-transform:uppercase;font-size:.82rem;font-weight:850}.topnav-form{margin:0;display:flex}.topnav .topnav-user{color:#3c504a;text-overflow:ellipsis;text-transform:none;white-space:nowrap;max-width:190px;overflow:hidden}.topnav-account{position:relative}.topnav-account summary{color:#243832;cursor:pointer;background:#ffffffb8;border:1px solid #22302c24;border-radius:8px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-weight:850;list-style:none;display:inline-flex}.topnav-account summary::-webkit-details-marker{display:none}.topnav-account summary:after{color:#60716b;content:"▾";margin-left:8px;font-size:.7rem}.topnav-account[open] summary,.topnav-account summary:hover{background:#fffffff0;border-color:#22302c47}.topnav-account>div{z-index:30;background:#fffffff5;border:1px solid #22302c24;border-radius:8px;gap:8px;min-width:230px;margin-top:8px;padding:10px;display:grid;position:absolute;right:0;box-shadow:0 20px 60px #25342d24}.topnav-account>div a,.topnav-account>div button{justify-content:flex-start;width:100%}.topnav-account .topnav-user{max-width:260px;padding:4px 2px}.topnav .topnav-logout{color:#51625d;background:0 0}.topnav .topnav-logout:hover{color:#933737;background:#b9494914;border-color:#b9494942}.public-topbar{min-height:42px;margin-bottom:16px}.public-topbar [data-tenant]{font-size:1rem}.public-topnav,.public-topbar .topnav-links{gap:20px}.public-topbar .topnav-actions{gap:10px}.public-topbar .topnav a,.public-topbar .topnav button{color:#51625d;background:0 0;border:0;border-radius:0;min-height:34px;padding:0;font-size:.9rem;font-weight:800;transition:color .15s}.public-topbar .topnav a:hover,.public-topbar .topnav button:hover{color:#1d2d28}.public-topbar .topnav .topnav-primary,.public-topbar .topnav .topnav-login,.public-topbar .topnav .topnav-login[aria-current=page]{color:#fff;background:#1d6f61;border:1px solid #1d6f611f;border-radius:8px;min-height:40px;padding:0 16px;transition:background .15s,box-shadow .15s;box-shadow:0 12px 28px #1d6f612e}.public-topbar .topnav .topnav-primary:hover,.public-topbar .topnav .topnav-login:hover{background:#166058;box-shadow:0 16px 36px #1d6f6142}.public-topbar .topnav .topnav-logout{min-height:40px;padding:0 10px}.public-topbar .topnav-account summary{color:#51625d;background:0 0;border:0;border-radius:0;min-height:34px;padding:0;font-size:.9rem}.public-topbar .topnav-account summary:hover,.public-topbar .topnav-account[open] summary{color:#1d2d28;background:0 0}.public-topbar .topnav-account>div a,.public-topbar .topnav-account>div button{color:#243832;background:#ffffffb8;border:1px solid #22302c24;border-radius:8px;min-height:36px;padding:8px 12px}.public-topbar .topnav-account>div a:hover,.public-topbar .topnav-account>div button:hover{background:#fffffff0;border-color:#22302c47}.admin-shell{width:min(1440px,100% - 32px)}.admin-topbar{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;min-height:58px;padding:10px 0;display:grid}.admin-brand-link{color:#1d2d28;gap:2px;display:grid}.admin-brand-link [data-tenant]{font-size:1.06rem;font-weight:850}.admin-brand-link span:last-child{color:#60716b;text-transform:uppercase;font-size:.76rem;font-weight:850}.admin-primary-nav,.admin-topbar-actions,.admin-page-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-primary-nav{justify-content:center}.admin-topbar-actions{justify-content:flex-end}.admin-primary-nav a,.admin-topbar-actions a,.admin-page-actions a{color:#243832;background:#ffffffb8;border:1px solid #22302c24;border-radius:8px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:.88rem;font-weight:850;display:inline-flex}.admin-primary-nav a[aria-current=page]{color:#fff;background:#1d6f61;border-color:#1d6f61}.admin-topbar-actions a:last-child{color:#823636;border-color:#a040402e}.admin-user-pill{color:#244c62;text-overflow:ellipsis;white-space:nowrap;background:#eef5f8;border:1px solid #315f7a29;border-radius:8px;max-width:220px;min-height:36px;padding:8px 12px;font-size:.84rem;font-weight:850;overflow:hidden}.admin-intro h1{font-size:4rem}.admin-page-head{grid-template-columns:minmax(0,1fr) minmax(320px,460px);align-items:end;gap:32px;padding:34px 0 26px;display:grid}.admin-page-head h1{margin:0;font-family:Georgia,Times New Roman,serif;font-size:3.8rem;font-weight:500;line-height:1}.admin-page-actions{margin-top:18px}.admin-command-strip{background:#ffffffdb;border:1px solid #22302c1f;border-radius:8px;grid-template-columns:minmax(0,1fr) repeat(4,auto);align-items:center;gap:10px;margin-bottom:18px;padding:14px;display:grid;box-shadow:0 18px 50px #25342d12}.admin-command-strip div{gap:4px;display:grid}.admin-command-strip span{color:#60716b;text-transform:uppercase;font-size:.76rem;font-weight:850}.admin-command-strip strong{color:#1d2d28;font-size:1.02rem}.admin-command-strip a{color:#fff;background:#315f7a;border-radius:8px;justify-content:center;align-items:center;min-height:38px;padding:8px 12px;font-size:.86rem;font-weight:850;display:inline-flex}.admin-metrics{background:#22302c1f;border:1px solid #22302c1f;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0;display:grid;overflow:hidden}.admin-metrics div{background:#ffffffbd;min-height:82px;padding:16px}.admin-metrics dt{color:#5d6c67;text-transform:uppercase;margin-bottom:8px;font-size:.76rem;font-weight:850}.admin-metrics dd{color:#1c2b26;margin:0;font-size:1.32rem;font-weight:850}.admin-hub{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px;display:grid}.admin-module{background:#ffffffdb;border:1px solid #22302c1f;border-radius:8px;gap:10px;min-height:164px;padding:22px;transition:box-shadow .2s,transform .2s,border-color .2s;display:grid;box-shadow:0 18px 50px #25342d12}.admin-module:hover{border-color:#1d6f612e;transform:translateY(-2px);box-shadow:0 28px 70px #25342d1f}.admin-module span{color:#3f766c;text-transform:uppercase;font-size:.78rem;font-weight:850}.admin-module strong{color:#1d2d28;font-size:1.45rem}.admin-module p{color:#60716b;margin:0;font-size:.94rem;line-height:1.45}.admin-module small{color:#60716b;align-self:end;font-weight:750}.admin-form,.panel-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffdb;border:1px solid #22302c1f;border-radius:8px;box-shadow:0 18px 50px #25342d12}.admin-form{gap:14px;padding:16px;display:grid}.panel-card{padding:16px}.settings-layout{grid-template-columns:minmax(0,1fr) minmax(280px,380px);align-items:start;gap:18px;display:grid}.settings-context{gap:14px;display:grid}.settings-context ul{color:#52656a;gap:10px;margin:0;padding-left:18px;line-height:1.45;display:grid}.settings-status-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.settings-status-grid div{background:#eef8f4;border:1px solid #1d6f6124;border-radius:8px;gap:4px;min-height:72px;padding:12px;display:grid}.settings-status-grid span{color:#60716b;text-transform:uppercase;font-size:.76rem;font-weight:850}.settings-status-grid strong{color:#1d6f61;font-size:1.05rem}.ai-workspace{grid-template-columns:minmax(320px,420px) minmax(0,1fr);align-items:start;gap:20px;display:grid}.ai-control-panel,.ai-result-panel,.ai-result-content{gap:14px;display:grid}.ai-mode-list{gap:10px;display:grid}.ai-mode-list button{color:#243832;text-align:left;background:#fff;border:1px solid #22302c24;border-radius:8px;gap:4px;padding:12px;display:grid}.ai-mode-list button[aria-pressed=true]{background:#eef8f4;border-color:#1d6f61;box-shadow:inset 0 0 0 1px #1d6f6147}.ai-mode-list strong{font-size:.95rem}.ai-mode-list span,.ai-data-note,.ai-usage{color:#60716b;font-size:.86rem;line-height:1.45}.ai-card-list,.ai-question-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.ai-card-list li{background:#fff;border:1px solid #22302c1f;border-radius:8px;gap:6px;padding:12px;display:grid}.ai-card-list strong{color:#1d2d28}.ai-card-list p{color:#53655f;margin:0;line-height:1.45}.ai-card-list span{color:#244c62;background:#eef5f8;border-radius:999px;justify-self:start;padding:4px 8px;font-size:.74rem;font-weight:850}.ai-question-list li{color:#354a43;background:#eef8f4;border-left:3px solid #1d6f61;border-radius:0 8px 8px 0;padding:10px 12px;font-weight:750}.admin-card-head{justify-content:space-between;align-items:center;gap:14px;display:flex}.admin-card-head div{gap:4px;min-width:0;display:grid}.admin-card-head strong{color:#1d2d28;overflow-wrap:anywhere;font-size:1rem}.admin-card-head span{color:#60716b;font-size:.8rem;font-weight:750}.admin-grid{gap:12px;display:grid}.admin-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid.three{grid-template-columns:1fr 1fr 86px}.admin-form label{color:#354a43;gap:7px;font-size:.82rem;font-weight:800;display:grid}.admin-form input,.admin-form select,.admin-form textarea{color:#1d2d28;background:#fff;border:1px solid #22302c29;border-radius:8px;width:100%;transition:border-color .15s,box-shadow .15s}.admin-form input:focus-visible,.admin-form select:focus-visible,.admin-form textarea:focus-visible{border-color:#1d6f61;outline:none;box-shadow:0 0 0 3px #1d6f611f}.admin-form input,.admin-form select{min-height:40px;padding:0 11px}.admin-form input[type=color]{padding:4px}.admin-form textarea{resize:vertical;min-height:90px;padding:11px}.admin-checks{background:#f4f7f2;border:1px solid #22302c1f;border-radius:8px;flex-wrap:wrap;gap:10px 18px;min-width:0;margin:0;padding:12px;display:flex}.admin-checks legend{color:#354a43;padding:0 5px;font-size:.82rem;font-weight:850}.admin-checks label,.switch-row{color:#354a43;align-items:center;gap:8px;font-size:.84rem;font-weight:800;display:inline-flex}.admin-checks input,.switch-row input{accent-color:#1d6f61;width:16px;min-height:16px}.secondary-action{color:#fff;background:#315f7a;border:0;border-radius:8px;justify-self:start;min-height:40px;padding:0 16px;font-weight:850;transition:background .15s,box-shadow .15s,transform .1s}.secondary-action[aria-busy=true]{background:#1d6f61}.secondary-action:not(:disabled):hover{background:#244c62;box-shadow:0 8px 22px #315f7a38}.secondary-action:not(:disabled):active,.danger-action:not(:disabled):active{transform:translateY(1px)}.service-manager,.customer-manager{gap:18px;display:grid}.admin-result-summary{color:#60716b;margin:-8px 0 0;font-size:.86rem;font-weight:800}.service-toolbar,.planner-toolbar{background:#ffffffdb;border:1px solid #22302c1f;border-radius:8px;grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:12px;padding:16px;display:grid;box-shadow:0 18px 50px #25342d12}.service-filter-group,.resource-tabs,.planner-mode-tabs,.planner-legend{flex-wrap:wrap;gap:8px;display:flex}.service-filter-group button,.planner-mode-tabs button,.resource-tabs button{color:#243832;background:#fff;border:1px solid #22302c24;border-radius:8px;min-height:40px;padding:8px 12px;font-weight:850}.resource-tabs button{text-align:left;gap:2px;min-width:160px;display:grid}.service-filter-group button[aria-pressed=true],.planner-mode-tabs button[aria-pressed=true],.resource-tabs button[aria-pressed=true]{color:#fff;background:#1d6f61;border-color:#1d6f61}.resource-tabs span{opacity:.82;font-size:.78rem;font-weight:750}.service-search{color:#354a43;gap:6px;font-size:.8rem;font-weight:800;display:grid}.service-search input{color:#1d2d28;background:#fff;border:1px solid #22302c29;border-radius:8px;width:100%;min-height:40px;padding:0 11px}.service-manager-grid,.customer-manager-grid,.planner-grid{grid-template-columns:minmax(0,1fr) 390px;align-items:start;gap:22px;display:grid}.service-table,.customer-table,.calendar-panel,.planner-side{background:#ffffffdb;border:1px solid #22302c1f;border-radius:8px;gap:12px;display:grid;box-shadow:0 18px 50px #25342d12}.service-table,.customer-table,.calendar-panel{min-width:0;padding:16px}.planner-side{box-shadow:none;background:0 0;border:0;position:sticky;top:18px}.service-table-head,.service-list-button{grid-template-columns:18px minmax(0,1fr) 110px 90px 90px;align-items:center;gap:12px;display:grid}.customer-table-head,.customer-list-button{grid-template-columns:minmax(0,1fr) 90px 110px 110px;align-items:center;gap:12px;display:grid}.service-table-head{color:#60716b;text-transform:uppercase;padding:0 12px 4px 42px;font-size:.74rem;font-weight:850}.service-table-head:before{content:""}.customer-table-head{color:#60716b;text-transform:uppercase;padding:0 12px 4px;font-size:.74rem;font-weight:850}.service-list-button{color:#1d2d28;text-align:left;background:#fff;border:1px solid #22302c1a;border-radius:8px;width:100%;min-height:76px;padding:12px}.customer-list-button{color:#1d2d28;text-align:left;background:#fff;border:1px solid #22302c1a;border-radius:8px;width:100%;min-height:74px;padding:12px}.service-list-button[aria-current=true]{background:#edf7f3;border-color:#1d6f616b}.customer-list-button[aria-current=true]{background:#eef5f8;border-color:#315f7a6b}.service-list-button span:nth-child(2),.customer-list-button span:first-child{gap:4px;min-width:0;display:grid}.service-list-button strong{overflow-wrap:anywhere}.service-list-button small,.customer-list-button small{color:#60716b;overflow-wrap:anywhere;font-weight:750}.service-color-swatch{background:var(--service-color,#1d6f61);border-radius:6px;width:18px;height:42px}.service-side-panel,.customer-side-panel{gap:14px;display:grid;position:sticky;top:18px}.service-detail-summary,.customer-status-strip,.planner-legend span{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.service-detail-summary span,.customer-status-strip span{color:#465b62;background:#eef2f5;border-radius:8px;padding:7px 9px;font-size:.8rem;font-weight:750}.massage-history{background:#ffffffe6;border:1px solid #22302c1f;border-radius:8px;gap:14px;padding:18px;display:grid;box-shadow:0 18px 50px #25342d12}.admin-help-text{color:#60716b;margin:0;font-size:.9rem;font-weight:700;line-height:1.45}.massage-record-list{gap:12px;max-height:min(760px,100vh - 220px);padding-right:2px;display:grid;overflow:auto}.massage-record-card{background:#f9fbfa;border:1px solid #22302c1f;border-radius:8px;gap:12px;padding:14px;display:grid}.massage-record-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.massage-record-head>div{gap:3px;min-width:0;display:grid}.massage-record-head strong{color:#1d2d28;overflow-wrap:anywhere;font-size:.98rem}.massage-record-head span{color:#60716b;font-size:.78rem;font-weight:800}.planner-legend{color:#60716b;justify-content:flex-end;font-size:.8rem;font-weight:800}.planner-legend i{border-radius:4px;width:12px;height:12px}.legend-window{background:#dff3eb}.legend-extra{background:#e3f7ec}.legend-block{background:#fdecec}.legend-booking{background:#dbeafe}.legend-muted{background:#ecefed}.planner-board-head{grid-template-columns:minmax(0,1fr) minmax(300px,420px);align-items:end;gap:18px;display:grid}.planner-board-head h2{color:#1d2d28;margin:0;font-size:1.45rem}.planner-board-head dl{background:#22302c1a;border:1px solid #22302c1a;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0;display:grid;overflow:hidden}.planner-board-head div{background:#f8fbfc;padding:13px}.planner-board-head dt{color:#60716b;text-transform:uppercase;margin-bottom:6px;font-size:.72rem;font-weight:850}.planner-board-head dd{color:#1d2d28;margin:0;font-weight:850}.booking-list{gap:10px;display:grid}.booking-list button{color:#1d2d28;text-align:left;background:#fff;border:1px solid #22302c1a;border-radius:8px;gap:4px;width:100%;padding:10px;display:grid}.booking-list button[aria-pressed=true]{border-color:#1d6f61;box-shadow:inset 0 0 0 1px #1d6f61}.exception-list button strong{color:#813030}.booking-list span,.booking-list small{color:#60716b;font-size:.8rem;font-weight:750}.detail-list{background:#22302c1a;border:1px solid #22302c1a;border-radius:8px;gap:1px;margin:0;display:grid;overflow:hidden}.detail-list div{background:#fff;gap:5px;padding:12px;display:grid}.detail-list dt{color:#60716b;text-transform:uppercase;font-size:.72rem;font-weight:850}.detail-list dd{color:#1d2d28;overflow-wrap:anywhere;margin:0;font-weight:800}.detail-list.compact div{padding:10px}.planner-editor,.client-form{gap:12px;display:grid}.planner-editor label:not(.switch-row),.client-form label:not(.switch-row){color:#354a43;gap:7px;font-size:.82rem;font-weight:800;display:grid}.planner-editor input:not([type=checkbox]),.planner-editor select,.planner-editor textarea,.client-form input:not([type=checkbox]){color:#1d2d28;background:#fff;border:1px solid #22302c29;border-radius:8px;width:100%;padding:0 11px}.planner-editor input:not([type=checkbox]),.planner-editor select,.client-form input:not([type=checkbox]){min-height:40px}.planner-editor textarea{resize:vertical;min-height:82px;padding:10px 11px}.planner-actions,.client-booking-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.danger-action{color:#fff;background:#a04a4a;border:0;border-radius:8px;min-height:40px;padding:0 16px;font-weight:850;transition:background .15s,box-shadow .15s,transform .1s}.danger-action:not(:disabled):hover{background:#8b3a3a;box-shadow:0 8px 22px #a04a4a38}.admin-confirm-backdrop{z-index:80;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#1826226b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.admin-confirm-dialog{background:#fff;border:1px solid #a04a4a3d;border-radius:8px;width:min(100%,430px);padding:24px;box-shadow:0 24px 70px #1826223d}.admin-confirm-dialog h3{color:#1b2d28;margin:0 0 8px;font-size:1.45rem;line-height:1.15}.admin-confirm-dialog p:not(.eyebrow){color:#5b6a65;margin:0 0 20px;font-weight:750;line-height:1.45}.secondary-link,.client-booking-actions a{color:#244c62;background:#eef5f8;border:1px solid #315f7a47;border-radius:8px;align-items:center;min-height:40px;padding:0 14px;font-weight:850;display:inline-flex}.calendar-panel .fc{--fc-border-color:#22302c1f;--fc-button-bg-color:#315f7a;--fc-button-border-color:#315f7a;--fc-button-active-bg-color:#1d6f61;--fc-button-active-border-color:#1d6f61;--fc-event-border-color:transparent;color:#22302c;font-size:.88rem}.calendar-panel .fc-toolbar{gap:12px;margin-bottom:16px}.calendar-panel .fc-toolbar-title{color:#1d2d28;font-size:1.15rem}.calendar-panel .fc-button{letter-spacing:0;border-radius:8px;font-weight:850}.calendar-panel .fc-scrollgrid,.calendar-panel .fc-theme-standard td,.calendar-panel .fc-theme-standard th{border-color:#22302c1f}.calendar-panel .fc-timegrid-slot{height:1.6em}.calendar-panel .fc-daygrid-day.fc-day-today,.calendar-panel .fc-timegrid-col.fc-day-today{background:#eff8f4}.calendar-availability-event,.calendar-exception-event,.calendar-booking-event{cursor:pointer;border-radius:7px}.calendar-booking-event.occupies-availability{box-shadow:inset 0 0 0 1px #315f7a2e}.calendar-availability-event.selected,.calendar-exception-event.selected,.calendar-booking-event.selected{box-shadow:inset 0 0 0 2px #1d6f61}.calendar-exception-event.block,.calendar-exception-event.closure,.calendar-exception-event.vacation{background-image:repeating-linear-gradient(135deg,#ffffff47 0 6px,#0000 6px 12px)}.calendar-week-event,.calendar-day-event{gap:2px;min-width:0;padding:1px 2px;display:grid;overflow:hidden}.calendar-week-event{grid-template-columns:auto minmax(0,1fr);align-items:center}.calendar-week-event span,.calendar-day-event span,.calendar-day-event small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-month-dot{border-radius:999px;width:100%;height:8px;display:block}.calendar-month-dot.availability{background:#1d6f61}.calendar-month-dot.booking{background:#315f7a}.calendar-month-dot.exception{background:#b94a4a}.calendar-month-dot.exception.extra_slot{background:#1f8b58}.registration-layout{grid-template-columns:minmax(260px,.8fr) minmax(0,1fr);align-items:start;gap:22px;display:grid}.registration-form{background:#ffffffdb;border:1px solid #22302c1f;border-radius:8px;gap:16px;padding:20px;display:grid;box-shadow:0 18px 50px #25342d12}.registration-benefits{color:#fff;background:#1d2d28;border:1px solid #22302c1f;border-radius:8px;gap:16px;padding:24px;display:grid;box-shadow:0 24px 70px #14201c24}.registration-benefits .eyebrow{color:#bfe8d9}.registration-benefits h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,4vw,3rem);font-weight:500;line-height:1.04}.registration-benefits ul{color:#ffffffd1;gap:11px;margin:0;padding-left:18px;line-height:1.45;display:grid}.registration-benefits .secondary-link-button{color:#fff;background:#ffffff1f;border-color:#ffffff47;justify-self:start}.form-card-head{gap:5px;padding-bottom:2px;display:grid}.form-card-head span{color:#3f766c;text-transform:uppercase;font-size:.74rem;font-weight:850}.form-card-head strong{color:#1d2d28;font-size:1.28rem}.form-card-head p,.form-footnote{color:#60716b;margin:0;line-height:1.45}.form-footnote{font-size:.86rem;font-weight:750}.form-footnote a{color:#1d6f61;font-weight:850}.registration-form label:not(.switch-row){color:#354a43;gap:7px;font-size:.84rem;font-weight:800;display:grid}.registration-form input:not([type=checkbox]){color:#1d2d28;background:#fff;border:1px solid #22302c29;border-radius:8px;width:100%;min-height:42px;padding:0 12px}.client-shell{width:min(1280px,100% - 32px)}.client-dashboard{grid-template-columns:360px minmax(0,1fr);align-items:start;gap:22px;display:grid}.client-service-workspace{gap:18px;margin-bottom:24px;display:grid}.client-workspace-head{background:linear-gradient(135deg,#ffffffeb,#eff8f4e6),#fff;border:1px solid #22302c1f;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;padding:20px;display:grid;box-shadow:0 18px 56px #25342d12}.client-workspace-head h2{color:#1d2d28;margin:0 0 8px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,4vw,3rem);font-weight:500;line-height:1.04}.client-workspace-head p:not(.eyebrow){color:#53655f;max-width:760px;margin:0;line-height:1.55}.client-reservation-pane{background:#ffffffeb}.client-login-layout{grid-template-columns:minmax(260px,.9fr) minmax(320px,520px);align-items:stretch;gap:22px;display:grid}.client-portal-hero .service-summary dd{font-size:1.08rem}.client-portal-hero h1{overflow-wrap:anywhere}.client-access-copy{background:linear-gradient(135deg,#ffffffeb,#f0f7f4eb),#fff;border:1px solid #22302c1f;border-radius:8px;gap:18px;padding:26px;display:grid;box-shadow:0 18px 50px #25342d12}.client-access-copy h2{color:#1d2d28;max-width:620px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.9rem,4vw,3.2rem);font-weight:500;line-height:1.04}.client-benefit-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.client-benefit-grid article{background:#fff;border:1px solid #22302c1a;border-radius:8px;gap:7px;min-height:132px;padding:15px;display:grid}.client-benefit-grid strong{color:#1d2d28}.client-benefit-grid span{color:#60716b;font-size:.86rem;font-weight:750;line-height:1.42}.client-login-card{align-content:start}.social-login-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.social-login-button{text-align:center;justify-self:stretch;width:100%;min-width:0;padding:0 14px;text-decoration:none}.social-login-button:first-child{grid-column:1/-1}.auth-provider-note{color:#38576a;background:#eef5f8;border:1px solid #315f7a29;border-radius:8px;margin:0;padding:13px 14px;font-size:.88rem;font-weight:750;line-height:1.45}.magic-link-form{border-top:1px solid #22302c1a;gap:12px;padding-top:6px;display:grid}.form-card-head.compact strong{font-size:1rem}.client-auth-links{flex-wrap:wrap;gap:10px;display:flex}.client-auth-links a{color:#244c62;background:#eef5f8;border:1px solid #315f7a33;border-radius:8px;align-items:center;min-height:38px;padding:0 12px;font-size:.84rem;font-weight:850;display:inline-flex}.client-profile-card,.client-bookings{gap:14px;display:grid}.client-profile-card{background:#ffffffdb;border:1px solid #22302c1f;border-radius:8px;padding:16px;position:sticky;top:18px;box-shadow:0 18px 50px #25342d12}.client-booking-list{gap:12px;margin-top:14px;display:grid}.client-booking-card{background:#fff;border:1px solid #22302c1a;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(240px,320px) auto;align-items:start;gap:14px;padding:14px;transition:border-color .15s,box-shadow .15s;display:grid}.client-booking-card:hover{border-color:#1d6f6138;box-shadow:0 8px 28px #25342d14}.client-booking-card h2{color:#1d2d28;margin:0 0 6px;font-size:1.08rem}.client-booking-card span{color:#60716b;font-size:.84rem;font-weight:750}.client-booking-actions{justify-content:flex-end}.client-booking-actions form{margin:0}.client-calendar-card{gap:14px;display:grid}.client-calendar-layout{grid-template-columns:minmax(0,1fr) 260px;align-items:start;gap:14px;display:grid}.client-calendar-shell{min-width:0}.client-calendar-shell .fc{--fc-border-color:#22302c1f;--fc-button-bg-color:#315f7a;--fc-button-border-color:#315f7a;--fc-button-active-bg-color:#1d6f61;--fc-button-active-border-color:#1d6f61;--fc-event-border-color:transparent;color:#22302c;font-size:.86rem}.client-calendar-shell .fc-toolbar{gap:12px;margin-bottom:14px}.client-calendar-shell .fc-toolbar-title{color:#1d2d28;font-size:1.08rem}.client-calendar-shell .fc-button{letter-spacing:0;border-radius:8px;font-weight:850}.client-calendar-shell .fc-timegrid-slot{height:1.6em}.client-calendar-shell .fc-daygrid-day.fc-day-today,.client-calendar-shell .fc-timegrid-col.fc-day-today{background:#eff8f4}.client-booking-event{cursor:pointer;border-radius:7px}.client-booking-event.selected{box-shadow:inset 0 0 0 2px #1d6f61}.client-calendar-event-content{gap:1px;min-width:0;padding:1px 2px;display:grid;overflow:hidden}.client-calendar-event-content strong,.client-calendar-event-content span,.client-calendar-event-content small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.client-calendar-event-content strong{font-size:.75rem}.client-calendar-event-content span,.client-calendar-event-content small{font-size:.72rem;font-weight:750}.client-calendar-month-dot{background:#1d6f61;border-radius:999px;width:100%;height:8px;display:block}.client-calendar-month-dot.held{background:#b9802b}.client-calendar-month-dot.cancelled{background:#a04a4a}.client-calendar-detail{background:#eff8f4;border:1px solid #1d6f6129;border-radius:8px;gap:8px;padding:14px;display:grid}.client-calendar-detail span,.client-calendar-detail small{color:#60716b;font-size:.78rem;font-weight:850}.client-calendar-detail span{text-transform:uppercase}.client-calendar-detail strong{color:#1d2d28;line-height:1.25}.client-calendar-detail .secondary-link{justify-self:start}@media (max-width:900px){.intro,.public-section-head,.public-info-grid,.public-safety-note,.public-booking-intro,.public-service-grid,.public-trust-strip,.public-contact-section,.public-contact-grid,.booking-calendar-workspace,.booking-calendar-head,.reservation-head,.admin-topbar,.admin-page-head,.admin-command-strip,.service-manager-grid,.customer-manager-grid,.settings-layout,.ai-workspace,.registration-layout,.planner-grid,.planner-board-head,.client-workspace-head,.client-dashboard,.client-login-layout,.client-calendar-layout,.client-booking-card,.loading-client-workspace,.loading-admin-head{grid-template-columns:1fr}.price-pill{text-align:left}.admin-intro h1,.admin-page-head h1{font-size:3.1rem}.admin-primary-nav,.admin-topbar-actions{justify-content:flex-start}.service-side-panel,.customer-side-panel,.planner-side,.booking-checkout-panel,.client-profile-card{max-height:none;position:static;overflow:visible}.service-toolbar,.planner-toolbar,.customer-list-button,.service-list-button,.client-benefit-grid{grid-template-columns:1fr}.service-table-head{display:none}}@media (max-width:640px){.app-shell{width:min(100% - 20px,1180px);padding-top:16px}.topbar,.field-quote-form,.quote-box,.admin-grid.two,.admin-grid.three,.settings-status-grid,.admin-metrics,.admin-hub,.admin-command-strip,.service-toolbar,.planner-toolbar,.booking-calendar-head,.planner-board-head dl,.loading-hero-facts,.loading-trust,.loading-services,.loading-admin-metrics,.loading-admin-hub{grid-template-columns:1fr}.topbar{flex-direction:column;align-items:flex-start}.public-topbar{gap:12px}.topnav,.topnav-actions,.public-topnav{justify-content:flex-start;width:100%}.topnav-actions{margin-left:0}.topnav-account,.topnav-account summary{width:100%}.topnav-account>div{width:100%;min-width:0;position:static}.public-topnav{gap:10px 16px}.public-topbar .topnav .topnav-login{width:auto;padding:0 14px}.intro{gap:20px;padding:24px 0 20px}.intro h1{font-size:clamp(2.1rem,13vw,3.1rem)}.client-portal-hero h1{font-size:clamp(2rem,10vw,2.7rem)}.service-summary{grid-template-columns:1fr}.public-hero{background-position:50%;min-height:560px;margin-top:12px}.public-hero-content{padding:24px}.hero-facts{grid-template-columns:1fr}.hero-actions{flex-direction:column;align-items:stretch}.public-contact-copy,.contact-info-card,.registration-benefits,.client-access-copy{padding:18px}.contact-actions{flex-direction:column;align-items:stretch}.primary-link-button,.secondary-link-button{width:100%}.reservation-pane,.admin-form{padding:16px}.booking-service-tabs{grid-template-columns:1fr;display:grid}.public-calendar-shell{padding:8px}.public-calendar-shell .fc-toolbar{flex-direction:column;align-items:stretch}.public-calendar-shell .fc{font-size:.76rem}.mobile-slot-agenda{background:#f5fbf8;border:1px solid #1d6f6124;border-radius:8px;gap:14px;padding:14px;display:grid}.mobile-slot-agenda-head{gap:4px;display:grid}.mobile-slot-agenda-head span,.mobile-slot-button small{color:#60716b;font-size:.76rem;font-weight:850}.mobile-slot-agenda-head span{text-transform:uppercase}.mobile-slot-agenda-head strong{color:#1d2d28;font-size:1.08rem}.mobile-slot-agenda section{gap:8px;display:grid}.mobile-slot-agenda h3{color:#3f766c;margin:0;font-size:.86rem}.mobile-slot-agenda section>div{gap:8px;display:grid}.mobile-slot-button{color:#1d2d28;text-align:left;background:#fff;border:1px solid #1d6f612e;border-radius:8px;grid-template-columns:minmax(72px,auto) minmax(0,1fr);gap:4px 10px;width:100%;padding:12px;display:grid}.mobile-slot-button span{color:#1d6f61;grid-row:span 2;font-weight:900}.mobile-slot-button strong,.mobile-slot-button small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.mobile-slot-button.booking span{color:#315f7a}.mobile-slot-button[aria-pressed=true]{background:#e9f7f1;border-color:#1d6f61;box-shadow:inset 0 0 0 1px #1d6f61}.primary-action,.secondary-action,.danger-action,.secondary-link,.client-booking-actions a{justify-self:stretch;width:100%}.planner-actions,.client-booking-actions{flex-direction:column;align-items:stretch}.admin-card-head{flex-direction:column;align-items:flex-start}.admin-primary-nav,.admin-topbar-actions{scrollbar-width:none;flex-wrap:nowrap;width:100%;overflow-x:auto}.admin-primary-nav::-webkit-scrollbar{display:none}.admin-topbar-actions::-webkit-scrollbar{display:none}.admin-primary-nav a,.admin-topbar-actions a,.admin-user-pill{white-space:nowrap;flex:none;min-height:34px;padding:7px 11px;font-size:.84rem}.admin-intro h1,.admin-page-head h1{font-size:2.35rem}.admin-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-metrics div{padding:16px}.admin-metrics dd{font-size:1.65rem}.admin-page-head{gap:20px;padding:24px 0 20px}}.loading-shell{pointer-events:none}.skeleton{background:#e4eae6;border-radius:4px;min-height:1rem;display:block}.skeleton.text{height:14px}.skeleton.text.sm{width:42%}.skeleton.text.md{width:64%}.skeleton.text.lg{width:82%}.skeleton.pill{border-radius:8px;width:118px;height:38px}.loading-topbar{justify-content:space-between;align-items:center;gap:18px;min-height:48px;margin-bottom:18px;display:flex}.loading-nav{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.loading-brand{width:172px;height:24px}.loading-hero{background:#26352f;border-radius:8px;align-items:end;min-height:clamp(500px,68vh,680px);margin:18px 0 22px;padding:clamp(28px,7vw,72px);display:grid}.loading-hero-content{gap:18px;width:min(720px,100%);display:grid}.loading-hero-title{border-radius:8px;width:min(620px,100%);height:clamp(78px,13vw,160px)}.loading-hero-facts,.loading-trust,.loading-services,.loading-admin-metrics,.loading-admin-hub{background:#22302c1f;border:1px solid #22302c1f;border-radius:8px;gap:1px;display:grid;overflow:hidden}.loading-hero-facts,.loading-trust{grid-template-columns:repeat(4,minmax(0,1fr))}.loading-hero-facts{width:min(620px,100%)}.loading-hero-facts .skeleton,.loading-trust .skeleton,.loading-admin-metrics .skeleton{border-radius:0;min-height:92px}.loading-services{background:0 0;border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px}.loading-services .skeleton{border-radius:8px;min-height:280px}.loading-client-workspace{grid-template-columns:minmax(220px,280px) minmax(0,1fr) minmax(260px,320px);gap:18px;margin-top:22px;display:grid}.loading-client-side,.loading-client-calendar,.loading-client-checkout,.loading-admin-head{background:#ffffffdb;border:1px solid #22302c1f;border-radius:8px;gap:12px;padding:16px;display:grid;box-shadow:0 18px 50px #25342d12}.loading-calendar-box{border-radius:8px;min-height:520px}.loading-client-checkout .skeleton{min-height:44px}.loading-client-side>.skeleton:not(.pill){border-radius:8px;min-height:92px}.loading-admin-head{box-shadow:none;background:0 0;border:0;grid-template-columns:minmax(0,1fr) minmax(280px,420px);align-items:end;margin-top:22px;padding:0}.loading-admin-title{border-radius:8px;height:92px}.loading-admin-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.loading-admin-hub{background:0 0;border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}.loading-admin-hub .skeleton{border-radius:8px;min-height:164px}@keyframes notice-in{0%{opacity:0;transform:translateY(-6px)}}@keyframes hero-fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes progress-pulse{0%,to{box-shadow:0 0 #315f7a00}50%{box-shadow:0 0 0 4px #315f7a1f}}@keyframes slot-selected-pulse{0%,to{box-shadow:inset 0 0 0 2px #123b34,0 0 #1d6f6100}50%{box-shadow:inset 0 0 0 2px #123b34,0 0 0 4px #1d6f6129}}@keyframes spinner-rotate{to{transform:rotate(360deg)}}@keyframes skeleton-shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}@media (prefers-reduced-motion:no-preference){.notice{animation:.25s both notice-in}.public-hero-content>*{opacity:0;animation:.55s cubic-bezier(.22,1,.36,1) both hero-fade-up}.public-hero-content>:first-child{animation-delay:0s}.public-hero-content>:nth-child(2){animation-delay:80ms}.public-hero-content>:nth-child(3){animation-delay:.16s}.public-hero-content>:nth-child(4){animation-delay:.24s}.public-hero-content>:nth-child(5){animation-delay:.32s}.booking-progress li[data-state=active]{animation:2s ease-in-out infinite progress-pulse}.public-slot-event.selected,.public-own-booking-event.selected{animation:2s ease-in-out infinite slot-selected-pulse}.primary-action[aria-busy=true]:after,.secondary-action[aria-busy=true]:after{animation:.7s linear infinite spinner-rotate}.skeleton{background:linear-gradient(90deg,#0000,#ffffff73,#0000) 0 0/600px 100%,#e4eae6;animation:1.25s ease-in-out infinite skeleton-shimmer}}
