:root{--ink:#1d2a25;--muted:#657068;--cream:#f4f1e9;--paper:#fbfaf6;--olive:#5f6f58;--olive-dark:#3f4d3a;--sand:#c5af92;--line:#1d2a2526;--serif:Georgia, "Times New Roman", serif;--sans:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6}body::selection{color:var(--ink);background:#d9e0d2}a{color:inherit;text-decoration:none}button,input{font:inherit}img{max-width:100%;display:block}svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.1em;height:1.1em}.site-header{z-index:50;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fbfaf6f0;justify-content:space-between;align-items:center;height:82px;padding:0 clamp(24px,5vw,78px);display:flex;position:sticky;top:0}.brand{align-items:center;gap:13px;display:inline-flex}.brand-mark{width:43px;height:43px;color:var(--paper);background:var(--olive-dark);font-family:var(--serif);letter-spacing:.04em;border-radius:50% 50% 50% 12px;place-items:center;font-size:14px;line-height:1;display:grid}.brand-copy{line-height:1.15;display:grid}.brand-copy strong{letter-spacing:.08em;text-transform:uppercase;font-size:14px}.brand-copy small{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-top:5px;font-size:11px}.nav-links{align-items:center;gap:clamp(20px,2.6vw,42px);font-size:13px;font-weight:600;display:flex}.nav-links>a:not(.nav-cta){position:relative}.nav-links>a:not(.nav-cta):after{content:"";background:var(--olive);height:1px;transition:right .18s;position:absolute;bottom:-6px;left:0;right:100%}.nav-links>a:not(.nav-cta):hover:after{right:0}.nav-cta{color:#fff;background:var(--olive-dark);border-radius:999px;padding:11px 18px;transition:transform .18s,background .18s}.nav-cta:hover{background:var(--ink);transform:translateY(-1px)}.language-switcher{border:1px solid var(--line);border-radius:999px;align-items:center;gap:3px;padding:3px;display:flex}.language-switcher button{width:31px;height:27px;color:var(--muted);letter-spacing:.05em;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0;font-size:9px;font-weight:750}.language-switcher button.is-active{color:#fff;background:var(--olive-dark)}.menu-button{width:42px;height:42px;color:var(--ink);border:1px solid var(--line);background:0 0;border-radius:50%;place-items:center;display:none}.hero{background:radial-gradient(circle at 84% 18%, #5f6f5829, transparent 27%), radial-gradient(circle at 9% 86%, #c5af9233, transparent 24%), var(--cream);border-bottom:1px solid var(--line);min-height:calc(100vh - 82px);display:block}.hero-copy{flex-direction:column;justify-content:center;max-width:1280px;min-height:calc(100vh - 82px);margin:0 auto;padding:78px clamp(28px,8vw,140px);display:flex}.eyebrow,.section-kicker{color:var(--olive);letter-spacing:.18em;text-transform:uppercase;font-size:11px;font-weight:700}.eyebrow{align-items:center;gap:10px;display:flex}.eyebrow span{background:var(--olive);width:30px;height:1px}h1,h2,h3,p{margin-top:0}h1{max-width:710px;font-family:var(--serif);letter-spacing:-.045em;margin:22px 0 26px;font-size:clamp(55px,5.7vw,88px);font-weight:400;line-height:.98}h1 em{color:var(--olive);font-weight:400}.hero-intro{color:#4f5a53;max-width:620px;margin-bottom:31px;font-size:clamp(17px,1.5vw,20px);line-height:1.65}.hero-actions{align-items:center;gap:28px;display:flex}.button{cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:14px;min-height:52px;padding:0 24px;font-size:13px;font-weight:700;transition:transform .18s,background .18s;display:inline-flex}.button svg,.inline-link svg{transition:transform .18s}.button:hover{transform:translateY(-2px)}.button:hover svg,.inline-link:hover svg{transform:translate(4px)}.button-primary{color:#fff;background:var(--olive-dark)}.button-primary:hover{background:var(--ink)}.text-button{color:var(--ink);cursor:pointer;background:0 0;border:0;align-items:center;gap:11px;padding:0;font-size:13px;font-weight:700;display:inline-flex}.text-button[hidden]{display:none}.play{width:39px;height:39px;color:var(--olive-dark);border:1px solid #abb5a8;border-radius:50%;place-items:center;display:grid}.play svg{fill:currentColor;stroke-width:1.4px;width:17px;height:17px}.hero-details{border-top:1px solid var(--line);gap:clamp(26px,4vw,58px);margin-top:clamp(48px,7vh,76px);padding-top:24px;display:flex}.hero-details>div{align-items:center;gap:11px;display:flex}.detail-number{font-family:var(--serif);font-size:28px;line-height:1}.detail-label{color:var(--muted);letter-spacing:.11em;text-transform:uppercase;font-size:10px;line-height:1.4}.section-pad{padding:clamp(82px,10vw,150px) clamp(24px,7vw,110px)}.statement{grid-template-columns:.5fr 1.35fr .75fr;align-items:start;gap:50px;max-width:1600px;margin:0 auto;display:grid}.section-kicker{margin-bottom:22px}.section-kicker.light{color:#d7c9b8}.statement h2,.section-heading h2,.amenities h2,.booking h2,.location h2,.final-cta h2,.rate-strip h2{font-family:var(--serif);letter-spacing:-.035em;margin-bottom:0;font-size:clamp(38px,4.2vw,64px);font-weight:400;line-height:1.08}.statement-copy{color:var(--muted);margin:12px 0 0;font-size:17px}.rooms{background:var(--cream)}.section-heading{grid-template-columns:1fr minmax(280px,.42fr);align-items:end;gap:50px;max-width:1420px;margin:0 auto 70px;display:grid}.section-heading>p{color:var(--muted);margin:0 0 8px}.room-card{background:var(--paper);border:1px solid var(--line);grid-template-columns:1.1fr .9fr;max-width:1420px;min-height:585px;margin:0 auto 36px;display:grid}.room-card:last-child{margin-bottom:0}.room-photo{min-height:520px;position:relative;overflow:hidden}.room-photo img{object-fit:cover;width:100%;height:100%;transition:transform .8s}.room-card:hover .room-photo img{transform:scale(1.025)}.room-number{width:48px;height:48px;color:var(--paper);font-family:var(--serif);background:#1d2a25c7;border-radius:50%;place-items:center;display:grid;position:absolute;top:24px;left:24px}.room-info{flex-direction:column;justify-content:center;padding:clamp(40px,6vw,92px);display:flex}.room-type{color:var(--olive);letter-spacing:.17em;text-transform:uppercase;margin-bottom:15px;font-size:11px;font-weight:700}.room-info h3{font-family:var(--serif);letter-spacing:-.035em;margin-bottom:24px;font-size:clamp(38px,4vw,57px);font-weight:400;line-height:1.02}.room-info>p:not(.room-type){color:var(--muted);margin-bottom:26px}.room-features{gap:12px;margin:0 0 31px;padding:0;font-size:14px;list-style:none;display:grid}.room-features li{align-items:center;gap:10px;display:flex}.room-features svg{width:17px;height:17px;color:var(--olive)}.inline-link{border-bottom:1px solid;align-items:center;gap:12px;width:fit-content;padding-bottom:5px;font-size:13px;font-weight:700;display:inline-flex}.inline-link svg{width:16px;height:16px}.room-card-group{grid-template-columns:.9fr 1.1fr}.room-card-group .room-photo img{object-position:center 52%}.facilities{background:var(--paper);grid-template-columns:minmax(340px,.88fr) minmax(420px,1.12fr);align-items:center;gap:clamp(55px,8vw,130px);max-width:1600px;margin:0 auto;display:grid}.facilities-photo{min-height:620px;overflow:hidden}.facilities-photo img{object-fit:cover;object-position:center;width:100%;height:100%;min-height:620px}.facilities-copy{max-width:670px}.facilities-copy h2{font-family:var(--serif);letter-spacing:-.035em;margin-bottom:27px;font-size:clamp(38px,4.2vw,64px);font-weight:400;line-height:1.08}.facilities-copy>p:not(.section-kicker){color:var(--muted);margin-bottom:32px;font-size:17px}.facilities-list{border-top:1px solid var(--line);gap:0;margin:0;padding:0;list-style:none;display:grid}.facilities-list li{border-bottom:1px solid var(--line);grid-template-columns:22px 1fr;align-items:center;gap:13px;padding:18px 0;display:grid}.facilities-list svg{width:19px;height:19px;color:var(--olive)}.amenities{color:#f8f5ef;background:var(--ink);grid-template-columns:.8fr 1.2fr;gap:clamp(55px,8vw,130px);display:grid}.amenities-title{max-width:570px}.amenities-grid{grid-template-columns:1fr 1fr;gap:0 52px;display:grid}.amenity{border-top:1px solid #ffffff2e;padding:30px 0 34px}.amenity span{color:#aebaa9;font-family:var(--serif);font-size:14px}.amenity h3{font-family:var(--serif);margin:24px 0 9px;font-size:25px;font-weight:400}.amenity p{color:#adb6b0;margin-bottom:0;font-size:14px}.booking{background:var(--paper);grid-template-columns:minmax(320px,.72fr) minmax(580px,1.28fr);align-items:start;gap:clamp(55px,7vw,115px);display:grid}.booking-copy>p:not(.section-kicker){color:var(--muted);margin:27px 0 30px}.booking-steps{border-top:1px solid var(--line);margin-bottom:34px}.booking-steps>div{border-bottom:1px solid var(--line);grid-template-columns:34px 1fr;align-items:center;gap:13px;padding:15px 0;display:grid}.booking-steps span{width:27px;height:27px;color:var(--olive);font-family:var(--serif);border:1px solid #aab5a7;border-radius:50%;place-items:center;font-size:12px;display:grid}.booking-steps p{color:var(--muted);margin:0;font-size:13px}.booking-steps strong{color:var(--ink)}.booking-form-card{border:1px solid var(--line);background:#fff;overflow:hidden;box-shadow:0 24px 60px #1f2b2517}.booking-form-header{color:#fff;background:var(--olive-dark);justify-content:space-between;align-items:center;gap:20px;min-height:74px;padding:18px 24px;display:flex}.booking-form-header span{font-family:var(--serif);font-size:24px}.booking-form-header small{color:#cdd5ca;letter-spacing:.1em;text-transform:uppercase;font-size:10px}.booking-form{gap:22px;padding:clamp(28px,4vw,48px);display:grid}.form-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.booking-form label{color:var(--ink);letter-spacing:.08em;text-transform:uppercase;gap:7px;font-size:11px;font-weight:700;display:grid}.booking-form label>span{color:var(--muted);font-size:9px;font-weight:500}.booking-form input,.booking-form select,.booking-form textarea{width:100%;min-height:48px;color:var(--ink);background:var(--paper);border:1px solid var(--line);font-family:var(--sans);letter-spacing:0;text-transform:none;border-radius:0;outline:none;padding:11px 13px;font-size:14px}.booking-form textarea{resize:vertical}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:var(--olive);box-shadow:0 0 0 3px #5f6f581a}.form-submit{width:100%}.form-note{color:var(--muted);text-align:center;margin:-8px 0 0;font-size:10px}.rate-strip{color:#fff;background:var(--olive-dark);grid-template-columns:1fr .7fr auto;align-items:center;gap:50px;padding:68px clamp(24px,7vw,110px);display:grid}.rate-strip .section-kicker{margin-bottom:13px}.rate-strip h2{font-size:clamp(38px,4vw,56px)}.rate-strip h2 span{color:#dfcfbb;font-style:italic}.rate-strip>p{color:#c4cdc1;margin:0;font-size:14px}.button-light{color:var(--ink);background:#f5f1e8}.location{background:var(--cream)}.location-card{background:var(--paper);border:1px solid var(--line);grid-template-columns:1fr;max-width:920px;margin:0 auto;display:grid}.location-copy{padding:clamp(42px,7vw,100px)}.address-line{border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center;gap:12px;margin:30px 0 36px;padding:17px 0;font-size:14px;display:flex}.address-line svg{color:var(--olive)}.directions{gap:24px;margin-bottom:35px;display:grid}.directions div{grid-template-columns:80px 1fr;gap:18px;display:grid}.directions span{color:var(--olive);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:700}.directions p{color:var(--muted);margin:0;font-size:14px}.final-cta{text-align:center;max-width:980px;margin:0 auto}.final-cta h2{margin-bottom:25px}.final-cta>p:not(.section-kicker){max-width:680px;color:var(--muted);margin:0 auto 34px}.final-actions{justify-content:center;align-items:center;gap:28px;display:flex}.phone-link{border-bottom:1px solid;font-size:14px;font-weight:700}footer{background:var(--cream);border-top:1px solid var(--line);grid-template-columns:.75fr 1fr auto;align-items:center;gap:50px;padding:40px clamp(24px,5vw,78px);display:grid}footer>p{color:var(--muted);text-align:center;margin:0;font-size:12px}.footer-links{gap:24px;font-size:12px;font-weight:650;display:flex}.video-modal{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0d1411e0;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-close{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff59;border-radius:50%;width:44px;height:44px;font-size:29px;line-height:1;position:absolute;top:18px;right:24px}.video-frame{flex-direction:column;align-items:center;max-height:90vh;display:flex}.video-frame video{border-radius:8px;max-width:min(430px,86vw);max-height:82vh;box-shadow:0 25px 80px #00000059}.video-frame p{color:#fff;letter-spacing:.1em;text-transform:uppercase;margin:10px 0 0;font-size:12px}@media (max-width:1050px){.hero-copy{padding:68px 40px}h1{font-size:clamp(52px,7vw,72px)}.hero-details{flex-wrap:wrap;gap:23px}.statement{grid-template-columns:1fr 2fr}.statement-copy{grid-column:2}.room-card,.room-card-group{grid-template-columns:1fr 1fr}.facilities{grid-template-columns:1fr 1fr;gap:50px}.booking{grid-template-columns:1fr}.rate-strip{grid-template-columns:1fr 1fr}.rate-strip .button{grid-column:1/-1;width:fit-content}.location-card{grid-template-columns:1fr}}@media (max-width:780px){.site-header{height:70px;padding:0 18px}.menu-button{display:grid}.nav-links{background:var(--paper);border:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;padding:12px;display:none;position:absolute;top:78px;left:12px;right:12px;box-shadow:0 18px 50px #1d2a2526}.nav-links.is-open{display:flex}.nav-links a{padding:13px}.language-switcher{align-self:flex-start;margin:8px 13px 13px}.nav-cta{text-align:center;margin-top:5px}.brand-mark{width:38px;height:38px}.hero{min-height:auto}.hero-copy{padding:62px 24px 52px}h1{font-size:clamp(50px,15vw,69px)}.hero-actions{flex-direction:column;align-items:flex-start;gap:20px}.hero-details{justify-content:space-between}.section-pad{padding:78px 22px}.statement,.section-heading,.facilities,.amenities,.location-card{grid-template-columns:1fr}.statement{gap:26px}.statement-copy{grid-column:auto;margin-top:0}.section-heading{gap:24px;margin-bottom:45px}.room-card,.room-card-group{flex-direction:column;display:flex}.room-card-group .room-info{order:2}.room-card-group .room-photo{order:1}.room-photo{min-height:410px}.room-info{padding:42px 28px 48px}.facilities{gap:42px}.facilities-photo,.facilities-photo img{min-height:500px}.amenities{gap:45px}.amenities-grid{gap:0 25px}.booking{gap:48px}.booking-form-card{margin:0 -12px}.rate-strip{grid-template-columns:1fr;gap:25px;padding:58px 24px}.rate-strip .button{grid-column:auto}.final-actions{flex-direction:column}footer{text-align:center;grid-template-columns:1fr;gap:25px}footer .brand{justify-self:center}.footer-links{justify-content:center}}@media (max-width:480px){.brand-copy small{display:none}.hero-details{grid-template-columns:1fr 1fr;gap:24px 12px;display:grid}.hero-details>div:last-child{grid-column:1/-1}.room-photo{min-height:350px}.facilities-photo,.facilities-photo img{min-height:420px}.amenities-grid,.form-grid{grid-template-columns:1fr}.booking-form-header{flex-direction:column;align-items:flex-start;gap:3px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
