:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:var(--font-weight-regular);color:var(--color-text);background:var(--color-bg)}*{box-sizing:border-box}html{min-width:var(--min-viewport-width);min-height:100%}body{min-width:var(--min-viewport-width);min-height:100vh;margin:0}button{font-family:inherit}::selection{background:var(--color-selection);color:var(--color-heading)}:root{--unit:4px;--space-0:2px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:72px;--space-9:96px;--color-accent:#a28c62;--color-primary:#8b744b;--color-primary-hover:#705b37;--color-focus:#91794f;--color-text:#373931;--color-heading:#292c26;--color-title:#30322c;--color-text-muted:#74766e;--color-text-soft:#77776e;--color-text-label:#55564e;--color-text-faint:#9b9a92;--color-text-disabled:#aaa9a2;--color-text-hint:#85857d;--color-text-body:#696a62;--color-accent-dark:#6f6044;--color-surface:#fff;--color-bg:#f8f7f4;--color-surface-hover:#fcfbf7;--color-surface-disabled:#f1f0ec;--color-border:#e9e6df;--color-border-strong:#d9d6ce;--color-border-soft:#eeece6;--color-border-muted:#ece9e2;--color-brand-border:#b3a17c;--color-brand-mark:#a18653;--color-success:#336b43;--color-error:#a32020;--color-selection:#e7ddc8;--color-surface-translucent:#fffffff5;--color-surface-tint:#efece36b;--color-accent-subtle:#a28c6247;--color-accent-strong:#a28c628a;--color-glow:#c5b6922e;--shadow-card:0 18px 55px #302b200e;--overlay-light:#ffffff0d;--color-panel-border:#e9e6dfeb;--shadow-panel:0 22px 70px #1e1c1733;--font-serif:Georgia, "Times New Roman", serif;--transition-fast:.15s ease;--font-size-3xs:8px;--font-size-2xs:9px;--font-size-xs:10px;--font-size-sm:11px;--font-size-md:12px;--font-size-md-plus:13px;--font-size-base:14px;--font-size-lg:15px;--font-size-xl:17px;--font-size-2xl:18px;--font-size-3xl:19px;--font-size-4xl:20px;--font-size-5xl:22px;--font-size-6xl:23px;--font-size-7xl:26px;--font-size-8xl:32px;--font-size-9xl:36px;--font-size-10xl:38px;--font-weight-regular:400;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-heavy:800;--radius-round:50%;--focus-ring:2px solid var(--color-focus);--control-height:43px;--opacity-disabled:.65;--font-size-display:clamp(52px, 7.7vw, 88px);--font-size-display-sm:clamp(51px, 14vw, 70px);--font-size-title:clamp(35px, 6vw, 46px);--font-size-art:clamp(28px, 4vw, 46px);--shell-padding-booking:clamp(var(--space-3), 4vh, var(--space-6));--shell-padding-backoffice:clamp(var(--space-4), 5vh, var(--space-7));--gutter-header:clamp(18px, 4vw, 38px);--gutter-welcome:clamp(22px, 6.2vw, 96px);--tracking-subtle:.2px;--tracking-wide:1.5px;--tracking-wider:2px;--tracking-tight:-.2px;--tracking-tighter:-1.5px;--tracking-display-sm:-2px;--tracking-display:-3px;--line-height-tight:1.1;--line-height-snug:1.3;--line-height-normal:1.4;--line-height-body:1.6;--line-height-relaxed:1.8;--border-width:1px;--border-width-thick:2px;--duration-spin:.7s;--duration-reduced:.01ms;--glow-radius:29rem;--min-viewport-width:320px}#root{min-height:100svh}.site-header{height:calc(var(--unit) * 20.5);padding:0 var(--gutter-header);border-bottom:var(--border-width) solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.brand{align-items:center;gap:var(--space-3);color:var(--color-heading);text-align:left;font-size:var(--font-size-md);font-weight:var(--font-weight-heavy);letter-spacing:var(--tracking-wide);line-height:var(--line-height-snug);text-decoration:none;display:inline-flex}.brand-mark{width:calc(var(--unit) * 9);height:calc(var(--unit) * 9);border:var(--border-width) solid var(--color-brand-border);color:var(--color-brand-mark);font-family:var(--font-serif);font-size:var(--font-size-6xl);font-weight:var(--font-weight-regular);place-items:center;display:grid}.brand-subtitle{margin-top:var(--space-0);color:var(--color-text-hint);font-size:var(--font-size-3xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-wider);display:block}.header-note{color:var(--color-text-soft);font-family:var(--font-serif);font-size:var(--font-size-lg);font-style:italic}.header-actions{align-items:center;gap:var(--space-4);display:flex}.success-message{color:var(--color-success);font-size:var(--font-size-md);margin:0}.customer-form{gap:var(--space-4);margin-top:var(--space-5);display:grid}.customer-form label{gap:var(--space-2);color:var(--color-text-label);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);display:grid}.customer-form input,.customer-form select{min-height:var(--control-height);padding:0 var(--space-3);border:var(--border-width) solid var(--color-border-strong);background:var(--color-surface);color:var(--color-heading);font:inherit;font-size:var(--font-size-base);border-radius:0}.customer-form input:focus-visible{outline:var(--focus-ring);outline-offset:var(--space-0)}.submit-booking{min-height:calc(var(--unit) * 11);margin-top:var(--space-4);padding:0 var(--space-4);border:var(--border-width) solid var(--color-primary);background:var(--color-primary);color:var(--color-surface);cursor:pointer;font:inherit;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.submit-booking:hover:not(:disabled){background:var(--color-primary-hover)}.submit-booking:disabled{cursor:wait;opacity:var(--opacity-disabled)}.form-error{color:var(--color-error);font-size:var(--font-size-md);margin:0}.date-cell:focus-visible,.icon-button:focus-visible,.text-button:focus-visible,.barber-option:focus-visible,.time-slot:focus-visible,.submit-booking:focus-visible,.brand:focus-visible,.welcome-brand:focus-visible,.welcome-cta:focus-visible,.welcome-contact-number:focus-visible{outline:var(--focus-ring);outline-offset:calc(var(--unit) * 1)}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=560px){.site-header{height:calc(var(--unit) * 17.5)}.header-note{font-size:var(--font-size-md)}.header-actions{gap:var(--space-2)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:var(--duration-reduced)!important;transition-duration:var(--duration-reduced)!important;animation-iteration-count:1!important}}.booking-shell{--booking-image:none;min-height:100svh;padding:var(--shell-padding-booking) var(--space-4);background:linear-gradient(var(--overlay-light), var(--overlay-light)), var(--booking-image,none) center / cover fixed, var(--color-surface);place-items:center;display:grid}.booking-panel{width:min(100%, calc(var(--unit) * 140));border:var(--border-width) solid var(--color-panel-border);background:var(--color-bg);box-shadow:var(--shadow-panel);flex-direction:column;display:flex}.booking-content{width:min(100%, calc(var(--unit) * 120));padding:var(--space-5) 0 var(--space-5);margin:0 auto}.intro{text-align:center}.eyebrow,.section-kicker{color:var(--color-accent);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-wider);line-height:var(--line-height-normal);margin:0}.intro h1{margin:var(--space-3) 0 var(--space-2);color:var(--color-heading);font-family:var(--font-serif);font-size:var(--font-size-title);font-weight:var(--font-weight-regular);letter-spacing:var(--tracking-tighter);line-height:var(--line-height-tight)}.intro-copy{color:var(--color-text-muted);font-size:var(--font-size-base);line-height:var(--line-height-body)}.steps{justify-content:center;align-items:center;gap:var(--space-2);margin:0 0 var(--space-4);color:var(--color-text-disabled);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);display:flex}.step-item{align-items:center;gap:var(--space-3);display:flex}.step{align-items:center;gap:var(--space-2);white-space:nowrap;display:inline-flex}.step-current,.step-complete{color:var(--color-text)}.step-number{width:calc(var(--unit) * 6);height:calc(var(--unit) * 6);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-round);color:var(--color-text-hint);font-size:var(--font-size-xs);place-items:center;display:grid}.step-current .step-number,.step-complete .step-number{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-surface)}.step-connector{width:calc(var(--unit) * 9);height:var(--border-width);background:var(--color-border-strong)}.calendar-card,.barber-card{border:var(--border-width) solid var(--color-border);background:var(--color-surface-translucent);box-shadow:var(--shadow-card)}.calendar-card{padding:var(--space-4) var(--space-5) var(--space-3)}.calendar-header{min-height:calc(var(--unit) * 11.5);margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.calendar-header h2,.selected-date-bar h2{margin:var(--space-1) 0 0;color:var(--color-title);font-family:var(--font-serif);font-size:var(--font-size-4xl);font-weight:var(--font-weight-regular);letter-spacing:var(--tracking-tight)}.section-kicker{font-size:var(--font-size-3xs);letter-spacing:var(--tracking-wide)}.month-controls{align-items:center;gap:var(--space-3);display:flex}.month-label{min-width:calc(var(--unit) * 26);color:var(--color-text);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);text-align:center}.icon-button{width:calc(var(--unit) * 8);height:calc(var(--unit) * 8);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-round);background:var(--color-surface);color:var(--color-text-body);cursor:pointer;font-size:var(--font-size-lg);transition:background var(--transition-fast), border-color var(--transition-fast);place-items:center;display:grid}.icon-button:not(:disabled):hover{border-color:var(--color-brand-border);background:var(--color-surface-hover)}.icon-button:disabled{color:var(--color-text-disabled);cursor:not-allowed}.calendar-grid{gap:var(--space-1) var(--space-2);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.weekday{padding:var(--space-1) 0 var(--space-2);color:var(--color-text-faint);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-align:center}.date-cell,.calendar-blank{min-width:0;height:calc(var(--unit) * 9)}.date-cell{border:var(--border-width) solid transparent;border-radius:var(--radius-round);color:var(--color-text);cursor:pointer;font:inherit;font-size:var(--font-size-md);transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);background:0 0;place-items:center;display:grid;position:relative}.date-cell:not(:disabled):hover{border-color:var(--color-brand-border);background:var(--color-surface-hover)}.date-cell:disabled{color:var(--color-text-disabled);cursor:not-allowed}.date-cell.date-closed{background:var(--color-surface-disabled);color:var(--color-text-disabled);text-decoration:line-through}.date-cell.date-today{border-color:var(--color-accent);color:var(--color-accent-dark);font-weight:var(--font-weight-bold)}.today-dot,.legend-dot{width:var(--space-1);height:var(--space-1);border-radius:var(--radius-round);background:var(--color-accent)}.today-dot{bottom:var(--space-1);position:absolute}.calendar-footer{align-items:center;gap:var(--space-2);min-height:var(--control-height);margin-top:var(--space-3);border-top:var(--border-width) solid var(--color-border-soft);color:var(--color-text-hint);font-size:var(--font-size-xs);display:flex}.calendar-footer p{text-align:right;margin-left:auto}.legend-dot{width:calc(var(--unit) * 1.5);height:calc(var(--unit) * 1.5)}.barber-card{overflow:hidden}.selected-date-bar{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:var(--border-width) solid var(--color-border-muted);background:var(--color-surface-hover);display:flex}.selected-date-bar h2{font-size:var(--font-size-xl)}.text-button{align-items:center;gap:var(--space-2);padding:var(--space-2) 0 var(--space-2) var(--space-2);color:var(--color-primary);cursor:pointer;font:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);white-space:nowrap;background:0 0;border:0;display:inline-flex}.text-button:hover{color:var(--color-primary-hover);text-underline-offset:calc(var(--unit) * 1);text-decoration:underline}.barber-body{padding:var(--space-5) var(--space-5) var(--space-6);background:var(--color-surface)}.barber-body>h2{margin:var(--space-1) 0 var(--space-2);color:var(--color-title);font-family:var(--font-serif);font-size:var(--font-size-5xl);font-weight:var(--font-weight-regular)}.availability-note{max-width:calc(var(--unit) * 120);color:var(--color-text-hint);font-size:var(--font-size-sm);line-height:var(--line-height-body)}.barber-list{gap:var(--space-2);margin-top:var(--space-5);display:grid}.barber-option{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-3);border:var(--border-width) solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;text-align:left;transition:border-color var(--transition-fast), background var(--transition-fast);display:flex}.barber-option:hover,.barber-option.barber-selected{border-color:var(--color-brand-border);background:var(--color-surface-hover)}.barber-avatar{flex:0 0 calc(var(--unit) * 9.5);width:calc(var(--unit) * 9.5);height:calc(var(--unit) * 9.5);border-radius:var(--radius-round);background:var(--color-surface-disabled);color:var(--color-primary);font-family:var(--font-serif);font-size:var(--font-size-xl);place-items:center;display:grid}.barber-details{gap:var(--space-0);display:grid}.barber-details strong{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.barber-details span{color:var(--color-text-faint);font-size:var(--font-size-xs)}.selection-indicator{width:calc(var(--unit) * 5);height:calc(var(--unit) * 5);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-round);color:var(--color-surface);font-size:var(--font-size-xs);place-items:center;margin-left:auto;display:grid}.barber-selected .selection-indicator{border-color:var(--color-accent);background:var(--color-accent)}.status-panel{align-items:flex-start;gap:var(--space-3);margin-top:var(--space-5);padding:var(--space-4);border:var(--border-width) solid var(--color-border-soft);background:var(--color-surface-hover);color:var(--color-text-body);font-size:var(--font-size-md);line-height:var(--line-height-body);display:flex}.status-warning{border-color:var(--color-border-muted);background:var(--color-surface-hover)}.status-icon{flex:0 0 calc(var(--unit) * 5);width:calc(var(--unit) * 5);height:calc(var(--unit) * 5);border:var(--border-width) solid var(--color-brand-border);border-radius:var(--radius-round);color:var(--color-primary);font-size:var(--font-size-sm);place-items:center;display:grid}.loader{flex:0 0 var(--space-4);width:var(--space-4);height:var(--space-4);margin-top:var(--space-0);border:var(--border-width-thick) solid var(--color-border-muted);border-top-color:var(--color-accent);border-radius:var(--radius-round);animation:spin var(--duration-spin) linear infinite}.selection-confirmation,.data-warning{margin:var(--space-4) 0 0;color:var(--color-text-soft);font-size:var(--font-size-sm);line-height:var(--line-height-body)}.data-warning{color:var(--color-primary)}.time-slot-grid{gap:var(--space-2);margin-top:var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.time-slot{min-height:var(--control-height);border:var(--border-width) solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);cursor:pointer;font:inherit;font-size:var(--font-size-md);transition:border-color var(--transition-fast), background var(--transition-fast)}.time-slot:hover:not(:disabled){border-color:var(--color-accent);background:var(--color-surface-hover)}.time-slot:disabled{background:var(--color-surface-disabled);color:var(--color-text-disabled);cursor:not-allowed;text-decoration:line-through}.booking-success{padding:var(--space-6);border:var(--border-width) solid var(--color-border-muted);background:var(--color-surface);color:var(--color-text-label);line-height:var(--line-height-body);text-align:center}.booking-success h2{margin:var(--space-2) 0;color:var(--color-heading);font-family:var(--font-serif);font-size:var(--font-size-7xl);font-weight:var(--font-weight-regular)}.booking-success p{font-size:var(--font-size-md-plus)}.site-footer{justify-content:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:var(--border-width) solid var(--color-border);color:var(--color-text-faint);font-size:var(--font-size-2xs);letter-spacing:var(--tracking-subtle);text-align:center;display:flex}@media (width<=560px){.booking-shell{padding:var(--space-2)}.booking-panel{width:min(100%, calc(var(--unit) * 125));padding:0 var(--space-3)}.booking-content{width:100%;padding:var(--space-4) 0}.intro h1{font-size:var(--font-size-9xl)}.steps{gap:var(--space-1);margin:0 0 var(--space-3);font-size:var(--font-size-2xs)}.step-item,.step{gap:var(--space-1)}.step-connector{width:var(--space-3)}.calendar-card{padding:var(--space-4) var(--space-3) var(--space-2)}.calendar-header{align-items:flex-start;gap:var(--space-2)}.calendar-header h2{font-size:var(--font-size-2xl)}.month-controls{gap:var(--space-1)}.month-label{min-width:calc(var(--unit) * 22);font-size:var(--font-size-sm)}.icon-button{width:calc(var(--unit) * 7);height:calc(var(--unit) * 7)}.calendar-grid{gap:var(--space-1) var(--space-0)}.date-cell,.calendar-blank{height:calc(var(--unit) * 9)}.calendar-footer{font-size:var(--font-size-2xs);flex-wrap:wrap}.calendar-footer p{margin:0 0 var(--space-1);text-align:left;flex-basis:100%}.selected-date-bar{padding:var(--space-4) var(--space-4);align-items:flex-start}.selected-date-bar h2{max-width:calc(var(--unit) * 55);font-size:var(--font-size-lg)}.text-button{font-size:var(--font-size-xs)}.barber-body{padding:var(--space-5) var(--space-4) var(--space-5)}.barber-body>h2{font-size:var(--font-size-4xl)}.time-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer{gap:var(--space-1) var(--space-2);font-size:var(--font-size-2xs);flex-wrap:wrap}}.backoffice-shell{--backoffice-image:none;min-height:100svh;padding:var(--shell-padding-backoffice) var(--space-4);background:linear-gradient(var(--overlay-light), var(--overlay-light)), var(--backoffice-image,none) center / cover fixed, var(--color-surface);place-items:center;display:grid}.backoffice-panel{width:min(100%, calc(var(--unit) * 245));border:var(--border-width) solid var(--color-panel-border);background:var(--color-bg);box-shadow:var(--shadow-panel)}.backoffice-panel>.site-header{padding-right:var(--gutter-header);padding-left:var(--gutter-header);background:var(--color-bg)}.backoffice-content{width:min(100% - calc(var(--unit) * 10), calc(var(--unit) * 225));padding:var(--space-5) 0 var(--space-6);margin:0 auto}.backoffice-content>h1{margin:var(--space-2) 0 var(--space-5);color:var(--color-heading);font-family:var(--font-serif);font-size:var(--font-size-10xl);font-weight:var(--font-weight-regular)}.backoffice-card{margin:var(--space-4) 0;padding:var(--space-5);border:var(--border-width) solid var(--color-border);background:var(--color-surface)}.backoffice-card>h2{margin:0 0 var(--space-2);color:var(--color-title);font-family:var(--font-serif);font-size:var(--font-size-5xl);font-weight:var(--font-weight-regular)}.backoffice-card>p{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:var(--line-height-body)}.backoffice-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);padding:0 0 var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-md);display:flex}.backoffice-greeting{margin:0 0 var(--space-3);color:var(--color-text);font-family:var(--font-serif);font-size:var(--font-size-5xl)}.backoffice-toolbar>div{gap:var(--space-2);display:flex}.backoffice-button{min-height:calc(var(--unit) * 9);padding:0 var(--space-3);border:var(--border-width) solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);cursor:pointer}.backoffice-button:disabled{cursor:wait;opacity:var(--opacity-disabled)}.backoffice-tabs{gap:var(--space-1);margin:var(--space-3) 0 var(--space-4);border-bottom:var(--border-width) solid var(--color-border-muted);display:flex}.backoffice-tabs button{min-height:var(--control-height);padding:0 var(--space-4);border:0;border-bottom:var(--border-width-thick) solid transparent;color:var(--color-text-soft);cursor:pointer;font:inherit;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);background:0 0}.backoffice-tabs button[aria-selected=true]{border-bottom-color:var(--color-primary);color:var(--color-text)}.backoffice-tabs button:focus-visible{outline:var(--focus-ring);outline-offset:calc(var(--unit) * -.5)}.backoffice-subheading{margin:var(--space-5) 0 0;color:var(--color-title);font-family:var(--font-serif);font-size:var(--font-size-2xl);font-weight:var(--font-weight-regular)}.reservation-list{display:grid}.reservation-filter{max-width:calc(var(--unit) * 90);gap:var(--space-2);margin:var(--space-4) 0;color:var(--color-text-label);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);display:grid}.reservation-filter select{min-height:var(--control-height);padding:0 var(--space-3);border:var(--border-width) solid var(--color-border-strong);background:var(--color-surface);color:var(--color-heading);font:inherit;font-size:var(--font-size-base);border-radius:0}.reservation-day-nav{align-items:center;gap:var(--space-2);margin:var(--space-4) 0 0;display:flex}.reservation-day-heading{min-width:calc(var(--unit) * 47.5);gap:var(--space-0);display:grid}.reservation-day-heading strong{color:var(--color-text);font-family:var(--font-serif);font-size:var(--font-size-2xl);font-weight:var(--font-weight-regular)}.reservation-day-heading span,.reservation-day-count{color:var(--color-text-hint);font-size:var(--font-size-sm)}.reservation-day-count{margin:var(--space-3) 0}.reservation-date-picker input{min-height:calc(var(--unit) * 9);padding:0 var(--space-2);border:var(--border-width) solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--font-size-sm)}.reservation-calendar-list{display:grid}.reservation-calendar-list .reservation-item{grid-template-columns:calc(var(--unit) * 19.5) minmax(calc(var(--unit) * 35), 1fr) minmax(calc(var(--unit) * 45), 1fr);align-items:center}.reservation-time{gap:var(--space-0);color:var(--color-text-soft);font-size:var(--font-size-sm);align-content:center;display:grid}.reservation-time strong{color:var(--color-accent-dark);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.reservation-customer strong{color:var(--color-text);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.visually-hidden{width:var(--border-width);height:var(--border-width);margin:calc(-1 * var(--border-width));clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;padding:0;position:absolute;overflow:hidden}.reservation-item{gap:var(--space-4);padding:var(--space-3) 0;border-top:var(--border-width) solid var(--color-border-soft);color:var(--color-text-body);font-size:var(--font-size-md);grid-template-columns:1.2fr 1.2fr 1fr auto;display:grid}.reservation-item>div{gap:var(--space-1);overflow-wrap:anywhere;align-content:start;display:grid}.reservation-item strong{color:var(--color-text)}@media (width<=560px){.backoffice-content{width:min(100% - var(--space-5), calc(var(--unit) * 150));padding:var(--space-3) 0 var(--space-4)}.backoffice-shell{padding:var(--space-2)}.backoffice-panel{width:100%}.backoffice-content>h1{font-size:var(--font-size-8xl)}.backoffice-card{padding:var(--space-4)}.backoffice-toolbar{flex-direction:column;align-items:flex-start}.backoffice-tabs{gap:0}.backoffice-tabs button{padding:0 var(--space-2);font-size:var(--font-size-sm);flex:1}.reservation-item{gap:var(--space-2);grid-template-columns:1fr 1fr}.reservation-day-nav{flex-wrap:wrap}.reservation-day-heading{flex:1;min-width:0}.reservation-calendar-list .reservation-item{grid-template-columns:calc(var(--unit) * 13.5) minmax(0, 1fr)}.reservation-calendar-list .reservation-item>div:last-child{grid-column:2}}.welcome-shell{background:radial-gradient(ellipse at 72% 45%, var(--color-glow), transparent var(--glow-radius)), var(--color-bg);flex-direction:column;min-height:100svh;display:flex;overflow:hidden}.welcome-header{height:calc(var(--unit) * 20.5);padding:0 var(--gutter-welcome);border-bottom:var(--border-width) solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.welcome-brand{align-items:center;gap:var(--space-3);color:var(--color-heading);font-family:var(--font-serif);font-size:var(--font-size-3xl);text-decoration:none;display:inline-flex}.welcome-brand-mark{width:calc(var(--unit) * 9);height:calc(var(--unit) * 9);border:var(--border-width) solid var(--color-brand-border);color:var(--color-brand-mark);font-size:var(--font-size-6xl);place-items:center;display:grid}.welcome-hero{width:min(100% - var(--space-7), calc(var(--unit) * 275));align-items:center;gap:var(--space-7);padding:var(--space-8) 0 var(--space-9);flex:1;grid-template-columns:1fr .9fr;margin:0 auto;display:grid}.welcome-copy{padding:var(--space-4) 0}.welcome-eyebrow{align-items:center;gap:var(--space-2);margin:0 0 var(--space-5);color:var(--color-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-wider);display:flex}.welcome-eyebrow span{width:calc(var(--unit) * 5);height:var(--border-width);background:var(--color-accent)}.welcome-copy h1{color:var(--color-heading);font-family:var(--font-serif);font-size:var(--font-size-display);font-weight:var(--font-weight-regular);letter-spacing:var(--tracking-display);line-height:var(--line-height-tight);margin:0}.welcome-copy h1 span{color:var(--color-accent);font-style:italic}.welcome-description{max-width:calc(var(--unit) * 105);margin:var(--space-5) 0 var(--space-5);color:var(--color-text-muted);font-size:var(--font-size-base);line-height:var(--line-height-relaxed)}.welcome-cta{min-height:var(--space-7);justify-content:space-between;align-items:center;gap:var(--space-5);margin-top:var(--space-4);padding:0 var(--space-4);border:var(--border-width) solid var(--color-primary);background:var(--color-primary);color:var(--color-surface);font-family:inherit;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);transition:background var(--transition-fast);text-decoration:none;display:inline-flex}.welcome-cta:hover{background:var(--color-primary-hover)}.welcome-contact-number{width:fit-content;margin-top:var(--space-3);color:var(--color-accent-dark);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);text-decoration:none;display:block}.welcome-contact-number:hover{text-underline-offset:calc(var(--unit) * 1);text-decoration:underline}.welcome-note{margin:var(--space-3) 0 0;color:var(--color-text-faint);font-size:var(--font-size-xs)}.welcome-art{min-height:calc(var(--unit) * 97.5);border:var(--border-width) solid var(--color-accent-subtle);background:var(--color-surface-tint);place-items:center;display:grid;position:relative;overflow:hidden}.welcome-art-ring{width:min(32vw, calc(var(--unit) * 87.5));aspect-ratio:1;border:var(--border-width) solid var(--color-accent-strong);border-radius:var(--radius-round);position:absolute}.welcome-art-ring-outer{transform:translate(calc(var(--unit) * 4.5), calc(var(--unit) * -.5))}.welcome-art-ring-inner{width:min(24vw, calc(var(--unit) * 65));transform:translate(calc(var(--unit) * -4), var(--space-3))}.welcome-art-label{z-index:1;color:var(--color-text);font-family:var(--font-serif);font-size:var(--font-size-art);letter-spacing:var(--tracking-wider);line-height:var(--line-height-tight);text-align:center}.welcome-art-star{color:var(--color-accent);font-size:var(--font-size-6xl);position:absolute;top:17%;right:20%}.welcome-art-number{bottom:var(--space-5);left:var(--space-5);color:var(--color-text-hint);font-size:var(--font-size-xs);letter-spacing:var(--tracking-wider);position:absolute}.welcome-footer{padding:var(--space-4) var(--gutter-welcome);border-top:var(--border-width) solid var(--color-border);color:var(--color-text-faint);font-size:var(--font-size-xs);justify-content:space-between;display:flex}@media (width<=560px){.welcome-header{height:calc(var(--unit) * 17.5)}.welcome-brand{font-size:var(--font-size-xl)}.welcome-hero{width:min(100% - calc(var(--unit) * 9), calc(var(--unit) * 110));gap:var(--space-6);padding:var(--space-7) 0 var(--space-7);grid-template-columns:1fr}.welcome-copy h1{font-size:var(--font-size-display-sm);letter-spacing:var(--tracking-display-sm)}.welcome-art{min-height:calc(var(--unit) * 65)}.welcome-art-ring{width:calc(var(--unit) * 57.5)}.welcome-art-ring-inner{width:calc(var(--unit) * 44)}.welcome-art-label{font-size:var(--font-size-8xl)}.welcome-footer{gap:var(--space-3);font-size:var(--font-size-2xs)}}
