:root{--surface:#f7f8f9;--paper:#fff;--ink:#00355d;--ink-muted:#636466;--accent:#004c97;--signal:#009ee2;--hairline:#b5bac0;--neutral-300:#c1c1c2;--neutral-100:#f2f2f2;--blue-50:#e8f1f6;--error:#c51f2e;--navy-surface:#00355d;--navy-ink:#fff;--navy-ink-muted:#b9c9da;--navy-accent:#009ee2;--navy-motif:#004c97;--navy-hairline:#6f8aa5;--sans:"Helvetica Neue", Helvetica, Arial, sans-serif;--margin:clamp(16px, 5vw, 60px)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--surface);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.45}a{color:var(--accent)}button,input,textarea{font:inherit;color:inherit;border-radius:0}:focus-visible{outline:3px solid var(--signal);outline-offset:2px}.wrap{max-width:1200px;padding:0 var(--margin);margin:0 auto}.lockup{z-index:1;align-items:center;gap:16px;padding-top:32px;display:flex;position:relative}.wordmark{letter-spacing:-.02em;font-size:26px;font-weight:700;line-height:1}.lockup-divider{opacity:.6;background:currentColor;align-self:stretch;width:2px}.descriptor{font-size:16px;line-height:1}.hero{background:var(--navy-surface);color:var(--navy-ink);position:relative;overflow:hidden}.hero .descriptor,.hero .support{color:var(--navy-ink-muted)}.hero-glyph{letter-spacing:-.02em;color:var(--navy-motif);-webkit-user-select:none;user-select:none;pointer-events:none;font-size:clamp(220px,34vw,440px);font-weight:700;line-height:1;position:absolute;bottom:-.2em;left:-.04em}.hero-arcs{pointer-events:none;width:min(46vw,520px);height:auto;position:absolute;bottom:0;right:0}.hero-content{z-index:1;max-width:820px;padding:clamp(48px,9vw,96px) 0 clamp(56px,9vw,104px);position:relative}.headline{letter-spacing:-.04em;margin:0;font-size:clamp(42px,7.4vw,96px);font-weight:700;line-height:1}.headline span{color:var(--navy-accent);display:block}.subhead{letter-spacing:-.015em;max-width:680px;margin:clamp(28px,4vw,48px) 0 0;font-size:clamp(20px,2.4vw,30px);font-weight:700;line-height:1.2}.support{margin:14px 0 0;font-size:clamp(16px,1.7vw,20px);line-height:1.35}.booking{padding:clamp(40px,6vw,72px) 0 80px}.section-title{letter-spacing:-.02em;margin:0;font-size:clamp(26px,3vw,34px);font-weight:700;line-height:1.1}.section-note{color:var(--ink-muted);margin:8px 0 0}.booking-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:40px;margin-top:32px;display:grid}@media (max-width:860px){.booking-grid{grid-template-columns:minmax(0,1fr);gap:32px}}.days{border:1px solid var(--hairline);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.day{appearance:none;border:0;border-left:1px solid var(--hairline);background:var(--paper);text-align:left;cursor:pointer;padding:14px 10px 12px}.day:first-child{border-left:0}.day-weekday{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted);font-size:13px;display:block}.day-date{letter-spacing:-.01em;font-size:20px;font-weight:700;display:block}.day-count{color:var(--ink-muted);margin-top:2px;font-size:13px;display:block}.day[aria-pressed=true]{background:var(--ink);color:var(--navy-ink);box-shadow:inset 0 -4px 0 var(--signal)}.day[aria-pressed=true] .day-weekday,.day[aria-pressed=true] .day-count{color:var(--navy-ink-muted)}.slots{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px;margin-top:20px;display:grid}.slot{appearance:none;border:1px solid var(--accent);background:var(--paper);color:var(--accent);cursor:pointer;padding:12px 8px;font-size:16px;font-weight:700}.slot:hover:not(:disabled){background:var(--blue-50)}.slot[aria-pressed=true]{background:var(--accent);color:var(--navy-ink)}.slot:disabled{border-color:var(--neutral-300);background:var(--neutral-100);color:var(--ink-muted);cursor:not-allowed;font-weight:400;text-decoration:line-through}.tz-note{letter-spacing:.04em;color:var(--ink-muted);margin:14px 0 0;font-size:13px}.panel{background:var(--paper);border:1px solid var(--hairline);border-top:6px solid var(--signal);padding:28px}@media (max-width:480px){.panel{padding:22px 18px}}.panel-kicker{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted);margin:0;font-size:13px}.panel-title{letter-spacing:-.02em;margin:6px 0 0;font-size:24px;font-weight:700;line-height:1.15}.panel-title span{color:var(--accent);display:block}.panel-meta{color:var(--ink-muted);margin:12px 0 0;font-size:15px}.panel-empty{color:var(--ink-muted);margin:12px 0 0}.form{gap:16px;margin-top:24px;display:grid}.field label{margin-bottom:6px;font-size:14px;font-weight:700;display:block}.field .optional{color:var(--ink-muted);font-weight:400}.field input,.field textarea{border:1px solid var(--hairline);background:var(--paper);width:100%;padding:11px 12px;font-size:16px}.field input:focus,.field textarea:focus{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:-1px}.field textarea{resize:vertical;min-height:84px}.honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.btn{appearance:none;background:var(--accent);color:var(--navy-ink);cursor:pointer;text-align:center;border:0;padding:14px 20px;font-size:16px;font-weight:700;text-decoration:none;display:inline-block}.btn:hover:not(:disabled){background:var(--ink)}.btn:disabled{opacity:.6;cursor:progress}.btn-secondary{color:var(--accent);border:1px solid var(--accent);background:0 0}.btn-secondary:hover:not(:disabled){background:var(--blue-50)}.btn-danger{background:var(--error)}.btn-danger:hover:not(:disabled){background:#9e1825}.error{border-left:4px solid var(--error);color:var(--error);background:#fbeced;margin:0;padding:10px 12px;font-size:15px}.notice{border-left:4px solid var(--signal);background:var(--blue-50);margin:16px 0 0;padding:10px 12px;font-size:15px}.details{grid-template-columns:auto 1fr;gap:8px 16px;margin:20px 0 0;font-size:15px;display:grid}.details dt{color:var(--ink-muted)}.details dd{margin:0}.footer{border-top:1px solid var(--hairline);color:var(--ink-muted);padding:24px 0 40px;font-size:13px}.page-head{background:var(--navy-surface);color:var(--navy-ink);padding-bottom:32px}.page-head .descriptor{color:var(--navy-ink-muted)}.page-body{padding:40px 0 80px}.narrow{max-width:560px;margin-left:0}.wrap.narrow{max-width:none}.wrap.narrow>*{max-width:560px}.table-wrap{border:1px solid var(--hairline);background:var(--paper);overflow-x:auto}table.bookings{border-collapse:collapse;width:100%;font-size:14px}.bookings th,.bookings td{text-align:left;border-bottom:1px solid var(--neutral-300);vertical-align:top;padding:10px 12px}.bookings th{background:var(--blue-50);white-space:nowrap;font-weight:700}.bookings tr:last-child td{border-bottom:0}.bookings .btn{padding:6px 10px;font-size:13px}.stats{color:var(--ink-muted);flex-wrap:wrap;gap:24px;margin:16px 0 24px;display:flex}.stats strong{color:var(--ink);font-size:22px;display:block}@media (max-width:480px){.day{padding:12px 8px 10px}.day-date{white-space:nowrap;font-size:17px}}.admin-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;display:flex}.select{border:1px solid var(--hairline);background:var(--paper);width:100%;font:inherit;color:inherit;border-radius:0;padding:11px 12px;font-size:16px}.day-summary{color:var(--ink-muted);grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 24px;font-size:14px;display:grid}@media (max-width:640px){.day-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}.day-summary strong{color:var(--ink);font-size:20px;display:block}.day-bar{background:var(--neutral-300);height:4px;margin-top:6px}.day-bar>div{background:var(--accent);height:100%}.cancel-box>summary{padding:6px 10px;font-size:13px;list-style:none}.cancel-box>summary::-webkit-details-marker{display:none}.cancel-box[open]>summary{background:var(--neutral-100);color:var(--ink);border:1px solid var(--hairline)}.cancel-box .form{gap:10px;min-width:260px;margin-top:12px}.cancel-box textarea{min-height:72px;font-size:14px}.muted{color:var(--ink-muted);font-size:13px}
