*{margin:0;padding:0;box-sizing:border-box}
:root{
  --verde:#2d5a27;--verde-claro:#4a8c41;--verde-brillo:#7ec66b;
  --dorado:#b8860b;--dorado-claro:#d4a017;--dorado-brillo:#f0c040;
  --crema:#e8dcc8;--humo:#c9bfad;
  --negro:#0a0c08;--carbon:#111408;--oscuro:#1a1f14;--medio:#1e2418;
  --r-sm:0.6rem;--r-md:1rem;--r-lg:1.5rem;--r-xl:2rem;--r-pill:99rem
}
html{scroll-behavior:smooth}
body{background:var(--negro);color:var(--crema);font-family:'Jost',sans-serif;font-weight:300;overflow-x:hidden}

/* ══════════════════════════════
   SCROLL ANIMATIONS
══════════════════════════════ */
.reveal{opacity:0;transform:translateY(32px);transition:opacity 0.75s cubic-bezier(.16,1,.3,1),transform 0.75s cubic-bezier(.16,1,.3,1)}
.reveal.visible{opacity:1;transform:none}
.reveal-left{opacity:0;transform:translateX(-32px);transition:opacity 0.75s cubic-bezier(.16,1,.3,1),transform 0.75s cubic-bezier(.16,1,.3,1)}
.reveal-left.visible{opacity:1;transform:none}
.reveal-right{opacity:0;transform:translateX(32px);transition:opacity 0.75s cubic-bezier(.16,1,.3,1),transform 0.75s cubic-bezier(.16,1,.3,1)}
.reveal-right.visible{opacity:1;transform:none}
.reveal-scale{opacity:0;transform:scale(0.94);transition:opacity 0.7s cubic-bezier(.16,1,.3,1),transform 0.7s cubic-bezier(.16,1,.3,1)}
.reveal-scale.visible{opacity:1;transform:scale(1)}
/* Stagger delays */
.d1{transition-delay:0.05s}.d2{transition-delay:0.13s}.d3{transition-delay:0.21s}
.d4{transition-delay:0.29s}.d5{transition-delay:0.37s}.d6{transition-delay:0.45s}

/* ══════════════════════════════
   NAV
══════════════════════════════ */
nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1rem 3rem;background:rgba(10,12,8,0.92);backdrop-filter:blur(12px);border-bottom:1px solid rgba(184,134,11,0.1);transition:padding 0.3s}
nav.scrolled{padding:0.7rem 3rem}
.nav-logo{font-family:'Cormorant Garamond',serif;font-size:1.05rem;letter-spacing:0.15em;color:var(--dorado-claro);text-transform:uppercase;text-decoration:none}
.nav-links{display:flex;gap:1.5rem;align-items:center}
.nav-links a{font-size:0.7rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--humo);text-decoration:none;transition:color 0.3s}
.nav-links a:hover{color:var(--dorado-brillo)}
.nav-dropdown{position:relative}
.nav-dropdown-btn{font-size:0.7rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--humo);cursor:pointer;background:none;border:none;font-family:'Jost',sans-serif;font-weight:300;padding:0;transition:color 0.3s}
.nav-dropdown-btn:hover{color:var(--dorado-brillo)}
.dropdown-menu{display:none;position:absolute;top:calc(100% + 0.8rem);left:0;background:var(--carbon);border:1px solid rgba(184,134,11,0.15);min-width:220px;padding:0.5rem 0;border-radius:var(--r-md)}
.nav-dropdown:hover .dropdown-menu{display:block;animation:fadeDown 0.2s ease}
@keyframes fadeDown{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.dropdown-menu a{display:block;padding:0.45rem 1rem;font-size:0.68rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--humo);text-decoration:none;transition:all 0.2s;border-radius:var(--r-sm)}
.dropdown-menu a:hover{color:var(--dorado-brillo);background:rgba(184,134,11,0.07)}
.dropdown-sep{height:1px;background:rgba(201,191,173,0.08);margin:0.3rem 0.6rem}
.dropdown-region{font-size:0.56rem;letter-spacing:0.2em;color:var(--humo);opacity:0.3;padding:0.3rem 1rem 0.1rem;text-transform:uppercase}

/* ══════════════════════════════
   DIVIDER
══════════════════════════════ */
.divider{height:1px;background:linear-gradient(to right,transparent,rgba(184,134,11,0.18),transparent)}

/* ══════════════════════════════
   SECTION TAGS
══════════════════════════════ */
.section-tag{font-size:0.62rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--dorado-claro);margin-bottom:0.8rem;opacity:0.7}
.section-title{font-family:'Cormorant Garamond',serif;font-size:clamp(1.9rem,3.5vw,3rem);line-height:1.1;color:var(--crema);margin-bottom:1.8rem}
.section-title em{color:var(--verde-brillo);font-style:italic}

/* ══════════════════════════════
   BADGES
══════════════════════════════ */
.badge{font-size:0.58rem;letter-spacing:0.12em;text-transform:uppercase;padding:0.25rem 0.75rem;border:1px solid;display:inline-block;border-radius:var(--r-pill)}
.badge-sierra{color:var(--dorado-claro);border-color:rgba(184,134,11,0.4);background:rgba(184,134,11,0.06)}
.badge-selva{color:var(--verde-brillo);border-color:rgba(45,90,39,0.5);background:rgba(45,90,39,0.08)}
.badge-costa{color:#7bb8f0;border-color:rgba(55,138,221,0.4);background:rgba(55,138,221,0.06)}

/* ══════════════════════════════
   FOOTER
══════════════════════════════ */
footer{padding:2.5rem 3rem;background:var(--negro);border-top:1px solid rgba(184,134,11,0.1);display:flex;justify-content:space-between;align-items:center}
.footer-brand{font-family:'Cormorant Garamond',serif;font-size:0.95rem;color:var(--dorado-claro);letter-spacing:0.08em}
.footer-meta{font-size:0.68rem;color:var(--humo);opacity:0.4;text-align:right;line-height:1.7}

/* ══════════════════════════════
   SCROLL JS (shared)
══════════════════════════════ */

@media(max-width:768px){
  nav{padding:1rem 1.5rem}
  .nav-links{display:none}
  footer{flex-direction:column;gap:1rem;text-align:center}
  .footer-meta{text-align:center}
}
