.reservation-hero{height:430px;position:relative;display:flex;align-items:center;overflow:hidden;background:#304238;color:white}.reservation-hero-image,.reservation-hero-shade{position:absolute;inset:0}.reservation-hero-image{background:var(--cms-bg,url('assets/img/f436ca_d9fb55418bc34b64a73f395579f6d962.jpg')) center 51%/cover}.reservation-hero-shade{background:linear-gradient(90deg,rgba(10,23,18,.78),rgba(10,23,18,.25) 85%),linear-gradient(0deg,rgba(10,23,18,.28),transparent 40%)}.reservation-hero-copy{position:relative;z-index:1;margin-left:max(10vw,40px);max-width:750px;padding:45px 0}.reservation-hero-copy h1{font:500 clamp(48px,6.8vw,78px)/1 var(--serif);letter-spacing:-.05em;margin:0}.reservation-hero-copy h1 em{color:#d3bc91;font-weight:500}.reservation-hero-copy>p:last-child{max-width:430px;margin-top:20px;color:rgba(255,255,255,.88);font-size:13px}.reservation-content{padding-top:93px;padding-bottom:100px;display:grid;grid-template-columns:.78fr 1.22fr;gap:9%;align-items:start}.reservation-intro{position:sticky;top:30px}.reservation-intro h2{font:500 clamp(43px,5vw,60px)/1.03 var(--serif);letter-spacing:-.04em;margin:0}.reservation-intro h2 em{color:#92774d;font-weight:500}.reservation-intro>p:not(.eyebrow){max-width:360px;color:var(--muted);font-size:12px;line-height:1.9;margin:18px 0 28px}.reservation-intro .booking-contact{max-width:330px}.reservation-form{background:white;padding:34px clamp(22px,4vw,48px);border:1px solid rgba(32,37,31,.1)}.reservation-form-heading{padding-bottom:20px;border-bottom:1px solid var(--line)}.reservation-form-heading .eyebrow{margin-bottom:5px}.reservation-form-heading h2{font:500 31px var(--serif);margin:0}.reservation-fields{padding-top:20px;display:grid;gap:15px}.reservation-form label{display:grid;gap:6px;font-size:10px;font-weight:600;color:#454a42}.reservation-form input,.reservation-form select,.reservation-form textarea{width:100%;min-height:45px;border:1px solid rgba(32,37,31,.2);border-radius:0;background:#fff;padding:10px 12px;color:var(--ink);font:400 12px var(--sans)}.reservation-form textarea{min-height:86px;resize:vertical}.reservation-form input:focus,.reservation-form select:focus,.reservation-form textarea:focus{outline:2px solid #a58657;outline-offset:1px}.reservation-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field-optional{font-size:9px;font-weight:400;color:var(--muted)}.reservation-submit{margin-top:22px;border:0;cursor:pointer}.reservation-status{font-size:9px;line-height:1.7;color:var(--muted);margin:12px 0 0}.reservation-note{background:var(--paper-deep);padding:23px 0}.reservation-note-inner{display:flex;align-items:center;gap:15px}.reservation-note-inner>span{font-size:22px;color:var(--gold)}.reservation-note-inner p{margin:0;font-size:11px;color:#55594f}.reservation-note-inner a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:800px){.reservation-content{grid-template-columns:1fr;gap:31px}.reservation-intro{position:static}.reservation-intro>p:not(.eyebrow){max-width:560px}.reservation-intro .booking-contact{grid-template-columns:1fr 1fr;max-width:460px}.reservation-intro .booking-contact span{grid-column:1/-1}}
@media(max-width:700px){.reservation-hero{height:520px;max-height:calc(100svh - 72px);min-height:480px}.reservation-hero-copy{margin-inline:24px}.reservation-hero-copy h1{font-size:clamp(45px,11vw,64px)}.reservation-content{padding-top:70px;padding-bottom:74px}.reservation-form{padding:25px 19px}.reservation-form-heading h2{font-size:28px}.reservation-form-row{grid-template-columns:1fr}.reservation-intro .booking-contact{grid-template-columns:1fr}.reservation-intro .booking-contact span{grid-column:auto}.reservation-note-inner{align-items:flex-start}.reservation-note-inner p{font-size:10px}}
