:root{--err:#d98d84}.f-grid{grid-template-columns:1fr;gap:1.3rem;display:grid}@media (width>=620px){.f-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.lead-form{gap:1.5rem;display:grid}.f-field{align-content:start;gap:.5rem;min-width:0;display:grid}.f-label{font-family:var(--font-mono);font-size:var(--t-label);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}.f-req{color:var(--accent)}.f-input{width:100%;min-height:46px;color:var(--ink);background:var(--bg-2);border:1px solid var(--line-2);transition:border-color .35s var(--ease-out), background-color .35s var(--ease-out);border-radius:4px;padding:.7rem .9rem;font-family:inherit;font-size:1rem}.f-input::placeholder{color:var(--ink-4)}.f-input:hover{border-color:#f2efe942}.f-input:focus{border-color:var(--accent);background:var(--bg-3);outline:none}.f-textarea{resize:vertical;min-height:7rem;line-height:1.55}.f-error{color:var(--err);min-height:0;font-size:.85rem}.f-error:empty{display:none}.has-error .f-input{border-color:var(--err)}.f-check{color:var(--ink-2);cursor:pointer;align-items:center;gap:.7rem;min-height:40px;padding:.35rem 0;font-size:.93rem;line-height:1.45;display:flex}.f-check input{width:17px;height:17px;accent-color:var(--accent);cursor:pointer;flex:none}.f-consent{border-top:1px solid var(--line);margin-top:1.8rem;padding-top:1.5rem}.f-consent .f-check{color:var(--ink-3);font-size:.92rem}.f-submit{flex-wrap:wrap;align-items:center;gap:1.2rem;margin-top:2rem;display:flex}.f-submit .btn-pill{border:0}.f-submit button[disabled]{opacity:.55;cursor:progress}.f-status{color:var(--ink-3);max-width:40ch;font-size:.9rem;line-height:1.55}.f-status a{color:var(--accent);border-bottom:1px solid #c9b08a59}.is-sending .f-input{opacity:.6;pointer-events:none}.booking{border:1px solid var(--line);background:var(--bg-2);animation:lead-rise .6s var(--ease-out) both;border-radius:6px;margin-top:clamp(2.4rem,5vh,3.5rem);overflow:hidden}@keyframes lead-rise{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.booking-head{border-bottom:1px solid var(--line);padding:clamp(1.4rem,3vw,2rem)}.booking-h{letter-spacing:-.02em;font-size:clamp(1.15rem,2.2vw,1.6rem)}.booking-p{color:var(--ink-3);margin-top:.6rem;font-size:.95rem}.booking-mount{min-height:660px}.booking-loading,.booking-fallback{text-align:center;color:var(--ink-3);padding:clamp(2rem,5vw,4rem);font-size:.95rem}.booking-fallback a{color:var(--accent);border-bottom:1px solid #c9b08a59}.booking.is-booked .booking-head:after{content:"Booked — check your email for the invite.";font-family:var(--font-mono);font-size:var(--t-label);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-top:.8rem;display:block}.c-sel{position:relative}.c-sel-btn{width:100%;min-height:46px;font:inherit;text-align:left;color:var(--ink);background:var(--bg-2);border:1px solid var(--line-2);cursor:pointer;transition:border-color .35s var(--ease-out), background-color .35s var(--ease-out);border-radius:4px;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem .9rem;font-size:1rem;display:flex}.c-sel-btn:hover{border-color:#f2efe942}.c-sel.is-open .c-sel-btn,.c-sel-btn:focus-visible{border-color:var(--accent);background:var(--bg-3);outline:none}.c-sel.is-empty .c-sel-value{color:var(--ink-4)}.has-error .c-sel-btn{border-color:var(--err)}.c-sel-value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.c-sel-caret{border-right:1px solid var(--ink-3);border-bottom:1px solid var(--ink-3);width:7px;height:7px;transition:transform .3s var(--ease-out);flex:none;transform:rotate(45deg)translate(-2px,-2px)}.c-sel.is-open .c-sel-caret{transform:rotate(225deg)translate(-2px,-2px)}.c-sel-list{z-index:20;inset-inline:0;background:var(--bg-3);border:1px solid var(--line-2);border-radius:6px;outline:none;max-height:15rem;margin:0;padding:.3rem;list-style:none;position:absolute;top:calc(100% + 6px);overflow-y:auto;box-shadow:0 20px 50px -20px #000000e6}.c-sel-list [role=option]{color:var(--ink-2);cursor:pointer;border-radius:3px;justify-content:space-between;align-items:center;gap:.8rem;padding:.62rem .7rem;font-size:.95rem;display:flex}.c-sel-list [role=option].is-active{color:var(--ink);background:#f2efe912}.c-sel-list [role=option][aria-selected=true]{color:var(--accent)}.c-sel-list [role=option][aria-selected=true]:after{content:"✓";font-family:var(--font-mono);font-size:.75rem}dialog.lead{border:1px solid var(--line-2);background:var(--bg-2);width:min(100vw - 2rem,46rem);max-height:min(90dvh,50rem);color:var(--ink-2);border-radius:10px;margin:auto;padding:0;overflow:hidden}dialog.lead::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#060606b8}.lead-inner{max-height:inherit;padding:clamp(1.6rem,4vw,2.8rem);position:relative;overflow-y:auto}.lead-close{font-family:var(--font-mono);font-size:var(--t-label);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-4);border:1px solid var(--line);transition:color .35s var(--ease-out), border-color .35s var(--ease-out);border-radius:999px;padding:.6em 1em;position:absolute;top:clamp(1rem,2vw,1.5rem);right:clamp(1rem,2vw,1.5rem)}.lead-close:hover{color:var(--ink);border-color:var(--line-2)}.lead-title{letter-spacing:-.032em;outline:none;max-width:20ch;margin-top:.8rem;font-size:clamp(1.4rem,3vw,1.95rem);line-height:1.06}.lead-sub{color:var(--ink-3);max-width:48ch;margin-top:.8rem;margin-bottom:clamp(1.3rem,2.4vh,1.7rem);font-size:1rem;line-height:1.6}.lead .lead-form{gap:1.15rem}.lead .f-textarea{min-height:5.4rem}.lead .f-consent{margin-top:.9rem;padding-top:1.1rem}.lead .f-submit{background:linear-gradient(180deg, #0d0d0c00, var(--bg-2) 34%);margin-top:1rem;padding-block:1.1rem;position:sticky;bottom:calc(-1*clamp(1.6rem,4vw,2.8rem))}.lead-done .booking{margin-top:1.6rem}.lead .booking{border-radius:6px}.lead .booking-mount{min-height:620px}@media (width<=620px){dialog.lead{border:0;border-radius:0;width:100vw;max-width:100vw;max-height:100dvh}.lead-inner{max-height:100dvh;padding-top:4.2rem}.lead-close{top:1rem;right:1rem}.f-submit .btn-pill{justify-content:center;width:100%}}@media (prefers-reduced-motion:reduce){.c-sel-caret{transition:none}}
