:root{--green:#2f605d;--deep:#183c3a;--sage:#7c9992;--cream:#f2eee6;--sand:#d9c9b6;--ink:#1c2523;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:Montserrat,Arial,sans-serif;font-weight:300}.site-header{position:absolute;z-index:10;top:0;left:0;right:0;height:104px;display:flex;align-items:center;padding:0 5vw;color:#fff;border-bottom:1px solid rgba(255,255,255,.25)}.brand{display:flex;flex-direction:column;color:inherit;text-decoration:none;line-height:.72;font-family:"Cormorant Garamond",serif;font-size:29px;letter-spacing:.04em}.brand span{font-weight:400}.brand strong{font-weight:600}.brand small{font-family:Montserrat,sans-serif;font-size:8px;letter-spacing:.3em;text-transform:uppercase;margin-top:12px}.site-header nav{margin-left:auto;display:flex;align-items:center;gap:29px}.site-header nav a{color:inherit;text-decoration:none;text-transform:uppercase;font-size:10px;letter-spacing:.16em;font-weight:500}.nav-cta{border:1px solid #fff;padding:12px 20px}.menu-button{display:none}.hero{height:100vh;min-height:680px;position:relative;color:#fff}.hero>img{width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,40,38,.82) 0%,rgba(15,40,38,.35) 55%,rgba(15,40,38,.08) 100%)}.hero-content{position:absolute;left:8vw;top:50%;transform:translateY(-42%);max-width:720px}.overline{font-size:10px;letter-spacing:.28em;font-weight:600;text-transform:uppercase;color:var(--sage)}.hero .overline{color:#dce7e3}.hero h1{font:500 clamp(54px,6vw,92px)/.94 "Cormorant Garamond",serif;margin:25px 0}.hero h1 em{font-weight:400}.hero-content>p:not(.overline){font-size:16px;letter-spacing:.03em}.hero-actions{display:flex;gap:12px;margin-top:38px}.button{display:inline-block;padding:16px 25px;text-decoration:none;text-transform:uppercase;font-size:9px;letter-spacing:.18em;font-weight:600}.primary{background:var(--green);color:#fff}.ghost{border:1px solid rgba(255,255,255,.75);color:#fff}.scroll{position:absolute;bottom:35px;right:5vw;color:#fff;text-decoration:none;font-size:9px;text-transform:uppercase;letter-spacing:.2em}.intro{padding:125px 8vw 90px;display:grid;grid-template-columns:1fr 1fr;gap:7vw}.intro h2,.section-heading h2,.location h2,.booking h2{font:500 clamp(42px,4vw,65px)/1 "Cormorant Garamond",serif;margin:16px 0}.intro-copy{font-size:14px;line-height:1.9}.facts{grid-column:1/-1;border-top:1px solid #cfc7bb;margin-top:40px;padding-top:32px;display:grid;grid-template-columns:repeat(3,1fr)}.facts span{display:flex;flex-direction:column;text-transform:uppercase;font-size:9px;letter-spacing:.13em}.facts b{font:500 37px "Cormorant Garamond",serif;color:var(--green);margin-bottom:7px}.rooms{background:#fff;padding:115px 6vw}.section-heading{max-width:760px;margin:0 auto 65px;text-align:center}.section-heading>p:last-child{font-size:13px;line-height:1.8}.room-grid{max-width:1350px;margin:auto}.room-card{display:grid;grid-template-columns:60% 40%;min-height:520px;margin-bottom:45px;background:var(--cream)}.room-card.reverse{grid-template-columns:40% 60%}.room-card.reverse img{order:2}.room-card img{width:100%;height:100%;object-fit:cover}.room-content{padding:70px 55px;display:flex;flex-direction:column;justify-content:center}.room-number{font-size:10px;letter-spacing:.2em;color:var(--sage)}.room-content h3,.address-card h3{font:500 42px "Cormorant Garamond",serif;margin:10px 0 25px}.room-content ul{list-style:none;padding:0;margin:0 0 28px;font-size:11px;line-height:2.4;text-transform:uppercase;letter-spacing:.08em}.room-content li:before{content:"—";margin-right:9px;color:var(--sage)}.room-content a{color:var(--green);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.services{background:var(--deep);color:#fff;padding:115px 7vw}.section-heading.light .overline{color:#a9c0ba}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:1300px;margin:auto;border-top:1px solid rgba(255,255,255,.2);border-left:1px solid rgba(255,255,255,.2)}.service-grid>div{padding:45px;border-right:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}.service-grid span{font:400 30px "Cormorant Garamond",serif;color:#9ab2ac}.service-grid h3{font:500 25px "Cormorant Garamond",serif}.service-grid p{font-size:11px;line-height:1.8;color:#ccd7d4}.location{display:grid;grid-template-columns:1.35fr .65fr;padding:120px 8vw;gap:8vw;align-items:center}.location-copy>p:not(.overline){max-width:680px;line-height:1.8;font-size:14px}.distances{display:grid;grid-template-columns:1fr 1fr;margin:35px 0}.distances p{font-size:10px;text-transform:uppercase;letter-spacing:.09em}.distances b{display:block;font:500 28px "Cormorant Garamond",serif;color:var(--green);margin-bottom:3px}.address-card{background:var(--green);color:#fff;padding:60px 50px}.address-card .overline{color:#bdd0cb}.address-card address{font-style:normal;font-size:12px;line-height:1.8;margin-bottom:20px}.address-card>a:not(.button){display:block;color:#fff;font-size:12px;margin:10px 0}.address-card hr{border:0;border-top:1px solid rgba(255,255,255,.25);margin:30px 0}.address-card p{font-size:11px;line-height:1.7}.dark{background:var(--deep);color:#fff;margin-top:15px}.booking{padding:110px 25px;text-align:center;background:var(--sand)}.booking p:not(.overline){font-size:13px}.light-button{background:#fff;color:var(--ink);margin-top:20px}footer{background:#122b2a;color:#fff;padding:60px 7vw;display:grid;grid-template-columns:1fr 2fr 1fr;align-items:end;gap:40px;font-size:10px;line-height:1.8}.footer-brand{font-size:27px}footer p:last-child{text-align:right}.menu-button{border:1px solid currentColor;background:none;color:inherit;padding:10px 14px;text-transform:uppercase;font-size:9px;letter-spacing:.15em}@media(max-width:900px){.site-header nav{display:none;position:absolute;top:104px;left:0;right:0;background:var(--deep);padding:25px;flex-direction:column}.site-header nav.open{display:flex}.menu-button{display:block;margin-left:auto}.intro{grid-template-columns:1fr}.facts{grid-template-columns:1fr 1fr}.room-card,.room-card.reverse{grid-template-columns:1fr}.room-card.reverse img{order:0}.room-card img{height:420px}.service-grid{grid-template-columns:1fr 1fr}.location{grid-template-columns:1fr}footer{grid-template-columns:1fr}footer p:last-child{text-align:left}}@media(max-width:560px){.site-header{height:82px}.hero{min-height:720px}.hero-content{left:25px;right:25px}.hero h1{font-size:51px}.hero-actions{flex-direction:column;align-items:flex-start}.intro,.rooms,.services,.location{padding:85px 24px}.facts,.service-grid,.distances{grid-template-columns:1fr}.room-card img{height:310px}.room-content{padding:45px 30px}.service-grid>div{padding:35px}.address-card{padding:45px 30px}footer{padding:50px 24px}}
