@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap');
:root{--cream:#f7f4eb;--green:#243e32;--muted:#657166;--sand:#e9e5d8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--cream);color:var(--green);font:16px/1.65 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #b88a45;outline-offset:5px}header{padding:24px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font:25px/1.1 'Playfair Display',serif;white-space:nowrap}.brand small{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:3px;margin-top:10px}.brand i{font-weight:400}nav{display:flex;align-items:center;gap:32px;font-size:13px}.button{border:0;background:var(--green);color:white;display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:17px 25px;cursor:pointer;font-size:14px}.button:hover{background:#3d5b49}.button.small{padding:13px 19px}.button.light{background:var(--cream);color:var(--green)}.hero{position:relative;min-height:650px;height:78vh;max-height:850px;margin:0 22px;color:white;display:flex;align-items:center;overflow:hidden}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,29,25,.76),rgba(8,29,25,.08))}.hero-content{position:relative;z-index:1;max-width:780px;padding:70px 7%}.eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:600;margin:0 0 22px}h1,h2,h3{font-family:'Playfair Display',serif;font-weight:400;line-height:1.13;margin:0}h1{font-size:clamp(48px,6.4vw,88px);letter-spacing:-2px}h1 em,h2 em{font-weight:400}h2{font-size:clamp(36px,4vw,56px);letter-spacing:-1px}h3{font-size:29px}.hero-content>p:not(.eyebrow){max-width:440px;margin:27px 0 30px;color:#f3f1e8}.hero-note{position:absolute;z-index:1;bottom:28px;right:40px;letter-spacing:3px;font-size:10px}.intro{max-width:1250px;margin:auto;padding:110px 5% 70px;display:grid;grid-template-columns:1fr 1fr;column-gap:100px}.intro>.eyebrow{grid-column:1/-1}.intro>div>p{margin-top:0;color:var(--muted)}.text-link{display:inline-block;border-bottom:1px solid;padding-bottom:6px;font-size:13px;margin-top:14px}.experiences{padding:0 5% 110px;max-width:1400px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.experiences img{width:100%;height:300px;object-fit:cover}.experiences .eyebrow{margin:24px 0 12px}.experiences p:last-child{color:var(--muted);font-size:14px;max-width:330px}.gather{display:grid;grid-template-columns:1.1fr 1fr;background:var(--sand)}.gather>img{width:100%;height:550px;object-fit:cover}.gather>div{padding:80px 12%;align-self:center}.gather p:not(.eyebrow){color:var(--muted)}.gallery-section{padding:100px 5%;max-width:1450px;margin:auto}.section-top{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px;gap:30px}.section-top>p{font-size:13px;color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.gallery button{border:0;padding:0;background:transparent;cursor:zoom-in;overflow:hidden;height:260px}.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.gallery button:hover img{transform:scale(1.04)}.booking{background:var(--green);color:var(--cream);padding:90px 8%;display:grid;grid-template-columns:1fr 1fr;gap:100px}.booking>div>p:not(.eyebrow){max-width:410px;color:#d1d9cd}.booking-note{font-size:12px;margin-top:30px}form label{display:block;font-size:12px;margin-bottom:18px}input,select,textarea{width:100%;padding:12px;margin-top:7px;border:1px solid #7c897d;background:#ffffff09;color:var(--cream);border-radius:0;min-width:0}select option{background:var(--green)}input::placeholder,textarea::placeholder{color:#bdc8bd}input:focus,select:focus,textarea:focus{outline:2px solid #d5b57d}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}form .button{background:var(--cream);color:var(--green);width:100%}.form-note{font-size:11px;color:#c8d2c5}.visit{padding:95px 8%;display:grid;grid-template-columns:1fr 1fr;gap:100px}.visit p{font-size:14px}.contact{align-self:center}.contact>a{display:block;padding:13px 0;border-bottom:1px solid #d4d9cc;font-size:clamp(14px,1.7vw,22px);overflow-wrap:anywhere}.contact>p:last-child{font-size:12px;color:var(--muted);margin-top:24px}footer{border-top:1px solid #d9ddcf;padding:30px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer>span,footer>small{font-size:11px;color:var(--muted)}dialog{border:0;background:var(--cream);padding:15px;max-width:90vw;max-height:94vh;color:var(--green)}dialog::backdrop{background:#071c14dc}dialog img{display:block;max-width:85vw;max-height:78vh;object-fit:contain}dialog p{margin:10px 0 0;font-size:13px}#close-photo{position:absolute;right:20px;top:20px;border:0;border-radius:50%;background:var(--cream);width:40px;height:40px;cursor:pointer}@media(max-width:760px){header{padding:20px 6%}nav>a:not(.button){display:none}.brand{font-size:21px}.brand small{font-size:8px;letter-spacing:2px}.button.small{font-size:11px;padding:11px}.hero{margin:0 10px;min-height:570px;height:75vh}.hero-content{padding:50px 7%}h1{letter-spacing:-1px}.hero-note{right:20px;font-size:8px}.intro{padding:65px 7% 40px;grid-template-columns:1fr;gap:25px}.intro>.eyebrow{margin:0}.experiences{padding:0 7% 60px;grid-template-columns:1fr;gap:25px}.experiences img{height:310px}.experiences p:last-child{max-width:none}.gather{grid-template-columns:1fr}.gather>img{height:330px}.gather>div{padding:50px 7%}.gallery-section{padding:60px 7%}.section-top{display:block}.gallery{grid-template-columns:1fr 1fr;gap:10px}.gallery button{height:170px}.booking,.visit{grid-template-columns:1fr;padding:60px 7%;gap:40px}footer{flex-wrap:wrap;padding:30px 7%}footer>span{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.gallery img{transition:none}}
