/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.row-1{grid-row:1}.row-2{grid-row:2}.block{display:block}.hidden{display:none}.table{display:table}.border{border-style:var(--tw-border-style);border-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--forest-950:#122319;--forest-900:#1a3023;--forest-800:#294334;--herb:#879676;--sage:#b9c2ad;--copper:#a85d3d;--copper-light:#c9815f;--parchment:#f3ead8;--paper:#fbf6eb;--cream:#fffaf0;--ink:#243028;--muted:#687168;--line:#273e2f2b;--serif:"Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Noto Serif JP", Georgia, serif;--sans:"Yu Gothic", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif}.booking-change-request-panel,.reservation-change-request{box-sizing:border-box;background:#fffaf3;border:1px solid #9d684759;min-width:0;margin-top:1rem;padding:1rem}.booking-change-request-panel button,.reservation-change-request button{min-height:44px;font:inherit;background:0 0;border:1px solid;padding:.65rem .9rem}.booking-change-request-form,.booking-change-request-form label,.customer-reservation-requests article{min-width:0;max-width:100%}.booking-change-request-form label{display:block}.booking-change-request-form textarea{appearance:none;box-sizing:border-box;font:inherit;resize:vertical;background:#fffdf8;border:1px solid #9a8f80;border-radius:8px;width:100%;min-width:0;max-width:100%;min-height:7rem;margin-top:.4rem;padding:.75rem;font-size:16px;line-height:1.5;display:block}.booking-change-request-form textarea:focus{border-color:var(--copper);outline:none;box-shadow:0 0 0 2px #a85d3d2e}.booking-change-request-form textarea::placeholder{color:#766e64;opacity:1}.booking-change-request-types,.booking-change-request-actions,.reservation-change-request>div{flex-wrap:wrap;gap:.6rem;margin-top:.75rem;display:flex}.booking-change-request-types button[aria-pressed=true]{color:#fff;background:#173728}.reservation-change-request{gap:.4rem;display:grid}.reservation-change-request-cancel{border-color:#b05b48}.reservation-change-request strong{color:#9d4c38}.reservation-change-request p{white-space:pre-wrap;margin:.25rem 0}.reservation-change-request-link{margin:1rem 0;font-weight:600;display:inline-block}.booking-self-service-actions{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.booking-cancellation-fee-backdrop{z-index:1000;background:#18221c6b;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.booking-cancellation-fee-dialog{box-sizing:border-box;border:1px solid var(--line);width:min(100%,28rem);max-height:min(90dvh,42rem);color:var(--forest-950);background:#fffdf7;border-radius:12px;padding:1.25rem;overflow-y:auto;box-shadow:0 16px 48px #141e1733}.booking-cancellation-fee-dialog h3{font-family:var(--serif);margin:0 0 .8rem;font-size:1.35rem;font-weight:500}.booking-cancellation-fee-dialog p{line-height:1.65}.booking-cancellation-fee-dialog ul{margin:.8rem 0;padding-left:1.25rem;line-height:1.8}.booking-change-request-panel .booking-change-request-form{min-width:0}.booking-change-request-panel .booking-change-request-form>p{line-height:1.65}.reservation-success-new-booking{width:fit-content;color:var(--forest-800);margin:1rem auto 0;display:block}.reservation-manage-content{max-width:46rem;margin:0 auto;padding:2rem 1.25rem 4rem}.reservation-cancelled-success{border:1px solid var(--line);background:#fffdf7;border-radius:10px;margin-top:1.25rem;padding:1.25rem}.reservation-cancelled-success h2{font-family:var(--serif);margin:0 0 .8rem;font-weight:500}.reservation-cancelled-success p{margin:.45rem 0}.reservation-cancelled-warning{border-left:2px solid var(--copper);background:#a85d3d14;padding:.75rem}.reservation-manage-content:has(.reservation-cancelled-success)>.eyebrow{display:none}.reservation-manage-content:has(.reservation-cancelled-success)>h1{display:none}.reservation-manage-content:has(.reservation-cancelled-success)>p{display:none}.customer-reservation-requests article{background:#fffdf8;border:1px solid #d7cfc2;margin-top:1.5rem;padding:1rem}.reservation-manage-auth-options{border:1px solid var(--line);background:#fffdf8cc;margin-top:1.5rem;padding:1.25rem}.reservation-manage-auth-options>p{margin:0;font-size:1.05rem;font-weight:600}.reservation-manage-auth-options>div{gap:.75rem;margin-top:1rem;display:grid}.reservation-manage-auth-options .button{text-align:center;justify-content:center;align-items:center;min-height:52px;text-decoration:none;display:flex}@media (width<=700px){.reservation-change-request button,.booking-change-request-panel button{width:100%}.booking-change-request-types,.booking-change-request-actions,.reservation-change-request>div{grid-template-columns:1fr;display:grid}.booking-cancellation-fee-backdrop{padding:max(1rem, env(safe-area-inset-top)) 1rem max(1rem, env(safe-area-inset-bottom));align-items:start}.booking-cancellation-fee-dialog{width:100%;max-width:25rem;margin-top:min(14vh,5rem);padding:1.1rem}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);margin:0;font-size:15px;line-height:1.8}a{color:inherit;text-decoration:none}button,input,select,textarea{color:inherit;font:inherit}button,select{cursor:pointer}button:disabled{cursor:wait;opacity:.6}:focus-visible{outline:3px solid var(--copper-light);outline-offset:4px}.sr-only{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.site-header{border-bottom:1px solid var(--line);z-index:20;background:#fbf6ebf2;grid-template-columns:minmax(210px,1fr) auto auto;align-items:center;min-height:88px;padding:0 5vw;display:grid;position:sticky;top:0}.brand{flex-direction:column;width:fit-content;line-height:1;display:inline-flex}.brand-mark{color:var(--forest-950);font-family:Georgia, var(--serif);letter-spacing:.03em;font-size:30px}.brand-sub{color:var(--muted);letter-spacing:.15em;text-transform:uppercase;margin-top:6px;font-family:Georgia,serif;font-size:9px}.desktop-nav{gap:clamp(24px,3vw,48px);margin-right:clamp(24px,4vw,64px);display:flex}.desktop-nav a,.back-link{letter-spacing:.05em;font-size:13px;position:relative}.desktop-nav a:after,.text-link:after,.back-link:after{background:var(--copper);content:"";transform-origin:0;width:100%;height:1px;transition:transform .18s;position:absolute;bottom:-7px;left:0;transform:scaleX(0)}.desktop-nav a:hover:after,.text-link:hover:after,.back-link:hover:after{transform:scaleX(1)}.header-reserve{background:var(--forest-950);color:var(--cream);justify-content:space-between;align-items:center;gap:32px;min-height:48px;padding:0 20px;font-size:13px;transition:background .18s,transform .18s;display:flex}.header-reserve:hover{background:var(--copper);transform:translateY(-2px)}.hero{grid-template-columns:56% 44%;min-height:660px;display:grid}.hero-copy{background:linear-gradient(#a85d3d09 1px, transparent 1px), linear-gradient(90deg, #a85d3d09 1px, transparent 1px), var(--parchment);background-size:22px 22px;flex-direction:column;justify-content:center;align-items:flex-start;padding:90px clamp(48px,8vw,140px);display:flex}.eyebrow{color:var(--copper);letter-spacing:.2em;align-items:center;gap:14px;margin:0 0 26px;font-family:Georgia,serif;font-size:11px;display:flex}.eyebrow>span{background:currentColor;width:34px;height:1px}.hero h1,.reservation-intro h1{color:var(--forest-950);font-family:var(--serif);letter-spacing:.06em;margin:0;font-size:clamp(44px,5vw,80px);font-weight:400;line-height:1.35}.hero-lead{color:#465149;font-family:var(--serif);letter-spacing:.04em;margin:32px 0 0;font-size:16px}.hero-actions{align-items:center;gap:36px;margin-top:38px;display:flex}.button{letter-spacing:.06em;border:0;justify-content:space-between;align-items:center;gap:44px;min-height:52px;padding:0 22px;font-size:13px;transition:background .18s,color .18s,transform .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-copper{background:var(--copper);color:var(--cream)}.button-copper:hover{background:var(--forest-950)}.button-parchment{background:var(--parchment);color:var(--forest-950)}.button-parchment:hover{background:var(--copper);color:var(--cream)}.text-link{font-family:var(--serif);font-size:14px;position:relative}.hero-visual{background:radial-gradient(circle at 17% 17%, #ffffff14, transparent 2px) 0 0 / 21px 21px, var(--forest-900);color:var(--parchment);min-height:660px;position:relative;overflow:hidden}.botanical-orbit{border:1px solid #f3ead838;border-radius:50%;position:absolute}.botanical-orbit-one{width:530px;height:530px;top:-150px;right:-190px}.botanical-orbit-two{width:500px;height:500px;bottom:-250px;left:-170px}.herb-stem{transform-origin:bottom;border-left:1px solid #b9c2ada8;width:110px;height:290px;position:absolute}.herb-stem i{border:1px solid #b9c2ada8;border-radius:100% 0;width:72px;height:48px;margin:25px 0;display:block;position:relative;left:-1px;transform:rotate(-16deg)}.herb-stem i:nth-child(2n){border-radius:0 100%;left:-72px;transform:rotate(16deg)}.herb-stem-one{top:4%;right:12%;transform:rotate(24deg)}.herb-stem-two{bottom:-60px;left:14%;transform:rotate(-23deg)scale(.82)}.hero-label{text-align:center;white-space:nowrap;position:absolute;top:49%;left:50%;transform:translate(-50%,-50%)}.hero-label strong{font-family:Georgia, var(--serif);letter-spacing:.04em;font-size:clamp(64px,7vw,112px);font-weight:400;line-height:1;display:block}.hero-label>span:last-child{color:var(--sage);letter-spacing:.18em;margin-top:12px;font-family:Georgia,serif;font-size:10px;display:block}.hero-label-small{color:var(--copper-light);letter-spacing:.22em;margin-bottom:18px;font-family:Georgia,serif;font-size:10px;display:block}.hero-note{color:var(--sage);letter-spacing:.16em;font-family:Georgia,serif;font-size:10px;position:absolute;bottom:36px;left:38px}.intro-strip{background:var(--cream);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:110px;padding:24px 7vw;display:flex}.intro-strip p{color:var(--muted);margin:0}.intro-strip p span{color:var(--forest-950);font-family:var(--serif);margin-right:18px;font-size:18px}.intro-badge{border:1px solid var(--herb);color:var(--forest-800);letter-spacing:.15em;border-radius:50%;padding:13px 18px;font-family:Georgia,serif;font-size:10px}.section{padding:110px 6vw}.services-section{background:var(--paper)}.section-heading{grid-template-columns:1fr 1.2fr 1fr;gap:3vw;margin-bottom:58px;display:grid}.section-heading h2,.workshop-heading h2,.owner-copy h2,.access-section h2,.closing-cta h2{color:var(--forest-950);font-family:var(--serif);letter-spacing:.06em;margin:0;font-size:clamp(32px,3.3vw,52px);font-weight:400;line-height:1.45}.section-heading>p:last-child{color:var(--muted);margin:7px 0 0}.service-grid{border-left:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.service-card{border-right:1px solid var(--line);min-height:430px;padding:32px;transition:background .2s,transform .2s}.service-card:hover{background:var(--cream);transform:translateY(-3px)}.service-meta{color:var(--copper);letter-spacing:.16em;justify-content:space-between;font-family:Georgia,serif;font-size:10px;display:flex}.service-card h3{font-family:var(--serif);letter-spacing:.07em;margin:62px 0 16px;font-size:28px;font-weight:400}.service-card>p{color:var(--muted);min-height:54px}.service-card ul{flex-wrap:wrap;gap:8px;margin:32px 0;padding:0;list-style:none;display:flex}.service-card li{border:1px solid var(--line);color:var(--forest-800);border-radius:999px;padding:9px 12px;font-size:12px;line-height:1}.service-card>a{color:var(--copper);font-family:var(--serif);justify-content:space-between;font-size:13px;display:flex;position:absolute;bottom:26px}.service-card{position:relative}.workshop-section{background:var(--forest-950);color:var(--parchment);grid-template-columns:.8fr 1.2fr;gap:8vw;display:grid}.eyebrow-light{color:var(--copper-light)}.workshop-heading h2{color:var(--parchment)}.workshop-heading>p:not(.eyebrow){color:var(--sage);max-width:460px;margin:28px 0 38px}.workshop-list{border-top:1px solid #f3ead833}.workshop-card{border-bottom:1px solid #f3ead833;grid-template-columns:105px 1fr 36px;gap:28px;padding:28px 0;transition:padding .18s;display:grid}.workshop-card:hover{padding-left:10px}.workshop-date span,.workshop-date strong{display:block}.workshop-date span{color:var(--copper-light);font-family:Georgia,serif;font-size:13px}.workshop-date strong{font-family:var(--serif);margin-top:7px;font-size:20px;font-weight:400}.workshop-venue{color:var(--sage);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:11px}.workshop-card h3{font-family:var(--serif);letter-spacing:.04em;margin:0;font-size:22px;font-weight:400}.workshop-card h3+p{color:var(--sage);margin:9px 0 0;font-size:13px}.workshop-foot{color:var(--sage);gap:20px;margin-top:14px;font-size:11px;display:flex}.workshop-card>a{border:1px solid #f3ead866;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;margin-top:16px;transition:background .18s,color .18s;display:flex}.workshop-card>a:hover{background:var(--copper);border-color:var(--copper)}.owner-section{background:var(--parchment);grid-template-columns:1fr 1fr;gap:10vw;display:grid}.owner-wordmark{background:radial-gradient(circle at 50% 50%, #a85d3d14, transparent 60%), var(--cream);box-shadow:inset 0 0 0 12px var(--cream), inset 0 0 0 13px #573e2c40;border:1px solid #573e2c59;flex-direction:column;justify-content:center;align-items:center;min-height:350px;display:flex;transform:rotate(-1.2deg)}.owner-wordmark span{color:#4a372c;font-family:Georgia, var(--serif);font-size:78px}.owner-wordmark small{color:#4a372c;letter-spacing:.12em;font-family:Georgia,serif;font-size:11px}.owner-copy{align-self:center}.owner-copy>p:not(.eyebrow){color:var(--muted);max-width:560px;margin:28px 0 0}.owner-sign{font-family:var(--serif);color:var(--forest-800)!important}.owner-shirasu-intro{border-left:2px solid var(--copper);gap:6px;margin-top:34px;padding:4px 0 4px 20px;display:grid}.owner-shirasu-intro p,.shirasu-visit-notice>p:first-child{color:var(--copper);letter-spacing:.16em;margin:0;font-family:Georgia,serif;font-size:9px;font-weight:700}.owner-shirasu-intro h3{font-family:var(--serif);margin:0;font-size:21px;font-weight:400}.owner-shirasu-intro>span{color:var(--muted);font-size:12px}.owner-shirasu-intro a{color:var(--copper);text-underline-offset:4px;width:fit-content;margin-top:6px;font-size:12px;text-decoration:underline}.access-section{background:var(--paper);border-bottom:1px solid var(--line);grid-template-columns:.7fr 1.2fr .7fr;align-items:start;gap:5vw;display:grid}.access-details{grid-template-columns:1fr 1fr;gap:30px;padding-top:48px;display:grid}.access-details p{overflow-wrap:anywhere;margin:0}.access-links{padding-top:48px;display:grid}.access-links a{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:48px;padding:12px 0;display:flex}.access-map{background:var(--parchment);border:1px solid var(--line);grid-column:1/-1;height:340px;margin-top:8px;overflow:hidden}.access-map iframe{border:0;width:100%;height:100%;display:block}.closing-cta{background:var(--cream);text-align:center;flex-direction:column;align-items:center;padding:100px 5vw;display:flex}.closing-cta>p{color:var(--copper);letter-spacing:.22em;font-family:Georgia,serif;font-size:10px}.closing-cta .button{margin-top:36px}.site-footer{background:var(--forest-950);color:var(--sage);justify-content:space-between;align-items:end;padding:48px 5vw;display:flex}.footer-brand .brand-mark{color:var(--parchment)}.footer-brand .brand-sub{color:var(--sage)}.site-footer p,.site-footer>a{letter-spacing:.14em;font-family:Georgia,serif;font-size:10px}.staging-home{--forest-950:#f3ead8;--forest-800:#d8dfd1;--parchment:#1b3023;--paper:#122319;--cream:#203629;--ink:#f3ead8;--muted:#c1cbbb;--line:#f3ead838;background:var(--paper);color:var(--ink)}.staging-home .site-header{background:#122319f5}.staging-home .hero-copy{background:linear-gradient(#f3ead809 1px, transparent 1px), linear-gradient(90deg, #f3ead809 1px, transparent 1px), var(--parchment)}.staging-environment-badge{color:var(--ink);letter-spacing:.2em;border:1px solid #f3ead894;margin:0 0 14px;padding:4px 9px;font-family:Georgia,serif;font-size:9px;line-height:1.4}.staging-home .hero-lead{color:#d3ddcf}.staging-home .hero-visual{color:#f3ead8}.staging-home .workshop-section{color:#f3ead8;background:#203629}.staging-home .workshop-heading h2{color:#f3ead8}.staging-home .owner-wordmark{box-shadow:inset 0 0 0 12px var(--cream), inset 0 0 0 13px #f3ead847;border-color:#f3ead861}.staging-home .owner-wordmark span,.staging-home .owner-wordmark small{color:var(--ink)}.staging-home .site-footer,.staging-home .footer-brand .brand-sub{color:#536050}.reservation-page{background:var(--parchment);min-height:100vh}.reservation-header{position:relative}.reservation-layout{grid-template-columns:minmax(300px,.72fr) minmax(560px,1.28fr);min-height:calc(100vh - 88px);display:grid}.reservation-intro{background:radial-gradient(circle at 18% 12%, #ffffff0f, transparent 2px) 0 0 / 22px 22px, var(--forest-950);color:var(--sage);padding:90px 7vw}@media (width>=901px){.reservation-intro{align-self:stretch;padding:0}.reservation-intro-content{padding:90px 7vw;position:sticky;top:24px}}.reservation-intro h1{color:var(--parchment);font-size:clamp(48px,5vw,74px)}.reservation-intro>p:not(.eyebrow){max-width:420px;margin:30px 0 56px}.reservation-intro dl{border-top:1px solid #f3ead833}.reservation-intro dl>div{border-bottom:1px solid #f3ead833;grid-template-columns:90px 1fr;padding:17px 0;display:grid}.reservation-intro dt{color:var(--copper-light);letter-spacing:.14em;font-family:Georgia,serif;font-size:10px}.reservation-intro dd{color:var(--parchment);margin:0}.reservation-panel{background:var(--paper);min-width:0;padding:72px clamp(36px,7vw,110px)}.reservation-panel:has(.reservation-success)>.reservation-manage-entry{display:none}.reservation-page:has(.reservation-success){min-height:0}.reservation-layout:has(.reservation-success){grid-template-columns:minmax(0,1fr);min-height:0}.reservation-panel:has(.reservation-success){padding:32px clamp(24px,6vw,88px) 40px}.reservation-success{max-width:760px;margin:0 auto}:is(.reservation-layout:has(.reservation-success)>.reservation-intro,.reservation-panel:has(.reservation-success)>.reservation-panel-heading,.reservation-panel:has(.reservation-success)>.reservation-manage-entry){display:none}.reservation-panel,.reservation-panel *{box-sizing:border-box}.reservation-form,.salon-reservation-selection,.reservation-auth-step,.reservation-active-step,.reservation-step-summary,.reservation-selected-menu-card,.reservation-final-review,.reservation-before-visit-grid,.reservation-guidance-card{min-width:0;max-width:100%}.reservation-step-indicator{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:22px 0 18px;display:grid}.reservation-mobile-progress{display:none}.reservation-step-indicator>span{color:#65716a;text-align:center;flex-direction:column;align-items:center;gap:6px;min-width:0;font-size:12px;font-weight:600;display:flex}.reservation-step-indicator b{color:var(--forest-950);background:#ebe7db;border:1px solid #c9c4b8;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.reservation-step-indicator .is-current,.reservation-step-indicator .is-done{color:var(--forest-950)}.reservation-step-indicator .is-current b,.reservation-step-indicator .is-done b{background:var(--forest-950);border-color:var(--forest-950);color:var(--paper)}.reservation-active-step{margin:18px 0 20px}.reservation-step-eyebrow{color:var(--copper);letter-spacing:.12em;margin:0 0 4px;font-size:12px;font-weight:700}.reservation-active-step h2{color:var(--forest-950);font-family:var(--serif);margin:0;font-size:26px;font-weight:600;line-height:1.35}.reservation-step-summary,.reservation-selected-menu-card{border:1px solid var(--line);background:#b9c2ad1f;justify-content:space-between;align-items:center;gap:14px;margin:10px 0;padding:12px 14px;display:flex}.reservation-step-summary>div,.reservation-selected-menu-card>div{overflow-wrap:anywhere;gap:3px;min-width:0;display:grid}.reservation-step-summary strong,.reservation-selected-menu-card strong{color:var(--forest-950);font-size:14px;font-weight:750}.reservation-step-summary span,.reservation-selected-menu-card span{color:var(--forest-950);font-size:15px;font-weight:600}.reservation-step-summary small,.reservation-selected-menu-card small{color:#56625b;font-size:13px;font-weight:550}.reservation-step-summary button,.reservation-selected-menu-card button{flex:none;min-height:44px}.reservation-step-action{width:100%;min-height:54px;margin-top:18px}.reservation-inline-update{border-left:3px solid var(--copper);color:var(--forest-950);background:#f1eadb;margin:12px 0;padding:12px 14px;font-weight:600}.reservation-auth-step{gap:14px;display:grid}.reservation-auth-complete-summary{border:1px solid var(--line);color:var(--forest-950);background:#b9c2ad24;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;min-height:48px;padding:10px 14px;display:flex}.reservation-auth-complete-summary strong{font-weight:700}.reservation-auth-complete-summary a{color:var(--forest-800);font-weight:650}.reservation-customer-summary{border:1px solid var(--line);background:#f7f3e9;gap:8px;padding:18px;display:grid}.reservation-customer-summary strong{font-size:20px;font-weight:700}.reservation-customer-summary span,.reservation-customer-summary small{overflow-wrap:anywhere;font-size:16px;font-weight:550}.reservation-final-review{border:1px solid var(--line);background:#f7f3e9;margin:20px 0;padding:18px}.reservation-final-review h3{font-family:var(--serif);margin:0 0 12px;font-size:21px}.reservation-final-review dl{gap:0;margin:0;display:grid}.reservation-final-review dl>div{border-top:1px solid var(--line);grid-template-columns:minmax(92px,.4fr) minmax(0,1fr);gap:8px 16px;padding:11px 0;display:grid}.reservation-final-review dt{color:#56625b;font-weight:650}.reservation-final-review dd{color:var(--forest-950);overflow-wrap:anywhere;margin:0;font-weight:650}.reservation-review-actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.reservation-review-actions button{min-height:44px}.reservation-form [hidden]{display:none!important}.reservation-panel-heading{border-bottom:1px solid var(--line);align-items:start;gap:28px;padding-bottom:28px;display:flex}.reservation-panel-heading>span{color:var(--copper);font-family:Georgia,serif}.reservation-panel-heading p,.admin-panel-heading p{color:var(--copper);letter-spacing:.18em;margin:0;font-family:Georgia,serif;font-size:10px}.reservation-panel-heading h2,.reservation-success h2{font-family:var(--serif);letter-spacing:.05em;margin:5px 0 0;font-size:30px;font-weight:400}.reservation-manage-entry{color:var(--forest-950);background:#b76f4414;border:1px solid #b76f4459;justify-content:space-between;align-items:center;gap:16px;min-height:54px;margin:24px 0 0;padding:12px 18px;text-decoration:none;display:flex}.reservation-manage-entry strong{font-weight:700}.reservation-manage-entry span{color:var(--copper-dark);font-size:.9em}.reservation-manage-entry-inline{margin:12px 0 0}.reservation-availability-gate{border:1px solid var(--line);background:#b9c2ad24;gap:12px;margin-top:24px;padding:22px;display:grid}.reservation-availability-gate h3,.reservation-availability-gate p{margin:0}.reservation-first-visit-actions{flex-wrap:nowrap;gap:10px;display:flex}.reservation-first-visit-actions .button{white-space:normal;flex:1 1 0;min-height:54px;font-size:16px;font-weight:650}.reservation-first-visit-choice{color:var(--forest-950);cursor:pointer;text-align:center;background:#fffdf8;border:1px solid #1f3b2e66;padding:12px 16px;line-height:1.35;transition:background-color .14s,border-color .14s,transform .14s;box-shadow:0 2px #1f3b2e14}.reservation-first-visit-choice:hover,.reservation-first-visit-choice:focus-visible{border-color:var(--forest-800);outline-offset:2px;outline:3px solid #31513933}.reservation-first-visit-choice:active{transform:translateY(1px)}.reservation-first-visit-choice.is-selected{border-color:var(--forest-800);box-shadow:inset 0 0 0 1px var(--forest-800);background:#e8eee4}.reservation-availability-gate h3{scroll-margin-block:24vh}.reservation-first-visit-summary{border:1px solid var(--line);background:#b9c2ad29;justify-content:space-between;align-items:center;min-height:52px;margin-top:18px;padding:8px 14px;display:flex}.reservation-first-visit-summary>span{font-size:15px;font-weight:600}.reservation-first-visit-summary strong{color:var(--copper-dark);margin-left:4px;font-weight:700}.reservation-first-visit-summary button{color:var(--forest-800);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;min-width:56px;min-height:44px;font-size:15px;font-weight:700;text-decoration:underline}.reservation-first-visit-notice{border-left:3px solid var(--copper);background:#b76f4417;margin:24px 0 0;padding:14px 16px;line-height:1.7}.reservation-form{padding-top:40px}.kind-selector{border:0;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 36px;padding:0;display:grid}.kind-selector legend{font-family:var(--serif);margin-bottom:12px;font-size:14px}.kind-selector label{cursor:pointer;position:relative}.kind-selector input{opacity:0;position:absolute}.kind-selector label>span{border:1px solid var(--line);flex-direction:column;min-height:86px;padding:16px 18px;transition:background .18s,border-color .18s;display:flex}.kind-selector label>span strong{font-family:var(--serif);font-size:16px;font-weight:400}.kind-selector label>span{color:var(--muted);font-size:12px}.kind-selector input:checked+span{background:var(--forest-950);border-color:var(--forest-950);color:var(--parchment)}.kind-selector input:focus-visible+span{outline:3px solid var(--copper-light);outline-offset:3px}.form-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.form-field{flex-direction:column;gap:8px;display:flex}.form-field>span,.add-workshop label{color:var(--forest-800);font-family:var(--serif);font-size:13px}.form-field input,.form-field select,.form-field textarea,.add-workshop input,.add-workshop select,.add-workshop textarea{border:1px solid var(--line);background:0 0;border-radius:0;width:100%;min-height:50px;padding:12px 14px}.form-field textarea,.add-workshop textarea{resize:vertical}.form-field-wide{grid-column:1/-1}.form-field small{color:var(--copper)}.reservation-window-notice{font-size:11px;line-height:1.65;display:grid;color:var(--forest-800)!important}.reservation-window-notice span{color:var(--muted)}.customer-fields{border-top:1px solid var(--line);margin-top:36px;padding-top:36px}.otp-email-field>label{color:var(--forest-800);font-family:var(--serif);font-size:13px}.otp-email-row,.otp-code-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.otp-email-row input[readonly]{color:var(--forest-800);background:#50604d14}.otp-secondary-button,.otp-verify-button{border:1px solid var(--forest-800);min-width:138px;padding:0 18px}.otp-secondary-button{color:var(--forest-800);background:0 0}.otp-verify-button{background:var(--forest-800);color:var(--parchment)}.otp-message,.otp-message-success{margin:0;font-size:11px}.line-auth-field{border:1px solid var(--sage)}@supports (color:color-mix(in lab, red, red)){.line-auth-field{border:1px solid color-mix(in srgb, var(--sage) 55%, transparent)}}.line-auth-field{background:var(--sage);border-radius:14px}@supports (color:color-mix(in lab, red, red)){.line-auth-field{background:color-mix(in srgb, var(--sage) 10%, white)}}.line-auth-field{padding:16px 18px}.line-auth-field p{color:var(--muted);margin:6px 0 0}.line-auth-field .line-friend-notice{color:#7d3426;font-weight:600}.otp-message{color:#7d3426}.otp-message-success{color:var(--forest-800)}.form-submit{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:34px;padding-top:30px;display:flex}.reservation-before-visit{border:1px solid var(--line);background:#b9c2ad1a;margin-top:28px;padding:18px 20px}.reservation-before-visit>h2{font-family:var(--serif);margin:0 0 14px;font-size:18px;font-weight:650}.reservation-before-visit-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:16px 20px;display:grid}.reservation-guidance-card{background:#fffdf8b8;border:1px solid #4c5b4933;grid-template-rows:auto auto;align-content:start;gap:10px;min-width:0;padding:18px;display:grid}.reservation-guidance-card h3,.reservation-guidance-card p{margin:0}.reservation-guidance-card h3{color:var(--forest-950);font-family:var(--serif);font-size:15px;font-weight:700;line-height:1.45}.reservation-dog-notice p,.reservation-dog-notice strong{align-self:start;font-size:13px;line-height:1.75}.reservation-dog-notice strong{color:#7d3426;font-weight:600}.reservation-dog-notice a{color:var(--copper);text-underline-offset:4px;width:fit-content;margin-top:4px;font-size:13px;font-weight:650;text-decoration:underline}.reservation-policy-card .cancellation-policy-compact{text-align:left;background:0 0;border:0;max-width:none;margin:0;padding:0}.reservation-policy-card .cancellation-policy dl{grid-template-columns:repeat(2,minmax(0,1fr))}.reservation-policy-card .cancellation-policy dl>div{align-items:center;gap:8px;padding:9px 10px 9px 0}.reservation-policy-card .cancellation-policy dl>div:nth-child(2n){padding-left:10px}.reservation-policy-card .cancellation-policy dt,.reservation-policy-card .cancellation-policy dd{font-size:14px;font-weight:650}@media (width<=640px){.reservation-availability-gate{padding:16px}.reservation-first-visit-actions{grid-template-columns:1fr;display:grid}.reservation-first-visit-actions .button{width:100%;min-height:54px}.reservation-first-visit-summary{margin-top:14px;padding:6px 10px}.reservation-first-visit-summary>span,.reservation-first-visit-summary button{font-size:14px}.reservation-before-visit{margin-top:20px;padding:14px}.reservation-before-visit-grid{grid-template-columns:1fr;gap:10px}.reservation-guidance-card{gap:8px;padding:14px}.reservation-guidance-card h3{font-size:16px}.reservation-dog-notice p,.reservation-dog-notice strong{font-size:14px}.reservation-policy-card .cancellation-policy dl{grid-template-columns:1fr}.reservation-policy-card .cancellation-policy dl>div:nth-child(2n){padding-left:0;padding-right:0}.reservation-policy-card .cancellation-policy dl>div{width:min(100%,220px)}}.cancellation-policy{border:1px solid var(--line);background:#f3ead86b;margin-top:22px;padding:22px}.cancellation-policy>p{color:var(--copper);letter-spacing:.15em;margin:0 0 7px;font-family:Georgia,serif;font-size:9px;font-weight:700}.cancellation-policy h2{font-family:var(--serif);margin:0 0 14px;font-size:19px;font-weight:400}.cancellation-policy dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;display:grid}.cancellation-policy-basis{color:#4f5c54;margin:0 0 8px;font-size:13px;font-weight:600;line-height:1.5}.cancellation-policy dl>div{border-top:1px solid var(--line);justify-content:space-between;gap:12px;padding:10px 12px 10px 0;display:flex}.cancellation-policy dl>div:nth-child(2n){padding-left:12px;padding-right:0}.cancellation-policy dt,.cancellation-policy dd,.cancellation-policy small{margin:0;font-size:12px;line-height:1.6}.cancellation-policy dd{color:var(--forest-800);text-align:right;white-space:nowrap;font-weight:700}.cancellation-policy dt{white-space:nowrap}.cancellation-policy>small{color:#68746d;margin-top:12px;display:block}.cancellation-policy-compact{text-align:left;max-width:520px;margin:22px auto 0}.form-submit p{color:var(--muted);max-width:330px;margin:0;font-size:11px}.form-error{color:#7d3426;background:#f5ded7;margin-top:20px;padding:12px 16px}.reservation-success{border:1px solid var(--line);text-align:center;margin:0 auto;padding:60px}.reservation-success>span{color:var(--copper);letter-spacing:.2em;font-family:Georgia,serif;font-size:10px}.reservation-success p{color:var(--muted)}.reservation-success button{border:0;border-bottom:1px solid var(--copper);color:var(--copper);background:0 0;margin-top:20px}.admin-page{background:#f2eee5;min-height:100vh;padding-bottom:80px}.admin-header{background:var(--forest-950);color:var(--parchment);justify-content:space-between;align-items:center;min-height:78px;padding:0 4vw;display:flex}.admin-header>div{align-items:center;gap:22px;display:flex}.admin-header .brand-mark{color:var(--parchment);font-size:25px}.admin-header .brand-sub{color:var(--sage)}.admin-divider{background:#f3ead840;width:1px;height:32px}.admin-header p,.admin-account{color:var(--sage);font-size:12px}.admin-account a{color:var(--parchment);border-left:1px solid #f3ead840;padding-left:22px}.admin-welcome{justify-content:space-between;align-items:end;padding:50px 4vw 30px;display:flex}.admin-welcome p{color:var(--copper);letter-spacing:.18em;margin:0;font-family:Georgia,serif;font-size:10px}.admin-welcome h1{font-family:var(--serif);margin:4px 0 0;font-size:34px;font-weight:400}.admin-welcome>a{border-bottom:1px solid var(--line);font-size:12px}.admin-stats{grid-template-columns:repeat(3,1fr);gap:14px;padding:0 4vw 24px;display:grid}.admin-stat-card{background:var(--paper);border:1px solid var(--line);color:inherit;cursor:pointer;font:inherit;text-align:left;grid-template-columns:1fr auto;padding:24px;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.admin-stat-card:hover{border-color:var(--copper)}@supports (color:color-mix(in lab, red, red)){.admin-stat-card:hover{border-color:color-mix(in srgb, var(--copper) 62%, var(--line))}}.admin-stat-card:hover{transform:translateY(-2px)}.admin-stat-card:focus-visible{outline:3px solid var(--copper)}@supports (color:color-mix(in lab, red, red)){.admin-stat-card:focus-visible{outline:3px solid color-mix(in srgb, var(--copper) 35%, transparent)}}.admin-stat-card:focus-visible{outline-offset:2px}.admin-stat-card[aria-pressed=true]{border-color:var(--copper);box-shadow:inset 0 0 0 1px var(--copper), 0 10px 28px #63492b17}.admin-stat-card-attention{border-color:var(--copper)}@supports (color:color-mix(in lab, red, red)){.admin-stat-card-attention{border-color:color-mix(in srgb, var(--copper) 58%, var(--line))}}.admin-stat-card-attention>span,.admin-stat-card-attention small{color:var(--copper);font-weight:600}.admin-stat-card>span{color:var(--muted);font-size:12px}.admin-stats strong{color:var(--forest-950);grid-row:span 2;font-family:Georgia,serif;font-size:38px;font-weight:400}.admin-stats small{color:var(--copper)}.admin-add-reservation{margin:0 4vw 24px}.admin-add-reservation>summary{cursor:pointer;font-family:var(--serif);padding:20px 24px;font-size:18px}.admin-add-reservation[open]>summary{border-bottom:1px solid var(--line)}.admin-add-reservation>form{gap:20px;padding:24px;display:grid}.admin-add-reservation>form>fieldset{border-bottom:1px solid #273e2f3d;padding-bottom:14px}.admin-add-reservation fieldset{border:0;flex-wrap:wrap;gap:12px 24px;margin:0;padding:0;display:flex}.admin-add-reservation legend{color:var(--forest-800);width:100%;margin-bottom:8px;font-size:13px;font-weight:700}.admin-add-reservation fieldset label,.admin-reservation-options label{align-items:center;gap:8px;display:flex}.admin-reservation-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.admin-reservation-fields label{color:var(--forest-900);flex-direction:column;gap:6px;min-width:0;font-size:13px;font-weight:700;display:flex}.admin-reservation-fields input,.admin-reservation-fields select,.admin-reservation-fields textarea,.admin-customer-search input{appearance:none;box-sizing:border-box;color:var(--forest-950);background:#fffdf8;border:1px solid #938a7d;border-radius:8px;width:100%;min-width:0;min-height:48px;padding:10px 12px;font-size:16px}.admin-reservation-fields input:focus,.admin-reservation-fields textarea:focus,.admin-customer-search input:focus{border-color:var(--copper);outline:none;box-shadow:0 0 0 2px #a85d3d24}.admin-reservation-fields input,.admin-reservation-fields textarea{appearance:none;box-sizing:border-box;color:var(--forest-950);background:#fffdf8;border:1px solid #938a7d;border-radius:8px;min-height:48px;padding:10px 12px;font-size:16px;font-weight:500;line-height:1.5}.admin-reservation-fields textarea{resize:vertical;min-height:96px}.admin-reservation-notes{grid-column:1/-1}.admin-reservation-options{flex-wrap:wrap;gap:12px 24px;display:flex}.admin-customer-search>div{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.admin-customer-search>div label{grid-column:1/-1}.admin-customer-search>div button,.admin-customer-search li button{border:1px solid var(--line);color:inherit;cursor:pointer;background:0 0}.admin-customer-search>div button{color:var(--forest-900);border-color:#273e2f61;border-radius:8px;min-height:48px;padding:0 18px;font-weight:700}.admin-customer-search ul{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.admin-customer-search li button{text-align:left;background:#fffdf8;border-color:#273e2f4d;border-radius:8px;gap:3px;width:100%;padding:12px;display:grid}.admin-customer-search li span,.admin-customer-search li small{color:#555f56;overflow-wrap:anywhere}.admin-form-message{border:1px solid #a85d3d57;border-left:3px solid var(--copper);color:var(--forest-900);background:#a85d3d12;border-radius:7px;margin:0;padding:10px 12px;font-size:14px;font-weight:600}.admin-form-message:empty{display:none}.admin-add-reservation>form>.button{justify-content:center;justify-self:start}.admin-content-grid{grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);gap:18px;padding:0 4vw;display:grid}.admin-panel{background:var(--paper);border:1px solid var(--line);scroll-margin-top:20px;transition:border-color .16s,box-shadow .16s}.admin-panel-active{border-color:var(--copper);box-shadow:0 12px 32px #63492b14}.admin-panel-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:80px;padding:18px 22px;display:flex}.admin-panel-heading h2{font-family:var(--serif);margin:0;font-size:21px;font-weight:400}.admin-panel-heading select{border:1px solid var(--line);background:0 0;min-height:38px;padding:0 12px}.admin-reservation-view-toggle{gap:4px;display:flex}.admin-reservation-view-toggle button{background:var(--cream);border:1px solid var(--line);color:var(--forest-900);min-height:38px;padding:6px 12px}.admin-reservation-view-toggle button[aria-pressed=true]{background:var(--forest-900);color:var(--cream)}.reservation-table-wrap{overflow-x:auto}.admin-pending-reservations{border:2px solid #a85d3d52;border-radius:14px;margin:20px 0;padding:16px}.admin-pending-reservations h3,.admin-month-calendar h3,.admin-selected-day h3{margin:0}.admin-calendar-controls{gap:6px;display:flex}.admin-calendar-controls button{background:var(--cream);border:1px solid var(--line);color:var(--forest-900);border-radius:7px;min-width:38px;min-height:38px;padding:7px 10px}.admin-calendar-weekdays,.admin-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.admin-calendar-weekdays{color:var(--muted);text-align:center;margin:14px 0 6px;font-size:12px}.admin-calendar-day{background:var(--cream);border:1px solid var(--line);color:var(--forest-950);border-radius:10px;flex-direction:column;align-items:center;gap:3px;min-height:78px;padding:8px 4px;display:flex}.admin-calendar-day span,.admin-calendar-day small{color:var(--muted);font-size:11px}.admin-calendar-day.has-reservations span{color:var(--copper);font-size:13px;font-weight:800}.admin-calendar-day.is-closed{color:var(--muted);background:#6c635614}.admin-calendar-day.is-closed span{color:var(--muted);font-weight:700}.admin-calendar-day small{color:#8b4f32;font-weight:700}.calendar-short-label{display:none}.admin-calendar-day .admin-calendar-completion{color:#8b3f2d;background:#a64f2a24;border:1px solid #a64f2a57;border-radius:999px;padding:2px 7px;font-size:12px;font-weight:800}.admin-calendar-day.is-selected .admin-calendar-completion{color:#fff0df;background:#ffdcbe33;border-color:#ffdcbe94}.admin-calendar-day.is-today{box-shadow:inset 0 0 0 2px #233a3159}.admin-calendar-day.is-selected{background:var(--forest-900);color:var(--cream)}.admin-calendar-day.is-selected span,.admin-calendar-day.is-selected small{color:#fffaf0db}.admin-calendar-day.is-selected.has-reservations span{color:#f0c09b}.reservation-completion-pending{color:#8b4f32;background:#a85d3d1f;border-radius:999px;margin-top:6px;padding:4px 8px;font-size:11px;display:inline-block}.admin-calendar-empty{min-height:78px}.admin-selected-day{margin-top:24px}.admin-calendar-hint{color:var(--muted);margin:12px 0}.reservation-table{border-collapse:collapse;width:100%;min-width:720px}.reservation-table th,.reservation-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:17px 20px}.reservation-table th{color:var(--muted);letter-spacing:.1em;font-size:10px;font-weight:400}.reservation-table td{font-size:12px}.reservation-table td strong,.reservation-table td span,.reservation-table td small{display:block}.reservation-table td small,.reservation-table td span{color:var(--muted)}.reservation-contact{color:var(--muted);overflow-wrap:anywhere;line-height:1.55;text-decoration:none;display:block}.reservation-contact:hover{color:var(--copper);text-underline-offset:2px;text-decoration:underline}.reservation-customer-link{color:var(--forest-950);text-underline-offset:3px;font-weight:700;text-decoration:underline;display:block}.reservation-source,.reservation-unlinked{border-radius:999px;width:fit-content;margin-top:4px;padding:2px 7px;font-size:9px!important}.reservation-source{background:#e4eadf;color:#315139!important}.reservation-source-line_mini_app{background:#d9eef0;font-weight:700;color:#185d63!important}.reservation-merge-candidate{color:#8b4f32;background:#fff0d9;border:1px solid #a85d3d52;border-radius:999px;width:fit-content;margin-top:6px;padding:3px 8px;font-size:11px;font-weight:700;text-decoration:none;display:inline-block}.reservation-line-user-id{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin-top:5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;display:flex}.reservation-line-user-id button{border:1px solid var(--line);color:var(--forest-800);background:0 0;border-radius:5px;padding:2px 6px;font-size:10px}.admin-status-confirmation{z-index:20;background:#232c246b;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.admin-status-confirmation-card{background:var(--cream);border:1px solid var(--line);border-radius:14px;width:100%;max-width:420px;padding:22px;box-shadow:0 18px 50px #1e261e33}.admin-status-confirmation-card h2{color:var(--forest-950);margin:0 0 8px;font-size:18px}.admin-status-confirmation-card p{color:var(--muted);margin:0;line-height:1.7}.admin-status-confirmation-actions{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.admin-status-confirmation-actions a,.admin-status-confirmation-actions button{background:var(--forest-900);border:1px solid var(--forest-900);color:var(--cream);border-radius:7px;padding:9px 12px;font-size:12px;text-decoration:none}.admin-status-confirmation-actions .admin-status-confirmation-cancel{border-color:var(--line);color:var(--forest-800);background:0 0}.reservation-completion-dialog{max-height:none;overflow:visible}.completion-reservation-note,.completion-line,.completion-add-product,.completion-discount{flex-wrap:wrap;gap:8px;display:flex}.completion-reservation-note{color:var(--muted);font-size:12px}.completion-lines{gap:8px;margin:14px 0;display:grid}.completion-line input:first-child{flex:150px;min-width:0}.completion-line input:not(:first-child){width:78px}.completion-line button,.completion-add-product button{border:1px solid var(--line);color:var(--forest-800);background:0 0;padding:8px 10px}.completion-add-service,.completion-discount label{align-items:center;gap:8px;font-size:12px;display:flex}.completion-add-service select,.completion-discount select,.completion-add-product input,.completion-discount input{width:100%;min-width:0}.completion-add-product{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.completion-add-product strong{flex-basis:100%}.completion-add-product input{flex:100px}.completion-discount{border-top:1px solid var(--line);align-items:center;margin-top:14px;padding-top:14px}.completion-discount>input{flex:120px}.completion-total{margin:18px 0 0}.completion-total div{white-space:nowrap;justify-content:space-between;align-items:baseline;gap:12px;padding:6px 0;font-size:18px;font-weight:600;display:flex}.completion-total dt,.completion-total dd{min-width:0;margin:0}.completion-total dd{flex-shrink:0}.completion-total .completion-total-final{border-top:1px solid var(--line);margin-top:8px;padding-top:14px;font-size:28px;font-weight:800}.reservation-completion-page{max-width:720px;padding:24px 20px calc(120px + env(safe-area-inset-bottom));margin:0 auto}.reservation-completion-page-back{margin-bottom:18px;font-size:16px}.reservation-completion-page-card{background:var(--paper);border:1px solid var(--line);box-sizing:border-box;border-radius:14px;max-height:none;padding:24px;overflow:hidden visible}.completion-section-title{margin:24px 0 10px;font-size:20px}.reservation-completion-page-card{color:var(--forest-950);font-weight:500}.reservation-completion-page-card h2{font-size:25px;font-weight:800}.reservation-completion-page-card .completion-reservation-note{color:var(--forest-800);font-size:18px;font-weight:600}.reservation-completion-page-card .completion-section-title{font-weight:800}.completion-line{background:var(--cream);border:1px solid var(--line);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:14px;display:flex}.completion-line-main{gap:4px;min-width:0;display:grid}.completion-line-discount{gap:2px;font-size:13px;font-weight:500;display:grid}.completion-line-discount b{color:var(--forest-950);font-size:17px}.completion-line-discount-toggle{border:1px solid var(--line);color:var(--forest-950);white-space:nowrap;background:0 0;border-radius:999px;align-self:center;min-height:38px;padding:7px 12px;font-size:13px;font-weight:700}.completion-line-discount-toggle.is-selected{background:var(--forest-950);border-color:var(--forest-950);color:#fff}.completion-line-discount-actions{flex:none;align-items:center;gap:6px;display:flex}.completion-line-discount-actions .completion-line-discount-toggle{align-self:center}.completion-line-main .completion-line-discount span{font-size:13px;font-weight:500}.completion-discount-backdrop{padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));z-index:10000;background:#19221d75;align-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.completion-discount-dialog{background:var(--paper);border:1px solid var(--line);box-sizing:border-box;border-radius:14px;gap:14px;width:100%;max-width:420px;margin:auto;padding:22px;display:grid}.completion-discount-dialog>p:first-child{color:var(--muted);letter-spacing:.12em;margin:0;font-size:12px}.completion-discount-dialog h3{font-family:var(--font-serif,Georgia, serif);margin:-8px 0 0;font-size:22px}.completion-discount-dialog label{gap:6px;min-width:0;font-size:15px;font-weight:700;display:grid}.completion-discount-dialog input,.completion-discount-dialog select{box-sizing:border-box;font:inherit;background:#fffdf8;border:1px solid #aaa092;border-radius:8px;width:100%;min-width:0;min-height:48px;padding:10px 12px;font-size:16px}.completion-discount-dialog input:focus,.completion-discount-dialog select:focus{border-color:var(--copper);outline:2px solid var(--copper)}@supports (color:color-mix(in lab, red, red)){.completion-discount-dialog input:focus,.completion-discount-dialog select:focus{outline:2px solid color-mix(in srgb, var(--copper) 20%, transparent)}}.completion-discount-hint{color:var(--muted);margin:0;font-size:14px}.completion-discount-preview{background:var(--cream);border:1px solid var(--line);border-radius:8px;gap:8px;margin:0;padding:12px;display:grid}.completion-discount-preview>div{justify-content:space-between;gap:12px;display:flex}.completion-discount-preview dt,.completion-discount-preview dd{margin:0}.completion-discount-preview dd{font-variant-numeric:tabular-nums;font-weight:700}.visit-item-history{gap:5px;display:grid}.visit-item-history>div{gap:2px;display:grid}.completion-reserved-summary{background:var(--cream);border:1px solid var(--line);border-radius:10px;gap:3px;margin:14px 0;padding:12px 14px;display:grid}.completion-reserved-summary h3{color:var(--muted);letter-spacing:.04em;margin:0;font-size:12px}.completion-reserved-summary p{overflow-wrap:anywhere;margin:0;font-size:16px;font-weight:650}.completion-readonly-label{color:var(--muted);justify-self:start;font-size:12px}.visit-changed-badge{color:var(--forest-800);background:#ba814c1f;border:1px solid #ba814c52;border-radius:999px;width:fit-content;padding:2px 8px;font-size:11px;font-weight:700;line-height:1.4;display:inline-block}.reservation-row-visit-link{cursor:pointer}.reservation-row-visit-link:hover td{background:#ba814c0b}.reservation-row-visit-link:focus-visible{outline:2px solid var(--copper);outline-offset:-2px}.reservation-visit-total{font-variant-numeric:tabular-nums;margin-top:3px;display:block}.visit-detail-page{box-sizing:border-box;gap:18px;width:100%;min-width:0;max-width:900px;margin:0 auto;padding:28px clamp(16px,4vw,32px) 56px;display:grid}.visit-detail-header{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:14px 24px;margin-bottom:4px;display:flex}.visit-detail-header h1{color:var(--forest-950);font-family:var(--serif);margin:0;font-size:clamp(28px,6vw,42px);font-weight:500}.visit-detail-header p{color:#4f5a50;margin:4px 0 0;font-weight:600}.visit-detail-header a{color:var(--forest-800);border-bottom:1px solid #273e2f61;padding-bottom:3px;font-weight:650}.visit-detail-eyebrow{color:#914b31;letter-spacing:.18em;font-family:Georgia,serif;font-size:12px;font-weight:700}.visit-detail-card{background:#fffdf8;border:1px solid #273e2f4d;border-radius:12px;min-width:0;padding:clamp(16px,3vw,24px)}.visit-detail-card h2{color:var(--forest-950);font-family:var(--serif);margin:0 0 14px;font-size:22px;font-weight:650}.visit-detail-card h3{margin:18px 0 8px;font-size:15px}.visit-detail-customer{border-left:4px solid var(--copper)}.visit-detail-customer a{color:var(--forest-800);overflow-wrap:anywhere;flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-weight:700;display:flex}.visit-detail-customer a strong,.visit-detail-customer>p strong{color:var(--forest-950);font-size:19px}.visit-detail-customer a span{font-size:13px}.visit-detail-reserved{background:#f4efe4;border-color:#273e2f3d}.visit-detail-reserved h2{color:#4d5b50;font-size:19px}.visit-detail-reserved-items{color:#38453b;font-weight:600}.visit-detail-actual{border-color:#273e2f61}.visit-detail-actual>.visit-detail-section-heading h2{font-size:24px}.visit-detail-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.visit-detail-section-heading h2{margin-bottom:12px}.visit-detail-reserved-items{margin:0;padding-left:1.2em}.visit-detail-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.visit-detail-item{background:var(--cream);border:1px solid #273e2f45;border-radius:9px;gap:5px;min-width:0;padding:14px;display:grid}.visit-detail-item>strong{color:var(--forest-950);overflow-wrap:anywhere;font-size:17px;font-weight:750}.visit-detail-item>span{color:#586258;font-size:13px;font-weight:500}.visit-detail-item .visit-detail-discount-label{color:var(--forest-800);font-weight:700}.visit-detail-item>b{color:var(--forest-950);font-size:16px;font-weight:750}.visit-detail-products{border-top:1px solid #273e2f42;margin-top:18px;padding-top:2px}.visit-detail-product{justify-content:space-between;align-items:baseline;gap:12px;padding:6px 0;display:flex}.visit-detail-product span{overflow-wrap:anywhere;min-width:0}.visit-detail-totals{gap:8px;margin:0;display:grid}.visit-detail-totals>div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.visit-detail-totals dt{color:#586258}.visit-detail-totals dd{color:#354138;font-variant-numeric:tabular-nums;text-align:right;margin:0;font-weight:600}.visit-detail-totals .visit-detail-total{color:var(--forest-950);border-top:1px solid #273e2f57;margin-top:4px;padding-top:12px;font-size:21px;font-weight:800}.visit-detail-accounting{background:#f8f2e5;border-color:#273e2f52}.visit-detail-chart{background:0 0;border-color:#273e2f4d}.visit-detail-chart-values{gap:8px;margin-bottom:14px;display:grid}.visit-detail-chart-values p{background:#fffdf8;border:1px solid #273e2f38;border-radius:8px;gap:4px;margin:0;padding:10px 12px;display:grid}.visit-detail-chart-values strong{color:var(--forest-800);font-size:13px}.visit-detail-chart-values span{white-space:pre-wrap;overflow-wrap:anywhere}.visit-detail-muted{color:#586258;margin:0}@media (width<=600px){.visit-detail-page{gap:12px;padding-top:18px}.visit-detail-items{grid-template-columns:minmax(0,1fr)}.visit-detail-header{align-items:flex-start}}.completion-line-main strong{overflow-wrap:anywhere;font-size:17px}.completion-line-main span{font-size:16px;font-weight:700}.completion-service-price{gap:4px;max-width:220px;margin-top:10px;font-size:14px;font-weight:700;display:grid}.completion-remove-button{white-space:nowrap;min-height:44px;padding:8px 12px}.completion-line-actions{gap:6px;margin-left:auto;display:flex}.completion-edit-button{white-space:nowrap;min-height:44px;padding:8px 12px}.completion-receipt{background:var(--cream);border:1px solid var(--line);border-radius:10px;gap:8px;padding:14px;display:grid}.completion-receipt-line{gap:4px;font-size:17px;display:grid}.completion-receipt-line-main{justify-content:space-between;align-items:baseline;gap:12px;min-width:0;display:flex}.completion-receipt-line span{overflow-wrap:anywhere}.completion-receipt-line strong{white-space:nowrap}.completion-receipt-discount{color:var(--forest-800);grid-template-columns:1fr auto;gap:2px;padding-left:12px;font-size:14px;display:grid}.completion-receipt-discount strong{grid-column:1/-1;font-size:14px}.completion-discount-reason{margin:0;font-size:16px;font-weight:700}.completion-add-discount-button{background:var(--cream);border:1px solid var(--line);border-radius:10px;width:100%;min-height:50px;padding:12px 16px;font-size:18px;font-weight:700}.completion-discount-summary{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.completion-discount-summary strong{color:var(--forest-950);font-size:18px;font-weight:600}.completion-discount-summary button{border:1px solid var(--line);background:0 0;border-radius:8px;min-height:42px;padding:8px 12px;font-size:16px;font-weight:600}.completion-discount-editor{border:1px solid var(--line);border-radius:10px;padding:14px}.completion-discount-close{border:1px solid var(--line);background:0 0;border-radius:8px;width:100%;min-height:48px;padding:10px 14px;font-size:17px;font-weight:700}.completion-sticky-total{white-space:nowrap;flex-wrap:nowrap;align-items:baseline;gap:8px;margin-right:auto;display:flex}.completion-sticky-total span{white-space:nowrap;font-size:17px;font-weight:700}.completion-sticky-total strong{white-space:nowrap;flex-shrink:0;font-size:28px;font-weight:800;line-height:1}.completion-submit-button{white-space:nowrap}.completion-add-service-form{background:var(--cream);border:1px solid var(--line);box-sizing:border-box;border-radius:10px;gap:10px;width:100%;min-width:0;max-width:100%;margin-top:10px;padding:14px;font-size:17px;font-weight:700;display:grid}.completion-add-service-form select{box-sizing:border-box;border:1px solid #aaa092;border-radius:8px;width:100%;min-width:0;max-width:100%;min-height:48px;padding:10px;font-size:18px;display:block}.completion-custom-service-choice{border:1px solid var(--line);color:var(--forest-950);text-align:left;background:#fffdf8;border-radius:8px;width:100%;min-height:48px;padding:10px 12px;font-size:16px;font-weight:700}.completion-service-divider{color:var(--muted);align-items:center;gap:10px;font-size:13px;display:flex}.completion-service-divider:before,.completion-service-divider:after{background:var(--line);content:"";flex:1;height:1px}.completion-custom-service-form{border:1px solid var(--line);border-radius:8px;gap:10px;min-width:0;padding:12px;display:grid}.completion-custom-service-form strong{font-size:15px}.completion-custom-service-form label{gap:5px;min-width:0;font-size:14px;display:grid}.completion-custom-service-form input{box-sizing:border-box;background:#fffdf8;border:1px solid #aaa092;border-radius:8px;width:100%;min-width:0;min-height:48px;padding:10px 12px;font-size:16px}.completion-custom-service-form .button{min-height:48px}.completion-editor-actions{gap:8px;display:flex}.completion-editor-actions button{flex:1}.completion-add-service-button,.completion-add-product-button{background:var(--forest-900);color:var(--cream);border:0;border-radius:10px;width:100%;min-height:50px;padding:14px 16px;font-size:17px;font-weight:700;display:block}.completion-add-service-button select{color:inherit;background:0 0;border:1px solid #ffffff80;width:100%;min-height:44px;margin-top:10px;padding:8px;font-size:16px}.completion-add-product-button{background:var(--copper);margin-top:10px}.completion-add-product{background:var(--cream);border:1px solid var(--line);border-radius:10px;gap:12px;margin-top:10px;padding:16px;display:grid}.completion-add-product label,.completion-product-edit label{gap:5px;font-size:15px;font-weight:700;display:grid}.completion-add-product input,.completion-product-edit input,.completion-discount input,.completion-discount select{box-sizing:border-box;border:1px solid #aaa092;border-radius:8px;width:100%;min-width:0;min-height:48px;padding:10px 12px;font-size:17px;font-weight:600}.completion-add-product button{min-height:44px}.completion-product-edit{gap:10px;width:100%;margin-top:10px;display:grid}.completion-chart-section{border-top:1px solid var(--line);margin-top:24px;padding-top:14px}.completion-chart-toggle{background:var(--cream);border:1px solid var(--line);color:var(--forest-950);text-align:left;border-radius:10px;justify-content:space-between;align-items:center;width:100%;min-height:52px;padding:12px 14px;font-size:18px;font-weight:700;display:flex}.completion-chart-toggle span:last-child{color:var(--muted);font-size:15px;font-weight:600}.completion-chart-fields{gap:12px;margin-top:12px;display:grid}.completion-chart-fields label{gap:6px;font-size:17px;font-weight:700;display:grid}.completion-chart-fields textarea{box-sizing:border-box;font:inherit;resize:vertical;border:1px solid #aaa092;border-radius:8px;width:100%;min-height:72px;padding:10px 12px;font-size:17px;font-weight:500;line-height:1.55}.customer-visit-chart{border-top:1px solid var(--line);gap:10px;margin-top:12px;padding-top:12px;display:grid}.customer-visit-chart-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.customer-visit-chart-heading button{min-height:40px;padding:7px 12px;font-size:14px}.customer-visit-chart-values{gap:8px;display:grid}.customer-visit-chart-values p{gap:3px;margin:0;display:grid}.customer-visit-chart-values p strong,.customer-visit-chart-editing label{font-size:15px;font-weight:700}.customer-visit-chart-values p span{white-space:pre-wrap}.customer-visit-chart-editing textarea{box-sizing:border-box;font:inherit;resize:vertical;border:1px solid #aaa092;border-radius:8px;width:100%;min-height:64px;padding:9px 10px;font-size:16px;line-height:1.5}.customer-visit-chart-message{color:var(--muted);font-size:14px}.nextVisitNotice{background:#fff3df;border:1px solid #a85d3d40;border-radius:12px;margin-bottom:20px;padding:14px 16px}.nextVisitNotice p{white-space:pre-wrap;margin:8px 0 0}.quantity-stepper{align-items:center;gap:16px;display:inline-flex}.quantity-stepper button{border:1px solid var(--line);border-radius:8px;min-width:44px;min-height:44px;font-size:22px}.discount-methods{grid-template-columns:repeat(3,1fr);gap:6px;width:100%;display:grid}.discount-methods button{background:var(--cream);border:1px solid var(--line);border-radius:8px;min-height:46px;font-size:18px;font-weight:700}.discount-methods button.is-selected{background:var(--forest-900);color:var(--cream)}.completion-discount{align-items:stretch;gap:10px;display:grid}.completion-total div{font-weight:600}.completion-total .completion-total-final{font-size:28px;font-weight:800}.reservation-completion-page-card .admin-dialog-actions{border-top:1px solid var(--line);grid-template-columns:1fr;gap:12px;margin:24px 0 0;padding:18px 0 0;display:grid;position:static}.reservation-completion-page-card .admin-dialog-actions button{width:100%;min-height:54px;font-size:18px}.reservation-completion-page-card .admin-dialog-actions .button-outline{display:none}@media (width<=640px){.reservation-completion-page{padding-left:14px;padding-right:14px}.reservation-completion-page-card{border-radius:10px;padding:18px}.reservation-completion-page-card .admin-dialog-actions{margin-left:0;margin-right:0;padding-left:0;padding-right:0}.admin-page input,.admin-page select,.admin-page textarea,.admin-page,.admin-page p,.admin-page td,.admin-page th,.admin-page label,.admin-page small{font-size:18px}.admin-page h1,.admin-page h2{font-size:24px}.admin-page h3{font-size:20px}.admin-page button,.admin-page a.button{font-size:17px;font-weight:700}.reservation-table td small,.reservation-table td span{color:var(--forest-800);font-size:16px;font-weight:600}.reservation-table td strong,.reservation-table td a{font-size:20px;font-weight:800}.admin-calendar-day small{white-space:nowrap;max-width:100%;font-size:11px}.admin-calendar-day .admin-calendar-completion{padding-left:4px;padding-right:4px;font-size:11px}.calendar-long-label{display:none}.calendar-short-label{display:inline}.reservation-table td{padding-top:18px;padding-bottom:18px;font-size:18px;line-height:1.7}.reservation-table button,.reservation-table select{min-height:44px;font-size:16px}.completion-line{flex-direction:column;align-items:stretch}.completion-line-discount-toggle{align-self:flex-start}.completion-line-discount-actions{width:100%}.completion-line-discount-actions .completion-line-discount-toggle{flex:1}.completion-line-main strong{font-size:20px}.completion-line-main span{font-size:18px}.completion-line-actions{margin-left:0}.completion-line-actions button{flex:1;min-height:48px;font-size:17px}.completion-receipt-line{font-size:18px}.completion-receipt-discount,.completion-receipt-discount strong{font-size:16px}.completion-sticky-total strong{font-size:30px}.completion-total div{font-size:18px}.completion-total .completion-total-final{font-size:25px}.reservation-completion-page-card .admin-dialog-actions{align-items:stretch;gap:12px}.completion-sticky-total{justify-content:space-between;margin-right:0}.reservation-completion-page-card .completion-submit-button{min-width:0;font-size:18px}.completion-add-discount-button{font-size:18px;font-weight:700}.completion-discount-summary{grid-template-columns:1fr 1fr;align-items:stretch;display:grid}.completion-discount-summary strong{grid-column:1/-1;font-size:18px}.completion-discount-summary button{font-size:17px}}.reservation-source-admin-existing{background:#e8e2d8;color:#705739!important}.reservation-source-legacy,.reservation-unlinked{background:#eee8df;color:#756c65!important}.reservation-customer-notes{background:#f4e7d4}@supports (color:color-mix(in lab, red, red)){.reservation-customer-notes{background:color-mix(in srgb, #f4e7d4 72%, var(--surface))}}.reservation-customer-notes{border-left:3px solid #bd8b55;border-radius:4px;margin-top:8px;padding:7px 9px}.reservation-customer-notes strong{color:var(--forest-900);font-size:18px;font-weight:800;display:block}.reservation-customer-notes p{color:var(--forest-950);overflow-wrap:anywhere;white-space:pre-wrap;margin:4px 0 0;font-size:18px;font-weight:600;line-height:1.7}.reservation-event-history{border-top:1px solid var(--line)}@supports (color:color-mix(in lab, red, red)){.reservation-event-history{border-top:1px solid color-mix(in srgb, var(--line) 72%, transparent)}}.reservation-event-history{margin-top:9px;padding-top:8px}.reservation-event-summary{gap:2px;display:grid}.reservation-history-toggle{margin-top:6px}.reservation-history-toggle>button{color:var(--forest-800);cursor:pointer;background:0 0;border:0;width:fit-content;min-height:40px;padding:6px 0;font-size:16px;font-weight:600}.reservation-event-history ol{border-left:1px solid var(--line);gap:7px;margin:3px 0 0 3px;padding:2px 0 2px 10px;list-style:none;display:grid}.reservation-event-history li time,.reservation-event-history li span{font-size:16px;line-height:1.6;display:block}.reservation-event-history li time{color:var(--muted)}.reservation-event-history li span{color:var(--forest-950);font-weight:700}.reservation-actions{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.reservation-actions button{border:1px solid var(--line);color:var(--forest-800);background:0 0;padding:5px 8px;font-size:10px}.reservation-actions .reservation-delete-button{color:#9a3f2d}.reservation-confirm-delete-button{color:var(--cream);background:#9a3f2d;border:1px solid #9a3f2d}.reservation-confirm-delete-button:hover{background:#7d3426;border-color:#7d3426}.reservation-email{font-size:10px}.status-select{border:0;border-radius:999px;padding:7px 10px;font-size:11px}.status-requested{color:#7d471b;background:#f5ddc0}.status-confirmed{color:#315139;background:#dce7d5}.status-completed{color:#334f57;background:#d9e4e7}.status-cancelled{color:#756c65;background:#e8e3de}.calendar-sync{margin-top:8px}.calendar-sync>span{color:var(--muted);font-size:10px}.calendar-sync-error>span,.calendar-sync-error>small{color:#9a3f2d!important}.calendar-sync>small{max-width:190px;margin-top:3px;font-size:9px}.calendar-sync>button{color:#9a3f2d;background:0 0;border:1px solid;margin-top:6px;padding:4px 8px;font-size:10px}.email-notification{margin-top:8px}.email-notification>span{color:var(--muted);font-size:10px}.email-notification-failed>span,.email-notification-failed>small{color:#9a3f2d!important}.email-notification-failure{border-left:2px solid #b9604c;margin-top:7px;padding-left:8px}.email-notification-failure strong,.email-notification-failure a,.email-notification-failure small{display:block}.email-notification-failure strong{color:#9a3f2d;font-size:10px;font-weight:600}.email-notification-failure a{color:#70483e;overflow-wrap:anywhere;font-size:9px}.email-notification-failure small{color:#9a3f2d;max-width:220px;margin-top:2px;font-size:9px;line-height:1.45}.email-notification>small{max-width:190px;margin-top:3px;font-size:9px}.email-notification>button{color:#9a3f2d;background:0 0;border:1px solid;margin-top:6px;padding:4px 8px;font-size:10px}.empty-row{color:var(--muted);text-align:center!important;padding:50px!important}.admin-side{flex-direction:column;gap:18px;display:flex}.admin-workshops{padding:0 20px}.admin-workshops article{border-bottom:1px solid var(--line);grid-template-columns:80px 1fr auto;align-items:start;gap:12px;padding:17px 0;display:grid}.admin-workshops article>div strong,.admin-workshops article>div span{display:block}.admin-workshops article>div span{color:var(--copper);font-size:11px}.admin-workshops article p{font-family:var(--serif);margin:0;line-height:1.5}.admin-workshops article small{color:var(--muted)}.workshop-summary{min-width:0}.workshop-summary>small{overflow-wrap:anywhere;margin-top:3px;line-height:1.5;display:block}.workshop-status{border:1px solid var(--line);color:var(--muted);border-radius:999px;margin-top:7px;padding:3px 8px;font-size:9px;display:inline-block}.workshop-status-published{color:#3e6049;background:#e6eee1;border-color:#d6e3cf}.workshop-status-closed{color:#705f50;background:#eee9e1}.workshop-actions{flex-wrap:wrap;grid-column:2/-1;gap:7px;display:flex}.workshop-action-button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;padding:7px 9px;font-size:10px}.workshop-action-button:disabled{cursor:not-allowed;opacity:.45}.workshop-delete-button{color:#9a3f2d}.workshop-delete-note{grid-column:2/-1;line-height:1.5;color:#9a3f2d!important}.admin-workshops .calendar-sync{grid-column:2/-1;margin-top:0}.workshop-edit-form{border-top:1px solid var(--line);flex-direction:column;grid-column:1/-1;gap:13px;margin-top:4px;padding-top:16px;display:flex}.workshop-edit-form>div:not(.workshop-edit-actions){grid-template-columns:1fr 1fr;gap:12px;display:grid}.workshop-edit-form label{flex-direction:column;gap:5px;font-size:11px;display:flex}.workshop-edit-form input,.workshop-edit-form select,.workshop-edit-form textarea{width:100%;min-width:0}.workshop-reservation-warning{color:#805e3a;background:#f3eadc;padding:10px 12px;font-size:11px;font-family:var(--sans)!important}.workshop-edit-actions{justify-content:flex-end;gap:8px;display:flex}.empty-workshops{color:var(--muted);padding:22px 0;font-size:11px;font-family:var(--sans)!important}.workshop-sync-button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;padding:8px 10px;font-size:10px}.workshop-sync-button:disabled{cursor:wait;opacity:.55}.add-workshop summary{cursor:pointer;font-family:var(--serif);padding:20px}.add-workshop[open] summary{border-bottom:1px solid var(--line)}.add-workshop form{flex-direction:column;gap:14px;padding:20px;display:flex}.add-workshop form>div{grid-template-columns:1fr 1fr;gap:12px;display:grid}.add-workshop label{flex-direction:column;gap:5px;display:flex}.add-workshop .button{justify-content:center}.admin-notice{color:var(--copper);font-size:12px;position:fixed;bottom:20px;right:4vw}.reservation-status-feedback{white-space:normal;overflow-wrap:anywhere;border:1px solid;border-radius:8px;margin:10px 0;padding:9px 11px;font-size:14px;font-weight:600;line-height:1.5}.reservation-status-feedback-pending{color:#534b3d;background:#f7f2e8}.reservation-status-feedback-success{color:#24583b;background:#edf5ef}.reservation-status-feedback-warning{color:#744d00;background:#fff4df}.reservation-status-feedback-error{color:#8b2f22;background:#fff0ed}.reservation-completion-hint{color:#554f45;margin-top:7px;font-size:14px;font-weight:600;line-height:1.45;display:block}.admin-dialog-backdrop{z-index:100;background:#1f1c198c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.admin-dialog{background:var(--paper);width:100%;max-width:520px;padding:34px;box-shadow:0 24px 80px #1f1c1938}.admin-reservation-edit-dialog{max-width:1000px;max-height:calc(100vh - 48px);overflow-y:auto}.admin-reservation-edit-form>p{color:var(--muted);font-size:12px;line-height:1.6}.admin-current-reservation{border:1px solid var(--line);background:#b9c2ad29;gap:7px;margin-top:22px;padding:18px 20px;display:grid}.admin-current-reservation>p:first-child{color:var(--copper);letter-spacing:.15em;margin:0;font-family:Georgia,serif;font-size:9px}.admin-current-reservation h3{font-family:var(--serif);margin:0;font-size:20px;font-weight:400}.admin-current-reservation ul{gap:4px;margin:2px 0;padding-left:20px;display:grid}.admin-current-reservation-legacy,.admin-current-reservation strong{margin:0}.admin-current-reservation strong{color:var(--forest-800);font-size:12px}.shirasu-page{background:var(--paper);overflow-x:clip}.shirasu-header{grid-template-columns:1fr auto}.shirasu-hero{background:linear-gradient(#a85d3d09 1px, transparent 1px), linear-gradient(90deg, #a85d3d09 1px, transparent 1px), var(--parchment);background-size:22px 22px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(48px,9vw,130px);min-height:610px;padding:80px max(7vw,28px);display:grid}.shirasu-hero-copy h1{color:var(--forest-950);font-family:Georgia, var(--serif);letter-spacing:.01em;margin:34px 0 16px;font-size:clamp(66px,11vw,154px);font-weight:400;line-height:.9}.shirasu-subtitle{color:var(--copper);letter-spacing:.18em;margin:0;font-family:Georgia,serif;font-size:11px}.shirasu-lead{color:var(--muted);font-family:var(--serif);max-width:660px;margin:38px 0 0;font-size:clamp(16px,2vw,21px);line-height:2}.shirasu-portrait{margin:0;position:relative}.shirasu-portrait img{border:9px solid var(--cream);height:auto;display:block;box-shadow:0 18px 50px #372b1f26}.shirasu-portrait-halloween img{width:220px}.shirasu-portrait-blue img{width:180px}.shirasu-portrait figcaption{color:var(--muted);letter-spacing:.14em;margin-top:11px;font-family:Georgia,serif;font-size:8px}.shirasu-story{background:var(--cream);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(50px,12vw,180px);display:grid}.shirasu-story-copy{max-width:650px}.shirasu-story-copy h2,.shirasu-visit-notice h2{font-family:var(--serif);margin:28px 0 20px;font-size:clamp(29px,4vw,48px);font-weight:400;line-height:1.45}.shirasu-story-copy>p:last-child{color:var(--muted);line-height:2}.shirasu-visit-notice{background:var(--forest-950);color:var(--parchment);text-align:center;flex-direction:column;align-items:center;padding:95px max(7vw,24px);display:flex}.shirasu-visit-notice h2{color:var(--cream)}.shirasu-visit-notice strong{font-family:var(--serif);border-block:1px solid #f3ead847;max-width:820px;padding:26px 0;font-size:clamp(15px,2vw,19px);font-weight:400;line-height:2}.shirasu-visit-notice>p:not(:first-child){color:var(--sage);margin:22px 0 30px;font-size:12px}.shirasu-visit-notice .button{border:1px solid var(--copper-light)}.admin-dialog>p{color:var(--copper);letter-spacing:.16em;margin:0 0 8px;font-size:10px}.admin-dialog h2{font-family:var(--serif);margin:0 0 24px;font-size:25px;font-weight:400}.admin-dialog dl{border-block:1px solid var(--line);margin:0 0 20px;padding:10px 0}.admin-dialog dl>div{grid-template-columns:90px 1fr;gap:16px;padding:8px 0;display:grid}.admin-dialog dt{color:var(--muted);font-size:11px}.admin-dialog dd{margin:0}.admin-dialog>strong{color:#9a3f2d;font-size:12px;font-weight:500;line-height:1.7;display:block}.admin-dialog-actions{justify-content:flex-end;gap:10px;margin-top:26px;display:flex}.admin-dialog-actions .button-outline{border:1px solid var(--line);background:0 0}@media (width<=980px){.desktop-nav{display:none}.site-header{grid-template-columns:1fr auto}.hero{grid-template-columns:1fr}.hero-copy{min-height:600px}.hero-visual{min-height:520px}.section-heading{grid-template-columns:1fr 1fr}.section-heading>p:last-child{grid-column:2}.workshop-section,.owner-section,.access-section{grid-template-columns:1fr}.access-details,.access-links{padding-top:0}.reservation-layout{grid-template-columns:minmax(0,1fr);min-width:0}.reservation-intro{padding:70px 8vw}.admin-content-grid{grid-template-columns:1fr}}@media (width<=680px){.admin-pending-reservations{padding:12px 8px}.admin-calendar-day{min-height:66px;padding:7px 2px}.admin-calendar-day small{font-size:9px}.admin-calendar-empty{min-height:66px}.admin-add-reservation{margin:0 20px 18px}.admin-add-reservation>form{padding:18px}.admin-add-reservation fieldset,.admin-reservation-options{flex-direction:column;align-items:stretch}.admin-reservation-fields{grid-template-columns:1fr}.admin-reservation-notes{grid-column:auto}.admin-add-reservation input,.admin-add-reservation select,.admin-add-reservation textarea{font-size:16px}.admin-add-reservation>form>.button{justify-self:stretch}body{font-size:14px}.site-header{min-height:72px;padding:0 20px}.brand-mark{font-size:25px}.brand-sub{font-size:7px}.header-reserve{gap:16px;min-height:42px}.hero-copy{min-height:570px;padding:70px 25px}.hero h1{font-size:48px}.hero-actions{flex-direction:column;align-items:flex-start;gap:22px}.desktop-only{display:none}.hero-visual{min-height:420px}.intro-strip{flex-direction:column;align-items:flex-start;gap:20px;padding:28px 24px}.intro-strip p span{margin:0 0 4px;display:block}.section{padding:74px 24px}.section-heading,.service-grid{display:block}.section-heading>p:last-child{margin-top:18px}.service-grid{border-top:1px solid var(--line)}.service-card{border-bottom:1px solid var(--line);border-right:0;min-height:390px;padding:26px 8px}.workshop-section{gap:64px}.workshop-card{grid-template-columns:78px 1fr}.workshop-card>a{display:none}.owner-section{gap:60px}.owner-shirasu-intro{margin-top:28px}.owner-wordmark{min-height:280px}.owner-wordmark span{font-size:64px}.access-details{grid-template-columns:1fr}.access-map{height:300px;margin-top:4px}.closing-cta{padding:80px 24px}.site-footer{flex-direction:column;align-items:flex-start;gap:28px}.back-link{font-size:11px}.reservation-panel{width:100%;min-width:0;padding:36px 18px}.reservation-layout,.reservation-form,.reservation-form>*,.reservation-form .form-grid,.reservation-before-visit-grid,.reservation-guidance-card,.salon-menu-picker,.menu-category-tabs,.menu-option-grid,.henna-option-grid,.reservation-calendar,.reservation-step-summary,.reservation-selected-menu-card,.reservation-final-review{box-sizing:border-box;min-width:0;max-width:100%}.reservation-manage-entry{overflow-wrap:anywhere;flex-direction:column;align-items:flex-start;gap:6px;padding:12px}.reservation-manage-entry>*{overflow-wrap:anywhere;min-width:0;max-width:100%}.reservation-step-indicator{display:none}.reservation-mobile-progress{gap:9px;min-width:0;max-width:100%;margin:14px 0 12px;display:grid}.reservation-mobile-progress>div:first-child{flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.reservation-mobile-progress strong{color:var(--copper-dark);letter-spacing:.05em;font-size:14px;font-weight:750}.reservation-mobile-progress>div:first-child span{color:var(--forest-950);font-size:17px;font-weight:700}.reservation-mobile-progress-track{background:#e5e1d6;border-radius:999px;width:100%;height:5px;overflow:hidden}.reservation-mobile-progress-track span{background:var(--forest-800);border-radius:inherit;height:100%;transition:width .18s;display:block}.reservation-active-step .reservation-step-eyebrow{display:none}.reservation-active-step h2{font-size:24px}.reservation-active-step{scroll-margin-top:16px}.reservation-step-summary,.reservation-selected-menu-card{align-items:center;gap:8px;padding:11px}.reservation-step-summary>div,.reservation-selected-menu-card>div{flex:auto}.reservation-step-summary{margin:6px 0;padding:7px 9px}.reservation-step-summary>div{flex-wrap:wrap;align-items:baseline;gap:3px 8px;display:flex}.reservation-step-summary strong{flex:none;font-size:13px}.reservation-step-summary span,.reservation-selected-menu-card span{font-size:14px;line-height:1.35}.reservation-step-summary small{display:none}.reservation-selected-menu-card small{font-size:13px;line-height:1.45}.reservation-step-summary button{min-height:40px;padding-inline:8px;font-size:14px}.reservation-selected-menu-card button{padding-inline:10px;font-size:14px}.reservation-selected-menu-card{flex-wrap:wrap}.reservation-selected-menu-card>div{flex-basis:100%}.reservation-selected-menu-card>button{flex:auto}.reservation-final-review{padding:14px}.reservation-final-review dl>div{grid-template-columns:minmax(76px,.36fr) minmax(0,1fr);gap:6px 10px}.reservation-review-actions{grid-template-columns:1fr;display:grid}.reservation-review-actions button{width:100%}.reservation-form input,.reservation-form select,.reservation-form textarea{box-sizing:border-box;overflow-wrap:anywhere;width:100%;min-width:0;max-width:100%;font-size:16px}.reservation-form button{white-space:normal;min-width:0;max-width:100%}.reservation-form .cancellation-policy dt,.reservation-form .cancellation-policy dd{white-space:normal;overflow-wrap:anywhere;font-size:14px;font-weight:650}.reservation-panel:has(.reservation-success)>.reservation-manage-entry{display:none}.reservation-auth-complete-summary{flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px;font-size:16px}.reservation-auth-complete-summary a{min-height:40px;font-size:15px}.reservation-availability-gate{margin-top:14px;padding:16px}.reservation-first-visit-summary{min-height:44px;margin-top:10px;padding:6px 10px}.reservation-first-visit-summary>span{font-size:14px;font-weight:700}.reservation-first-visit-notice{margin-top:12px;padding:11px 12px;font-size:15px;line-height:1.55}.kind-selector,.form-grid{grid-template-columns:1fr}.form-field-wide{grid-column:auto}.otp-email-row,.otp-code-row{grid-template-columns:1fr}.otp-secondary-button,.otp-verify-button{min-height:48px}.reservation-auth-step .form-field,.reservation-auth-step .line-auth-field,.reservation-auth-step .otp-email-field{width:100%;min-width:0}.reservation-auth-step .otp-email-row>*,.reservation-auth-step .otp-code-row>*{min-width:0;max-width:100%}.form-submit{flex-direction:column;align-items:stretch;gap:22px}.shirasu-hero,.shirasu-story{grid-template-columns:1fr}.shirasu-hero{gap:46px;min-height:0;padding:70px 24px}.shirasu-hero-copy h1{white-space:nowrap;font-size:clamp(52px,15.7vw,64px)}.shirasu-lead br{display:none}.shirasu-portrait{justify-self:center}.shirasu-story{gap:42px}.shirasu-story .shirasu-portrait{grid-row:1}.shirasu-visit-notice{padding-block:74px}.reservation-success{padding:32px 20px}.reservation-panel:has(.reservation-success){padding:24px 18px 28px}.reservation-success h2{letter-spacing:.01em;text-align:center;max-width:100%;margin-inline:auto;font-size:clamp(22px,5.8vw,28px);font-weight:650;line-height:1.5}.reservation-success h2 span{white-space:nowrap;display:inline-block}.reservation-success>p{text-align:center;max-width:32em;margin-inline:auto;font-size:16px;line-height:1.75}.reservation-success>p span{display:block}.admin-header{gap:12px;padding:14px 20px}.admin-header>div{gap:10px;min-width:0}.admin-divider,.admin-header p,.admin-account span{display:none}.admin-account a{white-space:nowrap;border-left:0;padding-left:0;font-size:11px}.admin-account{flex-wrap:wrap;justify-content:flex-end}.admin-welcome{padding:36px 20px 22px}.admin-stats{grid-template-columns:1fr;padding:0 20px 18px}.admin-stat-card{min-height:92px;padding:18px 20px}.admin-content-grid{padding:0 20px}.admin-panel-heading{align-items:flex-start;gap:14px;min-height:0;padding:18px}.admin-panel-heading select{max-width:150px;min-height:44px;font-size:16px}.reservation-table-wrap{overflow-x:visible}.reservation-table,.reservation-table tbody,.reservation-table tr,.reservation-table td{width:100%;min-width:0;display:block}.reservation-table thead{display:none}.reservation-table tr{border-bottom:1px solid var(--line);padding:15px 18px}.reservation-table td{border:0;grid-template-columns:86px minmax(0,1fr);gap:5px 12px;padding:8px 0;display:grid}.reservation-table td:before{color:var(--muted);content:attr(data-label);letter-spacing:.08em;grid-column:1;padding-top:2px;font-size:9px}.reservation-table td>*{grid-column:2}.reservation-table .empty-row{display:block}.reservation-table .empty-row:before{display:none}.status-select{width:100%;min-height:44px;font-size:14px}.calendar-sync,.email-notification{margin-top:10px}.calendar-sync>span,.email-notification>span,.email-notification-failure strong{font-size:11px}.calendar-sync>small,.email-notification-failure a,.email-notification-failure small{max-width:none;font-size:10px}.calendar-sync>button,.email-notification>button{min-height:42px;padding:8px 12px}.reservation-actions button{min-height:42px;padding:8px 12px;font-size:12px}.admin-dialog-backdrop{align-items:flex-start;padding:12px;overflow-y:auto}.admin-dialog{margin:12px 0;padding:22px 18px}.admin-workshops article{grid-template-columns:72px minmax(0,1fr)}.admin-workshops article>small{grid-column:2}}.reservation-menu-heading{flex-direction:column;gap:5px;margin:12px 0 20px;display:flex}.reservation-menu-heading>span,.admin-reservation-menu-picker>h3{color:var(--ink);font-family:var(--serif);font-size:clamp(22px,3vw,30px);font-weight:500}.reservation-menu-heading>small,.admin-reservation-menu-picker>p{color:var(--muted);font-size:12px}.salon-menu-picker{gap:22px;min-width:0;display:grid}.menu-category-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.menu-category-tabs button{border:1px solid var(--line);color:var(--ink);cursor:pointer;text-align:left;background:0 0;border-radius:16px;flex-direction:column;align-items:flex-start;gap:4px;min-height:76px;padding:14px;display:flex}.menu-category-tabs button.is-active{border-color:var(--sage);box-shadow:inset 0 -3px 0 var(--sage);background:#b9c2ad47}.menu-category-tabs small,.menu-category-intro p,.henna-step>p span,.menu-selection-summary>p{color:var(--copper);letter-spacing:.13em;font-size:9px;font-weight:700}.menu-category-tabs strong{font-size:14px}.menu-category-intro{flex-wrap:wrap;align-items:baseline;gap:6px 16px;display:flex}.menu-category-intro p{margin:0}.menu-category-intro span{color:var(--muted);overflow-wrap:anywhere;min-width:0;font-size:12px}.menu-group-list,.menu-group,.henna-step{gap:12px;display:grid}.menu-group-list{gap:26px}.menu-group{border-top:1px solid var(--line);padding-top:18px}.menu-group-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:5px 14px;display:flex}.menu-group-heading h3{color:var(--ink);font-family:var(--serif);margin:0;font-size:21px;font-weight:500}.menu-group-heading span{color:var(--muted);font-size:10px}.menu-group-meta{text-align:right;justify-items:end;gap:3px;min-width:0;display:grid}.menu-group-duration,.menu-group-note{color:var(--muted);min-width:0;font-size:11px;font-weight:600;line-height:1.45}.menu-group-note{overflow-wrap:normal;word-break:keep-all;max-width:100%;display:block}.menu-option-grid,.henna-option-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.menu-option-card{border:1px solid var(--line);border-radius:16px;min-width:0;display:grid;overflow:hidden}.menu-option-card.is-selected{border-color:var(--sage);box-shadow:inset 0 0 0 1px var(--sage);background:#b9c2ad47}.menu-option-card>button,.henna-option-grid>button{color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;flex-direction:column;gap:8px;width:100%;min-height:148px;padding:16px;display:flex;position:relative}.menu-option-card>button:disabled{cursor:default;opacity:.68}.menu-option-check{border:1px solid var(--line);border-radius:999px;justify-content:center;align-items:center;width:25px;height:25px;margin-left:auto;display:flex}.menu-option-card.is-selected .menu-option-check{background:var(--sage);border-color:var(--sage);color:#fff}.menu-option-card strong,.henna-option-grid strong{font-size:14px;line-height:1.45}.menu-option-card small,.henna-option-grid small{color:var(--muted);font-size:11px;line-height:1.65}.menu-option-meta{flex-wrap:wrap;align-items:baseline;gap:5px 12px;margin-top:auto;display:flex}.menu-option-meta em,.henna-option-grid em{color:var(--copper);font-size:14px;font-style:normal;font-weight:700}.menu-option-meta>span{color:var(--muted);font-size:10px}.menu-option-card>a,.menu-detail-link{color:var(--copper);text-underline-offset:4px;padding:0 16px 15px;font-size:11px;text-decoration:underline}.menu-detail-link{padding:0}.henna-menu-group{border:1px solid var(--line);background:#ece3cf5c;border-radius:20px;padding:20px}.henna-step>p{color:var(--ink);margin:0;font-size:12px}.henna-step>p span{margin-right:8px}.henna-option-grid>button{border:1px solid var(--line);border-radius:14px;min-height:118px}.henna-option-grid>button.is-active{border-color:var(--sage);background:#b9c2ad47}.menu-selection-summary{background:var(--ink);color:var(--paper);z-index:3;border-radius:18px;gap:10px;padding:18px 20px;display:grid;position:sticky;bottom:12px}.menu-selection-summary>p,.menu-selection-summary>span,.menu-selection-summary ul,.menu-selection-summary dl,.menu-selection-summary dd{margin:0}.menu-selection-summary-items{gap:2px;padding:0;list-style:none;display:grid}.menu-selection-summary-item{align-items:center;gap:8px;min-width:0;display:flex}.menu-selection-summary-item>span{overflow-wrap:anywhere;flex:auto;min-width:0;font-size:13px;line-height:1.45}.menu-selection-summary-remove{color:var(--paper);cursor:pointer;background:0 0;border:0;border-radius:999px;flex:0 0 44px;justify-content:center;align-items:center;width:44px;height:44px;margin:-4px -6px -4px 0;padding:0;font-size:18px;line-height:1;display:inline-flex}.menu-selection-summary-remove:hover,.menu-selection-summary-remove:focus-visible{background:#ffffff1f}.menu-selection-summary dl{flex-wrap:wrap;gap:10px 28px;display:flex}.menu-selection-summary dt,.menu-selection-summary small,.menu-selection-summary>span{color:#ffffffa3;font-size:10px}.menu-selection-summary dd{font-size:14px;font-weight:700}.reservation-date-time{margin-top:24px}.admin-reservation-menu-picker{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.admin-reservation-menu-picker>h3{margin:0 0 4px;font-size:22px}.admin-reservation-menu-picker>p{margin:0 0 18px}.salon-menu-picker-compact .menu-selection-summary{position:static}@media (width<=640px){.menu-group-heading{align-items:flex-start}.menu-group-meta{text-align:left;flex-basis:100%;justify-items:start}.menu-group-heading>.menu-group-note{flex-basis:100%}.cancellation-policy dl{grid-template-columns:1fr}.cancellation-policy dl>div:nth-child(2n){padding-left:0;padding-right:0}.menu-category-tabs{grid-template-columns:1fr}.menu-category-tabs button{min-height:58px;padding:11px 14px}.menu-option-grid,.henna-option-grid{grid-template-columns:1fr}.menu-option-card>button,.henna-option-grid>button{min-height:0;padding:15px}.henna-menu-group{border-radius:16px;padding:15px}.menu-selection-summary{border-radius:14px;padding:15px;bottom:8px}.reservation-date-time{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@media (width<=680px){.admin-page .add-workshop form>div,.admin-page .workshop-edit-form>div:not(.workshop-edit-actions){grid-template-columns:1fr}.admin-page .add-workshop form>div>label,.admin-page .workshop-edit-form label,.admin-page .add-workshop input,.admin-page .add-workshop select,.admin-page .add-workshop textarea,.admin-page .workshop-edit-form input,.admin-page .workshop-edit-form select,.admin-page .workshop-edit-form textarea{min-width:0}.admin-page .add-workshop input,.admin-page .add-workshop select,.admin-page .add-workshop textarea,.admin-page .workshop-edit-form input,.admin-page .workshop-edit-form select,.admin-page .workshop-edit-form textarea{font-size:16px}.admin-page .admin-workshops article{grid-template-columns:1fr}.admin-page .workshop-date-location{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.admin-page .workshop-capacity,.admin-page .workshop-actions,.admin-page .workshop-delete-note,.admin-page .admin-workshops .calendar-sync{grid-column:1}.admin-page .workshop-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.admin-page .workshop-action-button{min-height:42px;font-size:12px}.admin-page .workshop-edit-actions{grid-template-columns:1fr 1fr;display:grid}.admin-page .reservation-row-collapsible{cursor:pointer;position:relative}.admin-page .reservation-row-collapsible:after{color:var(--muted);content:"⌄";font-size:18px;line-height:1;transition:transform .16s;position:absolute;top:24px;right:10px}.admin-page .reservation-row-collapsible.reservation-row-expanded:after{transform:rotate(180deg)}.admin-page .reservation-row-collapsible:not(.reservation-row-expanded){grid-template-columns:52px minmax(0,1fr) 72px;align-items:center;gap:9px;min-height:68px;padding:9px 28px 9px 12px;display:grid}.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td{border:0;min-width:0;padding:0}.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td:before{display:none}.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td[data-label=日時]{display:block}.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td[data-label=日時]>*{display:none}.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td[data-label=日時]:after{color:var(--forest-950);content:attr(data-summary-date) "\a " attr(data-summary-time);white-space:pre;font-size:17px;font-weight:700;line-height:1.45;display:block}.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td[data-label="お客様 / 内容"]{display:block;overflow:hidden}.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td[data-label="お客様 / 内容"]>*{display:none}.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td[data-label="お客様 / 内容"]>.reservation-customer-link,.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td[data-label="お客様 / 内容"]>strong,.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td[data-label="お客様 / 内容"]>span:not(.reservation-contact){text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td[data-label="お客様 / 内容"]>.reservation-customer-link,.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td[data-label="お客様 / 内容"]>strong{color:var(--forest-950);font-size:20px;font-weight:800;line-height:1.35}.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td[data-label="お客様 / 内容"]>span:not(.reservation-contact){color:var(--muted);margin-top:3px;font-size:17px;font-weight:700;line-height:1.35}.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td[data-label=場所]{display:none}.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td[data-label=状況]{display:block}.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td[data-label=状況]>*{display:none}.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td[data-label=状況]:after{color:#59645d;content:attr(data-summary-status);text-align:center;white-space:nowrap;background:#e6e8e3;border-radius:999px;padding:7px 6px;font-size:17px;font-weight:800;line-height:1;display:block}.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td[data-summary-status-code=requested]:after{color:#8a4d31;background:#f2dfcc}.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td[data-summary-status-code=confirmed]:after{color:var(--forest-800);background:#dce7d5}.admin-page .reservation-row-collapsible:not(.reservation-row-expanded)>td[data-summary-status-code=cancelled]:after{color:#8b584c;background:#eee4e0}.admin-page .reservation-row-collapsible.reservation-row-expanded{padding:15px 18px;display:block}.admin-page .reservation-row-collapsible.reservation-row-expanded>td{font-size:18px;line-height:1.7}.admin-page .reservation-row-collapsible.reservation-row-expanded .reservation-event-summary small,.admin-page .reservation-row-collapsible.reservation-row-expanded .reservation-contact,.admin-page .reservation-row-collapsible.reservation-row-expanded .reservation-line-user-id,.admin-page .reservation-row-collapsible.reservation-row-expanded .reservation-source{color:var(--forest-800);font-weight:600;font-size:17px!important}.admin-page .reservation-row-collapsible.reservation-row-expanded .reservation-customer-notes strong{font-size:19px}.admin-page .reservation-row-collapsible.reservation-row-expanded .reservation-customer-notes p{font-size:19px;font-weight:600}.admin-page .reservation-row-collapsible.reservation-row-expanded .reservation-history-toggle>button,.admin-page .reservation-row-collapsible.reservation-row-expanded .reservation-event-history li time,.admin-page .reservation-row-collapsible.reservation-row-expanded .reservation-event-history li span{font-size:18px}.admin-page .reservation-row-collapsible.reservation-row-expanded .reservation-event-history li span{font-weight:800}}._page_esjnl_1{min-height:100vh;padding:32px clamp(20px,5vw,72px) 72px}._header_esjnl_6{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px;display:flex}._eyebrow_esjnl_15{color:var(--copper);letter-spacing:.18em;margin:0 0 4px;font-family:Georgia,serif;font-size:12px}._title_esjnl_23{color:var(--forest-950);font-family:var(--serif);margin:0;font-size:clamp(30px,5vw,48px);font-weight:500}._backLink_esjnl_31{border-bottom:1px solid var(--line);color:var(--forest-800);padding-bottom:3px}._search_esjnl_37{gap:10px;max-width:720px;margin-bottom:24px;display:flex}._search_esjnl_37 input{background:var(--cream);border:1px solid var(--line);border-radius:8px;flex:1;min-width:0;padding:12px 14px}._search_esjnl_37 button,._saveButton_esjnl_54{background:var(--forest-900);color:var(--cream);border:0;border-radius:8px;padding:11px 18px}._searchClear_esjnl_62{border:1px solid var(--line);color:var(--forest-800);border-radius:8px;justify-content:center;align-items:center;padding:11px 14px;display:inline-flex}._notice_esjnl_72{background:#fff3df;border:1px solid #a85d3d40;border-radius:12px;margin-bottom:24px;padding:16px 18px}._notice_esjnl_72 strong{margin-bottom:6px;display:block}._tableWrap_esjnl_85{background:var(--cream);border:1px solid var(--line);border-radius:16px;overflow-x:auto}._table_esjnl_85{border-collapse:collapse;width:100%;min-width:760px}._table_esjnl_85 th,._table_esjnl_85 td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:14px 16px}._table_esjnl_85 th{color:var(--muted);letter-spacing:.08em;font-size:12px;font-weight:600}._table_esjnl_85 tr:last-child td{border-bottom:0}._customerLink_esjnl_117{color:var(--forest-950);font-weight:700}._muted_esjnl_122{color:var(--muted);overflow-wrap:anywhere;margin-top:2px;font-size:12px;display:block}._badge_esjnl_130{border:1px solid var(--line);border-radius:999px;width:fit-content;padding:2px 9px;font-size:12px;display:inline-block}._mergeCandidateBadge_esjnl_139{color:#8b4f32;background:#fff0d9;border:1px solid #a85d3d52;border-radius:999px;width:fit-content;margin-top:6px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-block}._lineUserId_esjnl_152{overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}._mobileList_esjnl_157{display:none}._cards_esjnl_161{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0;display:grid}._card_esjnl_161,._panel_esjnl_169{background:var(--cream);border:1px solid var(--line);border-radius:16px;padding:20px}._card_esjnl_161 span,._fieldLabel_esjnl_177{color:var(--muted);font-size:12px;display:block}._card_esjnl_161 strong{color:var(--forest-950);font-family:var(--serif);margin-top:4px;font-size:24px;display:block}._detailGrid_esjnl_191{grid-template-columns:minmax(0,1fr) minmax(280px,.45fr);gap:20px;display:grid}._infoList_esjnl_197{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}._infoList_esjnl_197 p{margin:0}._history_esjnl_207{gap:12px;display:grid}._historyItem_esjnl_212{border-bottom:1px solid var(--line);grid-template-columns:110px 1fr auto;gap:6px;padding:12px 0;display:grid}._visitHistoryLink_esjnl_220{border:1px solid var(--line);color:var(--forest-950);border-radius:10px;grid-column:1/-1;grid-template-columns:minmax(90px,120px) minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;text-decoration:none;display:grid}._visitHistoryLink_esjnl_220>span{min-width:0}._visitHistoryLink_esjnl_220>span:first-child,._visitHistoryLink_esjnl_220>span:nth-child(2){gap:4px;display:grid}._visitHistoryLink_esjnl_220 small{color:var(--muted)}._visitHistoryAction_esjnl_237{text-align:right;justify-items:end;gap:5px;display:grid}._visitHistoryAction_esjnl_237>strong{color:var(--forest-950);font-size:15px}._visitHistoryAction_esjnl_237>small{color:var(--copper);white-space:nowrap;font-size:11px;font-weight:700}._visitHistoryLink_esjnl_220:hover{background:var(--parchment-soft);border-color:var(--copper)}._visitHistoryLink_esjnl_220:active{transform:translateY(1px)}._visitHistoryLink_esjnl_220:focus-visible{outline:2px solid var(--copper);outline-offset:2px}._visitSummary_esjnl_244{border-left:3px solid var(--copper);gap:3px;margin-top:8px;padding-left:10px;display:grid}._visitSummary_esjnl_244 span,._visitSummary_esjnl_244 strong{font-size:.9rem}._customer-history-actions_esjnl_257{flex-direction:column;align-items:flex-start;gap:6px;display:flex}._customer-history-status_esjnl_264{border:1px solid var(--line);border-radius:999px;width:fit-content;padding:2px 9px;font-size:12px;display:inline-block}._customer-history-buttons_esjnl_273{flex-wrap:wrap;gap:6px;display:flex}._customer-history-buttons_esjnl_273 ._button_esjnl_279{min-height:40px;padding:8px 11px;font-size:12px}._customer-history-message_esjnl_285{color:var(--muted);max-width:220px}._historyItem_esjnl_212:last-child{border-bottom:0}._profileForm_esjnl_294{gap:14px;display:grid}._verifiedBadge_esjnl_299{color:var(--forest-800);background:#dce7d5;border-radius:999px;margin-top:8px;padding:5px 9px;font-size:11px;font-weight:700;display:inline-block}._mergedNotice_esjnl_310{color:#704936;background:#f2dfcc;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 20px;margin:0 0 20px;padding:14px 16px;display:flex}._mergedNotice_esjnl_310 a{color:inherit;font-weight:700}._mergePanel_esjnl_328{margin-top:20px}._mergeIntro_esjnl_332,._mergeWarning_esjnl_333{color:var(--muted);font-size:13px;line-height:1.7}._mergeCandidates_esjnl_339{gap:12px;margin-top:16px;display:grid}._mergeCandidate_esjnl_139{background:var(--paper);border:1px solid var(--line);border-radius:10px;min-width:0;padding:14px}._mergeCandidate_esjnl_139>div:first-child{justify-content:space-between;align-items:baseline;gap:10px;display:flex}._mergeCandidate_esjnl_139>div:first-child span{color:var(--muted);font-size:11px}._mergeCandidate_esjnl_139 dl{gap:7px;margin:12px 0;display:grid}._mergeCandidate_esjnl_139 dl>div{grid-template-columns:75px minmax(0,1fr);gap:8px;display:grid}._mergeCandidate_esjnl_139 dt{color:var(--muted);font-size:12px}._mergeCandidate_esjnl_139 dd{overflow-wrap:anywhere;margin:0}._mergeCandidate_esjnl_139 button,._mergeButton_esjnl_388{background:var(--forest-800);color:var(--cream);border:0;border-radius:8px;min-height:40px;padding:9px 13px}._mergeButton_esjnl_388:disabled{cursor:not-allowed;opacity:.55}._profileForm_esjnl_294 select,._profileForm_esjnl_294 input,._profileForm_esjnl_294 textarea{background:var(--paper);border:1px solid var(--line);border-radius:8px;width:100%;padding:10px 12px}._profileForm_esjnl_294 textarea{resize:vertical;min-height:150px}._emailEditor_esjnl_417{gap:7px;display:grid}._emailEditor_esjnl_417>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}._emailEditor_esjnl_417 button{border:1px solid var(--line);color:var(--forest-800);background:0 0;border-radius:7px;padding:7px 9px}._emailEditor_esjnl_417 small{color:var(--muted);font-size:12px}._formMessage_esjnl_442{color:var(--muted);margin:0;font-size:13px}._dangerZone_esjnl_448{border-top:1px solid #94382e4d;margin-top:34px;padding-top:24px}._dangerZone_esjnl_448 h3,._deleteDialog_esjnl_455 h3{color:#74352f;font-family:var(--serif);margin:3px 0 10px;font-size:21px;font-weight:500}._dangerZone_esjnl_448>p:not(._dangerEyebrow_esjnl_463,._deleteBlocked_esjnl_463,._formMessage_esjnl_442),._deleteDialog_esjnl_455>p:not(._dangerEyebrow_esjnl_463){color:var(--muted);margin:0 0 14px;font-size:13px;line-height:1.75}._dangerEyebrow_esjnl_463{color:#925047;letter-spacing:.12em;margin:0;font-size:11px;font-weight:700}._deleteBlocked_esjnl_463{color:#74352f;background:#fff1ed;border-radius:8px;margin:14px 0;padding:11px 12px;font-size:13px;line-height:1.65}._deleteButton_esjnl_489{color:#fffaf2;background:#8d3f37;border:0;border-radius:8px;padding:10px 14px}._deleteButton_esjnl_489:disabled{cursor:not-allowed;opacity:.45}._dialogBackdrop_esjnl_502{z-index:100;background:#18201a7a;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}._deleteDialog_esjnl_455{background:var(--cream);border:1px solid #94382e47;border-radius:16px;width:100%;max-width:520px;max-height:calc(100vh - 40px);padding:24px;overflow-y:auto;box-shadow:0 18px 55px #18201a3d}._deleteSummary_esjnl_525{background:var(--paper);border-radius:10px;gap:9px;margin:18px 0;padding:14px;display:grid}._deleteSummary_esjnl_525>div{grid-template-columns:110px minmax(0,1fr);gap:8px;display:grid}._deleteSummary_esjnl_525 dt{color:var(--muted);font-size:12px}._deleteSummary_esjnl_525 dd{overflow-wrap:anywhere;margin:0}._dialogActions_esjnl_550{justify-content:flex-end;gap:10px;display:flex}._dialogActions_esjnl_550>button:not(._deleteButton_esjnl_489){border:1px solid var(--line);color:var(--forest-800);background:0 0;border-radius:8px;padding:10px 14px}._reviewList_esjnl_564{gap:8px;margin-top:10px;display:grid}._reviewItem_esjnl_570{background:#ffffff73;border-radius:8px;flex-wrap:wrap;gap:8px 16px;padding:9px 11px;display:flex}._empty_esjnl_579{color:var(--muted);text-align:center;padding:26px}@media (width<=760px){._visitHistoryLink_esjnl_220{grid-template-columns:minmax(0,1fr) auto;gap:8px;min-height:44px}._visitHistoryLink_esjnl_220>span:nth-child(2){grid-area:2/1/auto/-1}._visitHistoryAction_esjnl_237{grid-area:1/2}._customer-history-actions_esjnl_257{align-items:stretch}._customer-history-buttons_esjnl_273 ._button_esjnl_279{flex:1}._page_esjnl_1{padding:24px 16px 56px}._header_esjnl_6{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:24px}._backLink_esjnl_31{font-size:13px}._search_esjnl_37{flex-direction:column}._search_esjnl_37 input,._profileForm_esjnl_294 input,._profileForm_esjnl_294 select,._profileForm_esjnl_294 textarea{font-size:16px}._cards_esjnl_161,._detailGrid_esjnl_191,._infoList_esjnl_197{grid-template-columns:1fr}._dialogActions_esjnl_550{flex-direction:column-reverse}._dialogActions_esjnl_550 button{width:100%;min-height:44px}._mergeCandidate_esjnl_139{font-size:17px;line-height:1.55}._mergeCandidate_esjnl_139>div:first-child span,._mergeCandidate_esjnl_139 dt,._mergeCandidate_esjnl_139 dd,._mergeWarning_esjnl_333,._deleteSummary_esjnl_525 dt,._deleteSummary_esjnl_525 dd{font-size:16px;line-height:1.55}._mergeCandidate_esjnl_139 button,._mergeButton_esjnl_388{min-height:48px;font-size:17px}._mergeCandidate_esjnl_139 dl>div{grid-template-columns:88px minmax(0,1fr)}._deleteDialog_esjnl_455{box-sizing:border-box;min-width:0;max-width:100%;max-height:calc(100dvh - 32px);padding:18px}._deleteSummary_esjnl_525>div{grid-template-columns:1fr;gap:3px}._historyItem_esjnl_212{grid-template-columns:1fr}._tableWrap_esjnl_85{display:none}._mobileList_esjnl_157{gap:10px;display:grid}._mobileCustomer_esjnl_699{background:var(--cream);border:1px solid var(--line);border-radius:12px;overflow:hidden}._mobileCustomer_esjnl_699 summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 16px;list-style:none;display:grid}._mobileCustomer_esjnl_699 summary::-webkit-details-marker{display:none}._mobileCustomer_esjnl_699 summary:after{color:var(--muted);content:"＋";grid-area:1/2;font-size:18px}._mobileCustomer_esjnl_699[open] summary:after{content:"−"}._mobileCustomerName_esjnl_732{min-width:0;display:block}._mobileCustomerName_esjnl_732 strong{color:var(--forest-950);font-size:16px;line-height:1.45;display:block}._mobileCustomerName_esjnl_732 small{color:var(--muted);overflow-wrap:anywhere;margin-top:2px;font-size:11px;display:block}._mobileCustomerMeta_esjnl_752{flex-direction:column;align-items:flex-end;gap:3px;padding-right:30px;display:flex}._mobileCustomerMeta_esjnl_752>span:not(._badge_esjnl_130){color:var(--muted);white-space:nowrap;font-size:10px}._mobileCustomerMeta_esjnl_752 ._badge_esjnl_130{padding:1px 7px;font-size:10px}._mobileCustomerBody_esjnl_771{border-top:1px solid var(--line);padding:14px 16px 16px}._mobileCustomerBody_esjnl_771 dl{gap:9px;margin:0;display:grid}._mobileCustomerBody_esjnl_771 dl>div{grid-template-columns:82px minmax(0,1fr);gap:10px;display:grid}._mobileCustomerBody_esjnl_771 dt{color:var(--muted);font-size:11px}._mobileCustomerBody_esjnl_771 dd{overflow-wrap:anywhere;margin:0}._mobileCustomerOpen_esjnl_798{background:var(--forest-900);color:var(--cream);text-align:center;border-radius:8px;margin-top:16px;padding:11px 14px;display:block}._mobileEmpty_esjnl_808{background:var(--cream);border:1px solid var(--line);color:var(--muted);text-align:center;border-radius:12px;margin:0;padding:20px 16px}}._page_yy689_1{min-height:100vh;overflow-x:clip}._intro_yy689_2{background:var(--parchment,#f1eadb);justify-content:space-between;align-items:end;padding:54px max(24px,5vw) 36px;display:flex}._intro_yy689_2 p,._detailHeading_yy689_3 p,._storyCopy_yy689_3>p{color:var(--copper,#a86f42);letter-spacing:.18em;margin:0 0 8px;font-size:11px;font-weight:700}._intro_yy689_2 h1{color:var(--forest,#203a31);font-family:var(--font-serif,Georgia, serif);margin:0 0 14px;font-size:clamp(36px,5vw,64px);font-weight:500;line-height:1}._intro_yy689_2 span{color:#5f6962;font-size:14px}._layout_yy689_6{background:#f7f3e9;grid-template-columns:minmax(0,1.6fr) minmax(300px,.8fr);gap:28px;padding:34px max(18px,5vw) 70px;display:grid;position:relative}._calendarPanel_yy689_7,._detailPanel_yy689_7,._storySection_yy689_7{background:#fffdf7;border:1px solid #233a3126;border-radius:22px;box-shadow:0 14px 45px #233a310d}._calendarPanel_yy689_7{min-width:0;padding:24px}._monthNav_yy689_9{grid-template-columns:1fr auto 1fr;align-items:center;margin-bottom:20px;display:grid}._monthNav_yy689_9 h2{color:#203a31;text-align:center;margin:0;font-family:Georgia,serif;font-size:28px;font-weight:500}._monthNav_yy689_9 a{color:#58655f;font-size:13px;text-decoration:none}._monthNav_yy689_9 a:last-child{text-align:right}._weekdays_yy689_13,._calendarGrid_yy689_13{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}._weekdays_yy689_13 span{color:#78817c;text-align:center;padding:0 3px 8px;font-size:11px}._day_yy689_15,._blankDay_yy689_15{min-width:0}._day_yy689_15{color:#203a31;text-align:left;background:#fffdf8;border:1px solid #233a3121;flex-direction:column;min-height:112px;padding:10px 8px;transition:border-color .16s,transform .16s;display:flex}._day_yy689_15:hover,._day_yy689_15:focus-visible{z-index:1;border-color:#a86f42;position:relative}._selectedDay_yy689_18{z-index:1;position:relative;box-shadow:inset 0 0 0 2px #a86f42}._day_yy689_15 strong{order:1;margin-bottom:7px;font-family:Georgia,serif;font-size:20px;display:block}._day_yy689_15 span{display:none}._day_yy689_15 small,._day_yy689_15 em{display:block}._day_yy689_15 em{color:#9a643b;overflow-wrap:anywhere;order:2;min-height:2.6em;margin-top:1px;font-size:12px;font-style:normal;font-weight:700;line-height:1.3;overflow:hidden}._day_yy689_15 small{color:#66716b;order:3;margin-top:7px;font-size:12px;font-weight:600}._mode_closed_yy689_24{background:#e9ebe5}._mode_custom_hours_yy689_25{background:#f6ead9}._mode_booking_paused_yy689_26{background:#efe5df}._detailPanel_yy689_7{align-self:start;padding:26px;position:sticky;top:18px}._detailHeading_yy689_3 h2{color:#203a31;margin:0 0 20px;font-family:Georgia,serif;font-size:30px;font-weight:500}._warning_yy689_29{color:#6e5038;background:#f7eadc;border-left:3px solid #a86f42;padding:12px;font-size:12px;line-height:1.7}._field_yy689_30{gap:7px;margin-top:16px;display:grid}._field_yy689_30>span{color:#384a42;font-size:12px;font-weight:700}._field_yy689_30 input,._field_yy689_30 select{appearance:none;color:#203a31;font:inherit;background:#fff;border:1px solid #233a313d;border-radius:10px;width:100%;min-height:48px;padding:10px 12px;font-size:16px}._field_yy689_30 small{color:#707a74;line-height:1.5}._timeFields_yy689_34{grid-template-columns:1fr 1fr;gap:10px;display:grid}._saveButton_yy689_35,._storyCopy_yy689_3 button{color:#f6f0e2;cursor:pointer;background:#203a31;border:0;border-radius:999px;width:100%;min-height:48px;margin-top:20px;padding:12px 20px;font-weight:700}._saveButton_yy689_35:disabled{opacity:.55}._bookingBlocks_yy689_37{border-top:1px solid #233a3124;margin-top:24px;padding-top:20px}._bookingBlocks_yy689_37 h3{color:#203a31;margin:0 0 8px;font-family:Georgia,serif;font-size:21px;font-weight:500}._bookingBlocks_yy689_37>p{color:#707a74;margin:0 0 12px;font-size:12px;line-height:1.7}._blockList_yy689_40{gap:8px;margin:12px 0 4px;display:grid}._blockItem_yy689_41{background:#f7eadc;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}._blockItem_yy689_41 div{min-width:0}._blockItem_yy689_41 strong,._blockItem_yy689_41 small{display:block}._blockItem_yy689_41 strong{color:#203a31;font-size:13px}._blockItem_yy689_41 small{color:#765a43;overflow-wrap:anywhere;margin-top:3px}._blockItem_yy689_41 button{color:#7a472a;cursor:pointer;background:0 0;border:1px solid #7a472a57;border-radius:999px;flex:none;min-height:34px;padding:6px 12px;font-size:11px}._blockItem_yy689_41 button:disabled{cursor:default;opacity:.5}._emptyBlock_yy689_48{color:#7b847f;margin:10px 0 2px;display:block}._blockTimeFields_yy689_49{grid-template-columns:1fr 1fr;gap:10px;display:grid}._blockAddButton_yy689_50{color:#fff;cursor:pointer;background:#a86f42;border:0;border-radius:999px;width:100%;min-height:44px;margin-top:16px;padding:10px 18px;font-weight:700}._blockAddButton_yy689_50:disabled{cursor:default;opacity:.55}._blockHelp_yy689_52{color:#707a74;margin-top:8px;line-height:1.6;display:block}._reservations_yy689_53{border-top:1px solid #233a3124;margin-top:24px;padding-top:20px}._reservations_yy689_53 h3{color:#203a31;margin:0 0 12px;font-family:Georgia,serif;font-size:21px;font-weight:500}._reservations_yy689_53>p{color:#707a74;font-size:13px}._reservations_yy689_53 article{border-top:1px solid #233a311a;grid-template-columns:48px 1fr auto;align-items:start;gap:10px;padding:12px 0;display:grid}._reservations_yy689_53 article strong{font-size:13px}._reservations_yy689_53 article div span,._reservations_yy689_53 article div small{display:block}._reservations_yy689_53 article div span{font-size:13px;font-weight:700}._reservations_yy689_53 article div small{color:#707a74;margin-top:3px}._reservations_yy689_53 article em{color:#a86f42;font-size:10px;font-style:normal}._reservationVisitLink_yy689_62{color:#203a31;background:#faf7ee;border:1px solid #233a3133;border-radius:12px;grid-template-columns:48px minmax(0,1fr) 18px;align-items:center;gap:10px;min-height:44px;margin-top:8px;padding:10px 12px;text-decoration:none;transition:background-color .16s,border-color .16s,transform .16s;display:grid}._reservationVisitLink_yy689_62:hover{background:#f4eedf;border-color:#a86f42}._reservationVisitLink_yy689_62:active{transform:translateY(1px)}._reservationVisitLink_yy689_62:focus-visible{outline-offset:2px;outline:2px solid #a86f42}._reservationVisitMain_yy689_80{gap:3px;min-width:0;display:grid}._reservationVisitMain_yy689_80>span:first-child{overflow-wrap:anywhere;font-size:13px;font-weight:700}._reservationVisitMain_yy689_80>small{color:#536159;overflow-wrap:anywhere;font-size:12px;line-height:1.45}._reservationVisitMeta_yy689_83{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}._reservationVisitMeta_yy689_83 em{color:#855b39;font-size:10px;font-style:normal;font-weight:700}._reservationVisitMeta_yy689_83 strong{font-size:12px}._reservationVisitArrow_yy689_86{color:#855b39;justify-self:end;font-size:18px;font-weight:600}._storySection_yy689_7{grid-column:1;grid-template-columns:minmax(0,.7fr) minmax(0,1fr);align-items:center;gap:42px;min-width:0;padding:34px;display:grid}._storyCopy_yy689_3 h2{color:#203a31;margin:0 0 12px;font-family:Georgia,serif;font-size:36px;font-weight:500}._storyCopy_yy689_3>span{color:#66716b;line-height:1.8;display:block}._storyCopy_yy689_3 small{color:#77817b;text-align:center;margin-top:10px;display:block}._storyPreview_yy689_91{aspect-ratio:9/16;box-sizing:border-box;color:#f3ebdc;background:linear-gradient(160deg,#29493d,#13271f);border:1px solid #c58a5280;flex-direction:column;justify-self:center;width:min(100%,360px);max-height:640px;padding:28px 24px 18px;display:flex;position:relative;overflow:hidden}._storyPreview_yy689_91 header{text-align:center;flex:none}._storyPreview_yy689_91 header small{letter-spacing:.08em;font-family:Georgia,serif}._storyPreview_yy689_91 header h3{margin:12px 0 18px;font-family:Georgia,serif;font-size:25px;font-weight:500}._storyRows_yy689_95{column-count:2;column-fill:auto;flex:auto;column-gap:12px;min-height:0;overflow:hidden}._storyRows_yy689_95 p{break-inside:avoid;grid-template-columns:40px minmax(0,1fr);gap:4px;margin:0 0 7px;font-size:9px;line-height:1.15;display:grid}._storyRows_yy689_95 p>span{color:#fff8ece0;text-shadow:0 1px 2px #0000002e;white-space:nowrap;font-size:9px;font-weight:600}._storyRows_yy689_95 p strong{overflow-wrap:anywhere;color:#fffcf5fa;text-shadow:0 1px 2px #0000002e;font-size:11px;font-weight:700;line-height:1.15}._storyPreview_yy689_91 footer{color:#c58a52;text-align:center;flex:none;gap:5px;margin-top:10px;font-family:Georgia,serif;display:grid;position:static}._storyPreview_yy689_91 footer span{color:#d6b091d1;font-family:Yu Gothic,sans-serif;font-size:6px;font-weight:500}._storyPreview_yy689_91 footer strong{color:#d6b091e6;font-size:8px;font-weight:600}._notice_yy689_102{color:#fff;z-index:20;background:#203a31;border-radius:999px;max-width:calc(100vw - 36px);margin:0;padding:12px 20px;font-size:13px;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}@media (width<=1200px){._storySection_yy689_7{grid-template-columns:1fr}}@media (width<=900px){._layout_yy689_6{grid-template-columns:1fr}._detailPanel_yy689_7{position:static}._storySection_yy689_7{grid-column:1}}@media (width<=520px){._intro_yy689_2{padding:34px 18px 24px}._intro_yy689_2 h1{font-size:38px}._layout_yy689_6{gap:18px;padding:18px 12px 54px}._calendarPanel_yy689_7,._detailPanel_yy689_7,._storySection_yy689_7{border-radius:16px}._calendarPanel_yy689_7{padding:14px 8px 12px}._monthNav_yy689_9{padding:0 4px}._monthNav_yy689_9 h2{font-size:21px}._monthNav_yy689_9 a{font-size:11px}._day_yy689_15{min-height:82px;padding:7px 3px}._day_yy689_15 strong{margin-bottom:5px;font-size:16px}._day_yy689_15 em{min-height:2.4em;font-size:10px;line-height:1.2}._day_yy689_15 small{margin-top:5px;font-size:10px}._detailPanel_yy689_7{padding:20px 16px}._timeFields_yy689_34,._blockTimeFields_yy689_49{grid-template-columns:1fr}._storySection_yy689_7{grid-template-columns:1fr;gap:26px;padding:24px 16px}._storyCopy_yy689_3 h2{font-size:29px}._storyPreview_yy689_91{width:min(100%,300px);max-height:none}}
