*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:#171717;background:#fff;font:17px/1.6 Arial,Helvetica,sans-serif}a{color:inherit}header{max-width:1440px;margin:auto;padding:26px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e5e5e5}.wordmark{font-size:20px;font-weight:800;letter-spacing:.08em;text-decoration:none}.nav-link{font-size:14px;text-underline-offset:6px}.nav-link span{margin-left:16px}.hero{max-width:1320px;margin:auto;padding:65px 5% 58px}.eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;margin:0 0 22px}h1{margin:0}.logo{display:block;width:100%;height:auto;max-width:1050px;margin:-30px auto -35px}.hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid #d8d8d8;padding-top:30px}.hero-bottom p{font-size:25px;line-height:1.25;margin:0;letter-spacing:-.025em}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;background:#171717;color:white;padding:18px 24px;text-decoration:none;border:1px solid #171717;font:600 14px/1.3 Arial,Helvetica,sans-serif;cursor:pointer;transition:background .15s}.button:hover{background:#393939}.button span{font-size:23px;font-weight:400}.intro{background:#f3f3f1;padding:75px max(5%,calc((100vw - 1188px)/2));display:grid;grid-template-columns:1fr 2fr;gap:45px}h2{font-size:clamp(34px,4.5vw,60px);line-height:1.08;font-weight:500;letter-spacing:-.045em;margin:0 0 25px}.intro p:not(.eyebrow){max-width:600px;color:#484848}.intro .eyebrow{padding-top:10px}.contact{background:#171717;color:white;padding:85px max(5%,calc((100vw - 1188px)/2));display:grid;grid-template-columns:.85fr 1.15fr;gap:85px}.contact-copy p:not(.eyebrow){max-width:340px;color:#d0d0d0}.contact-copy .note{font-size:14px;margin-top:35px}.email-link{display:inline-block;font-size:14px;margin-top:14px;text-underline-offset:6px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}label{display:block;font-size:13px;line-height:1.5}label small{color:#aaa;font-size:11px;margin-left:6px}label span{color:#aaa}input,textarea,select{display:block;width:100%;margin-top:9px;border:1px solid #666;border-radius:0;background:#222;color:#fff;padding:13px 12px;font:16px/1.4 Arial,Helvetica,sans-serif;color-scheme:dark}textarea{resize:vertical;min-height:125px}input::placeholder,textarea::placeholder{color:#aaa;opacity:1}.message-label{margin-top:24px}.privacy{font-size:11px;line-height:1.6;color:#bcbcbc;margin:16px 0 23px}.privacy a{text-underline-offset:3px}.light{background:#fff;border-color:#fff;color:#171717;width:100%}.light:hover{background:#ddd}.trap{position:absolute;width:1px;height:1px;overflow:hidden;left:-10000px}footer{display:flex;justify-content:space-between;gap:20px;padding:30px 5%;font-size:11px;color:#666}footer span:first-child{color:#171717;font-weight:800;letter-spacing:.1em}:focus-visible{outline:3px solid #8c8c8c;outline-offset:5px}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip:focus{position:fixed;top:10px;left:10px;padding:12px;background:white;z-index:10}.thanks{max-width:720px;margin:8vh auto;padding:35px}.thanks .logo{margin:0 0 25px}.thanks .button{margin-top:25px}@media(max-width:700px){header{padding:20px 6%}.wordmark{font-size:17px}.nav-link{font-size:12px}.nav-link span{margin-left:5px}.hero{padding:40px 6%}.logo{margin:-5px 0 8px}.hero-bottom{flex-direction:column;align-items:flex-start;padding-top:25px;gap:25px}.hero-bottom p{font-size:24px}.hero-bottom .button{width:100%}.intro{grid-template-columns:1fr;gap:12px;padding:45px 6%}.contact{grid-template-columns:1fr;gap:35px;padding:50px 6%}.contact-copy p:not(.eyebrow){max-width:none}.contact-copy .note{margin-top:20px}.fields{gap:20px 16px}footer{flex-wrap:wrap;padding:25px 6%;gap:10px 20px}.contact h2{font-size:45px}}@media(max-width:380px){.fields{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.lead-photo{margin:0 5%;position:relative}.lead-photo img{display:block;width:100%;height:min(58vw,650px);object-fit:cover;object-position:center 55%}.lead-photo figcaption{font-size:11px;padding:12px 0 28px;color:#555}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:0 5% 65px;background:#f3f3f1}.gallery figure{margin:0}.gallery img{display:block;width:100%;height:auto;aspect-ratio:1.5;object-fit:cover}.gallery figcaption{font-size:12px;margin-top:12px;color:#555}@media(max-width:700px){.lead-photo{margin:0 6%}.lead-photo img{height:72vw}.gallery{grid-template-columns:1fr;padding:0 6% 45px;gap:24px}}
.hero{padding-top:34px;padding-bottom:38px}.logo{max-width:650px;margin:0 auto}.hero .eyebrow{margin-bottom:18px}.hero-bottom{padding-top:23px}.hero-bottom p{font-size:23px}@media(max-width:700px){.hero{padding-top:30px}.logo{margin:8px auto 15px}}

.booking-rates{margin-top:30px;border-top:1px solid #555;padding-top:24px}.booking-rates .eyebrow{margin-bottom:16px}.booking-rates dl{margin:0}.booking-rates dl div{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:12px 0;border-bottom:1px solid #444}.booking-rates dt{font-size:18px}.booking-rates dd{margin:0;font-size:30px;line-height:1.2}.contact-copy .booking-rates .rate-detail{font-size:12px;line-height:1.6;max-width:none;color:#bcbcbc}
