@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap");:root{--ink:#193b3a;--muted:#667574;--cream:#f5f2eb;--paper:#fbfaf7;--sage:#d7e4dc;--accent:#d97845;--line:#dfe5df}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:DM Sans,Arial,sans-serif}a{color:inherit;text-decoration:none}.site-header{height:76px;padding:0 6vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(251,250,247,.94);position:-webkit-sticky;position:sticky;top:0;z-index:5}.brand{font-size:12px;letter-spacing:2px;font-weight:700}.brand span{font-weight:400}.site-header nav{display:flex;align-items:center;gap:28px;font-size:13px;color:var(--muted)}.nav-cta{background:var(--ink);color:white;padding:12px 17px;border-radius:3px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:610px;background:var(--cream)}.hero-copy{padding:110px 7vw 90px;max-width:680px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:700;color:var(--accent);margin:0 0 18px}.hero h1{font:500 clamp(52px,7vw,92px)/.94 Playfair Display,serif;letter-spacing:-3px;margin:0 0 26px}.hero h1 em{color:var(--accent);font-style:italic}.hero-lead{font-size:18px;line-height:1.65;color:var(--muted);max-width:470px}.button{border:0;display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:16px 22px;border-radius:3px;font:600 13px DM Sans;cursor:pointer}.button.primary{background:var(--accent);color:#fff}.button.primary:disabled{opacity:.45;cursor:not-allowed}.button.light{background:#fff;color:var(--ink)}.microcopy{font-size:11px;color:var(--muted);margin-top:16px}.hero-photo{position:relative;background:linear-gradient(140deg,rgba(25,59,58,.15),rgba(25,59,58,.6)),url(https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=1400&q=85) 50%/cover;min-height:500px}.photo-card{position:absolute;bottom:32px;left:32px;background:#fff;padding:17px 20px;display:flex;gap:20px;font-size:11px;color:var(--muted);box-shadow:0 10px 30px #193b3a30}.trust-strip{display:grid;grid-template-columns:repeat(3,1fr);padding:25px 7vw;border-bottom:1px solid var(--line);grid-gap:30px;gap:30px}.trust-strip div{display:flex;flex-direction:column;gap:5px}.trust-strip strong{font-size:13px}.trust-strip span{font-size:12px;color:var(--muted)}section{padding:100px 7vw}.section-heading{text-align:center;max-width:650px;margin:0 auto 42px}.location-section h2,.section-heading h2,.split-section h2{font:500 clamp(34px,4vw,56px)/1.05 Playfair Display,serif;margin:0 0 18px;letter-spacing:-1px}.location-section p:not(.eyebrow),.section-heading p:not(.eyebrow),.split-section p:not(.eyebrow){color:var(--muted);line-height:1.7}.booking-section{background:var(--sage)}.booking-card{max-width:860px;margin:auto;background:#fff;padding:30px;box-shadow:0 15px 35px #193b3a12}.booking-card form{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:14px;gap:14px}.booking-card label{font-size:11px;font-weight:700;color:var(--muted);display:flex;flex-direction:column;gap:8px}.booking-card input,.booking-card select{font:14px DM Sans;padding:14px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}.availability{grid-column:1/-1;padding:12px 14px;font-size:12px}.availability.good{background:#edf7ee;color:#27713e}.availability.bad{background:#fff0ed;color:#a43828}.price-box{border:1px solid var(--line);padding:14px;display:flex;flex-direction:column;gap:4px}.price-box small,.price-box span{font-size:11px;color:var(--muted)}.price-box strong{font-size:24px}.booking-card .button{width:100%}.sync-note{font-size:11px;color:var(--muted);margin:18px 0 0;line-height:1.5}.split-section{display:grid;grid-template-columns:1.1fr .9fr;grid-gap:9vw;gap:9vw;align-items:center}.feature-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;margin:30px 0;color:var(--muted);font-size:13px}.text-link{font-size:13px;font-weight:700;color:var(--accent)}.detail-panel{background:var(--ink);color:white;padding:42px}.panel-label{font-size:11px;text-transform:uppercase;letter-spacing:2px;color:#b9cfc3}.price-row{display:flex;justify-content:space-between;padding:20px 0;border-bottom:1px solid #ffffff2b;font-size:14px}.price-row strong{font-weight:500}.detail-panel p{color:#b9cfc3;font-size:12px;line-height:1.6;margin-top:25px}.reviews-section{background:var(--cream)}.review-grid{max-width:1100px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px}.review{background:#fff;padding:26px;min-height:220px;display:flex;flex-direction:column;justify-content:space-between}.stars{color:var(--accent);letter-spacing:3px}.review p{font:italic 18px/1.5 Playfair Display,serif;margin:22px 0}.review footer{font-size:11px;color:var(--muted);display:flex;justify-content:space-between}.review footer span{color:var(--accent)}.location-section{display:grid;grid-template-columns:1fr 1fr;grid-gap:8vw;gap:8vw;align-items:center}.location-list{display:flex;flex-direction:column;gap:13px;margin-top:28px;font-size:13px}.location-list span:before{content:"✦";color:var(--accent);margin-right:12px}.map-placeholder{height:310px;background:linear-gradient(135deg,#d6e3d8,#a9c4b4);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--ink);font:500 42px Playfair Display,serif}.map-placeholder small{font:11px DM Sans;margin-top:8px;color:#4e6d62}.final-cta{text-align:center;background:var(--ink);color:#fff}.final-cta .eyebrow{color:#e5a078}.final-cta h2{font:500 clamp(34px,5vw,62px)/1.05 Playfair Display,serif;margin:0 auto 30px}.site-footer{display:flex;justify-content:space-between;padding:25px 7vw;background:#122e2d;color:#b9cfc3;font-size:11px}@media(max-width:800px){.site-header{padding:0 5vw}.site-header nav a:not(.nav-cta){display:none}.hero,.location-section,.split-section{grid-template-columns:1fr}.hero-copy{padding:78px 7vw}.hero-photo{min-height:360px}.trust-strip{gap:15px;padding:22px 7vw}.booking-card form,.feature-grid,.review-grid,.trust-strip{grid-template-columns:1fr}.location-section{gap:35px}.site-footer{flex-direction:column;gap:10px}}