:root{
  --emerald:#173c35;--emerald-2:#214e45;--sage:#617a70;--ivory:#f7f2e9;
  --cream:#eee5d6;--gold:#c5a66a;--gold-soft:#ddc99f;--ink:#24231f;--white:#fff;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Manrope,sans-serif;font-weight:300;color:var(--ink);background:var(--ivory);line-height:1.7;-webkit-font-smoothing:antialiased}
img{display:block;width:100%;height:auto}
a{color:inherit}
h1,h2,h3{font-family:Marcellus,serif;font-weight:400;line-height:1.08}
::selection{background:var(--gold-soft);color:var(--emerald)}
.section-pad{padding:clamp(5.5rem,10vw,9rem) clamp(1.25rem,5vw,5rem)}
.eyebrow{font-size:.68rem;letter-spacing:.34em;text-transform:uppercase;font-weight:500;color:var(--gold)}
.button{display:inline-flex;align-items:center;justify-content:center;padding:1rem 1.55rem;text-decoration:none;font-size:.69rem;letter-spacing:.24em;text-transform:uppercase;font-weight:600;border-radius:999px;transition:.3s}
.button-gold{background:var(--gold);color:var(--emerald);border:1px solid var(--gold)}
.button-gold:hover{background:var(--gold-soft);transform:translateY(-2px)}
.button-ghost{border:1px solid rgba(255,255,255,.55);color:#fff}
.button-ghost:hover{background:#fff;color:var(--emerald)}
.button-outline{border:1px solid rgba(255,255,255,.4);color:#fff}
.button-outline:hover{background:#fff;color:var(--emerald)}
.text-link{display:inline-flex;gap:1rem;align-items:center;text-transform:uppercase;letter-spacing:.2em;font-size:.7rem;text-decoration:none;border-bottom:1px solid var(--gold-soft);padding-bottom:.35rem}
.text-link b{font-size:1rem;color:var(--gold)}
.loader{position:fixed;inset:0;background:var(--ivory);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:999;transition:opacity .7s,visibility .7s}
.loader img{width:190px}.loader span{width:120px;height:1px;background:rgba(197,166,106,.25);margin-top:1.5rem;position:relative;overflow:hidden}.loader span:after{content:"";position:absolute;inset:0;background:var(--gold);transform:translateX(-100%);animation:load 1.5s infinite}
@keyframes load{to{transform:translateX(100%)}}
body.loaded .loader{opacity:0;visibility:hidden}
.site-header{position:fixed;top:0;left:0;right:0;z-index:100;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:1.2rem clamp(1.25rem,4vw,3rem);color:#fff;transition:.4s}
.site-header.scrolled{background:rgba(23,60,53,.92);backdrop-filter:blur(15px);box-shadow:0 1px rgba(255,255,255,.1)}
.brand{display:flex;gap:.65rem;align-items:center;text-decoration:none;font-family:Marcellus,serif;letter-spacing:.08em}.brand-symbol{color:var(--gold)}
.site-nav{display:flex;gap:1.55rem}.site-nav a{text-decoration:none;text-transform:uppercase;font-size:.62rem;letter-spacing:.19em;font-weight:600;opacity:.88}
.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:1.25rem}.languages{display:flex;gap:.3rem;align-items:center;font-size:.6rem}.lang{border:0;background:none;color:#fff;font:inherit;cursor:pointer;opacity:.5}.lang.active{opacity:1;color:var(--gold-soft)}
.header-cta{padding:.65rem 1rem;border:1px solid rgba(255,255,255,.45);border-radius:999px;text-decoration:none;text-transform:uppercase;font-size:.62rem;letter-spacing:.18em}
.menu-toggle{display:none;background:none;border:0}
.hero{min-height:100svh;position:relative;color:#fff;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center}
.hero-slides,.hero-slide,.hero-overlay{position:absolute;inset:0}.hero-slide{background-size:cover;background-position:center;opacity:0;transform:scale(1.05);transition:opacity 1.7s ease,transform 8s ease}.hero-slide.active{opacity:1;transform:scale(1)}
.hero-overlay{background:linear-gradient(180deg,rgba(8,24,21,.45),rgba(8,24,21,.2) 45%,rgba(8,24,21,.58))}
.hero-content{position:relative;z-index:2;max-width:850px;padding:8rem 1.5rem 4rem}.hero-logo{width:min(340px,65vw);margin:0 auto 1.2rem;filter:brightness(1.15) drop-shadow(0 5px 20px rgba(0,0,0,.25))}.kicker{letter-spacing:.34em;text-transform:uppercase;font-size:.67rem;color:var(--gold-soft);margin-bottom:1.1rem}.hero h1{font-size:clamp(2.8rem,7vw,6rem);text-wrap:balance}.hero-copy{max-width:670px;margin:1.4rem auto 0;font-size:clamp(1rem,1.7vw,1.22rem);color:rgba(255,255,255,.9)}.hero-actions{display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap;margin-top:2.2rem}.hero-counter{position:absolute;right:3rem;bottom:2rem;display:flex;align-items:center;gap:.6rem;font-size:.65rem;letter-spacing:.2em}.hero-counter i{display:block;width:50px;height:1px;background:rgba(255,255,255,.45)}.scroll-cue{position:absolute;bottom:1.5rem;left:50%;transform:translateX(-50%);width:42px;height:42px;border:1px solid rgba(255,255,255,.4);border-radius:50%}.scroll-cue span{position:absolute;width:1px;height:12px;background:#fff;left:50%;top:13px;animation:bob 1.8s infinite}@keyframes bob{50%{transform:translateY(5px)}}
.manifesto{text-align:center}.manifesto .display{font-size:clamp(2.4rem,5.5vw,5rem);color:var(--emerald);margin:1rem auto 2.5rem;max-width:1050px}.manifesto .display em{font-family:"Cormorant Garamond";font-weight:400}.manifesto-grid{max-width:900px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:4rem;text-align:left;color:#555047}
.editorial-story{display:grid;grid-template-columns:1.15fr .85fr;min-height:820px;background:var(--cream)}.story-image img{height:100%;object-fit:cover}.story-copy{padding:clamp(4rem,8vw,8rem);display:flex;flex-direction:column;justify-content:center}.story-copy h2{font-size:clamp(2.4rem,4.5vw,4.6rem);color:var(--emerald);margin:1rem 0 1.5rem}.story-copy p:not(.eyebrow){color:#5b564d;margin-bottom:2rem}
.visual-journal{background:#fbf8f2}.journal-heading{text-align:center;margin-bottom:3rem}.journal-heading h2{font-size:clamp(2.3rem,4.5vw,4.4rem);color:var(--emerald);margin-top:.8rem}.journal-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:1.5rem;max-width:1250px;margin:auto}.journal-large{grid-row:span 2}.journal-grid figure{position:relative;overflow:hidden;min-height:320px}.journal-grid img{height:100%;object-fit:cover;transition:transform .8s}.journal-grid figure:hover img{transform:scale(1.03)}.journal-grid figcaption{position:absolute;left:1.2rem;bottom:1.2rem;color:#fff;background:rgba(23,60,53,.7);padding:.7rem 1rem;font-family:"Cormorant Garamond";font-size:1.15rem}
.dark-section{background:var(--emerald);color:#fff}.section-heading{max-width:1200px;margin:auto;display:grid;grid-template-columns:1.1fr .9fr;gap:4rem;align-items:end;margin-bottom:3.5rem}.section-heading h2{font-size:clamp(2.6rem,5vw,4.8rem);margin-top:.8rem}.section-heading>p{color:rgba(255,255,255,.72)}
.feature-property{max-width:1200px;margin:auto;display:grid;grid-template-columns:1.3fr .7fr;background:var(--emerald-2)}.property-photo{position:relative;min-height:650px}.property-photo img{height:100%;object-fit:cover}.property-tag{position:absolute;left:1.2rem;top:1.2rem;background:rgba(23,60,53,.88);padding:.65rem 1rem;font-size:.62rem;text-transform:uppercase;letter-spacing:.18em}.property-copy{padding:clamp(2.2rem,5vw,4.5rem);display:flex;flex-direction:column;justify-content:center}.property-copy h3{font-size:clamp(2rem,3.8vw,3.7rem);margin:1rem 0 1.4rem}.property-copy p:not(.eyebrow){color:rgba(255,255,255,.72);margin-bottom:2rem}
.places{background:var(--ivory)}.places-intro{max-width:1100px;margin:0 auto 3rem}.places-intro h2{font-size:clamp(2.5rem,5vw,4.8rem);color:var(--emerald);margin-top:.8rem}.places-list{max-width:1100px;margin:auto;border-top:1px solid rgba(23,60,53,.18)}.place-card{display:grid;grid-template-columns:80px 1fr 1.4fr;gap:2rem;align-items:center;padding:2.1rem 0;border-bottom:1px solid rgba(23,60,53,.18)}.place-card span{color:var(--gold);font-size:.7rem}.place-card h3{font-size:1.8rem;color:var(--emerald)}.place-card p{color:#5b564d}
.relocate{display:grid;grid-template-columns:1.15fr .85fr;background:var(--emerald);color:#fff}.relocate-photo img{height:100%;min-height:720px;object-fit:cover}.relocate-panel{padding:clamp(4rem,8vw,7rem);display:flex;flex-direction:column;justify-content:center}.relocate-panel h2{font-size:clamp(2.5rem,4.5vw,4.5rem);margin:1rem 0 1.4rem}.relocate-panel>p:not(.eyebrow){color:rgba(255,255,255,.75)}.relocate-panel ul{list-style:none;margin:2rem 0}.relocate-panel li{padding:.8rem 0;border-bottom:1px solid rgba(255,255,255,.15);font-size:.92rem}.relocate-panel li:before{content:"✦";color:var(--gold);margin-right:.7rem}
.invest{display:grid;grid-template-columns:1fr 1fr;gap:6rem;max-width:1300px;margin:auto}.invest-copy h2{font-size:clamp(2.5rem,4.5vw,4.5rem);color:var(--emerald);margin:1rem 0 1.4rem}.invest-copy p{color:#5b564d}.legal-note{font-size:.77rem;border-left:2px solid var(--gold);padding-left:1rem;margin-top:1.5rem}.invest-steps>div{padding:1.6rem 0;border-bottom:1px solid rgba(23,60,53,.18);display:grid;grid-template-columns:55px 130px 1fr;gap:1rem}.invest-steps span{color:var(--gold);font-size:.7rem}.invest-steps h3{color:var(--emerald);font-size:1.35rem}
.about{display:grid;grid-template-columns:.75fr 1.25fr;gap:6rem;align-items:center;background:var(--cream)}.about-portrait img{aspect-ratio:4/5;object-fit:cover}.about-copy h2{font-size:clamp(2.6rem,5vw,4.9rem);color:var(--emerald);margin:1rem 0 1.3rem}.about-lead{font-family:"Cormorant Garamond";font-size:1.65rem;color:var(--emerald);margin-bottom:1.2rem}.about-copy>p:not(.eyebrow):not(.about-lead){color:#5b564d}.timeline{margin-top:2rem}.timeline div{display:grid;grid-template-columns:120px 1fr;border-top:1px solid rgba(23,60,53,.18);padding:1rem 0}.timeline span{font-family:Marcellus;color:var(--emerald)}.timeline small{color:#6a655c}
.guide{display:grid;grid-template-columns:.8fr 1.2fr;gap:6rem;align-items:center}.guide-art{text-align:center}.guide-art img{max-width:330px;margin:auto}.guide-art p{font-family:"Cormorant Garamond";font-size:2rem;color:var(--gold-soft);margin-top:1rem}.guide-copy h2{font-size:clamp(2.6rem,5vw,4.8rem);margin:1rem 0}.guide-copy>p:not(.eyebrow){color:rgba(255,255,255,.72);max-width:600px}.guide-form{margin-top:2rem;display:grid;grid-template-columns:1fr 1fr;gap:1rem}.guide-form label{display:flex;flex-direction:column;gap:.45rem;font-size:.65rem;letter-spacing:.14em;text-transform:uppercase}.guide-form label:nth-child(4){grid-column:span 2}.guide-form input,.guide-form select{background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.35);color:#fff;padding:.8rem 0;font-family:Manrope}.guide-form option{color:#222}.guide-form button{grid-column:span 2;justify-self:start;margin-top:.5rem}
.contact{position:relative;min-height:680px;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;padding:6rem 1.5rem;overflow:hidden}.contact-bg{position:absolute;inset:0;background:linear-gradient(rgba(10,35,30,.45),rgba(10,35,30,.68)),url('assets/hero-palms.webp') center/cover}.contact-content{position:relative;z-index:1;max-width:800px}.contact h2{font-size:clamp(2.8rem,6vw,5.5rem);margin:1rem 0}.contact-content>p:not(.eyebrow):not(.contact-languages){font-size:1.08rem;color:rgba(255,255,255,.85);margin-bottom:2rem}.contact-languages{margin-top:1.7rem;color:var(--gold-soft);font-family:"Cormorant Garamond";font-style:italic;font-size:1.2rem}
footer{background:#102f2a;color:rgba(255,255,255,.65);padding:4rem clamp(1.25rem,5vw,5rem);display:grid;grid-template-columns:.8fr .6fr 1.6fr;gap:3rem}.footer-brand img{max-width:230px}.footer-links{display:flex;flex-direction:column;gap:.7rem}.footer-links a{text-decoration:none;text-transform:uppercase;letter-spacing:.15em;font-size:.68rem}.footer-legal{font-size:.72rem}.footer-legal p{margin-bottom:.7rem}.whatsapp-float{position:fixed;right:1.3rem;bottom:1.3rem;z-index:80;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:var(--emerald);text-decoration:none;box-shadow:0 15px 35px rgba(0,0,0,.22)}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .85s,transform .85s}.reveal.in{opacity:1;transform:none}
@media(max-width:900px){
  .site-header{grid-template-columns:1fr auto}.site-nav{position:fixed;inset:0;background:var(--emerald);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1.4rem;transform:translateY(-100%);transition:.45s}.site-nav.open{transform:none}.site-nav a{font-size:1rem}.menu-toggle{display:block;z-index:2;width:38px;height:38px}.menu-toggle span{display:block;width:24px;height:1px;background:#fff;margin:7px auto}.header-actions{display:none}
  .manifesto-grid,.section-heading,.editorial-story,.feature-property,.relocate,.invest,.about,.guide{grid-template-columns:1fr}
  .story-image img{max-height:640px}.journal-grid{grid-template-columns:1fr}.journal-large{grid-row:auto}.journal-grid figure{min-height:430px}
  .property-photo{min-height:520px}.place-card{grid-template-columns:50px 1fr}.place-card p{grid-column:2}.relocate-photo img{min-height:500px}
  .about{gap:3rem}.about-portrait{max-width:600px}.guide{gap:3rem}.guide-form{grid-template-columns:1fr}.guide-form label:nth-child(4),.guide-form button{grid-column:auto}
  footer{grid-template-columns:1fr 1fr}.footer-legal{grid-column:span 2}
}
@media(max-width:600px){
  .hero-logo{width:250px}.hero h1{font-size:2.7rem}.hero-counter{right:1.2rem}.manifesto-grid{gap:1.5rem}.journal-grid figure{min-height:360px}.place-card{grid-template-columns:35px 1fr;gap:1rem}.invest-steps>div{grid-template-columns:42px 1fr}.invest-steps p{grid-column:2}.timeline div{grid-template-columns:90px 1fr}footer{grid-template-columns:1fr}.footer-legal{grid-column:auto}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}.hero-slide,.reveal{transition:none}.reveal{opacity:1;transform:none}}

/* Founder editorial feature */
.founder-feature{background:var(--cream)}
.founder-feature-heading{max-width:1100px;margin:0 auto 2.5rem;text-align:center}
.founder-feature-heading h2{font-size:clamp(2.7rem,5.5vw,5rem);color:var(--emerald);margin-top:.8rem}
.founder-poster{max-width:920px;margin:0 auto;box-shadow:0 30px 80px rgba(42,37,26,.16);overflow:hidden}
.founder-poster img{width:100%;height:auto;display:block}
.founder-note{max-width:920px;margin:3rem auto 0;display:grid;grid-template-columns:1fr 1.25fr;gap:4rem;align-items:start}
.founder-note .about-lead{margin:0}
.founder-note>.timeline{grid-column:1/-1;margin-top:0}
@media(max-width:900px){.founder-note{grid-template-columns:1fr;gap:1.5rem}.founder-note>.timeline{grid-column:auto}.founder-poster{max-width:680px}}
