:root{--ink:#183238;--sea:#173f46;--sea2:#2f6970;--sand:#eee7da;--cream:#faf8f3;--white:#fff;--muted:#667579;--line:#d9dfdc;--accent:#d59b61;--radius:18px;--shadow:0 18px 50px rgba(16,45,50,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:"DM Sans",Arial,sans-serif;line-height:1.7}body.lightbox-open{overflow:hidden}img{display:block;width:100%}picture{display:contents}a{color:inherit;text-decoration:none}.container{width:min(1180px,calc(100% - 40px));margin:auto}.section{padding:110px 0}.section-soft{background:var(--sand)}h1,h2{font-family:"Playfair Display",Georgia,serif;line-height:1.08;margin:0}h1{font-size:clamp(3rem,7vw,6.7rem);max-width:980px}h2{font-size:clamp(2.3rem,4.5vw,4.4rem)}h3{line-height:1.25}p{margin:0 0 1rem}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:.76rem;font-weight:700;color:#fff;margin-bottom:18px}.eyebrow.dark{color:var(--sea2)}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:16px;top:16px;padding:10px;background:#fff;z-index:100}
.site-header{position:absolute;z-index:10;width:100%;top:0;color:#fff;border-bottom:1px solid rgba(255,255,255,.25)}.nav-wrap{height:94px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:12px;align-items:center}.brand img{width:56px;height:56px;object-fit:contain;border-radius:50%;background:#fff}.brand span{display:flex;flex-direction:column;line-height:1.2}.brand strong{font-family:"Playfair Display",serif;font-size:1.25rem}.brand small{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.site-header nav,.nav-links{display:flex;align-items:center}.site-header nav{gap:18px;font-size:.86rem;font-weight:600}.nav-links{gap:26px}.site-header nav a:hover{opacity:.75}.nav-cta{border:1px solid rgba(255,255,255,.7);padding:11px 18px;border-radius:99px}.language-switcher{display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(255,255,255,.32);border-radius:99px;font-size:.76rem;line-height:1}.language-switcher a{opacity:.62}.language-switcher a.active{color:var(--accent);opacity:1}.language-switcher span{opacity:.35}
.hero{min-height:100vh;position:relative;color:#fff;display:flex;align-items:flex-end;padding:190px 0 100px}.hero-image,.hero-overlay{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-overlay{background:linear-gradient(90deg,rgba(8,30,34,.76),rgba(8,30,34,.2)),linear-gradient(0deg,rgba(8,30,34,.5),transparent 55%)}.hero-content{position:relative;z-index:1}.hero-content>p:not(.eyebrow){font-size:1.22rem;max-width:680px;margin:28px 0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:99px;padding:15px 25px;font:700 .9rem "DM Sans",sans-serif;cursor:pointer}.button-primary{background:var(--accent);color:#182d31}.button-primary:hover{filter:brightness(1.06)}.button-light{border:1px solid rgba(255,255,255,.75);color:#fff}.scroll-hint{position:absolute;right:5%;bottom:45px;z-index:2;border:1px solid rgba(255,255,255,.5);width:47px;height:47px;border-radius:50%;display:grid;place-items:center}
.two-column{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.lead-copy{font-size:1.13rem;color:#465c60}.features{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:70px}.features article{padding:30px;background:#fff;border-top:3px solid var(--sea2);box-shadow:0 10px 35px rgba(20,50,55,.06)}.features span{color:var(--accent);font-weight:700}.features h3{font-size:1.18rem}.features p{font-size:.9rem;color:var(--muted)}
.split-feature{display:grid;grid-template-columns:1.2fr .8fr}.split-image img{height:100%;min-height:690px;object-fit:cover}.split-copy{padding:110px max(40px,8vw);display:flex;flex-direction:column;justify-content:center}.split-copy h2{margin-bottom:30px}.check-list{list-style:none;padding:0;margin:25px 0}.check-list li{padding:9px 0 9px 27px;position:relative;border-bottom:1px solid rgba(24,50,56,.12)}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--sea2);font-weight:bold}
.section-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end;margin-bottom:50px}.section-heading>p{color:var(--muted);font-size:1.04rem}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:300px;grid-auto-flow:dense;gap:16px}.gallery-item{position:relative;overflow:hidden;border-radius:var(--radius);cursor:zoom-in;background:#dfe6e3}.gallery-item img{height:100%;object-fit:cover;transition:transform .5s}.gallery-item:hover img,.gallery-item:focus img{transform:scale(1.035)}.gallery-item span{position:absolute;bottom:15px;left:15px;background:rgba(255,255,255,.92);padding:7px 12px;border-radius:99px;font-size:.78rem;font-weight:700}.gallery-wide{grid-column:span 2}.gallery-tall{grid-row:span 2}
.nature-band{position:relative;min-height:720px;color:#fff;display:flex;align-items:flex-end;padding:100px 0}.nature-band img,.nature-overlay{position:absolute;inset:0;height:100%;object-fit:cover}.nature-overlay{background:linear-gradient(0deg,rgba(5,27,31,.75),transparent 70%)}.nature-content{position:relative;z-index:1}.nature-content h2{max-width:700px}.nature-content p:last-child{max-width:650px;font-size:1.12rem;margin-top:25px}.cards-three{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.cards-three article{padding:35px;border:1px solid var(--line);border-radius:var(--radius)}.icon{font-size:2.5rem;color:var(--sea2)}.cards-three p{color:var(--muted)}
.pricing-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center}.pricing-copy p:not(.eyebrow){color:var(--muted);font-size:1.05rem;margin-bottom:28px}.pricing-image{height:480px;border-radius:var(--radius);overflow:hidden}.pricing-image picture{display:block;height:100%}.pricing-image img{height:100%;object-fit:cover}
.recommendation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.recommendation-grid article{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:35px}.recommendation-grid h3{font-family:"Playfair Display",serif;font-size:1.6rem;margin-top:0}.recommendation-grid ul{list-style:none;padding:0;margin:0}.recommendation-grid li{padding:11px 0;border-bottom:1px solid var(--line)}
.contact{background:var(--sea);color:#fff}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.contact-grid h2{margin-bottom:25px}.contact-details{display:flex;flex-direction:column;margin-top:35px}.contact-details a{padding:17px 0;border-bottom:1px solid rgba(255,255,255,.2)}.contact-details span{display:block;color:#a8c1c4;text-transform:uppercase;letter-spacing:.12em;font-size:.68rem}.contact-form{background:#fff;color:var(--ink);border-radius:var(--radius);padding:40px;box-shadow:var(--shadow)}.contact-form label{display:block;font-size:.82rem;font-weight:700;margin-bottom:18px}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:7px;border:1px solid var(--line);background:#f8faf9;border-radius:8px;padding:13px;font:inherit}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--accent);border-color:transparent}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.contact-form .button{width:100%}.contact-form small{display:block;color:var(--muted);margin-top:12px;line-height:1.5}.form-error{color:#a23030;font-weight:700;font-size:.86rem}.map-card{display:grid;grid-template-columns:.72fr 1.28fr;margin-top:55px;background:#fff;color:var(--ink);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.map-copy{padding:34px}.map-copy .eyebrow{color:var(--sea2)}.map-copy h3{font-family:"Playfair Display",Georgia,serif;font-size:1.8rem;margin:0 0 12px}.map-copy p:not(.eyebrow){color:var(--muted)}.map-copy a{color:var(--sea2);font-weight:700}.map-card iframe{width:100%;height:310px;border:0}
footer{background:#102c31;color:#dbe7e5;padding:35px 0}.footer-wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:.82rem}.footer-brand img{width:42px;height:42px}.footer-wrap p{margin:0}.social-links{display:flex;gap:18px}.social-links a{display:flex;align-items:center;gap:7px;color:inherit;opacity:.82}.social-links a:hover{opacity:1}.social-links span{font-weight:600}
.lightbox{position:fixed;z-index:1000;inset:0;background:rgba(4,19,22,.96);display:grid;grid-template-columns:80px 1fr 80px;align-items:center;padding:28px}.lightbox[hidden]{display:none}.lightbox figure{margin:0;text-align:center}.lightbox img{max-width:1200px;max-height:84vh;object-fit:contain;margin:auto}.lightbox figcaption{color:#fff;margin-top:12px}.lightbox button{border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.08);color:#fff;width:52px;height:52px;border-radius:50%;font-size:2rem;cursor:pointer}.lightbox button:hover{background:rgba(255,255,255,.18)}.lightbox-close{position:absolute;right:24px;top:20px}.lightbox-prev{justify-self:start}.lightbox-next{justify-self:end}
@media(max-width:950px){.nav-links{display:none}.two-column,.section-heading,.contact-grid,.pricing-grid{grid-template-columns:1fr;gap:38px}.features{grid-template-columns:1fr 1fr}.split-feature{grid-template-columns:1fr}.split-image img{min-height:460px}.split-copy{padding:75px 30px}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-wide{grid-column:span 2}.gallery-tall{grid-row:span 1}.cards-three,.recommendation-grid{grid-template-columns:1fr}.pricing-image{height:420px}.footer-wrap{flex-direction:column;text-align:center}.section{padding:80px 0}.map-card{grid-template-columns:1fr}.map-card iframe{height:330px}}
@media(max-width:560px){.container{width:min(100% - 26px,1180px)}.nav-wrap{height:78px}.brand img{width:44px;height:44px}.brand small{display:none}.site-header nav{gap:8px}.nav-cta{padding:8px 11px}.language-switcher{padding:6px 8px}.hero{padding:130px 0 75px}.hero-content>p:not(.eyebrow){font-size:1rem}.features{grid-template-columns:1fr}.gallery-grid{display:block}.gallery-item{display:block;height:320px;margin-bottom:14px}.section-heading{margin-bottom:30px}.form-row{grid-template-columns:1fr}.contact-form{padding:25px}.pricing-image{height:340px}.nature-band{min-height:580px}.scroll-hint{display:none}.lightbox{grid-template-columns:46px 1fr 46px;padding:10px}.lightbox button{width:42px;height:42px}.lightbox-close{right:12px;top:10px}.map-copy{padding:26px}}
