:root{--shell:min(1280px, calc(100% - 48px));--header-height:78px;--radius:4px;--radius-soft:18px;--sans:Inter, "Helvetica Neue", Arial, system-ui, -apple-system, sans-serif;--serif:Iowan Old Style, Baskerville, Georgia, "Times New Roman", serif;--focus:#78b6ff;--danger:#e2857b;--success:#7ed1a6;--ease:cubic-bezier(.2, .75, .25, 1);--fixed-action-bottom:max(16px, calc(12px + env(safe-area-inset-bottom,0px)), calc(12px + var(--visual-viewport-bottom,0px)))}html[data-theme=dark]{--bg:#080908;--surface:#111310;--surface-2:#1a1d19;--surface-3:#242820;--text:#f5f1e9;--muted:#b1b4ac;--line:#f5f1e92e;--line-strong:#f5f1e980;--accent:#d9ac70;--accent-strong:#edc48d;--accent-ink:#17120d;--glass:#080908db;--hero-overlay:#03040391;--focus:#78b6ff;--focus-outer:#000;--danger:#ff9a90;--success:#7ed1a6;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=light]{--bg:#eee9df;--surface:#faf7f1;--surface-2:#e0d9cc;--surface-3:#d2c9ba;--text:#171914;--muted:#595f56;--line:#17191433;--line-strong:#1719148c;--accent:#81521c;--accent-strong:#66400f;--accent-ink:#fff;--glass:#faf7f1e6;--hero-overlay:#05060587;--focus:#005fcc;--focus-outer:#fff;--danger:#a1261b;--success:#177245;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px;scroll-padding-top:calc(var(--header-height) + 22px);background:var(--bg)}body{min-width:320px;color:var(--text);background:var(--bg);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.55;overflow-x:clip}body.nav-open{overflow:hidden}button,input,select,textarea{color:inherit;font:inherit}button,[type=button],[type=submit]{cursor:pointer}button:disabled,[type=button]:disabled,[type=submit]:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:.08em}img{max-width:100%;display:block}address{font-style:normal}h1,h2,h3,p,dl,dd,blockquote,figure{margin-top:0}h1,h2,h3{text-wrap:balance}h1,h2{letter-spacing:-.06em;font-weight:750;line-height:.9}h1 em,h2 em{color:var(--accent);font-family:var(--serif);font-weight:400}h3{line-height:1.2}:where(a,button,input,select,textarea,summary,[tabindex]){scroll-margin-block:calc(var(--header-height) + 18px) 90px}::selection{color:var(--accent-ink);background:var(--accent)}.shell{width:var(--shell);margin-inline:auto}.section{padding-block:clamp(70px,8vw,112px)}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.skip-link{z-index:2000;color:#fff;background:#111;min-height:44px;padding:11px 16px;position:fixed;top:10px;left:10px;transform:translateY(-170%)}.skip-link:focus{transform:none}.eyebrow,.footer-label{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin-bottom:14px;font-size:.72rem;font-weight:900;line-height:1.35}.lead-copy{max-width:720px;font-size:clamp(1.12rem,2vw,1.45rem)}.small-note,.footer-muted{color:var(--muted);font-size:.78rem}.placeholder-copy,.legal-placeholder{color:#fff;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:#893c32;padding:.08em .3em}.button-row{flex-wrap:wrap;gap:10px;display:flex}.button{letter-spacing:.07em;text-align:center;text-transform:uppercase;min-height:48px;transition:transform .2s var(--ease), background-color .2s var(--ease), border-color .2s var(--ease);background:0 0;border:1px solid;border-radius:999px;justify-content:center;align-items:center;gap:16px;padding:12px 18px;font-size:.875rem;font-weight:900;line-height:1.2;text-decoration:none;display:inline-flex}.button:not(:disabled):hover{transform:translateY(-2px)}.button--accent{color:var(--accent-ink);border-color:var(--accent);background:var(--accent)}.button--accent:hover{border-color:var(--accent-strong);background:var(--accent-strong)}.button--ink{color:var(--bg);border-color:var(--text);background:var(--text)}.button--ghost{color:var(--text);border-color:var(--line-strong)}.button--glass{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0000001f;border-color:#ffffff8c}.button--danger{color:#fff;background:#96392f;border-color:#96392f}.button--large{min-height:56px;padding-inline:24px}.button--full{width:100%}.text-link{min-height:44px;color:var(--accent-strong);letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:14px;font-size:.875rem;font-weight:900;text-decoration:none;display:inline-flex}.text-link:hover{text-decoration:underline}.staging-environment-banner{z-index:900;color:#fff;text-align:center;background:#572019;min-height:34px;padding:8px 20px;font-size:.75rem;line-height:1.35;position:relative}.site-header{z-index:800;border-bottom:1px solid var(--line);background:var(--glass);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);position:sticky;top:0}.site-header__inner{min-height:var(--header-height);justify-content:space-between;align-items:center;gap:28px;display:flex}.wordmark{align-items:center;gap:12px;min-height:48px;text-decoration:none;display:inline-flex}.brand-mark{object-fit:contain;border-radius:26%;flex:none;width:52px;height:52px;display:block}.brand-mark--compact{width:38px;height:38px}.wordmark__text strong,.wordmark__text small{display:block}.wordmark__text strong{letter-spacing:.13em;text-transform:uppercase;font-size:.78rem}.wordmark__text small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-top:2px;font-size:.65rem;font-weight:700}.site-nav{align-items:center;gap:26px;display:flex}.site-nav a{letter-spacing:.07em;text-transform:uppercase;align-items:center;min-height:44px;font-size:.72rem;font-weight:900;text-decoration:none;display:inline-flex;position:relative}.site-nav a:after{background:var(--accent);content:"";height:2px;transition:transform .2s var(--ease);position:absolute;bottom:6px;left:0;right:0;transform:scaleX(0)}.site-nav a:hover:after,.site-nav a[aria-current=page]:after{transform:scaleX(1)}.site-header__actions{align-items:center;gap:10px;display:flex}.nav-toggle{min-width:108px;min-height:48px;color:var(--text);border:1px solid var(--line-strong);background:var(--surface);transition:color .18s var(--ease), border-color .18s var(--ease), background .18s var(--ease);border-radius:999px;justify-content:space-between;align-items:center;gap:10px;padding:9px 13px;display:none}.nav-toggle__label{letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:900}.nav-toggle__lines{flex:0 0 20px;width:20px;height:16px;display:block;position:relative}.nav-toggle__lines:before,.nav-toggle__lines:after{content:"";width:20px;height:2px;transition:top .18s var(--ease), bottom .18s var(--ease), transform .18s var(--ease);background:currentColor;border-radius:999px;position:absolute;left:0}.nav-toggle__lines:before{top:3px}.nav-toggle__lines:after{bottom:3px}.nav-toggle:hover{border-color:var(--accent)}.nav-toggle[aria-expanded=true]{color:var(--accent-ink);border-color:var(--accent);background:var(--accent)}.nav-toggle[aria-expanded=true] .nav-toggle__lines:before{top:7px;transform:rotate(45deg)}.nav-toggle[aria-expanded=true] .nav-toggle__lines:after{bottom:7px;transform:rotate(-45deg)}.section-heading{margin-bottom:36px}.section-heading--split{grid-template-columns:minmax(0,1.15fr) minmax(280px,.65fr);align-items:end;gap:60px;display:grid}.section-heading h2{margin:0;font-size:clamp(3rem,6vw,6rem)}.section-heading__aside{color:var(--muted);margin:0}.section-heading__aside>:last-child{margin-bottom:0}.page-hero{border-bottom:1px solid var(--line);background-color:var(--surface);background-image:radial-gradient(circle at 78% 25%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 28%);padding-block:clamp(74px,10vw,130px)}.page-hero__grid{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:40px;display:grid}.page-hero h1{max-width:950px;margin:0;font-size:clamp(3.6rem,8vw,8.2rem)}.page-hero__intro{max-width:720px;color:var(--muted);margin:28px 0 0;font-size:1.06rem}.page-hero__index{color:var(--accent);letter-spacing:-.08em;opacity:.24;margin:0;font-size:clamp(3rem,8vw,7rem);font-weight:900}.home-hero{min-height:min(850px, calc(100vh - var(--header-height)));isolation:isolate;background:#080908;align-items:flex-end;display:flex;position:relative;overflow:hidden}.home-hero__image,.home-hero__shade{position:absolute;inset:0}.home-hero__image{z-index:-2;object-fit:cover;width:100%;height:100%}.home-hero__shade{z-index:-1;background:linear-gradient(180deg, #0000002e, var(--hero-overlay) 54%, #040504f5)}.home-hero__content{color:#fff;grid-template-columns:minmax(0,1.25fr) minmax(280px,.55fr);align-items:end;gap:60px;padding-block:145px 62px;display:grid}.home-hero h1{max-width:950px;margin:0;font-size:clamp(4.4rem,9vw,9.4rem);line-height:.78}.home-hero .eyebrow{color:#f0c98f}.home-hero__side>p{color:#e1e3df;margin-bottom:26px;font-size:1.03rem}.home-hero__side>small{color:#c8cbc5;margin-top:15px;display:block}.home-facts{border-bottom:1px solid var(--line)}.home-facts__grid{grid-template-columns:repeat(4,1fr);display:grid}.home-facts__grid>div{border-right:1px solid var(--line);min-width:0;padding:20px}.home-facts__grid>div:first-child{padding-left:0}.home-facts__grid>div:last-child{border-right:0}.home-facts span{color:var(--accent);letter-spacing:.11em;text-transform:uppercase;margin-bottom:4px;font-size:.68rem;font-weight:900;display:block}.home-facts strong,.home-facts a{font-size:.78rem;font-weight:700}.price-section{background:var(--bg)}.price-table-wrap{border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong)}.price-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:0}.price-table th,.price-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:20px 18px}.price-table tr:last-child>*{border-bottom:0}.price-table thead th{color:var(--accent);letter-spacing:.09em;text-transform:uppercase;font-size:.72rem;font-weight:900}.price-table thead th:first-child,.price-table tbody th{width:42%}.price-table thead strong,.price-table thead span,.price-table td span{display:block}.price-table thead strong{color:var(--text);letter-spacing:0;text-transform:none;font-size:1.1rem}.price-table thead span,.price-table td span{color:var(--muted);letter-spacing:0;text-transform:none;margin-top:4px;font-size:.78rem;font-weight:400}.price-table tbody th{font-size:.95rem}.price-table tbody td{font-size:1rem}.offer-bar{color:var(--accent-ink);background:var(--accent);grid-template-columns:54px 1fr;align-items:center;gap:20px;margin-top:18px;padding:18px 20px;display:grid}.offer-bar>span{border:1px solid;border-radius:50%;place-items:center;width:44px;height:44px;font-weight:900;display:grid}.offer-bar strong,.offer-bar p{margin:0;display:block}.offer-bar p{margin-top:2px;font-size:.78rem}.salon-filmstrip{background:var(--surface-2);grid-template-rows:1fr 1fr;grid-template-columns:1.25fr .7fr .7fr;gap:8px;height:620px;padding:8px;display:grid}.salon-filmstrip figure{background:var(--surface);margin:0;position:relative;overflow:hidden}.salon-filmstrip__large{grid-row:1/3}.salon-filmstrip__wide{grid-column:2/4}.salon-filmstrip img{object-fit:cover;filter:saturate(.8);width:100%;height:100%;transition:transform .5s var(--ease)}.salon-filmstrip figure:hover img{transform:scale(1.025)}.salon-filmstrip figcaption{color:#fff;letter-spacing:.08em;text-transform:uppercase;background:#000000b8;padding:7px 9px;font-size:.7rem;font-weight:900;position:absolute;bottom:10px;right:10px}.craft-section{background:var(--surface)}.craft-section__grid{grid-template-columns:1.1fr .9fr;align-items:stretch;gap:70px;display:grid}.craft-section h2{margin:0 0 28px;font-size:clamp(3rem,6vw,6rem)}.craft-section figure{min-height:620px;margin:0}.craft-section figure img{object-fit:cover;width:100%;height:100%}.craft-points{border-top:1px solid var(--line);margin-top:38px}.craft-points article{border-bottom:1px solid var(--line);grid-template-columns:42px 1fr;gap:18px;padding:17px 0;display:grid}.craft-points article>span{color:var(--accent);font-size:.68rem;font-weight:900}.craft-points h3,.craft-points p{margin-bottom:3px}.craft-points p{color:var(--muted);font-size:.82rem}.team-section{background:var(--bg)}.team-section__anchor{scroll-margin-top:0}.team-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.team-card{border:1px solid var(--line);background:var(--surface);overflow:hidden}.staff-portrait{aspect-ratio:1;object-fit:cover;object-position:var(--staff-photo-x,50%) var(--staff-photo-y,50%);width:100%;height:auto;color:var(--accent-ink);background:var(--accent);place-items:center;font-size:3rem;font-weight:900;display:grid}.team-card>.staff-portrait{filter:saturate(.74)}.team-card__body{padding:20px}.team-card__body>p{color:var(--accent);letter-spacing:.09em;text-transform:uppercase;margin:0 0 4px;font-size:.68rem;font-weight:900}.team-card h3{margin:0;font-size:1.5rem}.team-card__body>span{min-height:3.8em;color:var(--muted);font-size:.8rem;display:block}.team-card a{border-top:1px solid var(--line);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:20px;min-height:44px;margin-top:17px;padding-top:12px;font-size:.72rem;font-weight:900;text-decoration:none;display:flex}.team-card a:hover{color:var(--accent-strong)}.booking-story{background:var(--surface-2);padding-block:clamp(70px,9vw,120px)}.booking-story__grid{grid-template-columns:.9fr 1.1fr;align-items:center;gap:80px;display:grid}.booking-story h2{margin:0 0 24px;font-size:clamp(3rem,5.6vw,5.7rem)}.booking-story__grid>div>p:not(.eyebrow){max-width:520px;color:var(--muted)}.booking-story ol{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.booking-story li{border-bottom:1px solid var(--line);grid-template-columns:45px 1fr;gap:20px;padding:20px 0;display:grid}.booking-story li>span{color:var(--accent);font-size:.68rem;font-weight:900}.booking-story li strong,.booking-story li p{margin:0;display:block}.booking-story li p{color:var(--muted);margin-top:3px;font-size:.82rem}.home-faq__grid,.faq-layout{grid-template-columns:.65fr 1.35fr;gap:70px;display:grid}.home-faq h2,.faq-layout aside h2{margin:0 0 24px;font-size:clamp(2.8rem,5vw,5rem)}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;grid-template-columns:34px 1fr 24px;align-items:center;gap:16px;min-height:68px;padding:14px 0;list-style:none;display:grid}.home-faq .faq-list summary{grid-template-columns:1fr 24px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{color:var(--accent);font-size:.68rem;font-weight:900}.faq-list summary strong{font-size:.92rem}.faq-list summary i{width:20px;height:20px;position:relative}.faq-list summary i:before,.faq-list summary i:after{content:"";background:currentColor;width:14px;height:2px;position:absolute;top:9px;left:3px}.faq-list summary i:after{transition:transform .2s var(--ease);transform:rotate(90deg)}.faq-list details[open] summary i:after{transform:rotate(0)}.faq-list details>div{color:var(--muted);padding:0 50px 20px;font-size:.88rem}.home-faq .faq-list details>div{padding-left:0}.faq-list details>div p:last-child{margin-bottom:0}.visit-panel{background:var(--surface);padding-block:clamp(70px,9vw,120px)}.visit-panel__grid{grid-template-columns:1fr 1fr;gap:70px;display:grid}.visit-panel figure{min-height:570px;margin:0}.visit-panel figure img{object-fit:cover;width:100%;height:100%}.visit-panel h2{margin:0 0 24px;font-size:clamp(3.2rem,6vw,6.2rem)}.visit-panel address{font-size:1.05rem}.visit-hours{border-top:1px solid var(--line);margin-block:25px}.visit-hours div,.opening-table div,.contact-list div{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;gap:20px;padding:11px 0;display:grid}.visit-hours dt,.visit-hours dd,.opening-table dt,.opening-table dd,.contact-list dt,.contact-list dd{margin:0}.visit-hours dd,.opening-table dd{font-weight:800}.special-hours{border-left:3px solid var(--accent);background:var(--surface-2);margin:18px 0 25px;padding:15px}.special-hours .eyebrow{margin-bottom:7px}.special-hours dl{margin:0}.special-hours dl div{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;gap:18px;padding-block:7px;display:grid}.special-hours dl div:last-child{border-bottom:0}.special-hours dt,.special-hours dd{margin:0;font-size:.76rem}.special-hours dd{font-weight:800}.visit-links{color:var(--muted);gap:5px;margin-bottom:28px;display:grid}.service-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.service-card{border:1px solid var(--line);background:var(--surface);flex-direction:column;min-height:330px;padding:22px;display:flex}.service-card__topline,.service-card__facts{justify-content:space-between;gap:16px;display:flex}.service-card__index,.service-card__category{color:var(--accent);letter-spacing:.09em;text-transform:uppercase;font-size:.68rem;font-weight:900}.service-card__body{flex:1;padding-block:38px 24px}.service-card__body h3{margin:0 0 10px;font-size:1.35rem}.service-card__body p{color:var(--muted);font-size:.8rem}.service-card__facts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0;padding-block:13px}.service-card__facts div:last-child{text-align:right}.service-card__facts dt{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:800}.service-card__facts dd{margin:3px 0 0;font-weight:800}.service-card__link,.service-card__pending{margin-top:12px}.service-card__pending{color:var(--muted);font-size:.72rem}.service-explainer{background:var(--surface-2)}.service-explainer__grid{grid-template-columns:.85fr 1.15fr;align-items:center;gap:70px;padding-block:90px;display:grid}.service-explainer figure{min-height:620px;margin:0}.service-explainer figure img{object-fit:cover;width:100%;height:100%}.service-explainer h2{margin:0 0 34px;font-size:clamp(3rem,5.8vw,5.8rem)}.service-copy-grid{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:0 26px;display:grid}.service-copy-grid article{border-bottom:1px solid var(--line);padding:18px 0}.service-copy-grid h3{margin:0 0 6px;font-size:1rem}.service-copy-grid p{color:var(--muted);margin:0;font-size:.78rem}.about-story__grid{grid-template-columns:.8fr 1.2fr;gap:70px;display:grid}.about-story h2{margin:0;font-size:clamp(3rem,6vw,6rem)}.about-story__copy p:last-child{color:var(--muted)}.about-image-band{background:var(--surface-2);grid-template-columns:1.35fr .65fr;gap:8px;height:590px;padding:8px;display:grid}.about-image-band img{object-fit:cover;width:100%;height:100%}.value-grid{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.value-grid article{border-right:1px solid var(--line);min-height:260px;padding:22px}.value-grid article:last-child{border-right:0}.value-grid span{color:var(--accent);font-size:.68rem;font-weight:900}.value-grid h3{margin:55px 0 10px}.value-grid p{color:var(--muted);font-size:.8rem}.gallery-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:330px;gap:8px;display:grid}.gallery-grid figure{background:var(--surface);margin:0;position:relative;overflow:hidden}.gallery-grid__hero{grid-area:span 2/span 2}.gallery-grid__wide{grid-column:span 2}.gallery-grid img{object-fit:cover;filter:saturate(.82);width:100%;height:100%}.gallery-grid figcaption{color:#fff;letter-spacing:.07em;text-transform:uppercase;background:#000000b8;justify-content:space-between;gap:20px;padding:9px 11px;font-size:.7rem;font-weight:900;display:flex;position:absolute;bottom:10px;left:10px;right:10px}.contact-layout{grid-template-columns:1.1fr .9fr;gap:65px;display:grid}.contact-layout figure{min-height:650px;margin:0}.contact-layout figure img{object-fit:cover;width:100%;height:100%}.contact-panel{align-self:center}.contact-panel h2{margin:0 0 25px;font-size:clamp(3rem,5.6vw,5.7rem)}.contact-panel address{font-size:1.04rem}.opening-table,.contact-list{border-top:1px solid var(--line);margin-block:25px}.contact-list dd a{overflow-wrap:anywhere}.privacy-map-note{max-width:520px;color:var(--muted);margin-top:18px;font-size:.7rem}.contact-options{background:var(--surface-2);padding-block:70px 110px}.contact-options__grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.contact-options article{border:1px solid var(--line);background:var(--surface);min-height:240px;padding:22px}.contact-options article>span{color:var(--accent);font-size:.68rem;font-weight:900}.contact-options h2{margin:42px 0 8px;font-size:2rem}.contact-options p{color:var(--muted);font-size:.8rem}.contact-options a{min-height:44px;color:var(--accent-strong);text-transform:uppercase;align-items:center;font-size:.75rem;font-weight:900;text-decoration:none;display:inline-flex}.status-note,.empty-state,.form-error-summary{border:1px solid var(--line-strong);background:var(--surface-2);padding:18px 20px}.status-note{grid-template-columns:12px 1fr;gap:14px;display:grid}.status-note__marker{background:var(--accent);border-radius:50%;width:10px;height:10px;margin-top:6px}.status-note__title{margin:0 0 4px;font-weight:900}.status-note__content,.status-note__content p{color:var(--muted);margin-bottom:0;font-size:1rem;line-height:1.6}.empty-state{text-align:center;max-width:760px;margin-inline:auto}.empty-state__glyph{color:var(--accent);font-size:4rem}.empty-state h2{font-size:clamp(2rem,4vw,4rem)}.form-error-summary{border-color:var(--danger);margin-bottom:25px}.form-error-summary ul{margin-bottom:0}.form-field{gap:7px;display:grid}.form-field label,.field-label{letter-spacing:.06em;text-transform:uppercase;font-size:.75rem;font-weight:900}.form-field input,.form-field select,.form-field textarea,.date-input{width:100%;min-height:52px;color:var(--text);border:1px solid var(--line-strong);background:var(--surface);border-radius:0;padding:11px 13px}.form-field input:focus,.form-field select:focus,.form-field textarea:focus,.date-input:focus{border-color:var(--focus)}.form-field small{color:var(--muted);font-size:.875rem;line-height:1.5}.field-error{color:var(--danger);margin:4px 0 0;font-size:.875rem;font-weight:800}.is-invalid,[aria-invalid=true]{border-color:var(--danger)!important}.honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.booking-header,.manage-hero{border-bottom:1px solid var(--line);background:var(--surface);padding-block:clamp(62px,8vw,105px)}.booking-header__grid,.manage-hero__grid{grid-template-columns:1.2fr .8fr;align-items:center;gap:60px;display:grid}.booking-header h1,.manage-hero h1{overflow-wrap:anywhere;margin:0;font-size:clamp(3.35rem,6.7vw,6.65rem);line-height:.98}.booking-header h1>span,.booking-header h1>em,.manage-hero h1>span,.manage-hero h1>em,.result-page h1>span,.result-page h1>em,.manage-detail__heading h1>span,.manage-detail__heading h1>em{display:block}.booking-header h1>em,.manage-hero h1>em,.result-page h1>em,.manage-detail__heading h1>em{margin-top:.06em;line-height:.94}.booking-header__grid>p,.manage-hero__grid>p{color:var(--muted);margin:0}.booking-header{padding-block:clamp(32px,4.5vw,54px)}.booking-header__grid{grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:clamp(28px,5vw,70px)}.booking-header h1{font-size:clamp(2.9rem,5vw,5.2rem)}.booking-header h1>em{letter-spacing:-.045em;font-size:.68em}.booking-header__grid>p{max-width:42ch;font-size:1rem;line-height:1.6}.manage-hero__grid>div:first-child{min-width:0}.manage-hero .lead-copy{margin:24px 0 0}.token-card{background:var(--bg);margin:0;padding:clamp(24px,3vw,38px)}.token-card__index,.token-card__security{color:var(--muted);font-size:.875rem}.token-card__index{color:var(--accent);letter-spacing:.14em;margin-bottom:24px;font-weight:900}.token-card h2{margin-bottom:24px;font-size:clamp(2rem,3.2vw,3.15rem);line-height:1}.token-card form{gap:18px;display:grid}.token-card__security{margin:20px 0 0;line-height:1.55}.booking-shell{padding-block:26px 120px}.booking-progress{scroll-margin-top:calc(var(--header-height) + 12px);border:1px solid var(--line-strong);grid-template-columns:repeat(4,1fr);margin-bottom:18px;display:grid}.booking-progress button{min-height:58px;color:var(--muted);border:0;border-right:1px solid var(--line-strong);background:var(--surface);text-align:left;align-items:center;gap:10px;padding:10px 13px;display:flex}.booking-progress button:last-child{border-right:0}.booking-progress button.is-active{color:var(--accent-ink);background:var(--accent)}.booking-progress button.is-complete{color:var(--text)}.booking-progress button span{font-size:.68rem;font-weight:900}.booking-progress button strong{letter-spacing:.05em;text-transform:uppercase;font-size:.75rem}.booking-stage{border:1px solid var(--line);background:var(--surface);padding:clamp(24px,4vw,52px)}.booking-step[hidden]{display:none!important}.booking-step{scroll-margin-top:calc(var(--header-height) + 88px)}.booking-step__heading{margin-bottom:30px}.booking-step__heading h2{margin:0 0 12px;font-size:clamp(2.5rem,5vw,4.8rem)}.booking-step__heading>p:last-child{max-width:650px;color:var(--muted);margin:0}.choice-fieldset,.slot-panel{border:0;min-width:0;margin:0 0 38px;padding:0}.choice-fieldset legend,.slot-panel legend{letter-spacing:.08em;text-transform:uppercase;margin-bottom:13px;font-size:.75rem;font-weight:900}.service-choices{grid-template-columns:1fr 1fr;gap:8px;display:grid}.choice-card{border:1px solid var(--line-strong);background:var(--bg);cursor:pointer;grid-template-columns:22px 1fr auto;align-items:start;gap:13px;min-height:138px;padding:17px;display:grid;position:relative}.choice-card:hover,.choice-card:focus-within{border-color:var(--accent)}.choice-card:has(input:focus-visible){border-color:var(--accent)}.choice-card:has(input:checked){border-color:var(--accent)}.choice-card:has(input:checked){box-shadow:inset 0 0 0 2px var(--accent)}.choice-card input,.staff-choice input,.slot-choice input{opacity:0;width:1px;height:1px;position:absolute}.choice-card__check{border:1px solid;border-radius:50%;width:19px;height:19px;margin-top:3px}.choice-card:has(input:checked) .choice-card__check{border:5px solid var(--accent)}.choice-card input:checked+.choice-card__check{border:5px solid var(--accent)}.choice-card__content{display:grid}.choice-card__category{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:9px;font-size:.68rem;font-weight:900}.choice-card__content strong{font-size:1rem}.choice-card__content small{color:var(--muted);margin-top:4px}.choice-card__facts{white-space:nowrap;justify-items:end;gap:6px;display:grid}.choice-card__facts span{color:var(--muted);font-size:.75rem}.staff-choices{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.staff-choice{border:1px solid var(--line-strong);background:var(--bg);cursor:pointer;grid-template-columns:52px minmax(0,1fr) 18px;align-items:center;gap:11px;min-height:78px;padding:10px 12px;display:grid;position:relative}.staff-choice:hover,.staff-choice:focus-within{border-color:var(--accent)}.staff-choice:has(input:focus-visible){border-color:var(--accent)}.staff-choice:has(input:checked){border-color:var(--accent)}.staff-choice:has(input:checked){box-shadow:inset 0 0 0 2px var(--accent)}.staff-choice>.staff-choice__avatar{aspect-ratio:1;object-fit:cover;border-radius:50%;align-self:center;width:52px;min-width:52px;max-width:52px;height:52px;min-height:52px;max-height:52px;overflow:hidden}.staff-choice__avatar--any{color:var(--accent-ink);background:var(--accent);place-items:center;font-size:1.25rem;font-weight:900;display:grid}.staff-choice strong,.staff-choice small{display:block}.staff-choice strong{font-size:.82rem}.staff-choice small{color:var(--muted);margin-top:2px;font-size:.75rem}.staff-choice i{border:1px solid var(--line-strong);border-radius:50%;width:16px;height:16px}.staff-choice:has(input:checked) i{border:5px solid var(--accent)}.staff-choice input:checked~i{border:5px solid var(--accent)}.date-slot-layout{grid-template-columns:.55fr 1.45fr;gap:28px;display:grid}.date-picker-panel{background:var(--bg);padding:20px}.date-picker-panel .date-input{margin-block:8px 15px}.slot-panel{margin:0}.slot-status{min-height:24px;color:var(--muted);font-size:.78rem}.slot-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.slot-choice{cursor:pointer;display:block;position:relative}.slot-choice span{border:1px solid var(--line-strong);background:var(--bg);place-items:center;min-height:48px;padding:8px;font-size:.875rem;font-weight:800;display:grid}.slot-choice:hover span,.slot-choice input:checked+span{color:var(--accent-ink);border-color:var(--accent);background:var(--accent)}.slot-choice:has(input:focus-visible) span{color:var(--accent-ink);border-color:var(--accent);background:var(--accent)}.contact-form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.contact-form-grid__wide{grid-column:1/-1}.privacy-inline{color:var(--muted);margin-top:20px;font-size:.875rem;line-height:1.6}.booking-step__actions{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;margin-top:34px;padding-top:20px;display:flex}.booking-step__actions--end{justify-content:flex-end}.booking-step__actions--submit>div{text-align:right;gap:8px;max-width:430px;display:grid}.booking-step__actions--submit small{color:var(--muted);font-size:1rem;line-height:1.5}.review-layout{grid-template-columns:1.15fr .85fr;align-items:start;gap:18px;display:grid}.review-card,.booking-rules{border:1px solid var(--line);background:var(--bg);margin:0;padding:20px}.review-card>div{border-bottom:1px solid var(--line);grid-template-columns:145px 1fr;gap:15px;padding:9px 0;display:grid}.review-card>div:last-child{border-bottom:0}.review-card dt{color:var(--muted);font-size:1rem;line-height:1.45}.review-card dd{overflow-wrap:anywhere;margin:0;font-size:1rem;font-weight:800}.booking-rules{align-self:start}.booking-rules .eyebrow{margin-bottom:18px;font-size:1rem}.booking-rules p:not(.eyebrow){color:var(--muted);font-size:1rem;line-height:1.65}.booking-rules a{min-height:44px;color:var(--accent-strong);align-items:center;font-size:1rem;font-weight:800;display:inline-flex}.result-page,.withdrawal-page,.error-page{padding-block:clamp(70px,9vw,120px)}.result-page__grid,.withdrawal-page__grid,.error-page__grid{grid-template-columns:.45fr 1.55fr;align-items:start;gap:55px;display:grid}.result-page__mark{width:120px;height:120px;color:var(--accent-ink);background:var(--accent);border-radius:50%;place-items:center;font-size:2.4rem;display:grid}.result-page__mark--neutral{color:var(--text);border:1px solid var(--line-strong);background:var(--surface)}.result-page h1,.withdrawal-page h1,.error-page h1{overflow-wrap:anywhere;margin:0 0 25px;font-size:clamp(3.2rem,7vw,7rem);line-height:.98}.result-summary,.manage-card,.action-review__card,.token-card,.withdrawal-function-card{border:1px solid var(--line);background:var(--surface);margin-block:25px;padding:22px}.result-summary>div,.manage-detail__summary>.appointment-summary>div,.action-review__grid>div{border-bottom:1px solid var(--line);grid-template-columns:150px 1fr;gap:16px;padding:9px 0;display:grid}.result-summary dt,.manage-detail__summary dt,.action-review__grid dt{color:var(--muted)}.result-summary dd,.manage-detail__summary dd,.action-review__grid dd{margin:0;font-weight:800}.result-actions,.action-review__buttons{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.result-actions{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;max-width:780px;display:grid}.result-actions form,.result-actions .button{width:100%}.result-actions form{display:flex}.result-actions .button{white-space:normal;min-height:56px}.result-actions .text-link{grid-column:1/-1;justify-self:start}.result-page .status-note{margin-top:26px}.booking-reference,.appointment-status{color:var(--accent-strong);font-weight:900}.manage-detail{padding-block:clamp(58px,8vw,104px)}.manage-detail__heading{justify-content:space-between;align-items:end;gap:32px;display:flex}.manage-detail__heading h1{overflow-wrap:anywhere;max-width:760px;margin:0;font-size:clamp(3.2rem,6.4vw,6.4rem);line-height:.98}.appointment-status{background:var(--surface);letter-spacing:.04em;border:1px solid;border-radius:999px;flex:none;align-items:center;gap:10px;min-height:44px;margin:0 0 8px;padding:10px 14px;font-size:1rem;display:inline-flex}.appointment-status>span{background:currentColor;border-radius:50%;width:9px;height:9px}.manage-help__grid,.manage-detail__grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.manage-detail__grid{border:1px solid var(--line);background:var(--surface);align-items:start;gap:0;margin-top:24px}.manage-detail__summary,.manage-actions{min-width:0;padding:clamp(22px,3vw,38px)}.manage-detail__summary>.appointment-summary{margin:0}.manage-detail__summary dd{overflow-wrap:anywhere}.booking-reference{border-top:1px solid var(--line);overflow-wrap:anywhere;margin:24px 0 0;padding-top:20px}.manage-actions{border-left:1px solid var(--line);background:var(--bg);align-self:stretch;gap:12px;margin:0;display:grid}.manage-actions .eyebrow{margin-bottom:6px}.manage-actions form{margin:0}.manage-action{width:100%;min-height:74px;color:var(--text);border:1px solid var(--line-strong);background:var(--surface);text-align:left;transition:border-color .2s var(--ease), background-color .2s var(--ease), transform .2s var(--ease);border-radius:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:14px 16px;display:grid}.manage-action:hover{border-color:var(--accent);background:var(--surface-2);transform:translateY(-1px)}.manage-action>span{gap:3px;min-width:0;font-size:1rem;font-weight:900;display:grid}.manage-action small{color:var(--muted);font-size:1rem;font-weight:500;line-height:1.45}.manage-action i{color:var(--accent);font-size:1.3rem;font-style:normal}.manage-action--danger{border-color:var(--danger)}.manage-action--danger>span,.manage-action--danger i{color:var(--danger)}.manage-actions .text-link{justify-self:start;margin-top:6px}.manage-security-note{border:1px solid var(--line);background:var(--surface-2);margin-top:18px;padding:18px 22px}.manage-security-note p{max-width:980px;color:var(--muted);margin:0;font-size:1rem;line-height:1.6}.manage-security-note strong{color:var(--text)}.manage-help__grid{align-items:start}.manage-help h2{margin-bottom:18px;font-size:clamp(2.4rem,5vw,4.8rem);line-height:.98}.manage-help p:not(.eyebrow){max-width:680px;color:var(--muted);font-size:1rem}.reschedule-form{border:1px solid var(--line);background:var(--surface);grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:0;display:grid;overflow:hidden}.action-review{padding-block:clamp(42px,6vw,76px) clamp(82px,9vw,120px);overflow-x:clip}.action-review__heading{max-width:900px;margin-bottom:clamp(26px,4vw,44px)}.action-review__heading h1{margin:0 0 22px;font-size:clamp(3rem,6vw,6rem);line-height:.94}.action-review__heading>p:last-child{max-width:720px;color:var(--muted);margin:0;font-size:1rem;line-height:1.6}.reschedule-form__current,.reschedule-form__new{min-width:0;padding:clamp(22px,3vw,38px)}.reschedule-form__current{border-right:1px solid var(--line);background:var(--surface-2)}.reschedule-form__new{background:var(--surface)}.reschedule-form__current .appointment-summary{margin:0}.reschedule-form__current .appointment-summary>div{border-bottom:1px solid var(--line);grid-template-columns:minmax(86px,.42fr) minmax(0,1fr);gap:12px;padding:9px 0;display:grid}.reschedule-form__current .appointment-summary>div:last-child{border-bottom:0}.reschedule-form__current dt{color:var(--muted)}.reschedule-form__current dd{overflow-wrap:anywhere;min-width:0;margin:0;font-weight:800}.reschedule-form__new>.form-field{max-width:360px;margin-bottom:24px}.reschedule-form__new .slot-panel{margin-bottom:0}.reschedule-form .action-review__buttons{align-items:stretch;margin-top:26px}.reschedule-form .action-review__buttons .button{white-space:normal;min-height:52px}.error-page__code{color:var(--accent);font-size:clamp(4rem,10vw,9rem);font-weight:1000;line-height:.8}.error-page__actions{flex-wrap:wrap;gap:10px;display:flex}.legal-section{padding-block:70px 110px}.legal-layout{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:60px;display:grid}.legal-nav{top:calc(var(--header-height) + 20px);gap:3px;display:grid;position:sticky}.legal-nav>strong,.legal-nav .eyebrow{margin-bottom:10px}.legal-nav a{min-height:44px;color:var(--muted);border-left:2px solid #0000;align-items:center;padding:8px 10px;font-size:.76rem;text-decoration:none;display:flex}.legal-nav a:hover,.legal-nav a.is-active{color:var(--text);border-color:var(--accent);background:var(--surface)}.legal-nav>span{color:var(--muted);margin-top:10px;font-size:.75rem}.legal-document{max-width:860px}.legal-document>section{scroll-margin-top:calc(var(--header-height) + 24px);margin-bottom:48px}.legal-document h2{letter-spacing:-.04em;margin:0 0 18px;font-size:clamp(1.8rem,3.5vw,3rem);line-height:1.05}.legal-document h3{margin-top:26px}.legal-document p,.legal-document li,.legal-document dd{color:var(--muted)}.legal-document a{color:var(--accent-strong)}.legal-document--numbered h2 span{color:var(--accent);font:900 .62rem/1 var(--sans);letter-spacing:.1em;margin-bottom:7px;display:block}.legal-toc,.legal-definition-list{border:1px solid var(--line);background:var(--surface);margin:0 0 42px;padding:18px}.legal-toc{gap:6px;display:grid}.legal-toc strong{margin-bottom:7px}.legal-toc a{min-height:34px}.legal-definition-list>div{border-bottom:1px solid var(--line);grid-template-columns:160px 1fr;gap:18px;padding:10px 0;display:grid}.legal-definition-list>div:last-child{border-bottom:0}.legal-definition-list dt{font-weight:900}.legal-definition-list dd{margin:0}.site-footer{border-top:1px solid var(--line);background:var(--surface);padding-block:60px 100px}.site-footer__grid{grid-template-columns:1.1fr 1fr 1fr .85fr;gap:35px;padding-block:45px;display:grid}.site-footer__brand{align-items:flex-start;gap:14px;display:flex}.site-footer__brand p,.site-footer__brand strong,.site-footer__brand span{display:block}.site-footer__brand span{color:var(--muted);margin-top:3px;font-size:.7rem}.site-footer__grid address,.site-footer__grid>div>a,.site-footer__grid>div>p:not(.footer-label){font-size:.78rem}.footer-hours{color:var(--muted);margin:10px 0 0;font-size:.75rem}.footer-hours div{justify-content:space-between;gap:12px;display:flex}.footer-hours dt,.footer-hours dd{margin:0}.footer-hours dd{font-weight:700}.site-footer__nav{align-content:start;gap:2px;display:grid}.site-footer__nav a{align-items:center;min-height:34px;font-size:.72rem;display:flex}.site-footer__fineprint{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:25px;padding-top:20px;font-size:.75rem;display:flex}.site-footer__fineprint p{margin:0}.floating-booking{z-index:1000;right:16px;bottom:var(--fixed-action-bottom);min-height:52px;color:var(--accent-ink);background:var(--accent);letter-spacing:.07em;text-transform:uppercase;border-radius:999px;align-items:center;gap:20px;padding:13px 19px;font-size:.75rem;font-weight:900;text-decoration:none;display:flex;position:fixed;box-shadow:0 14px 42px #00000059}.theme-toggle{z-index:1000;bottom:var(--fixed-action-bottom);width:82px;height:46px;color:var(--text);border:1px solid var(--line-strong);background:var(--surface);border-radius:999px;justify-content:space-around;align-items:center;padding:4px;display:flex;position:fixed;left:16px;box-shadow:0 14px 38px #0000004d}.theme-toggle>span:not(.sr-only){z-index:1;font-size:.9rem;position:relative}.theme-toggle:before{background:var(--accent);content:"";width:34px;height:34px;transition:transform .2s var(--ease);border-radius:50%;position:absolute;left:5px;transform:translate(37px)}html[data-theme=light] .theme-toggle:before{transform:translate(0)}.toast-region{z-index:1500;max-width:min(380px,100% - 40px);position:fixed;bottom:82px;right:20px}@media (width<=1050px){.site-nav{gap:15px}.site-nav a{font-size:.68rem}.staff-choices,.service-grid{grid-template-columns:1fr 1fr}}@media (width<=900px){:root{--header-height:68px}.site-nav{z-index:1;height:calc(100dvh - var(--header-height));border-bottom:1px solid var(--line);background:var(--bg);overscroll-behavior:contain;grid-auto-rows:min-content;align-content:start;padding:24px;display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 22px 42px #00000047}.site-nav.is-open{display:grid}.site-nav a{border-bottom:1px solid var(--line);min-height:54px;padding:8px 0;font-size:.82rem}.nav-toggle{justify-content:center;align-items:center;display:inline-flex}.home-hero__content,.section-heading--split,.craft-section__grid,.booking-story__grid,.home-faq__grid,.faq-layout,.visit-panel__grid,.service-explainer__grid,.about-story__grid,.contact-layout,.booking-header__grid,.manage-hero__grid,.review-layout,.result-page__grid,.withdrawal-page__grid,.error-page__grid,.manage-detail__grid,.legal-layout{grid-template-columns:1fr}.manage-actions{border-top:1px solid var(--line);border-left:0}.home-hero__content{align-content:end}.home-hero__side{max-width:600px}.salon-filmstrip{grid-template-rows:2fr 1fr 1fr;grid-template-columns:1fr 1fr;height:760px}.salon-filmstrip__large{grid-area:auto/1/auto/3}.salon-filmstrip__wide{grid-column:1/3}.craft-section figure,.service-explainer figure,.contact-layout figure,.visit-panel figure{aspect-ratio:4/3;min-height:0}.value-grid{grid-template-columns:1fr 1fr}.value-grid article:nth-child(2){border-right:0}.value-grid article:nth-child(-n+2){border-bottom:1px solid var(--line)}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:300px}.contact-options__grid,.date-slot-layout,.reschedule-form{grid-template-columns:1fr}.reschedule-form__current{border-right:0;border-bottom:1px solid var(--line)}.legal-nav{grid-template-columns:repeat(2,1fr);position:static}.legal-nav>strong,.legal-nav .eyebrow,.legal-nav>span{grid-column:1/-1}.site-footer__grid{grid-template-columns:1fr 1fr}}@media (width<=650px){:root{--shell:calc(100% - 28px)}body{font-size:16px}.site-header__inner{gap:10px}.section{padding-block:54px}.booking-header{padding-block:26px 30px}.manage-hero{padding-block:52px}.manage-hero h1,.result-page h1,.manage-detail__heading h1{font-size:clamp(3rem,15vw,4.6rem)}.booking-header__grid{gap:14px}.booking-header h1{font-size:clamp(2.65rem,12vw,3.6rem);line-height:.96}.booking-header h1>em{font-size:.62em;line-height:1}.booking-header__grid>p{max-width:36ch;font-size:.92rem;line-height:1.5}.booking-shell{padding-block:16px 96px}.booking-progress{margin-bottom:10px}.booking-step__heading{margin-bottom:22px}.booking-step__heading h2{font-size:clamp(2.25rem,11vw,3.25rem)}.action-review{padding-block:26px calc(74px + env(safe-area-inset-bottom,0px))}.action-review__heading{margin-bottom:22px}.action-review__heading h1{margin-bottom:16px;font-size:clamp(2.65rem,12vw,3.75rem)}.action-review__heading>p:last-child{font-size:.95rem}.reschedule-form{overflow:visible}.reschedule-form__current,.reschedule-form__new{padding:20px 16px}.reschedule-form__current .appointment-summary>div{grid-template-columns:minmax(82px,.38fr) minmax(0,1fr);gap:9px;padding:7px 0;font-size:.92rem}.reschedule-form__new>.form-field{max-width:none;margin-bottom:20px}.reschedule-form .action-review__buttons{flex-direction:column;margin-bottom:8px}.reschedule-form .action-review__buttons .button{width:100%}.manage-hero__grid{gap:34px}.token-card{padding:20px}.wordmark__text small,.header-booking{display:none}.home-hero{min-height:min(610px, calc(100svh - var(--header-height)))}.home-hero__content{gap:26px;padding-block:74px 30px}.home-hero h1{font-size:clamp(3.35rem,18vw,5.3rem)}.home-hero__side>p{font-size:.9rem}.home-facts__grid{grid-template-columns:1fr 1fr}.home-facts__grid>div{border-bottom:1px solid var(--line);padding:15px 12px}.home-facts__grid>div:nth-child(2){border-right:0}.home-facts__grid>div:first-child{padding-left:12px}.section-heading{margin-bottom:25px}.section-heading--split{gap:20px}.section-heading h2,.page-hero h1{font-size:clamp(2.8rem,14vw,4.4rem)}.page-hero__grid{grid-template-columns:1fr}.page-hero__index{display:none}.price-table-wrap{width:100%}.price-table th,.price-table td{overflow-wrap:anywhere;padding:15px 7px;line-height:1.3}.price-table thead th:first-child,.price-table tbody th{width:40%}.price-table thead th:nth-child(2),.price-table tbody td:nth-child(2){width:23%}.price-table thead th:nth-child(3),.price-table tbody td:nth-child(3){width:37%}.price-table thead strong{font-size:.9rem}.price-table thead span,.price-table td span{margin-top:3px;font-size:.78rem;line-height:1.35}.price-table tbody th{-webkit-hyphens:auto;hyphens:auto;font-size:.9rem}.price-table tbody td{font-size:1rem}.offer-bar{grid-template-columns:44px 1fr;gap:13px;padding:15px}.offer-bar>span{width:40px;height:40px}.offer-bar>a{grid-column:2;width:max-content}.salon-filmstrip{grid-template-rows:auto;grid-template-columns:1fr 1fr;height:auto;padding:5px}.salon-filmstrip figure,.salon-filmstrip__large,.salon-filmstrip__wide{aspect-ratio:1;grid-area:auto}.salon-filmstrip__large{aspect-ratio:4/3;grid-column:1/3}.craft-section__grid,.booking-story__grid,.home-faq__grid,.faq-layout,.visit-panel__grid,.service-explainer__grid,.contact-layout{gap:38px}.craft-section h2,.booking-story h2,.home-faq h2,.visit-panel h2,.service-explainer h2,.contact-panel h2{font-size:clamp(2.8rem,14vw,4.3rem)}.team-grid,.service-grid{grid-template-columns:1fr}.team-card{grid-template-columns:118px 1fr;display:grid}.team-card>.staff-portrait{aspect-ratio:auto;width:118px;height:100%;min-height:178px}.team-card__body{padding:15px}.team-card--compact{grid-template-columns:118px minmax(0,1fr);min-height:118px}.team-card--compact>.staff-portrait{aspect-ratio:1;object-position:var(--staff-photo-x,50%) var(--staff-photo-y,22%);width:118px;height:118px;min-height:0}.team-card--compact .team-card__body{align-items:center;min-width:0;padding:18px;display:flex}.team-card--compact h3{overflow-wrap:anywhere;font-size:clamp(1.15rem,5.6vw,1.45rem);line-height:1.18}.team-card__body>span{min-height:0}.service-copy-grid,.value-grid,.contact-form-grid,.staff-choices,.review-layout,.manage-help__grid,.manage-detail__grid{grid-template-columns:1fr}.review-layout{gap:12px}.review-card,.booking-rules{padding:16px}.value-grid article{border-right:0;border-bottom:1px solid var(--line);min-height:0}.value-grid article:last-child{border-bottom:0}.value-grid h3{margin-top:28px}.about-image-band{grid-template-columns:1fr 1fr;height:auto;padding:5px}.about-image-band img{aspect-ratio:3/4}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:auto}.gallery-grid figure,.gallery-grid__hero,.gallery-grid__wide{aspect-ratio:1;grid-area:auto}.gallery-grid__hero{aspect-ratio:4/3;grid-column:1/3}.gallery-grid img{position:absolute;inset:0}.booking-progress button{justify-content:center;min-height:48px;padding:7px}.booking-progress button strong{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.booking-stage{padding:20px 14px}.service-choices{grid-template-columns:1fr}.choice-card{grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:0;padding:14px}.choice-card__check{margin-top:0}.choice-card__content{min-width:0}.choice-card__category{margin-bottom:5px;font-size:.7rem}.choice-card__content strong{line-height:1.25}.choice-card__content small{font-size:.82rem;line-height:1.4}.choice-card__facts{text-align:right;grid-area:1/3;align-self:center;justify-items:end;gap:3px}.choice-card__facts strong{font-size:1rem;line-height:1.2}.choice-card__facts span{font-size:.78rem;line-height:1.3}.staff-choice{grid-template-columns:52px minmax(0,1fr) 18px}.slot-grid{grid-template-columns:repeat(3,1fr)}.contact-form-grid__wide{grid-column:auto}.booking-step__actions,.booking-step__actions--submit{flex-direction:column-reverse;align-items:stretch}.booking-step__actions .button{width:100%}.booking-step__actions--submit>div{text-align:left;max-width:none}.result-summary>div,.manage-detail__summary>.appointment-summary>div,.action-review__grid>div,.legal-definition-list>div{grid-template-columns:1fr;gap:2px}.review-card>div{grid-template-columns:minmax(86px,.42fr) minmax(0,1fr);gap:10px;padding-block:10px}.result-summary>div,.manage-detail__summary>.appointment-summary>div{grid-template-columns:minmax(88px,.4fr) minmax(0,1fr);gap:10px}.result-page__grid,.withdrawal-page__grid,.error-page__grid{grid-template-columns:1fr}.result-page__mark{width:78px;height:78px}.result-page,.withdrawal-page,.error-page,.manage-detail{padding-block:48px 72px}.result-page__grid{gap:28px}.result-actions{grid-template-columns:1fr}.result-actions .text-link{grid-column:auto}.manage-detail__heading{align-items:start;gap:20px;display:grid}.appointment-status{justify-self:start;margin:0}.manage-detail__summary,.manage-actions{padding:18px}.manage-security-note{padding:16px 18px}.legal-nav{grid-template-columns:1fr}.legal-nav>strong,.legal-nav .eyebrow,.legal-nav>span{grid-column:auto}.site-footer__grid{grid-template-columns:1fr}.site-footer__fineprint{flex-direction:column}.floating-booking{right:10px}.theme-toggle{width:68px;height:42px;left:10px}.theme-toggle:before{width:30px;height:30px;transform:translate(28px)}html[data-theme=light] .theme-toggle:before{transform:translate(0)}}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;box-shadow:0 0 0 6px var(--focus-outer)}.choice-card:focus-within,.staff-choice:focus-within,.slot-choice:focus-within span{outline:3px solid var(--focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){.button,.header-booking,.floating-booking,.theme-toggle,.choice-card,.staff-choice,.slot-choice span,.manage-action{border:2px solid buttontext}.slot-choice input:checked+span{outline:3px solid highlight}.choice-card:has(input:checked){outline:3px solid highlight}.staff-choice:has(input:checked){outline:3px solid highlight}}@media print{.site-header,.site-footer,.floating-booking,.theme-toggle,.staging-environment-banner,.button,.text-link{display:none!important}body{color:#000;background:#fff}main{width:100%}}
