@import "https://api.fontshare.com/v2/css?f[]=cabinet-grotesk@700&f[]=switzer@400,600&display=swap";.firebase-notice,.firebase-empty,.salon-loading{gap:var(--space-xs);padding:var(--space-lg);border:var(--rule-hairline);border-radius:var(--radius-md);background:var(--color-paper-2);color:var(--color-ink);margin-block-start:var(--space-lg);display:grid}.firebase-notice span,.firebase-empty p,.salon-loading,.loading-copy,.empty-copy{color:var(--color-muted)}.avatar--image{object-fit:cover;background:var(--color-paper-2);color:var(--color-ink)}.barber-card .avatar--image{width:3.5rem;height:3.5rem}.loading-copy,.empty-copy{padding-block:var(--space-md)}.admin-loading,.admin-login{min-height:100dvh;padding:var(--space-lg);background:var(--color-paper-2);color:var(--color-ink);place-items:center;display:grid}.admin-back{white-space:nowrap;min-height:44px;position:fixed;inset-block-start:var(--space-lg);inset-inline-start:var(--space-lg)}.admin-login__card{gap:var(--space-lg);width:min(100%,28rem);padding:var(--space-xl);border:var(--rule-hairline);border-radius:var(--radius-lg);background:var(--color-paper);color:var(--color-ink);display:grid}.admin-login__card img{border-radius:50%;width:4.5rem;height:4.5rem}.admin-login__card h1{font-size:var(--text-xl)}.admin-login__card p{color:var(--color-muted)}.admin-login__card code{overflow-wrap:anywhere;color:var(--color-ink)}.admin-shell{background:var(--color-paper);min-height:100dvh;color:var(--color-ink)}.admin-header{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-sm) clamp(var(--space-md), 4vw, var(--space-xl));border-block-end:var(--rule-hairline);display:flex}.admin-layout{min-width:0;display:grid}.admin-nav{gap:var(--space-xs);padding:var(--space-sm) var(--space-md);border-block-end:var(--rule-hairline);display:flex;overflow-x:auto}.admin-nav button{min-height:44px;padding-inline:var(--space-md);border-radius:var(--radius-sm);color:var(--color-muted);text-transform:capitalize;white-space:nowrap;background:0 0;border:0;font-weight:600}.admin-nav button.is-active{background:var(--color-ink);color:var(--color-paper)}.admin-main{align-content:start;gap:var(--space-lg);min-width:0;padding:var(--space-lg) var(--space-md) var(--space-3xl);display:grid}.admin-title{justify-content:space-between;align-items:flex-start;gap:var(--space-md);flex-direction:column;display:flex}.admin-title h1{font-size:var(--text-2xl);text-transform:capitalize}.admin-title p{color:var(--color-muted);margin-block-start:var(--space-xs)}.admin-editor{gap:var(--space-lg);max-width:38rem;padding:var(--space-lg);border:var(--rule-hairline);border-radius:var(--radius-md);background:var(--color-paper-2);color:var(--color-ink);display:grid}.admin-editor--wide{max-width:56rem}.admin-editor__head{justify-content:space-between;align-items:center;gap:var(--space-md);display:flex}.admin-editor__head h3{font-size:var(--text-lg)}.admin-editor__head button,.admin-actions button,.admin-table button{min-height:44px;padding-inline:var(--space-sm);color:var(--color-ink);white-space:nowrap;background:0 0;border:0;font-weight:600}.admin-form-grid,.admin-check-grid{gap:var(--space-md);grid-template-columns:minmax(0,1fr);display:grid}.admin-note{color:var(--color-muted);font-size:var(--text-sm)}.check-row{align-items:center;gap:var(--space-xs);min-height:44px;display:flex}.check-row input{width:1.125rem;height:1.125rem;accent-color:var(--color-accent)}.admin-fieldset{gap:var(--space-sm);padding-block:var(--space-md);border-block:var(--rule-hairline);display:grid}.hours-list{gap:var(--space-xs);display:grid}.hours-row{align-items:center;gap:var(--space-xs);grid-template-columns:minmax(7rem,1fr) minmax(0,1fr) auto minmax(0,1fr);display:grid}.hours-row input[type=time],.holiday-add input{min-width:0;min-height:44px;padding:var(--space-xs);border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-ink);outline:2px solid #0000}.hours-row input:focus-visible,.holiday-add input:focus-visible{outline-color:var(--color-focus)}.holiday-add{gap:var(--space-sm);flex-wrap:wrap;display:flex}.holiday-list{gap:var(--space-xs);flex-wrap:wrap;display:flex}.holiday-list button{min-height:44px;padding-inline:var(--space-sm);border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-ink);white-space:nowrap}.admin-table-wrap{border:var(--rule-hairline);border-radius:var(--radius-md);min-width:0;overflow-x:auto}.admin-booking-groups{gap:var(--space-xl);display:grid}.booking-period-nav{gap:var(--space-2xs);max-width:34rem;padding:var(--space-2xs);border:var(--rule-hairline);border-radius:var(--radius-md);background:var(--color-paper-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.booking-period-nav button{justify-content:center;align-items:center;gap:var(--space-3xs);min-width:0;min-height:52px;padding:var(--space-xs);border-radius:var(--radius-sm);color:var(--color-muted);background:0 0;border:0;flex-direction:column;line-height:1;display:flex}.booking-period-nav button span{text-overflow:ellipsis;text-transform:capitalize;white-space:nowrap;max-width:100%;overflow:hidden}.booking-period-nav button strong{color:inherit;font-size:var(--text-xs);font-variant-numeric:tabular-nums}.booking-period-nav button.is-active{background:var(--color-ink);color:var(--color-paper)}.admin-booking-group{gap:var(--space-sm);min-width:0;display:grid}.admin-booking-group__head{justify-content:space-between;align-items:baseline;gap:var(--space-md);display:flex}.admin-booking-group__head h2{font-size:var(--text-lg)}.admin-booking-group__head span{color:var(--color-muted);font-size:var(--text-sm)}.admin-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;min-width:48rem}.admin-table th,.admin-table td{padding:var(--space-sm);border-block-end:var(--rule-hairline);text-align:start;vertical-align:top}.admin-table th{background:var(--color-paper-2);color:var(--color-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em}.admin-table td small{color:var(--color-muted);margin-block-start:var(--space-2xs);display:block}.admin-card-list{gap:var(--space-sm);display:grid}.admin-review-list{gap:var(--space-sm);max-width:56rem;display:grid}.admin-review-card{gap:var(--space-sm);padding:var(--space-lg);border:var(--rule-hairline);border-radius:var(--radius-md);background:var(--color-paper);display:grid}.admin-review-card__head{justify-content:space-between;align-items:flex-start;gap:var(--space-md);display:flex}.admin-review-card__head>div{gap:var(--space-2xs);display:grid}.admin-review-card__head span,.admin-review-card>p{color:var(--color-muted)}.admin-review-card>p{overflow-wrap:anywhere;max-width:65ch}.admin-review-card .admin-review-rating{color:var(--color-accent);letter-spacing:.08em}.review-status{padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-round);font-size:var(--text-xs);text-transform:capitalize;white-space:nowrap;border:1px solid;font-weight:600;line-height:1}.review-status--approved{color:var(--color-success)!important}.review-status--pending{color:var(--color-accent)!important}.review-status--hidden{color:var(--color-muted)!important}.admin-barber-card{align-items:center;gap:var(--space-md);padding:var(--space-md);border:var(--rule-hairline);border-radius:var(--radius-md);grid-template-columns:auto minmax(0,1fr);display:grid}.admin-barber-card>img{object-fit:cover;border-radius:50%;width:5rem;height:5rem}.admin-barber-card p,.admin-barber-card small{color:var(--color-muted)}.admin-actions{gap:var(--space-xs);grid-column:1/-1;display:flex}.admin-empty{padding:var(--space-xl);color:var(--color-muted)}@media (hover:hover) and (pointer:fine){.admin-nav button:hover,.admin-editor__head button:hover,.admin-actions button:hover,.admin-table button:hover,.holiday-list button:hover{background:var(--color-paper-2);color:var(--color-ink)}.booking-period-nav button:not(.is-active):hover{background:var(--color-paper);color:var(--color-ink)}}@media (width>=40rem){.admin-title{flex-direction:row;align-items:center}.admin-form-grid,.admin-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-barber-card{grid-template-columns:auto minmax(0,1fr) auto}.admin-actions{grid-column:auto}.booking-period-nav button{gap:var(--space-xs);flex-direction:row;min-height:44px}}@media (width>=60rem){.admin-layout{grid-template-columns:14rem minmax(0,1fr)}.admin-nav{min-height:calc(100dvh - 4.75rem);padding:var(--space-lg);border-block-end:0;border-inline-end:var(--rule-hairline);flex-direction:column}.admin-nav button{text-align:start;justify-content:flex-start}.admin-main{padding:var(--space-xl)}}@media (width<=28rem){.hours-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hours-row .check-row{grid-column:1/-1}.hours-row>span{display:none}}:root{--color-paper:oklch(97% .009 78);--color-paper-2:oklch(94% .012 78);--color-paper-3:oklch(91% .014 78);--color-ink:oklch(18% .012 70);--color-ink-2:oklch(30% .012 70);--color-muted:oklch(43% .012 72);--color-neutral:oklch(38% .01 72);--color-rule:oklch(80% .013 78);--color-rule-2:oklch(86% .013 78);--color-accent:oklch(58% .145 70);--color-accent-ink:oklch(18% .012 70);--color-focus:oklch(53% .2 67);--color-error:oklch(50% .19 28);--color-success:oklch(48% .12 145);--color-overlay:oklch(18% .012 70/.58);--color-shadow:oklch(22% .012 70/.08);--font-display:"Cabinet Grotesk", ui-sans-serif, sans-serif;--font-body:"Switzer", ui-sans-serif, sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-md:1.125rem;--text-lg:1.375rem;--text-xl:1.75rem;--text-2xl:2.25rem;--space-3xs:.125rem;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:6rem;--radius-sm:.375rem;--radius-md:.75rem;--radius-lg:1.125rem;--radius-round:999px;--rule-hairline:1px solid var(--color-rule-2);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--z-base:1;--z-raised:10;--z-sticky:200;--z-modal:400}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--color-paper);overflow-x:clip}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-base);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5;overflow-x:clip}button,input,select,textarea{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:active,a:active{transform:translateY(1px)}button:disabled,button[aria-disabled=true],input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.55}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,p,dl,dd{margin:0}h1,h2,h3{overflow-wrap:anywhere;min-width:0;font-family:var(--font-display);font-style:normal;line-height:1.08}:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.site-header{z-index:var(--z-sticky);min-height:4.75rem;padding:var(--space-sm) clamp(var(--space-md), 4vw, var(--space-xl));border-block-end:var(--rule-hairline);background:var(--color-paper);color:var(--color-ink);justify-content:space-between;align-items:center;display:flex;position:relative}.brand-lockup{align-items:center;gap:var(--space-sm);white-space:nowrap;min-height:44px;font-family:var(--font-display);font-size:var(--text-md);letter-spacing:-.02em;font-weight:700;display:inline-flex}.brand-lockup img{object-fit:cover;border-radius:50%;width:2.75rem;height:2.75rem}.button{justify-content:center;align-items:center;gap:var(--space-xs);min-height:44px;padding:var(--space-sm) var(--space-lg);border:1px solid var(--color-ink);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-ink);white-space:nowrap;transition:background-color var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);font-weight:600;line-height:1;display:inline-flex}.button--primary,.button--header{background:var(--color-ink);color:var(--color-paper)}.button--secondary{border-color:var(--color-rule);background:var(--color-paper);color:var(--color-ink)}.button--full{width:100%}.button:active{transform:translateY(1px)}.button:disabled,.button[aria-disabled=true]{cursor:not-allowed;opacity:.5}.button[data-state=loading]{cursor:wait}.button[data-state=error]{border-color:var(--color-error);color:var(--color-error)}.button[data-state=success]{border-color:var(--color-success);color:var(--color-success)}.page-shell{width:min(100% - 2rem,70rem);padding-block:var(--space-lg) var(--space-3xl);margin-inline:auto}.brand-banner{border:var(--rule-hairline);border-radius:var(--radius-lg);background:var(--color-paper-2);min-height:15rem;color:var(--color-ink);place-items:center;display:grid;position:relative;overflow:clip}.brand-banner:after{content:"";background:var(--color-accent);height:1px;position:absolute;inset-block-end:0;inset-inline:8%}.brand-banner img{object-fit:contain;object-position:center;mix-blend-mode:multiply;width:min(22rem,78%);height:auto;max-height:13rem}.content-layout{gap:var(--space-xl);padding-block-start:var(--space-lg);display:grid}.main-column{min-width:0}.shop-intro{gap:var(--space-xs);padding-block:var(--space-sm) var(--space-lg);display:grid}.location-line{align-items:center;gap:var(--space-xs);color:var(--color-muted);font-size:var(--text-sm);display:flex}.shop-intro h1{font-size:clamp(2rem, 5vw, var(--text-2xl));letter-spacing:-.045em}.shop-status{color:var(--color-neutral);font-size:var(--text-sm)}.section-nav{gap:var(--space-lg);border-block-end:var(--rule-hairline);scrollbar-width:none;display:flex;overflow-x:auto}.section-nav a{min-height:3rem;color:var(--color-muted);font-size:var(--text-sm);white-space:nowrap;place-items:center;font-weight:600;display:grid;position:relative}.section-nav a:first-child{color:var(--color-ink)}.section-nav a:first-child:after{content:"";background:var(--color-ink);height:2px;position:absolute;inset-block-end:-1px;inset-inline:0}.content-section{gap:var(--space-lg);padding-block:var(--space-xl);border-block-end:var(--rule-hairline);scroll-margin-top:var(--space-lg);display:grid}.section-heading{justify-content:space-between;align-items:baseline;gap:var(--space-md);display:flex}.section-heading h2{font-size:var(--text-lg);letter-spacing:-.025em}.section-heading>span{color:var(--color-muted);font-size:var(--text-sm)}.barber-grid,.service-grid{gap:var(--space-sm);grid-template-columns:minmax(0,1fr);display:grid}.barber-card{align-items:center;gap:var(--space-sm);min-width:0;padding:var(--space-md);border:var(--rule-hairline);border-radius:var(--radius-md);background:var(--color-paper);color:var(--color-ink);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.avatar{background:var(--color-paper-3);width:3.5rem;height:3.5rem;color:var(--color-ink-2);font-family:var(--font-display);font-size:var(--text-sm);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.avatar--small{width:2.25rem;height:2.25rem;font-size:var(--text-xs)}.barber-card h3,.service-card h3{font-size:var(--text-base);letter-spacing:-.015em}.barber-card p,.service-card p{align-items:center;gap:var(--space-2xs);color:var(--color-muted);font-size:var(--text-xs);margin-block-start:var(--space-2xs);display:flex}.text-action,.show-all,.service-card button,.site-footer button{align-items:center;gap:var(--space-2xs);min-height:44px;color:var(--color-ink);white-space:nowrap;background:0 0;border:0;padding:0;font-weight:600;display:inline-flex}.service-card{justify-content:space-between;gap:var(--space-lg);min-height:10rem;padding:var(--space-md);border:var(--rule-hairline);border-radius:var(--radius-md);background:var(--color-paper);color:var(--color-ink);flex-direction:column;display:flex}.service-card__foot{justify-content:space-between;align-items:center;gap:var(--space-sm);font-variant-numeric:tabular-nums;display:flex}.service-card__foot strong{font-size:var(--text-sm)}.service-card button{min-height:2.5rem;padding-inline:var(--space-md);border:1px solid var(--color-rule);border-radius:var(--radius-sm)}.show-all{border-block-end:1px solid var(--color-ink);justify-self:start}.booking-card{align-content:start;gap:var(--space-sm);padding:var(--space-lg);border:var(--rule-hairline);border-radius:var(--radius-md);background:var(--color-paper);color:var(--color-ink);display:grid}.booking-card__mark{min-height:8rem;margin:calc(var(--space-lg) * -1) calc(var(--space-lg) * -1) var(--space-sm);border-block-end:var(--rule-hairline);background:var(--color-paper-2);color:var(--color-ink);place-items:center;display:grid;overflow:clip}.booking-card__mark img{object-fit:cover;mix-blend-mode:multiply;border-radius:50%;width:5rem;height:5rem}.booking-card h2{font-size:var(--text-md)}.booking-card>p{color:var(--color-muted);font-size:var(--text-sm)}.quick-details{gap:var(--space-sm);padding-block:var(--space-md);border-block:var(--rule-hairline);grid-template-columns:repeat(2,minmax(0,1fr));margin-block-start:var(--space-sm);display:grid}.quick-details div{gap:var(--space-2xs);display:grid}.quick-details dt{color:var(--color-muted);font-size:var(--text-xs)}.quick-details dd{font-family:var(--font-display);font-size:var(--text-lg);font-weight:700}.address-note{align-items:center;gap:var(--space-xs);display:flex}.review-empty{justify-items:start;gap:var(--space-sm);padding:var(--space-xl) 0;display:grid}.review-empty__icon{border:1px solid var(--color-accent);width:3rem;height:3rem;color:var(--color-accent);border-radius:50%;place-items:center;display:grid}.review-empty h3{font-size:var(--text-md)}.review-empty p{max-width:46ch;color:var(--color-muted)}.review-form{gap:var(--space-md);padding:var(--space-lg);border:var(--rule-hairline);border-radius:var(--radius-md);grid-template-columns:minmax(0,1fr);display:grid;position:relative}.review-form__head{gap:var(--space-2xs);display:grid}.review-form__head h3{font-size:var(--text-md)}.review-form__head p{color:var(--color-muted);font-size:var(--text-sm)}.review-trap{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.review-form__message{min-height:1.4em;color:var(--color-muted);font-size:var(--text-sm);margin:0}.review-form__message.is-error{color:var(--color-error)}.review-form__message.is-success{color:var(--color-success)}.review-list{gap:var(--space-md);display:grid}.review-card{gap:var(--space-sm);padding-block:var(--space-lg);border-block-end:var(--rule-hairline);display:grid}.review-card>div{justify-content:space-between;gap:var(--space-md);display:flex}.review-card__head>div{gap:var(--space-2xs);display:grid}.review-card p{overflow-wrap:anywhere;max-width:65ch}.review-card span{color:var(--color-muted);font-variant-numeric:tabular-nums}.review-card .review-stars{color:var(--color-accent);letter-spacing:.08em;white-space:nowrap}.site-footer{background:var(--color-ink);width:100%;color:var(--color-paper);font-size:var(--text-sm)}.site-footer__inner{gap:var(--space-xl);width:min(100% - 2rem,70rem);padding-block:var(--space-xl) var(--space-lg);margin-inline:auto;display:grid}.site-footer__brand{gap:var(--space-2xs);display:grid}.site-footer__brand strong{font-family:var(--font-display);font-size:var(--text-md);letter-spacing:-.02em}.site-footer__brand span,.site-footer__meta{color:var(--color-rule)}.site-footer__nav{align-items:center;gap:var(--space-xs) var(--space-lg);flex-wrap:wrap;display:flex}.site-footer__nav a{white-space:nowrap;align-items:center;min-height:44px;display:inline-flex}.site-footer__nav button{min-height:44px;padding-inline:var(--space-md);border:1px solid var(--color-paper);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-ink);font-size:inherit;white-space:nowrap}.site-footer__meta{justify-content:space-between;gap:var(--space-xs) var(--space-lg);border-block-start:1px solid var(--color-ink-2);font-size:var(--text-xs);flex-wrap:wrap;padding-block-start:var(--space-md);display:flex}.booking-page{background:var(--color-paper-2);min-height:100dvh;color:var(--color-ink)}.booking-page-header .dialog-step{white-space:nowrap}.booking-page__main{width:min(100% - 2rem,48rem);padding-block:var(--space-lg) var(--space-3xl);margin-inline:auto}.booking-page__panel{border:var(--rule-hairline);border-radius:var(--radius-lg);background:var(--color-paper);color:var(--color-ink);display:grid;overflow:clip}.dialog-head,.dialog-actions{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-md);border-block-end:var(--rule-hairline);display:flex}.dialog-actions{border-block-start:var(--rule-hairline);border-block-end:0;flex-wrap:wrap;justify-content:flex-end}.dialog-head h1,.dialog-head h2{font-size:var(--text-lg);margin-block-start:var(--space-2xs)}.dialog-step{color:var(--color-muted);font-size:var(--text-xs)}.icon-button{border:var(--rule-hairline);background:var(--color-paper);width:44px;height:44px;color:var(--color-ink);border-radius:50%;flex:none;place-items:center;display:grid}.dialog-body{gap:var(--space-lg);padding:var(--space-lg) var(--space-md);display:grid}.form-stack{gap:var(--space-md);display:grid}fieldset{border:0;min-width:0;margin:0;padding:0}legend{font-family:var(--font-display);margin-block-end:var(--space-sm);font-weight:700}.choice-list{gap:var(--space-xs);display:grid}.choice-row{align-items:center;gap:var(--space-sm);min-height:3.75rem;padding:var(--space-sm);border:var(--rule-hairline);border-radius:var(--radius-sm);cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.choice-row span{display:grid}.choice-row small{color:var(--color-muted)}.choice-row b{font-size:var(--text-sm);font-variant-numeric:tabular-nums}.choice-row input,.barber-choice input,.time-choice input{accent-color:var(--color-accent)}.barber-choices{gap:var(--space-xs);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.barber-choice{justify-items:center;gap:var(--space-xs);min-width:0;padding:var(--space-md) var(--space-xs);border:var(--rule-hairline);border-radius:var(--radius-sm);cursor:pointer;display:grid}.barber-choice input{opacity:0;position:absolute}:is(.choice-row:has(input:checked),.barber-choice:has(input:checked),.time-choice:has(input:checked)){border-color:var(--color-accent);background:var(--color-paper-2);color:var(--color-ink)}.booking-total{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-md);border:1px solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-paper-2);color:var(--color-ink);font-variant-numeric:tabular-nums;display:flex}.booking-total span{color:var(--color-muted);font-size:var(--text-sm)}.booking-total strong{text-align:end}.time-grid{gap:var(--space-xs);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.time-choice{border:var(--rule-hairline);border-radius:var(--radius-sm);cursor:pointer;place-items:center;min-height:44px;display:grid}.time-choice input{opacity:0;position:absolute}.field{gap:var(--space-xs);min-width:0;font-size:var(--text-sm);font-weight:600;display:grid}.field input,.field select,.field textarea{width:100%;min-height:44px;padding:var(--space-sm);border:1px solid var(--color-rule);border-radius:var(--radius-sm);outline-offset:1px;background:var(--color-paper);color:var(--color-ink);outline:2px solid #0000;font-weight:400}.field textarea{resize:vertical;min-height:7rem}.field input::placeholder{color:var(--color-muted)}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline-color:var(--color-focus)}.field input:disabled,.field select:disabled,.field textarea:disabled{cursor:not-allowed;opacity:.55}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--color-error)}.field-error{min-height:1.4em;color:var(--color-error);font-size:var(--text-xs);margin:0;font-weight:400}.confirmation{text-align:center;justify-items:center}.confirmation-mark{border:1px solid var(--color-success);width:4rem;height:4rem;color:var(--color-success);border-radius:50%;place-items:center;display:grid}.confirmation-kicker{color:var(--color-muted);font-size:var(--text-sm)}.confirmation h3{font-size:var(--text-xl)}.confirmation dl{text-align:start;width:100%;display:grid}.confirmation dl div{justify-content:space-between;gap:var(--space-lg);padding-block:var(--space-sm);border-block-end:var(--rule-hairline);display:flex}.confirmation dt{color:var(--color-muted)}.confirmation dd{font-variant-numeric:tabular-nums;font-weight:600}.demo-note{max-width:54ch;color:var(--color-muted);font-size:var(--text-sm)}@media (hover:hover) and (pointer:fine){.button:hover{transform:translateY(-1px)}.button--primary:hover,.button--header:hover{background:var(--color-ink-2);color:var(--color-paper)}.button--secondary:hover,.service-card button:hover{background:var(--color-paper-2);color:var(--color-ink)}.text-action:hover,.show-all:hover,.section-nav a:hover{color:var(--color-accent)}.site-footer__nav a:hover{text-underline-offset:var(--space-2xs);text-decoration:underline}.site-footer__nav button:hover{background:var(--color-paper-2);transform:translateY(-1px)}.choice-row:hover,.barber-choice:hover,.time-choice:hover,.field input:hover,.field select:hover,.field textarea:hover{background:var(--color-paper-2);color:var(--color-ink)}}@media (width>=40rem){.page-shell{width:min(100% - 3rem,70rem)}.brand-banner{min-height:19rem}.brand-banner img{width:min(30rem,75%);max-height:17rem}.barber-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.barber-card{grid-template-columns:1fr;align-content:start;min-height:12rem}.barber-card .text-action{margin-block-start:auto}.service-grid,.review-form{grid-template-columns:repeat(2,minmax(0,1fr))}.review-form__head,.field--wide,.review-form__message,.review-form .button{grid-column:1/-1}.site-footer__inner{grid-template-columns:minmax(0,1fr) auto;width:min(100% - 3rem,70rem)}.site-footer__nav{justify-content:flex-end}.site-footer__meta{grid-column:1/-1}.booking-page__main{width:min(100% - 3rem,48rem)}.dialog-head,.dialog-actions,.dialog-body{padding:var(--space-lg)}.time-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=60rem){.site-header{padding-inline:clamp(var(--space-xl), 5vw, var(--space-2xl))}.page-shell{padding-block-start:var(--space-xl)}.content-layout{align-items:start;gap:var(--space-2xl);grid-template-columns:minmax(0,1fr) minmax(17rem,19rem)}.booking-card{grid-area:1/2;position:sticky;inset-block-start:var(--space-lg)}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.main-column{grid-column:1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.15s!important;animation-duration:.15s!important;animation-iteration-count:1!important}}
