:root {
  /* Color */
  --gold:#C19A5B; --gold-light:#d4b07a; --gold-dark:#9a7a42;
  --black:#000; --bg:#070707; --surface:#0e0e0e; --surface-2:#151515;
  --white:#fff; --text-dim:rgba(255,255,255,.62); --text-faint:rgba(255,255,255,.4);
  /* Glass */
  --glass-bg:rgba(255,255,255,.08); --glass-border:rgba(193,154,91,.4); --glass-blur:14px;
  /* Tipografía */
  --font-serif:'Cormorant Garamond',Georgia,serif;
  --font-sans:'Inter',system-ui,sans-serif;
  /* Forma y movimiento */
  --radius:6px; --radius-lg:12px; --ease:cubic-bezier(.16,1,.3,1);
  /* Espaciado (escala 4/8) */
  --sp-1:8px; --sp-2:16px; --sp-3:24px; --sp-4:32px; --sp-5:48px; --sp-6:64px; --sp-8:96px;
  --container:1180px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-sans);background:var(--bg);color:var(--white);line-height:1.6;overflow-x:hidden}
::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:#000}::-webkit-scrollbar-thumb{background:var(--gold);border-radius:2px}
.container{max-width:var(--container);margin:0 auto;padding:0 var(--sp-3)}
.gold{color:var(--gold)} .em{font-style:italic;color:var(--gold)}
.label{font-size:.7rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:12px}
.h2{font-family:var(--font-serif);font-size:clamp(2rem,3.8vw,3rem);font-weight:600;line-height:1.12;margin-bottom:1.4rem}
/* Accesibilidad */
a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}
/* Revelado por scroll con CSS scroll-driven (ligado a la posición de scroll, no a
   eventos → no se salta elementos). Fallback: contenido SIEMPRE visible. */
[data-reveal]{opacity:1}
@keyframes revealIn{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@supports (animation-timeline: view()){
  [data-reveal]{
    animation-name:revealIn;
    animation-fill-mode:both;
    animation-timeline:view();
    animation-range:entry 0% entry 40%;
  }
}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  [data-reveal]{animation:none!important;opacity:1!important;transform:none!important}
}
