:root{--ink:#18342e;--green:#24463f;--sage:#93a89d;--cream:#f5f0e7;--white:#fffdf9;--pink:#d59aa0;--gold:#c7a36b;--line:rgba(24,52,46,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font-family:"DM Sans",sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.site-header{height:84px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:rgba(255,253,249,.94);backdrop-filter:blur(15px);position:fixed;top:0;left:0;right:0;z-index:20;border-bottom:1px solid transparent}.site-header.scrolled{border-color:var(--line)}.wordmark{text-decoration:none;color:var(--ink);display:flex;flex-direction:column;line-height:.85}.wordmark span{font:italic 600 31px/1 "Playfair Display",serif}.wordmark small{text-transform:uppercase;letter-spacing:.22em;font-size:8px;margin-top:8px}.site-header nav{display:flex;align-items:center;gap:32px}.site-header nav a{color:var(--ink);text-decoration:none;font-size:14px}.nav-cta{border:1px solid var(--ink);background:transparent;padding:11px 18px;color:var(--ink);border-radius:99px}.hero{height:min(880px,100vh);min-height:680px;position:relative;margin-top:84px;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,38,34,.72) 0%,rgba(17,38,34,.18) 60%,transparent 100%)}.hero-copy{position:absolute;left:7vw;top:50%;transform:translateY(-55%);color:#fff;max-width:650px}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:12px;font-weight:600;margin:0 0 20px}.eyebrow.green{color:#607c70}.hero h1,.section h2,.closing h2,dialog h2{font-family:"Playfair Display",serif;font-weight:600}.hero h1{font-size:clamp(54px,7vw,94px);line-height:.96;letter-spacing:-.035em;margin:0 0 24px}.hero h1 em{color:#f0cfd0;font-weight:500}.hero-copy>p:not(.eyebrow){font-size:18px;line-height:1.6;max-width:550px}.primary{border:0;background:var(--pink);color:#fff;padding:15px 22px;border-radius:99px;font-weight:600;margin-top:18px}.primary span{padding-left:14px}.hero-facts{position:absolute;bottom:0;right:0;display:flex;background:rgba(255,253,249,.95);padding:24px 4vw 22px;gap:35px;border-radius:24px 0 0 0}.hero-facts span{font-size:12px;text-transform:uppercase;letter-spacing:.08em}.hero-facts b{display:block;font:600 23px/1.2 "Playfair Display",serif;text-transform:none}.section{padding:110px 7vw}.stay{background:var(--cream)}.intro{display:grid;grid-template-columns:1fr 1.1fr;gap:8vw;align-items:start}.intro .eyebrow{grid-column:1}.intro h2{grid-column:1;font-size:clamp(42px,5vw,67px);line-height:1.05;margin:-5px 0 0}.intro>p:last-child{grid-column:2;grid-row:1/3;font-size:18px;line-height:1.8;margin:35px 0 0}.amenity-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(24,52,46,.16);margin-top:80px;border:1px solid var(--line)}.amenity-grid article{background:var(--cream);padding:38px 28px;min-height:235px}.amenity-grid i{font-style:normal;font-size:28px;color:var(--pink)}.amenity-grid h3{font:600 24px/1.2 "Playfair Display",serif;margin:22px 0 10px}.amenity-grid p{font-size:14px;line-height:1.65;color:#53665f}.explore{padding-bottom:120px}.explore-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:45px}.explore h2{font-size:clamp(42px,5vw,67px);margin:0}.tabs{display:flex;gap:8px}.tabs button{border:1px solid var(--line);background:transparent;border-radius:99px;padding:11px 20px;color:var(--ink)}.tabs button[aria-selected=true]{background:var(--green);color:#fff}.gallery{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-auto-rows:260px;gap:14px}.photo{padding:0;border:0;overflow:hidden;background:#ddd}.photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.photo:hover img{transform:scale(1.025)}.photo.wide{grid-column:span 2}.photo.tall{grid-row:span 2}.photo-note{font-size:12px;color:#6c7d76;margin-top:14px}.sleep-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.sleep-grid article{background:var(--cream)}.sleep-grid img{width:100%;height:420px;object-fit:cover}.sleep-grid article div{padding:26px}.sleep-grid span{text-transform:uppercase;letter-spacing:.18em;font-size:10px}.sleep-grid h3{font:600 33px "Playfair Display",serif;margin:6px 0}.sleep-grid p{line-height:1.6;color:#53665f}.sleep-note{margin-top:24px;padding:20px 24px;border:1px solid var(--line)}.nearby-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.nearby-grid article{min-height:290px;background:var(--green);color:#fff;padding:32px;display:flex;flex-direction:column}.nearby-grid span{color:#ecc5c8}.nearby-grid h3{font:600 29px/1.1 "Playfair Display",serif;margin:auto 0 12px}.nearby-grid p{line-height:1.6;color:#d9e1dd}.closing{background:var(--green);color:#fff;padding:100px 7vw;display:grid;grid-template-columns:1fr auto;align-items:center;gap:25px}.closing h2{font-size:clamp(48px,6vw,78px);line-height:1.04;margin:0}.primary.light{background:#fff;color:var(--ink);padding:17px 26px}.fineprint{grid-column:2;font-size:11px;max-width:260px;color:#b9c8c2;margin:0}footer{padding:55px 7vw;display:flex;align-items:end;justify-content:space-between;font-size:12px;color:#60716b}dialog{border:0;border-radius:20px;padding:42px;width:min(600px,calc(100% - 30px));color:var(--ink);box-shadow:0 24px 80px rgba(16,40,34,.28)}dialog::backdrop{background:rgba(13,31,27,.72);backdrop-filter:blur(5px)}dialog h2{font-size:45px;margin:0 0 10px}dialog>button.close{position:absolute;right:20px;top:16px;border:0;background:transparent;font-size:30px;color:var(--ink)}dialog p{line-height:1.55}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:block;font-size:12px;font-weight:600;margin-top:16px}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:9px;background:#fff;padding:13px;margin-top:7px;color:var(--ink)}textarea{resize:vertical}.full{width:100%;margin-top:22px}.summary{background:var(--cream);padding:22px;border-radius:12px;white-space:pre-line;line-height:1.8}.privacy-note{font-size:13px}.text-button{display:block;border:0;background:transparent;margin:16px auto 0;color:var(--ink)}#lightbox{padding:0;background:transparent;box-shadow:none;width:min(1100px,94vw);max-width:none}#lightbox img{display:block;max-width:100%;max-height:88vh;margin:auto}.light-close{color:#fff!important;font-size:38px!important;right:0!important;top:-45px!important}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,120px);background:var(--ink);color:#fff;padding:12px 20px;border-radius:99px;z-index:50;transition:.25s}.toast.show{transform:translate(-50%,0)}

@media(max-width:900px){.site-header nav a{display:none}.site-header nav{gap:0}.hero{min-height:720px}.hero-copy{top:43%;left:6vw;right:6vw}.hero-facts{left:0;border-radius:0;justify-content:space-around;gap:8px;padding:20px 10px}.intro{display:block}.intro>p:last-child{margin-top:28px}.amenity-grid{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr 1fr;grid-auto-rows:220px}.photo.wide{grid-column:span 2}.photo.tall{grid-row:span 1}.nearby-grid{grid-template-columns:1fr 1fr}.closing{grid-template-columns:1fr}.fineprint{grid-column:1}footer{gap:24px;flex-wrap:wrap}}

@media(max-width:600px){.site-header{height:72px}.wordmark span{font-size:26px}.nav-cta{padding:9px 13px;font-size:12px}.hero{margin-top:72px;min-height:690px}.hero h1{font-size:52px}.hero-copy>p:not(.eyebrow){font-size:15px}.hero-facts span{font-size:9px}.hero-facts b{font-size:19px}.section{padding:75px 5vw}.intro h2,.explore h2{font-size:42px}.amenity-grid{grid-template-columns:1fr}.amenity-grid article{min-height:190px}.explore-head{display:block}.tabs{margin-top:25px}.gallery{grid-auto-rows:170px;gap:7px}.sleep-grid{grid-template-columns:1fr}.sleep-grid img{height:330px}.nearby-grid{grid-template-columns:1fr}.nearby-grid article{min-height:220px}.closing{padding:75px 6vw}.closing h2{font-size:48px}footer{align-items:start;flex-direction:column}.form-row{grid-template-columns:1fr}dialog{padding:34px 24px}dialog h2{font-size:38px}}

.intro-copy{grid-column:2;grid-row:1/3;font-size:18px;line-height:1.8;margin:35px 0 0}.intro-copy p{margin:0 0 20px}.intro-copy p:last-child{margin-bottom:0}
@media(max-width:900px){.intro-copy{margin-top:28px}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo img,.toast{transition:none}}
