:root{--display:"Playfair Display",Georgia,serif;--body:Inter,Arial,sans-serif;--radius:0px;--container:min(1280px,calc(100vw - 72px))}
.site-header{background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 86%,transparent),transparent);backdrop-filter:none}.site-header.scrolled{background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(16px)}.header-inner{min-height:96px}.brand{font-size:1.28rem;letter-spacing:.025em}.hero{min-height:100vh;align-items:flex-end;padding-bottom:150px}.hero::before{background:linear-gradient(90deg,color-mix(in srgb,var(--bg) 91%,transparent),color-mix(in srgb,var(--bg) 52%,transparent) 54%,color-mix(in srgb,var(--bg) 16%,transparent)),linear-gradient(0deg,color-mix(in srgb,var(--bg) 68%,transparent),transparent 55%)}.hero-copy{max-width:920px;padding-left:clamp(0px,5vw,76px)}.hero h1{max-width:900px;font-size:clamp(4.2rem,7.4vw,7.8rem);line-height:.92;letter-spacing:-.052em}.hero .lead{max-width:610px;font-size:1.12rem}.booking-strip{margin-top:-56px;width:min(1240px,calc(100vw - 72px));background:var(--surface);border-color:color-mix(in srgb,var(--accent) 34%,var(--line))}.booking-field{padding:21px 24px}.section{padding:132px 0;border-top:0}.section+.section{border-top:1px solid var(--line)}.section-head{margin-bottom:58px}.section-head h2,.page-section h2{max-width:880px}.gallery-grid{grid-template-columns:1.35fr .65fr 1fr;grid-template-rows:330px 260px;gap:10px}.pathway-grid{grid-template-columns:repeat(2,1fr);border:0;border-top:1px solid var(--line)}.pathway{min-height:250px;padding:38px 8vw 38px 0;border:0;border-bottom:1px solid var(--line)}.pathway:nth-child(odd){border-right:1px solid var(--line)}.pathway:nth-child(even){padding-left:8vw}.pathway h3{margin:30px 0 14px;font-size:clamp(2rem,3.2vw,3.5rem)}.split,.split.reverse{grid-template-columns:minmax(0,1.16fr) minmax(380px,.84fr);min-height:720px}.split.reverse{grid-template-columns:minmax(380px,.84fr) minmax(0,1.16fr)}.split-media{min-height:720px}.split-copy{padding:clamp(64px,8vw,130px);background:var(--surface)}.split-copy h2{font-size:clamp(3rem,5.2vw,5.8rem)}.cards{gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}.card,.image-cards .card,.page-section .cards .card{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent}.card{padding:36px}.image-cards .card-body{padding:30px}.module-section{background:color-mix(in srgb,var(--surface) 48%,var(--bg))}.module-section+.module-section{padding-top:0}.module-section .section-head{display:grid;grid-template-columns:minmax(240px,.7fr) 1.3fr;gap:8vw;max-width:none;align-items:start}.module-section .section-head .eyebrow{grid-column:1}.module-section .section-head h2,.module-section .section-head p{grid-column:2}.module-section .section-head h2{margin-top:-10px}.module-section .section-head p{margin-top:0}.module-meetings,.module-rewards,.module-local,.module-concierge,.module-accessibility,.module-sustainability{padding-block:90px}.page-hero{min-height:74vh}.page-section{padding:110px 0}.feature-list{gap:0}.final-cta{padding:130px 24px;background:var(--accent)}.site-footer{padding-top:90px}
@media(max-width:980px){:root{--container:min(calc(100% - 40px),1280px)}.header-inner{min-height:82px}.hero h1{font-size:clamp(3.6rem,10vw,6rem)}.booking-strip{width:calc(100vw - 40px)}.pathway-grid{grid-template-columns:1fr}.pathway:nth-child(odd){border-right:0}.pathway:nth-child(even){padding-left:0}.split,.split.reverse{grid-template-columns:1fr}.split-media{min-height:520px}.module-section .section-head{grid-template-columns:1fr;gap:0}.module-section .section-head h2,.module-section .section-head p{grid-column:1}}
@media(max-width:640px){:root{--container:calc(100vw - 32px)}.hero{padding-bottom:80px}.hero-copy{padding-left:0}.hero h1{font-size:clamp(2.7rem,13vw,4rem)}.booking-strip{width:100%}.section{padding:82px 0}.gallery-grid{grid-template-rows:250px 180px 180px}.split-media{min-height:360px}.split-copy{padding:54px 24px}.module-section+.module-section{padding-top:0}.module-section .section-head{margin-bottom:34px}.page-section{padding:76px 0}}

/* Availability form — tailored editorial reservation desk. */
.booking-strip{border-top:3px solid var(--accent);box-shadow:0 30px 80px rgba(0,0,0,.24)}
.booking-field{padding:24px 28px}
.booking-field::after{content:attr(data-step);position:absolute;inset:16px 18px auto auto;color:color-mix(in srgb,var(--muted) 46%,transparent);font:500 .62rem/1 var(--body);letter-spacing:.12em}
.booking-field label{color:var(--accent);letter-spacing:.13em}
.booking-field input,.booking-field select{font-family:var(--display);font-size:1.08rem;font-weight:500}
.booking-submit{min-width:220px}
@media(max-width:980px){.booking-field{padding:20px 24px}.booking-field::after{inset:14px 16px auto auto}}
@media(max-width:640px){.booking-strip{border-top-width:2px}.booking-field{padding:15px 20px}.booking-field::after{inset:12px 14px auto auto}.booking-field input,.booking-field select{font-size:1rem}}
