
:root{--ink:#143936;--cream:#f5f1e8;--white:#fff;--gold:#c8a36b;--text:#293b38}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",sans-serif;color:var(--text);background:var(--cream);line-height:1.65}h1,h2{font-family:"Playfair Display",serif;color:var(--ink);line-height:1.08}h1{font-size:clamp(2.7rem,7vw,6rem);margin:.15em 0}h2{font-size:clamp(2rem,4vw,3.4rem)}h3{color:var(--ink)}a{color:inherit}.site-header{height:82px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;background:#fff;position:sticky;top:0;z-index:20;box-shadow:0 1px 12px #0001}.brand{display:flex;gap:.7rem;align-items:center;text-decoration:none}.brand-mark{width:42px;height:42px;border:1px solid var(--gold);display:grid;place-items:center;border-radius:50%;font-family:serif}.brand strong,.brand small{display:block;line-height:1.2}.brand small{letter-spacing:.13em;text-transform:uppercase;font-size:.65rem}nav{display:flex;align-items:center;gap:1.25rem}nav a{text-decoration:none;font-size:.92rem}nav a.active{border-bottom:2px solid var(--gold)}.menu{display:none;background:none;border:0;font-size:1.6rem}.button{display:inline-block;border:0;background:var(--ink);color:#fff;text-decoration:none;padding:.9rem 1.3rem;border-radius:2px;font-weight:600;cursor:pointer}.button-small{padding:.65rem 1rem}.button-light{background:#fff;color:var(--ink)}.section{padding:6rem max(5vw,calc((100vw - 1200px)/2))}.hero{min-height:calc(100vh - 82px);position:relative;color:#fff;display:flex;align-items:center;padding:7vw}.hero-bg,.hero-shade{position:absolute;inset:0;background-size:cover;background-position:center}.hero-shade{background:linear-gradient(90deg,#072c2ccc,transparent)}.hero-content{max-width:760px;position:relative;z-index:2}.hero h1,.hero .eyebrow{color:#fff}.hero-copy{font-size:1.18rem;max-width:650px}.hero-actions{display:flex;gap:1.5rem;align-items:center;margin-top:2rem}.text-link{color:#fff}.quick-facts{position:absolute;z-index:2;right:4vw;bottom:2rem;display:flex;background:#ffffffeb;color:var(--ink)}.quick-facts span{padding:1rem 1.3rem;border-right:1px solid #ddd}.quick-facts b{display:block;font-size:1.3rem}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;font-weight:600}.eyebrow.dark{color:var(--gold)}.intro{display:grid;grid-template-columns:1.1fr 1fr;gap:6vw}.intro h2{margin-top:.3rem}.inline-link{font-weight:600}.cards{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding-top:0}.image-card{text-decoration:none;background:#fff;padding-bottom:1.5rem}.image-card img{width:100%;height:380px;object-fit:cover}.image-card h2,.image-card p{margin-left:1.5rem;margin-right:1.5rem}.review-banner,.cta{text-align:center;padding:5rem 7vw;background:var(--ink);color:#fff}.review-banner blockquote{font:2rem "Playfair Display",serif}.stars{color:var(--gold);letter-spacing:.2em}.cta{background:#275750}.cta h2{color:#fff}.page-hero{min-height:65vh;background:linear-gradient(#082d2d88,#082d2d88),var(--bg);background-size:cover;background-position:center;display:flex;align-items:end;padding:7vw;color:#fff}.page-hero>div{max-width:800px}.page-hero h1,.page-hero .eyebrow{color:#fff}.page-title{text-align:center;max-width:900px;margin:auto}.prose>p{max-width:850px;font-size:1.1rem}.detail-grid,.activity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.detail-grid>div,.activity-grid article{background:#fff;padding:1.6rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.split img,.map{width:100%;min-height:440px;object-fit:cover;border:0}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.photo{border:0;padding:0;background:none;cursor:pointer}.photo img{width:100%;height:330px;object-fit:cover;display:block}.gallery-grid.full .photo:first-child{grid-column:span 2}.gallery-grid.full .photo:first-child img{height:500px}dialog{border:0;background:#000d;padding:2rem;max-width:95vw}dialog img{max-width:90vw;max-height:82vh}dialog button{float:right;font-size:2rem;background:none;color:#fff;border:0}.faq{max-width:900px;margin:auto;padding-top:0}.faq details{background:#fff;margin:1rem 0;padding:1.3rem}.faq summary{font-weight:600;color:var(--ink);cursor:pointer}.booking-panel{display:grid;grid-template-columns:1fr 1fr;gap:4rem;padding-top:0}.booking-panel>div{background:#fff;padding:2rem}label{display:block;margin:1rem 0;font-weight:600}input,textarea{width:100%;padding:.85rem;border:1px solid #bbb;font:inherit}.small{font-size:.85rem;color:#667}.notice{text-align:center;padding-top:0}footer{padding:3rem 5vw;background:#0e2d2b;color:#fff;text-align:center}footer .brand{justify-content:center;margin-bottom:1rem}footer a{color:#fff}@media(max-width:900px){.menu{display:block}nav{display:none;position:absolute;top:82px;left:0;right:0;background:#fff;padding:1.5rem;flex-direction:column;align-items:stretch}nav.open{display:flex}.intro,.cards,.split,.booking-panel{grid-template-columns:1fr}.detail-grid,.activity-grid{grid-template-columns:1fr 1fr}.quick-facts{left:0;right:0;bottom:0;overflow:auto}.gallery-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.section{padding:4rem 1.25rem}.detail-grid,.activity-grid,.gallery-grid{grid-template-columns:1fr}.gallery-grid.full .photo:first-child{grid-column:auto}.gallery-grid.full .photo:first-child img,.photo img{height:280px}.hero{padding:3rem 1.25rem 8rem}.hero-actions{align-items:flex-start;flex-direction:column}.quick-facts span{min-width:100px;padding:.7rem}.site-header{padding:0 1rem}}
