:root{--ink:#18312b;--forest:#2f5b4d;--sage:#dce6df;--cream:#f7f3eb;--sand:#dfc7a7;--white:#fff;--shadow:0 20px 55px rgba(20,45,37,.12);--radius:24px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--cream);line-height:1.65}img{display:block;width:100%;object-fit:cover}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:'Playfair Display',serif;line-height:1.08;margin:0 0 1rem}h1{font-size:clamp(3rem,7vw,6.7rem)}.hero h1{font-size:clamp(2.15rem,4.1vw,4.2rem);font-weight:600;line-height:1.04;letter-spacing:-.025em;max-width:13ch;margin-bottom:1.25rem;text-wrap:balance}h2{font-size:clamp(2.3rem,4.5vw,4.3rem)}h3{font-size:clamp(1.8rem,3vw,2.8rem)}p{margin:0 0 1rem}.section{padding:110px max(6vw,24px)}.muted{background:#edf1ec}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:700;color:#6f806f}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:var(--forest);color:#fff;padding:15px 23px;font-weight:700;cursor:pointer;transition:.25s}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(47,91,77,.25)}.btn-small{padding:10px 17px}.btn-ghost{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.55);backdrop-filter:blur(8px)}.btn-outline{background:transparent;color:var(--forest);border:1px solid var(--forest)}
.site-header{position:fixed;z-index:20;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:18px max(4vw,20px);transition:.3s;color:#fff}.site-header.scrolled{background:rgba(247,243,235,.95);color:var(--ink);box-shadow:0 6px 25px rgba(0,0,0,.08);backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:42px;height:42px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center}.brand strong,.brand small{display:block;line-height:1.1}.brand small{font-size:.78rem;letter-spacing:.15em;text-transform:uppercase}.main-nav{display:flex;align-items:center;gap:24px;font-size:.92rem;font-weight:600}.menu-toggle{display:none;background:none;border:0;color:inherit;font-size:1.7rem}
.hero{min-height:100vh;position:relative;display:flex;flex-direction:column;justify-content:center;padding:120px max(7vw,25px) 55px;color:#fff;background:linear-gradient(120deg,#1d3c34,#557467)}.hero:before{content:"";position:absolute;inset:0;background:url('https://a0.muscache.com/im/pictures/hosting/Hosting-1708806297739580715/original/203b5b66-6ab1-45db-8548-507e433437e6.jpeg?im_w=1200') center/cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,34,28,.86),rgba(15,33,28,.28)),linear-gradient(0deg,rgba(0,0,0,.35),transparent)}.hero-content{position:relative;max-width:950px}.hero-content>p:not(.eyebrow){font-size:1.2rem;max-width:650px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hero-badges{position:relative;margin-top:auto;display:flex;gap:14px;flex-wrap:wrap}.hero-badges span{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);padding:9px 14px;border-radius:999px;backdrop-filter:blur(8px);font-size:.88rem}
.intro{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:end}.intro>p{font-size:1.15rem}.section-heading{max-width:800px;margin-bottom:50px}.property-card{display:grid;grid-template-columns:1.1fr .9fr;gap:55px;align-items:center;margin:0 0 110px}.property-card:last-child{margin-bottom:0}.property-card.reverse .property-gallery{order:2}.property-gallery{display:grid;grid-template-columns:1.5fr 1fr;grid-template-rows:1fr 1fr;gap:10px;height:610px}.property-gallery img{height:100%;border-radius:18px}.gallery-main{grid-row:1/3}.property-content{background:var(--cream);padding:45px;border-radius:var(--radius);box-shadow:var(--shadow)}.facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:25px 0;font-size:.92rem}.facts span{padding:12px 0;border-bottom:1px solid #d4ddd5}.property-actions{display:flex;gap:10px;flex-wrap:wrap}
.split-section{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.andon-photo-card{margin:0;background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.andon-photo-card img{display:block;width:100%;height:650px;object-fit:cover}.andon-photo-card figcaption{padding:16px 20px;font-size:.95rem;color:#53645d;background:#fff}.distance-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:35px}.distance-grid div{background:#fff;padding:20px;border-radius:16px}.distance-grid strong,.distance-grid span{display:block}.distance-grid strong{font-size:1.5rem;color:var(--forest)}.distance-grid span{font-size:.86rem}
.activity-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.activity-card{background:#fff;padding:28px;border-radius:20px;box-shadow:0 10px 35px rgba(20,45,37,.06);transition:.25s}.activity-card:hover{transform:translateY(-5px)}.activity-card>span{font-size:2rem}.activity-card h3{font-family:'DM Sans';font-size:1.2rem;margin:15px 0 8px}.activity-card p{font-size:.92rem;color:#52635d}.activity-card a{color:inherit;font-weight:700}
.video-section{background:#fff}.video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1180px;margin:0 auto}.video-card{overflow:hidden;border-radius:24px;background:#fff;box-shadow:0 18px 45px rgba(38,48,35,.12);border:1px solid rgba(0,0,0,.04)}.video-card video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#111}.video-meta{padding:1.15rem 1.25rem 1.35rem}.video-meta h3{margin:0 0 .35rem}.video-meta p{margin:0;color:#5c6a64;font-size:.95rem}.video-note{text-align:center;margin-top:22px;color:#607068;font-size:.9rem}
.booking-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;background:var(--ink);color:#fff}.booking-copy .eyebrow{color:#b8cabd}.booking-copy ul{padding-left:20px}.booking-form{background:#fff;color:var(--ink);padding:38px;border-radius:var(--radius)}label{display:flex;flex-direction:column;gap:7px;font-size:.88rem;font-weight:700;margin-bottom:16px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}input,select,textarea{width:100%;border:1px solid #cbd5cc;border-radius:11px;padding:13px 14px;background:#fafbf9;font:inherit;color:var(--ink)}textarea{resize:vertical}.form-note{font-size:.75rem;color:#68756f;margin:10px 0 0}
.rules-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.rules-grid div{background:#fff;border-radius:18px;padding:25px}.rules-grid strong{font-size:1.05rem}.rules-grid p{font-size:.9rem;margin:8px 0 0;color:#586861}.contact-section{display:grid;grid-template-columns:.7fr 1.3fr;min-height:570px}.contact-card{background:var(--sand);padding:90px max(6vw,30px);display:flex;flex-direction:column;justify-content:center}.contact-card a{font-weight:700;margin:6px 0}.contact-card .small{margin-top:25px;font-size:.85rem}.map-wrap{background:#fff;padding:30px}.map-wrap iframe{width:100%;height:450px;border:0;border-radius:18px}.map-wrap p{font-size:.8rem;color:#69756e;margin:10px 5px}
footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:35px max(5vw,25px);background:#10251f;color:#fff;font-size:.85rem}.footer-brand{color:#fff}footer>div{display:flex;gap:18px}.modal{position:fixed;z-index:100;inset:0;background:rgba(4,15,11,.94);display:none;align-items:center;justify-content:center;padding:40px}.modal.open{display:flex}.modal img{max-width:1100px;max-height:82vh;width:auto;border-radius:12px}.modal button{position:absolute;border:0;background:rgba(255,255,255,.12);color:#fff;border-radius:50%;cursor:pointer}.modal-close{right:25px;top:20px;width:48px;height:48px;font-size:2rem}.modal-prev,.modal-next{top:50%;width:50px;height:50px;font-size:2.4rem}.modal-prev{left:25px}.modal-next{right:25px}.modal-counter{position:absolute;bottom:18px;color:#fff}.reveal{opacity:0;transform:translateY(26px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:1050px){.activity-grid{grid-template-columns:repeat(2,1fr)}.property-card,.split-section,.booking-section{grid-template-columns:1fr}.property-card.reverse .property-gallery{order:0}.property-gallery{height:520px}.contact-section{grid-template-columns:1fr}.intro{grid-template-columns:1fr;gap:20px}.rules-grid{grid-template-columns:repeat(2,1fr)}.andon-photo-card img{height:520px}}
@media(max-width:780px){.hero h1{font-size:clamp(2rem,10.5vw,3rem);max-width:12ch;line-height:1.06}.section{padding:80px 20px}.menu-toggle{display:block}.main-nav{position:absolute;top:78px;left:15px;right:15px;background:var(--cream);color:var(--ink);padding:22px;border-radius:18px;box-shadow:var(--shadow);display:none;flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.hero{padding-left:20px;padding-right:20px}.hero-badges{margin-top:60px}.property-gallery{height:440px;grid-template-columns:1fr 1fr;grid-template-rows:1.5fr .8fr}.gallery-main{grid-column:1/3;grid-row:auto}.property-content{padding:28px}.facts,.distance-grid,.form-row,.activity-grid,.rules-grid,.video-grid{grid-template-columns:1fr}.andon-photo-card img{height:380px}.contact-card{padding:70px 25px}footer{flex-direction:column;text-align:center}footer>div{flex-direction:column}.modal-prev{left:8px}.modal-next{right:8px}}
