.public{--color-bg:#151719;--color-surface:#1e2225;--color-surface-muted:#292e32;--color-text:#f3f0ea;--color-text-muted:#b7bec2;--color-divider:#343b40;--color-control-border:#6e7a81;--color-focus:#f4c695;--color-success:#9ad0b1;--color-error:#ffb5a7;--font-heading:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;background:var(--color-bg);min-height:100svh;color:var(--color-text);font-variant-numeric:tabular-nums;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;overflow-wrap:anywhere;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-size:16px;line-height:1.5}.public--warm{--color-bg:#f5f1e9;--color-surface:#fffcf7;--color-surface-muted:#eae2d7;--color-text:#252a2d;--color-text-muted:#5e6466;--color-divider:#d6cfc4;--color-control-border:#81776d;--color-focus:#224e64;--color-success:#276449;--color-error:#a12d25;--font-heading:Georgia, "Times New Roman", serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.public :focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.public :is(h1,h2,h3,p,figure){margin:0}.public :is(h1,h2){font-family:var(--font-heading);letter-spacing:-.02em;font-weight:500;line-height:1.1}.public--warm :is(h1,h2){letter-spacing:-.02em;font-weight:400}.public h1{letter-spacing:-.03em;font-size:clamp(36px,4.5vw,64px)}.public h2{font-size:clamp(28px,3vw,40px)}.public h3{font-size:22px;font-weight:500;line-height:1.25}.public :is(button,input,select,textarea){font:inherit}.public a{text-underline-offset:4px}.public button{cursor:pointer}.public button:disabled{cursor:default;opacity:.6}.public__container{width:min(100% - 96px,1200px);margin-inline:auto}.public__eyebrow{color:var(--color-text-muted);font-size:13px;line-height:1.4}.public__muted{color:var(--color-text-muted);font-size:14px}.public__prose{white-space:pre-line}.public__sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.public__skip{z-index:10;color:var(--color-on-accent);background:var(--color-accent);padding:12px;position:fixed;top:12px;left:16px;transform:translateY(-160%)}.public__skip:focus{transform:translateY(0)}.public-header{border-bottom:1px solid var(--color-divider);justify-content:space-between;align-items:center;gap:24px;min-height:104px;display:flex}.brand{align-items:center;max-width:360px;min-height:48px;font-size:20px;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.brand img{object-fit:contain;object-position:left;max-width:100%;display:block}.public--warm .brand--demo img{filter:brightness(.42)}.public-header__nav{gap:32px;margin-left:auto;display:flex}.public-header__nav a{align-items:center;min-height:48px;font-size:14px;text-decoration:none;display:inline-flex}.public-button{background:var(--color-accent);min-height:48px;color:var(--color-on-accent);border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:16px;padding:12px 20px;font-size:15px;font-weight:500;line-height:1.4;text-decoration:none;transition:background-color .15s ease-out,opacity .15s ease-out;display:inline-flex}.public-button:hover{box-shadow:inset 0 0 0 1px}.public-button:active{box-shadow:inset 0 0 0 2px}.public-button--secondary{border-color:var(--color-control-border);color:var(--color-text);background:0 0}.public-button--secondary:hover{background:var(--color-surface-muted);opacity:1}.public-link{min-height:44px;color:var(--color-text);text-underline-offset:5px;background:0 0;border:0;border-radius:0;align-items:center;gap:16px;padding:4px 0;font-size:14px;text-decoration:underline;display:inline-flex}.public-link:hover{text-decoration-thickness:2px}.hero{grid-template-columns:5fr 7fr;align-items:center;gap:48px;padding-block:64px 72px;display:grid}.hero__copy{justify-items:start;gap:24px;padding-block:24px;display:grid}.hero h1{max-width:15ch}.hero__description{max-width:50ch;color:var(--color-text-muted);line-height:1.65}.hero__actions{flex-wrap:wrap;align-items:center;gap:16px 24px;padding-top:8px;display:flex}.hero__note{max-width:44ch;color:var(--color-text-muted);font-size:13px}.hero__media{align-self:center;min-width:0}.hero__media picture{aspect-ratio:3/2;border-radius:4px;min-height:0;display:block;position:relative;overflow:hidden}.hero__media img{object-fit:cover;object-position:63% center;width:100%;height:100%;display:block;position:absolute;inset:0}.public--warm .hero{gap:64px;padding-block:72px 80px}.public--warm .hero__media{border:1px solid var(--color-divider);margin:0}.public--warm .hero__media picture{border-radius:0}.hero.hero--text-only{grid-template-columns:minmax(0,1fr)}.hero--text-only .hero__copy{max-width:48rem}.hero--text-only h1{max-width:18ch}.public-section{border-top:1px solid var(--color-divider);padding-block:64px;scroll-margin-top:24px}.section-heading{grid-template-columns:minmax(0,7fr) minmax(0,4fr);align-items:start;gap:32px;margin-bottom:40px;display:grid}.section-heading>p:last-child{color:var(--color-text-muted);justify-self:end;max-width:40ch;font-size:14px}.service-row{border-top:1px solid var(--color-divider);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:32px;padding-block:28px;display:grid}.service-row p{max-width:60ch;color:var(--color-text-muted);margin-top:8px;font-size:14px}.service-row__action{text-align:right;font-variant-numeric:tabular-nums;justify-items:end;gap:8px;display:grid}.branch-list{grid-template-columns:1fr 1fr;gap:48px;display:grid}.branch-item{border-top:1px solid var(--color-divider);justify-items:start;gap:12px;padding-top:24px;display:grid}.contact-section{border-top:1px solid var(--color-divider);justify-items:start;gap:24px;padding-block:64px;display:grid}.public-footer{border-top:1px solid var(--color-divider);color:var(--color-text-muted);flex-wrap:wrap;justify-content:space-between;gap:32px;padding-block:32px;font-size:13px;display:flex}.public-footer>*{flex:180px}.public-footer a{align-items:center;min-height:44px;display:flex}.booking{min-height:calc(100svh - 220px);padding-block:48px 80px}.booking__heading{grid-template-columns:1fr auto;align-items:center;gap:16px;margin-bottom:32px;display:grid}.booking__heading h1{grid-column:1/-1;padding-top:8px;font-size:clamp(32px,3.5vw,48px)}.booking-progress{width:192px;color:var(--color-text-muted);gap:8px;font-size:12px;display:grid}.booking-progress__track{gap:4px;display:flex}.booking-progress__track span{background:var(--color-divider);flex:1;height:3px}.booking-progress__track .booking-progress__done{background:var(--color-accent)}.booking__layout{grid-template-columns:minmax(0,720px) minmax(260px,320px);justify-content:space-between;align-items:start;gap:48px;display:grid}.booking__main{min-width:0}.booking-form{gap:24px;display:grid}.booking-form__actions{border-top:1px solid var(--color-divider);justify-content:space-between;align-items:center;gap:16px;margin-top:16px;padding-top:24px;display:flex}.option-list{border:0;gap:12px;margin:0;padding:0;display:grid}.booking-option{border:1px solid var(--color-control-border);cursor:pointer;background:var(--color-surface);border-radius:12px;align-items:flex-start;gap:16px;padding:24px;display:flex}.booking-option:has(input:checked){border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}.booking-option:has(input:focus-visible){outline:2px solid var(--color-focus);outline-offset:3px}.booking-option>span{gap:8px;display:grid}.booking-option strong{font-size:20px;font-weight:500}.booking-option small{color:var(--color-text-muted);font-size:14px}.public input[type=radio],.public input[type=checkbox]{width:22px;height:22px;accent-color:var(--color-accent);flex:none;margin:4px 0 0}.booking-fields{grid-template-columns:1fr 1fr;gap:24px;display:grid}.public-field{align-content:start;gap:8px;min-width:0;display:grid}.public-field--wide{grid-column:1/-1}.public-field label{font-size:14px;font-weight:500}.public-field__hint{color:var(--color-text-muted);font-size:12px}.public-field :is(input:not([type=checkbox]),select,textarea){border:1px solid var(--color-control-border);background:var(--color-surface);width:100%;min-height:48px;color:var(--color-text);border-radius:8px;padding:12px}.public-field textarea{resize:vertical}.public-notice{border-left:3px solid var(--color-accent);background:var(--color-surface-muted);margin-bottom:24px;padding:16px 20px;font-size:14px}.public-notice--error{color:var(--color-error);border-color:var(--color-error)}.booking-overview{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:12px;padding:24px}.booking-overview>summary{cursor:pointer;min-height:44px;font-size:20px;font-weight:500}.booking-overview__context{color:var(--color-text-muted);margin-top:8px;font-size:14px;font-weight:400;line-height:1.5;display:block}.booking-overview[open] .booking-overview__context{display:none}.booking-summary__intro{color:var(--color-text-muted);padding-top:16px;font-size:14px;line-height:1.6}.booking-summary__section{border-bottom:1px solid var(--color-divider);padding-block:20px}.booking-summary__section:last-child{border-bottom:0}.booking-summary__heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:8px;display:flex}.booking-summary__heading h3{color:var(--color-text-muted);font-size:14px;font-weight:600}.booking-summary__heading button{min-height:44px;font-size:12px}.booking-summary p+p{margin-top:8px}.booking-summary dl{gap:8px;margin:0;font-size:14px;display:grid}.booking-summary dl>div{grid-template-columns:1fr 2fr;gap:16px;display:grid}.booking-summary dt{color:var(--color-text-muted)}.booking-summary dd{white-space:pre-wrap;margin:0}.availability{gap:16px;display:grid}.availability__navigation{justify-content:space-between;align-items:center;gap:12px;font-size:14px;display:flex}.availability__period{text-align:center}.slot-day{border:0;margin:0;padding:0}.slot-day legend{margin-bottom:12px;font-weight:500}.slot-day__times{flex-wrap:wrap;gap:8px;display:flex}.slot-option{cursor:pointer;position:relative}.slot-option input{opacity:0;position:absolute}.slot-option>span{border:1px solid var(--color-control-border);font-variant-numeric:tabular-nums;border-radius:8px;place-items:center;min-width:76px;min-height:48px;padding:12px;display:grid}.slot-option input:checked+span{background:var(--color-accent);color:var(--color-on-accent);border-color:var(--color-accent);font-weight:600}.slot-option input:focus-visible+span{outline:2px solid var(--color-focus);outline-offset:3px}.booking-result,.private-management{width:min(100%,760px);margin-inline:auto;padding-block:32px 64px}.booking-result h1,.private-management h1{margin-block:16px 24px}.booking-result__intro{max-width:60ch}.booking-result__actions,.public-dialog__actions{flex-wrap:wrap;gap:16px;margin-block:32px 16px;display:flex}.private-management>p{margin-block:16px}.private-management__actions{justify-items:start;gap:16px;padding-block:24px;display:grid}.booking-status{border:1px solid var(--color-success);color:var(--color-success);border-radius:4px;padding:4px 12px;font-size:14px;display:inline-block}.booking-status--cancelled{color:var(--color-text-muted);border-color:var(--color-control-border)}.public-dialog{border:1px solid var(--color-control-border);background:var(--color-surface);width:min(100% - 32px,560px);max-height:calc(100svh - 48px);color:var(--color-text);border-radius:16px;padding:32px;overflow-y:auto}.public-dialog::backdrop{background:#000000b3}.public-dialog h2{margin-bottom:24px}.public-dialog p+p{margin-top:12px}@media (max-width:1000px){.public__container{width:calc(100% - 48px)}.public-header{gap:16px;min-height:88px}.public-header__nav{gap:16px}.hero,.public--warm .hero{gap:32px;padding-block:48px}.section-heading{gap:24px}.booking__layout{grid-template-columns:1fr;gap:32px}.booking__aside{grid-row:1}.booking-overview{padding:12px 24px}.booking-overview[open]{padding-bottom:24px}}@media (max-width:700px){.public__container{width:calc(100% - 32px)}.public-header{flex-wrap:wrap;gap:12px;min-height:80px;padding-block:16px}.brand{max-width:52%;font-size:16px}.brand img{width:148px;height:34px}.public-header__nav{border-top:1px solid var(--color-divider);order:3;gap:24px;width:100%;margin:0}.public-header>.public-button{gap:16px;padding-inline:16px}.public-header>.public-link{max-width:42%;font-size:12px}.hero,.public--warm .hero{grid-template-columns:1fr;gap:32px;padding-block:32px 48px}.hero__copy{gap:20px;padding:0}.hero h1{letter-spacing:-.02em;max-width:15ch;font-size:clamp(36px,10vw,44px)}.hero__media,.public--warm .hero__media{min-height:0;margin:0}.hero__media picture{aspect-ratio:4/3}.hero__description{font-size:15px}.hero__actions{gap:8px 20px}.public-section{padding-block:40px}.section-heading{grid-template-columns:1fr;gap:16px;margin-bottom:24px}.section-heading>p:last-child{justify-self:start}.service-row{gap:24px;padding-block:24px}.service-row h3{font-size:20px}.branch-list{grid-template-columns:1fr;gap:24px}.contact-section{padding-block:40px}.public-footer{flex-direction:column;gap:16px}.public-footer>*{flex-basis:auto}.booking{padding-block:32px 48px}.booking__heading{grid-template-columns:1fr;gap:12px;margin-bottom:24px}.booking-progress{width:100%}.booking__layout{gap:24px}.booking-overview{padding:8px 16px}.booking-option{padding:20px 16px}.booking-fields{grid-template-columns:1fr;gap:20px}.booking-form__actions{flex-wrap:wrap}.booking-form__actions>.public-button:last-child{flex-grow:1}.availability__navigation{gap:8px;font-size:12px}.availability__navigation button{padding:12px 16px;font-size:13px}.slot-option>span{min-width:72px}.public-dialog{padding:24px}.booking-result__actions>*{width:100%}}@media (prefers-reduced-motion:reduce){.public *{scroll-behavior:auto;transition:none}}.public-field__error{color:var(--color-error);font-size:14px}.legal-document{max-width:800px;padding-block:48px 80px}.legal-document h1{margin-bottom:32px;font-size:clamp(32px,4vw,48px)}.legal-document__text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.booking-consent{margin-block:24px}.booking-consent__label{cursor:pointer;align-items:flex-start;gap:12px;min-height:44px;display:flex}.booking-consent__label input{width:20px;height:20px;accent-color:var(--color-accent);flex-shrink:0;margin-top:3px}.booking-consent__label a{text-underline-offset:3px}
