/* Estilos del micrositio Andrómaco 100 años.
   Paleta, layout, responsive, animaciones y modales. */

:root{
    --navy:#003a63;
    --blue:#004274;       /* azul profundo de marca */
    --blue-2:#015c9c;
    --bright:#007db7;     /* azul claro del degradé */
    --sky:#a6cadf;
    --ice:#eef4f9;        /* fondo claro azulado */
    --ink:#10324a;        /* texto sobre claro */
    --muted:#4d6e85;
    --line:rgba(0,66,116,.16);
    --shadow:0 20px 50px -28px rgba(0,58,99,.5);
    --maxw:1180px;
    --story-h:0px;
    --nav-main-h:70px;
    --nav-h:calc(var(--story-h) + var(--nav-main-h));
    --grad:linear-gradient(120deg,#003a63 0%,#004f8a 45%,#007db7 100%);
    --grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{background:#fff;color:var(--ink);font-family:"Libre Franklin",system-ui,sans-serif;font-weight:400;line-height:1.6;-webkit-font-smoothing:antialiased}
  section[id],article[id]{scroll-margin-top:calc(var(--nav-h) + 22px)}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
  .eyebrow{font-size:.74rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--bright);display:inline-block;margin-bottom:16px}
  h2{font-weight:700;font-size:clamp(1.9rem,4vw,2.9rem);line-height:1.1;letter-spacing:-.015em}
  p{font-weight:300;color:var(--muted);font-size:1.04rem}
  .placeholder{
    background:repeating-linear-gradient(45deg,rgba(0,66,116,.05),rgba(0,66,116,.05) 12px,rgba(0,66,116,.09) 12px,rgba(0,66,116,.09) 24px);
    border:1px dashed rgba(0,66,116,.35);border-radius:5px;
    display:flex;align-items:center;justify-content:center;text-align:center;
    color:var(--blue);font-size:.8rem;font-weight:500;letter-spacing:.02em;padding:18px;
  }

  /* NAV */
  nav{--nav-bg:#fff;--nav-panel-bg:#fff;--nav-panel-line:rgba(0,66,116,.08);--nav-border:rgba(0,66,116,.12);--nav-link-bg:rgba(238,244,249,.78);--nav-link-border:rgba(0,66,116,.12);--nav-link-color:var(--ink);--nav-link-number:var(--bright);--nav-active-bg:#fff;--nav-active-color:var(--blue);--nav-accent:#007db7;--nav-accent-soft:#a6cadf;--nav-menu-bg:#fff;--nav-menu-border:rgba(0,66,116,.15);--nav-menu-line:var(--blue);--nav-shadow:0 16px 34px -30px rgba(0,42,76,.55);position:sticky;top:0;z-index:50;height:var(--nav-h);overflow:visible;background:var(--nav-bg);border-bottom:1px solid var(--nav-border);box-shadow:var(--nav-shadow);transition:border-color .35s ease,box-shadow .35s ease}
  .nav-story{position:relative;height:var(--story-h);display:flex;align-items:center;justify-content:space-between;gap:18px;overflow:hidden;padding:0 clamp(24px,4.8vw,92px);background:linear-gradient(100deg,#003a63 0%,#00588f 44%,#007db7 100%);color:#fff;isolation:isolate}
  .nav-story::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(112deg,rgba(255,255,255,.14) 0 1px,transparent 1px 18px),linear-gradient(90deg,rgba(255,255,255,.16),transparent 28%,rgba(255,255,255,.12) 72%,transparent);opacity:.58;transform:translateX(-5%);animation:storyWater 7.5s ease-in-out infinite}
  .nav-story::after{content:"";position:absolute;left:clamp(24px,4.8vw,92px);right:clamp(24px,4.8vw,92px);bottom:0;height:1px;background:linear-gradient(90deg,rgba(255,255,255,.85),rgba(166,202,223,.28),rgba(255,255,255,.72));transform:scaleX(0);transform-origin:left;animation:storyLine 1.75s .2s cubic-bezier(.2,.7,.2,1) both}
  .nav-story span,.nav-story strong{position:relative;z-index:2;display:inline-block;font-size:.66rem;font-weight:800;letter-spacing:.28em;text-transform:uppercase;line-height:1;color:#fff;clip-path:inset(0 100% 0 0);animation:storyText 1.7s .16s steps(16,end) both}
  .nav-story strong{font-weight:600;letter-spacing:.22em;opacity:.8}
  .nav-inner{position:relative;display:grid;grid-template-columns:minmax(132px,1fr) auto minmax(44px,1fr);align-items:center;gap:20px;width:100%;max-width:none;height:var(--nav-main-h);padding:0 clamp(24px,4.8vw,92px);background:var(--nav-panel-bg);backdrop-filter:blur(16px);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),inset 0 -1px 0 var(--nav-panel-line);overflow:hidden;transition:background .65s cubic-bezier(.2,.7,.2,1),box-shadow .65s cubic-bezier(.2,.7,.2,1)}
  .nav-inner::after{content:"";position:absolute;left:clamp(24px,4.8vw,92px);top:calc(50% + 24px);width:86px;height:2px;background:linear-gradient(90deg,var(--nav-accent) 0%,color-mix(in srgb,var(--nav-accent) 58%,transparent) 58%,transparent 100%);opacity:0;transform:scaleX(.2);transform-origin:left;animation:brandBaseVideo 1.25s .48s cubic-bezier(.2,.7,.2,1) both;pointer-events:none}
  .nav-brand{position:relative;z-index:3;display:flex;align-items:center;justify-self:start;min-width:132px;height:52px;overflow:hidden}
  .nav-home{position:absolute;inset:0;z-index:5;border:0;background:transparent;cursor:pointer}
  .nav-home:focus-visible{outline:3px solid rgba(0,125,183,.34);outline-offset:2px;border-radius:8px}
  .nav-logo{position:relative;z-index:2;display:block;height:46px;margin-left:0;clip-path:inset(0 100% 0 0);opacity:0;transform:translateX(-8px);transform-origin:left center;cursor:pointer;animation:brandLogoVideo 1.35s .56s cubic-bezier(.2,.7,.2,1) both}
  .nav-logo:hover,.nav-logo:focus-visible{animation:brandLogoReplay 1.35s cubic-bezier(.2,.7,.2,1) both}
  .nav-inner:has(.nav-home:hover) .nav-logo,.nav-inner:has(.nav-home:focus-visible) .nav-logo{animation:brandLogoReplay 1.35s cubic-bezier(.2,.7,.2,1) both}
  .nav-logo:focus-visible{outline:3px solid rgba(0,125,183,.34);outline-offset:8px;border-radius:4px}
  .nav-inner:has(.nav-logo:hover)::after,.nav-inner:has(.nav-logo:focus-visible)::after,.nav-inner:has(.nav-home:hover)::after,.nav-inner:has(.nav-home:focus-visible)::after{animation:brandBaseReplay 1.25s cubic-bezier(.2,.7,.2,1) both}
  .nav-links{position:relative;z-index:3;display:flex;gap:5px;align-items:center;padding:5px;border:1px solid var(--nav-link-border);border-radius:8px;background:var(--nav-link-bg);box-shadow:inset 0 1px 0 rgba(255,255,255,.18);transition:background .65s cubic-bezier(.2,.7,.2,1),border-color .65s cubic-bezier(.2,.7,.2,1)}
  .nav-links::before{content:"";position:absolute;z-index:0;top:5px;bottom:5px;left:0;width:var(--nav-indicator-w,0px);border-radius:6px;background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.92) 100%);box-shadow:0 14px 26px -22px rgba(0,42,76,.72),inset 0 0 0 1px rgba(0,125,183,.12);opacity:0;transform:translateX(var(--nav-indicator-x,0px));transition:transform .42s cubic-bezier(.2,.72,.2,1),width .42s cubic-bezier(.2,.72,.2,1),opacity .18s ease}
  .nav-links.has-active::before{opacity:1}
  .nav-links a{position:relative;z-index:1;display:flex;align-items:center;gap:7px;min-height:40px;padding:10px 14px;border-radius:6px;color:var(--nav-link-color);text-decoration:none;font-size:.82rem;font-weight:700;line-height:1;white-space:nowrap;opacity:.78;transition:color .35s ease,background .35s ease,box-shadow .35s ease,opacity .22s ease,transform .22s ease}
  .nav-links a span{font-size:.58rem;font-weight:800;letter-spacing:.12em;color:var(--nav-link-number);opacity:.9;transition:color .35s ease}
  .nav-links a:hover{opacity:1;color:var(--nav-active-color);background:rgba(255,255,255,.52);box-shadow:0 12px 24px -24px rgba(0,42,76,.55);transform:translateY(-1px)}
  .nav-links a.active{opacity:1;color:var(--nav-active-color);background:transparent;box-shadow:none;transform:none}
  .nav-links a.active::after{content:"";position:absolute;left:14px;right:14px;bottom:6px;height:2px;border-radius:999px;background:linear-gradient(90deg,var(--nav-accent),var(--nav-accent-soft))}
  .nav-links a:focus-visible{outline:2px solid color-mix(in srgb,var(--nav-accent) 42%,transparent);outline-offset:2px}
  .nav-actions{position:relative;z-index:3;display:flex;align-items:center;justify-self:end;gap:10px}
  .site-lang{display:inline-flex;align-items:center;gap:3px;padding:4px;border:1px solid var(--nav-link-border);border-radius:999px;background:var(--nav-link-bg);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 14px 26px -25px rgba(0,42,76,.72);transition:background .35s ease,border-color .35s ease,box-shadow .35s ease}
  .site-lang span{display:block;width:1px;height:16px;background:color-mix(in srgb,var(--nav-link-number) 32%,transparent)}
  .site-lang button{min-width:36px;height:32px;border:0;border-radius:999px;background:transparent;color:var(--nav-link-color);font:800 .66rem/1 "Libre Franklin",system-ui,sans-serif;letter-spacing:.12em;cursor:pointer;opacity:.68;transition:background .22s ease,color .22s ease,opacity .22s ease,box-shadow .22s ease,transform .22s ease}
  .site-lang button:hover{opacity:1;transform:translateY(-1px)}
  .site-lang button.active{opacity:1;color:#001126;background:linear-gradient(135deg,var(--nav-accent),var(--nav-accent-soft));box-shadow:0 12px 24px -18px color-mix(in srgb,var(--nav-accent) 75%,transparent)}
  .nav-menu-toggle{display:none;position:relative;width:44px;height:44px;border:1px solid var(--nav-menu-border);border-radius:8px;background:var(--nav-menu-bg);box-shadow:0 14px 26px -24px rgba(0,42,76,.7);cursor:pointer;transition:background .35s ease,border-color .35s ease}
  .nav-menu-toggle span{position:absolute;left:12px;right:12px;height:2px;border-radius:999px;background:var(--nav-menu-line);transition:transform .24s ease,top .24s ease,background .35s ease}
  .nav-menu-toggle span:first-child{top:16px}
  .nav-menu-toggle span:last-child{top:25px}
  .site-nav.menu-open .nav-menu-toggle span:first-child{top:21px;transform:rotate(45deg)}
  .site-nav.menu-open .nav-menu-toggle span:last-child{top:21px;transform:rotate(-45deg)}
  .nav-progress{position:absolute;left:0;right:0;bottom:0;height:2px;background:color-mix(in srgb,var(--nav-accent) 12%,transparent);overflow:hidden;transition:background .35s ease}
  .nav-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--nav-active-color),var(--nav-accent),var(--nav-accent-soft));transform:scaleX(0);transform-origin:left center;transition:transform .12s linear,background .35s ease}
  .nav-drawer{position:absolute;left:16px;right:16px;top:calc(var(--story-h) + var(--nav-main-h) - 1px);z-index:2;display:none;padding:10px;border:1px solid var(--nav-menu-border);border-radius:8px;background:var(--nav-menu-bg);box-shadow:0 24px 52px -32px rgba(0,42,76,.78);backdrop-filter:blur(16px);opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .22s ease,transform .22s ease,background .35s ease,border-color .35s ease}
  .nav-drawer a{position:relative;display:flex;align-items:center;gap:10px;padding:13px 12px;border-radius:6px;color:var(--nav-link-color);text-decoration:none;font-weight:800;font-size:.9rem;transition:background .24s ease,color .24s ease}
  .nav-drawer a span{font-size:.62rem;color:var(--nav-link-number);letter-spacing:.14em}
  .nav-drawer a:hover,.nav-drawer a.active{background:var(--nav-active-bg);color:var(--nav-active-color)}
  .nav-drawer a.active::before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:999px;background:linear-gradient(180deg,var(--nav-accent),var(--nav-accent-soft));box-shadow:0 0 14px color-mix(in srgb,var(--nav-accent) 32%,transparent)}
  .menu-note{display:none}
  @keyframes storyWater{0%,100%{transform:translateX(-4%) translateY(0)}50%{transform:translateX(3%) translateY(8px)}}
  @keyframes storyLine{0%,10%{transform:scaleX(0);opacity:.75}100%{transform:scaleX(1);opacity:1}}
  @keyframes storyText{0%,10%{clip-path:inset(0 100% 0 0);opacity:.45}100%{clip-path:inset(0 0 0 0);opacity:1}}
  @keyframes brandTileVideo{0%,7%{opacity:0;transform:translateY(-50%) scaleX(.08)}100%{opacity:1;transform:translateY(-50%) scaleX(1)}}
  @keyframes brandBaseVideo{0%,13%{opacity:0;transform:scaleX(.2)}100%{opacity:1;transform:scaleX(1)}}
  @keyframes brandLogoVideo{0%,16%{clip-path:inset(0 100% 0 0);opacity:0;transform:translateX(-8px)}100%{clip-path:inset(0 0 0 0);opacity:1;transform:none}}
  @keyframes brandTileReplay{0%,7%{opacity:0;transform:translateY(-50%) scaleX(.08)}100%{opacity:1;transform:translateY(-50%) scaleX(1)}}
  @keyframes brandBaseReplay{0%,13%{opacity:0;transform:scaleX(.2)}100%{opacity:1;transform:scaleX(1)}}
  @keyframes brandLogoReplay{0%,16%{clip-path:inset(0 100% 0 0);opacity:0;transform:translateX(-8px)}100%{clip-path:inset(0 0 0 0);opacity:1;transform:none}}
  @media(max-width:1160px){.nav-links a{padding:10px 11px}}
  @media(max-width:1020px){:root{--story-h:0px;--nav-main-h:64px}.nav-inner{grid-template-columns:1fr auto;padding:0 22px}.nav-inner::after{left:22px;top:calc(50% + 23px);width:78px}.nav-brand{min-width:128px;height:50px}.nav-logo{height:38px;margin-left:0}.nav-links{display:none}.nav-actions{margin-left:auto}.site-lang{padding:3px}.site-lang button{min-width:34px;height:30px}.nav-menu-toggle{display:block}.nav-drawer{display:block}.site-nav.menu-open .nav-drawer{opacity:1;transform:translateY(0);pointer-events:auto}}
  @media(max-width:520px){:root{--story-h:0px;--nav-main-h:60px}.nav-inner{padding:0 16px}.nav-inner::after{left:16px;width:70px}.nav-brand{min-width:118px;height:46px}.nav-logo{height:34px}.site-lang button{min-width:31px;height:28px;font-size:.6rem}.nav-menu-toggle{width:40px;height:40px}.nav-drawer{left:10px;right:10px}}
  @media(prefers-reduced-motion:reduce){.nav-story::before,.nav-story::after,.nav-story span,.nav-story strong,.nav-inner::after,.nav-logo{animation:none}.nav-story::after{transform:scaleX(1)}.nav-story span,.nav-story strong,.nav-logo{clip-path:none;opacity:1;transform:none}.nav-inner::after{opacity:1;transform:scaleX(1)}.nav-links::before,.nav-links a,.nav-drawer,.nav-menu-toggle span,.site-lang button{transition:none}}

  /* HERO */
  .hero{position:relative;min-height:calc(100svh - var(--nav-h));background:#00588f;color:#fff;overflow:hidden;display:flex;align-items:center;justify-content:center}
  .hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,42,76,.05) 0%,rgba(0,42,76,.02) 58%,rgba(0,42,76,.32) 100%);pointer-events:none}
  .hero::after{content:"";position:absolute;inset:-12%;z-index:1;background:radial-gradient(48% 58% at 70% 16%,rgba(255,255,255,.12),transparent 62%),radial-gradient(34% 42% at 24% 72%,rgba(0,125,183,.18),transparent 66%),repeating-linear-gradient(168deg,rgba(255,255,255,.045) 0 1px,transparent 1px 24px);mix-blend-mode:screen;opacity:.55;transform:translate3d(-2%,0,0);animation:heroAura 18s ease-in-out infinite;pointer-events:none}
  .hero-glow{position:absolute;inset:-10% -18%;z-index:1;pointer-events:none;background:linear-gradient(112deg,transparent 32%,rgba(255,255,255,.15) 49%,transparent 64%);mix-blend-mode:screen;opacity:.58;transform:translateX(-8%);animation:heroSweep 12s ease-in-out infinite alternate}
  .hero-inner{position:relative;z-index:2;min-height:calc(100svh - var(--nav-h));display:flex;flex-direction:column;align-items:center;justify-content:flex-end;text-align:center;padding:90px 28px clamp(82px,10vh,118px)}
  .hero-logo{position:absolute;top:50%;left:50%;translate:-50% -50%;max-width:50vw;max-height:50vh;width:auto;height:auto;object-fit:contain;z-index:0;animation:heroLogo 1.5s ease .2s both;pointer-events:none}
  .hero-years{display:flex;align-items:center;gap:18px;font-weight:500;letter-spacing:.34em;font-size:.95rem;color:#fff;opacity:.92;animation:heroFade 1s ease .35s both,heroYearsGlow 4s ease-in-out 1.5s infinite}
  .hero-years .ln{width:56px;height:1px;background:rgba(255,255,255,.55);box-shadow:0 0 12px rgba(166,202,223,.5);animation:linePulse 4s ease-in-out 1.5s infinite}
  .hero-claim{margin-top:16px;color:#fff;font-family:Calibri,Aptos,sans-serif;font-weight:400;font-size:clamp(1.45rem,3vw,2.25rem);line-height:1.1;letter-spacing:0;text-shadow:0 12px 30px rgba(0,42,76,.35);animation:heroFade 1s ease .65s both}
  .scroll-cue{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);z-index:3;font-size:.9rem;color:rgba(255,255,255,.65);animation:heroFade 1s ease 1.1s both,cueBob 2.2s ease-in-out 1.6s infinite}
  @keyframes heroLogo{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
  @keyframes heroFade{from{opacity:0}to{opacity:.92}}
  @keyframes heroYearsGlow{0%,100%{text-shadow:0 0 20px rgba(0,177,211,.4),0 0 40px rgba(0,206,226,.3),0 0 60px rgba(1,92,156,.2)}50%{text-shadow:0 0 35px rgba(0,206,226,.8),0 0 60px rgba(0,177,211,.6),0 0 90px rgba(1,92,156,.4)}}
  @keyframes linePulse{0%,100%{box-shadow:0 0 15px rgba(0,206,226,.4),0 0 30px rgba(0,177,211,.3)}50%{box-shadow:0 0 25px rgba(0,206,226,.9),0 0 50px rgba(0,177,211,.6)}}
  @keyframes cueBob{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,7px)}}
  @keyframes heroAura{0%,100%{transform:translate3d(-2%,0,0) scale(1);opacity:.45}50%{transform:translate3d(2%,1.5%,0) scale(1.03);opacity:.66}}
  @keyframes heroSweep{0%{transform:translateX(-14%) skewX(-4deg);opacity:.38}100%{transform:translateX(12%) skewX(-4deg);opacity:.72}}

  /* HERO */
.hero {
  position: relative;
  min-height: calc(100svh - var(--nav-h));
  background: #00588f;
  color: #fff;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  isolation: isolate;
}

/* Video de fondo del hero */
.hero-video {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: .62;
  filter: saturate(.86) contrast(.92) brightness(.9);
  pointer-events: none;
  background: #00588f;
}

/* Overlay azul para que el video no compita con el logo/textos */
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(
      180deg,
      rgba(0, 42, 76, .34) 0%,
      rgba(0, 42, 76, .30) 46%,
      rgba(0, 42, 76, .62) 100%
    ),
    radial-gradient(
      60% 70% at 50% 32%,
      rgba(0, 125, 183, .10),
      transparent 68%
    );
  pointer-events: none;
}

/* Textura/luz sutil encima del video */
.hero::after {
  content: "";
  position: absolute;
  inset: -12%;
  z-index: 2;
  background:
    radial-gradient(48% 58% at 70% 16%, rgba(255,255,255,.12), transparent 62%),
    radial-gradient(34% 42% at 24% 72%, rgba(0,125,183,.18), transparent 66%),
    repeating-linear-gradient(168deg, rgba(255,255,255,.045) 0 1px, transparent 1px 24px);
  mix-blend-mode: screen;
  opacity: .55;
  transform: translate3d(-2%,0,0);
  animation: heroAura 18s ease-in-out infinite;
  pointer-events: none;
}

/* Barrido luminoso */
.hero-glow {
  position: absolute;
  inset: -10% -18%;
  z-index: 3;
  pointer-events: none;
  background: linear-gradient(
    112deg,
    transparent 32%,
    rgba(255,255,255,.15) 49%,
    transparent 64%
  );
  mix-blend-mode: screen;
  opacity: .58;
  transform: translateX(-8%);
  animation: heroSweep 12s ease-in-out infinite alternate;
}

/* Contenido del hero */
.hero-inner {
  position: relative;
  z-index: 4;
  min-height: calc(100svh - var(--nav-h));
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  text-align: center;
  padding: 90px 28px clamp(82px,10vh,118px);
}

/* Logo principal sobre el video */
.hero-logo {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  max-width: min(50vw, 620px);
  max-height: 50vh;
  width: auto;
  height: auto;
  object-fit: contain;
  z-index: 1;
  animation: heroLogo 1.5s ease .2s both;
  pointer-events: none;
  filter: drop-shadow(0 22px 42px rgba(0, 42, 76, .34));
}

/* Años 1926 - 2026 */
.hero-years {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 18px;
  font-weight: 500;
  letter-spacing: .34em;
  font-size: .95rem;
  color: #fff;
  opacity: .92;
  text-shadow: 0 10px 28px rgba(0, 42, 76, .55);
  animation: heroFade 1s ease .35s both, heroYearsGlow 4s ease-in-out 1.5s infinite;
}

.hero-years .ln {
  width: 56px;
  height: 1px;
  background: rgba(255,255,255,.62);
  box-shadow: 0 0 12px rgba(166,202,223,.5);
  animation: linePulse 4s ease-in-out 1.5s infinite;
}

.hero-claim {
  margin-top: 16px;
  color: #fff;
  font-family: Calibri,Aptos,sans-serif;
  font-weight: 400;
  font-size: clamp(1.45rem,3vw,2.25rem);
  line-height: 1.1;
  letter-spacing: 0;
  text-shadow: 0 12px 30px rgba(0,42,76,.35);
  animation: heroFade 1s ease .65s both;
}

.scroll-cue {
  position: absolute;
  bottom: 26px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 5;
  font-size: .9rem;
  color: rgba(255,255,255,.65);
  animation: heroFade 1s ease 1.1s both, cueBob 2.2s ease-in-out 1.6s infinite;
}

@keyframes heroLogo {
  from {
    opacity: 0;
    transform: translateY(10px) scale(.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes heroFade {
  from {
    opacity: 0;
  }
  to {
    opacity: .92;
  }
}

@keyframes heroYearsGlow {
  0%,100% {
    text-shadow:
      0 0 20px rgba(0,177,211,.4),
      0 0 40px rgba(0,206,226,.3),
      0 0 60px rgba(1,92,156,.2);
  }
  50% {
    text-shadow:
      0 0 35px rgba(0,206,226,.8),
      0 0 60px rgba(0,177,211,.6),
      0 0 90px rgba(1,92,156,.4);
  }
}

@keyframes linePulse {
  0%,100% {
    box-shadow:
      0 0 15px rgba(0,206,226,.4),
      0 0 30px rgba(0,177,211,.3);
  }
  50% {
    box-shadow:
      0 0 25px rgba(0,206,226,.9),
      0 0 50px rgba(0,177,211,.6);
  }
}

@keyframes cueBob {
  0%,100% {
    transform: translate(-50%,0);
  }
  50% {
    transform: translate(-50%,7px);
  }
}

@keyframes heroAura {
  0%,100% {
    transform: translate3d(-2%,0,0) scale(1);
    opacity: .45;
  }
  50% {
    transform: translate3d(2%,1.5%,0) scale(1.03);
    opacity: .66;
  }
}

@keyframes heroSweep {
  0% {
    transform: translateX(-14%) skewX(-4deg);
    opacity: .38;
  }
  100% {
    transform: translateX(12%) skewX(-4deg);
    opacity: .72;
  }
}

/* Mobile */
@media(max-width: 820px) {
  .hero-inner {
    padding: 80px 22px 86px;
  }

  .hero-logo {
    max-width: 78vw;
    max-height: 46vh;
  }

  .hero-years {
    gap: 14px;
    font-size: .78rem;
    letter-spacing: .24em;
  }

  .hero-years .ln {
    width: 42px;
  }
}

/* Accesibilidad: si el usuario prefiere menos movimiento, se oculta el video */
@media(prefers-reduced-motion: reduce) {
  .hero {
    background: #00588f;
  }

  .hero-video {
    display: none;
  }

  .hero::after,
  .hero-glow,
  .hero-logo,
  .hero-years,
  .scroll-cue {
    animation: none;
  }

  .hero-logo,
  .hero-years,
  .scroll-cue {
    opacity: 1;
  }
}

  /* BAJADA */
  .bajada{position:relative;overflow:hidden;background:#fff}
  .bajada-bg{position:absolute;inset:0;z-index:0;background:radial-gradient(70% 62% at 82% 18%,rgba(0,125,183,.36),transparent 62%),linear-gradient(135deg,#003a63 0%,#004274 48%,#006ca3 100%)}
  .bajada-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,42,76,.2) 0%,rgba(0,42,76,.08) 66%,#fff 100%)}
  .ph-tag-bg{display:none}
  .bajada-inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);gap:62px;align-items:center;padding:112px 28px 124px}
  .bajada-text{max-width:650px}
  .bajada-mark{display:inline-flex;align-items:center;gap:14px;margin-bottom:18px;color:var(--sky);font-size:.78rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase}
  .bajada-mark::before{content:"";width:44px;height:1px;background:rgba(255,255,255,.56)}
  .bajada-text h2{color:#fff;font-size:clamp(2.2rem,5vw,4.15rem);letter-spacing:-.035em;max-width:12ch}
  .bajada-text p{color:rgba(255,255,255,.88);font-size:clamp(1.02rem,1.45vw,1.18rem);font-weight:300;margin-top:24px;max-width:56ch}
  .bajada-text p strong{display:inline;color:#fff;font-weight:700}
  .bajada-photo{position:relative;z-index:2;margin:0;width:100%}
  .bajada-photo::before{content:"";position:absolute;inset:28px -18px -18px 34px;border:1px solid rgba(255,255,255,.24);border-radius:8px;pointer-events:none}
  .bajada-photo .frame{position:relative;overflow:hidden;width:100%;border-radius:8px;background:#fff;box-shadow:0 36px 74px -34px rgba(0,20,36,.9);aspect-ratio:4/3}
  .bajada-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.08) sepia(.18);opacity:0;transform:scale(1.045);transition:opacity .8s ease,transform 5.2s ease}
  .bajada-slide.active{opacity:1;transform:scale(1)}
  .bajada-photo .frame::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,66,116,.62),rgba(0,125,183,.12) 48%,rgba(255,255,255,.08));mix-blend-mode:multiply;pointer-events:none}
  .bajada-photo figcaption{position:absolute;left:22px;right:22px;bottom:18px;z-index:4;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;color:#fff;font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;pointer-events:none}
  .bajada-photo figcaption span{display:inline-flex;align-items:center;max-width:min(70%,420px);min-height:30px;padding:6px 10px;border:1px solid rgba(255,255,255,.34);border-radius:999px;background:rgba(0,42,76,.24);box-shadow:0 8px 20px -18px rgba(0,20,36,.82);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);text-shadow:0 1px 2px rgba(0,24,45,.82),0 0 8px rgba(0,42,76,.55);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .bajada-photo figcaption span:last-child{justify-content:center;min-width:58px;padding-inline:10px;background:rgba(0,42,76,.18);color:rgba(255,255,255,.82);font-weight:800;letter-spacing:.08em}
  .bajada-dots{position:absolute;right:22px;top:18px;z-index:3;display:flex;gap:8px;align-items:center}
  .bajada-dots button{width:8px;height:8px;border:0;border-radius:50%;background:rgba(255,255,255,.42);padding:0;cursor:pointer;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
  .bajada-dots button.active{background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.18);transform:scale(1.08)}
  .bajada-progress{position:absolute;left:0;right:0;bottom:0;z-index:3;height:4px;background:rgba(255,255,255,.22)}
  .bajada-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--sky),#fff);box-shadow:0 0 14px rgba(166,202,223,.45)}
  .bajada-progress span.playing{animation:bajadaTimer var(--bajada-delay,4.5s) linear both}
  @keyframes bajadaTimer{from{width:0}to{width:100%}}
  .rule{width:60px;height:3px;background:var(--bright);border-radius:3px;margin:0 auto 8px}
  @media(max-width:820px){
    .bajada-inner{grid-template-columns:1fr;gap:38px;padding:78px 28px 88px}
    .bajada-text h2{max-width:12ch}
    .bajada-photo{width:100%;max-width:520px;margin:0 auto}
    .bajada-photo figcaption{left:16px;right:16px;bottom:16px;font-size:.68rem;gap:10px}
    .bajada-photo figcaption span{max-width:calc(100% - 74px);min-height:30px;padding:7px 10px}
    .bajada-photo figcaption span:last-child{min-width:52px;padding-inline:9px}
    .bajada-dots{right:16px;top:16px}
  }

  /* SECTION SHELL */
  section{padding:88px 0;scroll-margin-top:82px}
  .sec-head{max-width:680px;margin-bottom:48px}
  .sec-head p{margin-top:14px}

  /* EPISODIOS */
  .episodios{position:relative;overflow:hidden;background:linear-gradient(180deg,#f5f9fc 0%,#e8f2f8 100%)}
  .episodios::before{content:"100";position:absolute;right:-.12em;top:26px;font-weight:700;font-size:clamp(9rem,24vw,23rem);line-height:.8;letter-spacing:-.1em;color:rgba(0,66,116,.055);pointer-events:none}
  .episodios .wrap{position:relative;z-index:2}
  .episodios .sec-head{max-width:760px}
  .ep-rail{position:relative;display:grid;grid-template-columns:repeat(var(--ep-count,4),minmax(0,1fr));gap:14px;margin:-14px 0 28px;padding:24px 0 2px}
  .ep-rail::before,.ep-rail-fill{content:"";position:absolute;left:0;right:0;top:15px;height:2px;border-radius:999px;background:rgba(0,66,116,.14)}
  .ep-rail-fill{right:auto;width:0;background:linear-gradient(90deg,var(--sky),var(--blue));box-shadow:0 0 18px rgba(0,125,183,.24);transition:width .55s cubic-bezier(.2,.7,.2,1)}
  .ep-rail button{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;height:42px;border:1px solid rgba(0,66,116,.16);border-radius:999px;background:rgba(255,255,255,.72);color:var(--blue);font-family:inherit;font-weight:800;letter-spacing:.14em;cursor:pointer;box-shadow:0 14px 28px -24px rgba(0,40,72,.55);transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}
  .ep-rail button::before{content:"";position:absolute;top:-15px;left:50%;width:10px;height:10px;border-radius:50%;background:#d8e8f2;border:2px solid #fff;transform:translate(-50%,-50%);box-shadow:0 0 0 1px rgba(0,66,116,.14)}
  .ep-rail button.active{background:var(--blue);color:#fff;border-color:var(--blue);box-shadow:0 18px 36px -24px rgba(0,40,72,.72);transform:translateY(-1px)}
  .ep-rail button.active::before{background:var(--sky);box-shadow:0 0 0 5px rgba(0,125,183,.14),0 0 0 1px rgba(0,66,116,.16)}
  .ep-grid{display:flex;gap:18px;align-items:stretch;min-height:470px}
  .ep-card{position:relative;flex:1 1 0;min-width:0;border-radius:8px;overflow:hidden;cursor:pointer;color:#fff;background:linear-gradient(150deg,#003a63,#007db7);box-shadow:0 22px 54px -34px rgba(0,40,72,.75);transition:flex .55s cubic-bezier(.2,.7,.2,1),transform .25s ease,box-shadow .25s ease,filter .25s ease;outline:none;isolation:isolate}
  .ep-card:nth-child(1){--ep-a:#003a63;--ep-b:#007db7;--ep-x:72%}
  .ep-card:nth-child(2){--ep-a:#004274;--ep-b:#00a0cf;--ep-x:62%}
  .ep-card:nth-child(3){--ep-a:#002f55;--ep-b:#006ca3;--ep-x:48%}
  .ep-card:nth-child(4){--ep-a:#004b7e;--ep-b:#0090bd;--ep-x:58%}
  .ep-card:nth-child(5){--ep-a:#00385f;--ep-b:#00a6cf;--ep-x:54%}
  .ep-card:nth-child(6){--ep-a:#004274;--ep-b:#00b4d1;--ep-x:50%}
  .ep-card:hover{transform:translateY(-3px)}
  .ep-card:focus-visible{outline:3px solid var(--bright);outline-offset:4px}
  .ep-card.active{flex:1.85 1 0;box-shadow:0 34px 86px -38px rgba(0,40,72,.96)}
  .ep-card:not(.active){filter:saturate(.82) contrast(.94)}
  .ep-card.active .ep-bg{filter:saturate(1.06) contrast(1.08)}
  .ep-bg{position:absolute;inset:0;background-image:linear-gradient(180deg,rgba(0,42,76,.08),rgba(0,42,76,.68)),linear-gradient(115deg,rgba(0,66,116,.34),rgba(0,125,183,.05) 48%,rgba(0,42,76,.54)),var(--ep-thumb),radial-gradient(80% 70% at var(--ep-x,70%) 8%,rgba(255,255,255,.18),transparent 60%),linear-gradient(150deg,var(--ep-a,#003a63),var(--ep-b,#007db7));background-size:cover,cover,cover,cover,cover;background-position:center;opacity:1;filter:saturate(.98) contrast(1.02);transition:filter .35s ease,transform .55s cubic-bezier(.2,.7,.2,1)}
  .ep-bg::before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.22);border-radius:6px;background:linear-gradient(135deg,rgba(255,255,255,.07),transparent 38%,rgba(255,255,255,.04));opacity:.88}
  .ep-bg::after{content:"";position:absolute;left:50%;top:42%;width:150px;height:150px;border-radius:50%;transform:translate(-50%,-50%) scale(.92);border:1px solid rgba(255,255,255,.18);background:radial-gradient(circle,rgba(255,255,255,.12) 0 26%,transparent 27% 100%);box-shadow:inset 0 0 0 24px rgba(255,255,255,.026),0 26px 60px -40px rgba(0,20,36,.7);opacity:.24;transition:transform .55s cubic-bezier(.2,.7,.2,1),opacity .35s ease}
  .ep-card.active .ep-bg::after{opacity:.48;transform:translate(-50%,-50%) scale(1.08)}
  .ep-card::before{content:attr(data-num);position:absolute;right:-.12em;top:.12em;z-index:1;font-weight:700;font-size:clamp(7rem,14vw,13rem);line-height:.8;letter-spacing:-.08em;color:rgba(255,255,255,.08)}
  .ep-card::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,42,76,0) 0%,rgba(0,42,76,.22) 50%,rgba(0,42,76,.88) 100%)}
  .ep-tag{position:absolute;top:20px;left:20px;z-index:3;font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.76)}
  .ep-num{position:absolute;top:52px;left:20px;z-index:3;font-weight:700;font-size:clamp(2.4rem,6vw,5rem);line-height:.92;color:#fff;text-shadow:0 18px 36px rgba(0,20,36,.35)}
  .ep-meta{position:absolute;left:22px;right:22px;bottom:24px;z-index:3}
  .ep-meta .desc{font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.72);margin-bottom:8px}
  .ep-meta .ttl{font-weight:700;font-size:clamp(1.3rem,2.8vw,2.15rem);line-height:1;letter-spacing:-.02em;color:#fff}
  .ep-summary{max-width:32ch;margin-top:14px;color:rgba(255,255,255,.82);font-size:.96rem;font-weight:300;opacity:0;transform:translateY(8px);transition:opacity .25s ease,transform .25s ease}
  .ep-card.active .ep-summary{opacity:1;transform:none}
  .ep-open{display:inline-flex;align-items:center;gap:10px;margin-top:20px;border:0;border-radius:999px;background:#fff;color:var(--blue);padding:12px 18px;font-family:inherit;font-weight:800;font-size:.86rem;cursor:pointer;opacity:0;transform:translateY(8px);transition:opacity .25s ease,transform .25s ease,background .2s ease}
  .ep-card.active .ep-open{opacity:1;transform:none}
  .ep-open:hover{background:var(--sky)}
  .ep-open::before{content:"";width:0;height:0;border-left:9px solid var(--blue);border-top:6px solid transparent;border-bottom:6px solid transparent}
  .ep-progress{position:absolute;left:0;right:0;bottom:0;z-index:4;height:4px;background:rgba(255,255,255,.18);opacity:0}
  .ep-card.active .ep-progress{opacity:1}
  .ep-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--sky),#fff)}
  .ep-card.active .ep-progress span{animation:epTimer 10s linear both}
  @keyframes epTimer{from{width:0}to{width:100%}}
  .ep-note{display:flex;align-items:center;gap:14px;margin-top:18px;color:var(--muted);font-size:.95rem}
  .ep-note::before{content:"";width:54px;height:1px;background:rgba(0,66,116,.22)}
  @media(max-width:980px){
    .ep-grid{display:grid;grid-template-columns:repeat(2,1fr);min-height:auto}
    .ep-card{min-height:330px}
    .ep-card.active{grid-column:span 2}
  }
  @media(max-width:560px){
    .ep-rail{gap:8px;margin-top:-18px}
    .ep-rail button{height:38px;font-size:.74rem;letter-spacing:.08em}
    .ep-grid{display:flex;gap:14px;min-height:auto;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 18px;scrollbar-width:none}
    .ep-grid::-webkit-scrollbar{display:none}
    .ep-card,.ep-card.active{grid-column:auto;flex:0 0 min(86vw,340px);min-height:420px;scroll-snap-align:center}
  }

  /* MODAL VIDEO */
  .ep-modal{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(0,30,55,.72);backdrop-filter:blur(6px);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}
  .ep-modal.open{opacity:1;visibility:visible}
  .ep-dialog{position:relative;width:min(900px,100%);background:#fff;border-radius:16px;overflow:hidden;transform:translateY(26px) scale(.96);opacity:0;transition:transform .4s cubic-bezier(.2,.7,.2,1),opacity .35s ease}
  .ep-dialog.is-portrait{width:min(520px,100%)}
  .ep-modal.open .ep-dialog{transform:none;opacity:1}
  .ep-dialog-head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;background:linear-gradient(120deg,#003a63,#0070ad);color:#fff}
  .ep-dialog-head .t{font-weight:700;font-size:1.05rem}
  .ep-dialog-head .s{font-size:.76rem;color:rgba(255,255,255,.8);font-weight:300}
  .ep-close{background:rgba(255,255,255,.18);border:none;color:#fff;width:36px;height:36px;border-radius:50%;font-size:1rem;cursor:pointer;line-height:1;transition:background .2s ease}
  .ep-close:hover{background:rgba(255,255,255,.32)}
  .ep-video{position:relative;aspect-ratio:16/9;background:#001e37;overflow:hidden}
  .ep-dialog.is-portrait .ep-video{aspect-ratio:4/5;max-height:calc(100svh - 118px)}
  .ep-embed{position:absolute;inset:0;background:linear-gradient(140deg,#003a63,#007db7)}
  .ep-embed::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(168deg,rgba(255,255,255,.045) 0 1px,transparent 1px 24px);pointer-events:none}
  .ep-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#001e37}
  .ep-embed video{position:absolute;inset:0;width:100%;height:100%;border:0;background:#001e37;object-fit:contain}
  .ep-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:28px;color:rgba(255,255,255,.78);text-align:center;font-size:.95rem}
  @media(prefers-reduced-motion:reduce){.ep-modal,.ep-dialog{transition:none}.ep-dialog{transform:none}}

  /* LEMA */
  .lema{position:relative;overflow:hidden;background:linear-gradient(125deg,#003a63 0%,#004274 46%,#007db7 100%);color:#fff;padding:0}
  .lema::before{content:"";position:absolute;inset:0;background:linear-gradient(112deg,transparent 34%,rgba(255,255,255,.12) 50%,transparent 64%);pointer-events:none}
  .lema::after{content:"";position:absolute;right:-8vw;top:50%;width:42vw;height:42vw;min-width:380px;min-height:380px;transform:translateY(-50%);border:1px solid rgba(255,255,255,.16);border-radius:50%;box-shadow:inset 0 0 0 42px rgba(255,255,255,.035);pointer-events:none}
  .lema .wrap{position:relative;z-index:2;max-width:1180px;padding-top:56px;padding-bottom:58px;display:grid;grid-template-columns:.72fr 1.28fr;gap:38px;align-items:center}
  .lema .eyebrow{color:var(--sky);margin:0}
  .lema .quote{font-weight:300;font-size:clamp(1.45rem,3vw,2.65rem);line-height:1.08;letter-spacing:-.025em;color:#fff;max-width:720px}
  .lema .quote b{font-weight:700}
  .lema-action{display:flex;align-items:center;gap:18px;margin-top:20px}
  .lema-action .btn{margin-top:0}
  .lema-seal{flex:none;width:58px;height:58px;border-radius:50%;border:1px solid rgba(255,255,255,.28);display:grid;place-items:center;font-weight:800;letter-spacing:-.06em;color:rgba(255,255,255,.88)}
  @media(max-width:820px){
    .lema .wrap{grid-template-columns:1fr;gap:20px;padding-top:48px;padding-bottom:54px}
    .lema-action{flex-direction:column}
  }
  .btn{display:inline-flex;align-items:center;gap:10px;margin-top:32px;text-decoration:none;font-weight:600;font-size:.92rem;padding:15px 28px;border-radius:999px;transition:transform .2s ease,background .2s ease,color .2s ease}
  .btn-light{background:#fff;color:var(--blue)}
  .btn-light:hover{transform:translateY(-2px);background:var(--sky)}
  .btn-fill{background:var(--blue);color:#fff}
  .btn-fill:hover{transform:translateY(-2px);background:var(--blue-2)}

  /* VIAJE — ÁLBUM ANTIGUO */
  .album{background:var(--grain),radial-gradient(120% 100% at 50% 22%,#eee1c7 0%,#d0bf98 54%,#9b835b 100%);background-size:160px 160px,auto;background-blend-mode:multiply,normal}
  .album .sec-head{margin:0 auto 34px;text-align:center}
  .album .eyebrow{color:#8b6a32}
  .album h2{font-family:"Cormorant Garamond","Spectral",Georgia,serif;font-weight:600;color:#332418;letter-spacing:-.025em}
  .album .sec-head p{color:#665640}
  .album .lead{font-weight:600;color:#332418}
  .album .rule{background:#b58f4b}

  .book-stage{position:relative;display:flex;justify-content:center;padding:0 0 10px}
  .book-stage::after{content:"";position:absolute;left:50%;bottom:-5px;width:min(620px,64vw);height:26px;border-radius:50%;background:radial-gradient(ellipse at center,rgba(50,31,10,.24),rgba(50,31,10,.1) 50%,transparent 74%);filter:blur(9px);transform:translateX(-50%);pointer-events:none}
  .book{position:relative;width:min(824px,94%);aspect-ratio:1200/811;border-radius:8px;background:url("../img/textura-album.jpg") center/cover no-repeat;overflow:hidden;isolation:isolate;box-shadow:0 22px 48px -38px rgba(42,26,8,.82),0 2px 0 rgba(255,250,235,.42) inset,0 -1px 0 rgba(78,48,17,.13) inset}
  .book::before{content:"";position:absolute;inset:0;z-index:4;background:linear-gradient(104deg,transparent 0 40%,rgba(255,248,226,.05) 45%,rgba(255,248,226,.2) 49%,rgba(88,58,24,.06) 53%,transparent 62% 100%);opacity:0;transform:translateX(-50%) skewX(-8deg);mix-blend-mode:soft-light;pointer-events:none}
  .book::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(75,47,19,.14),transparent 9%,rgba(255,250,230,.1) 41%,rgba(62,40,18,.18) 48.8%,rgba(255,246,224,.2) 50.2%,rgba(70,43,16,.12) 51.5%,rgba(255,250,230,.1) 58%,transparent 91%,rgba(73,45,17,.14)),radial-gradient(18% 82% at 50% 50%,rgba(54,34,14,.14),transparent 67%),repeating-linear-gradient(0deg,rgba(78,52,23,.028) 0 1px,transparent 1px 20px);opacity:.46;mix-blend-mode:multiply;pointer-events:none}
  .book.is-turning::before{animation:bookPageSweep .72s cubic-bezier(.2,.72,.18,1) both}
  .archive-spread{position:absolute;inset:8.8% 9.2% 9%;z-index:2;display:grid;grid-template-columns:.9fr 1.1fr;gap:5.4%;align-items:center;color:#332418;transition:opacity .34s cubic-bezier(.25,.46,.45,.94),transform .36s cubic-bezier(.25,.46,.45,.94),filter .34s ease;will-change:opacity,transform,filter}
  .archive-spread.is-changing{opacity:0;transform:translateY(5px) scale(.992);filter:blur(4px) saturate(.9)}
  .archive-spread.is-revealing .archive-copy{animation:archiveCopyIn .68s cubic-bezier(.2,.72,.18,1) both}
  .archive-spread.is-revealing .archive-photo-main{animation:archiveMainPhotoIn .82s cubic-bezier(.2,.72,.18,1) both}
  .archive-spread.is-revealing .archive-photo-side{animation:archiveSidePhotoIn .86s cubic-bezier(.2,.72,.18,1) .06s both}
  .archive-copy{position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding:3% 2% 3% 5.4%;font-family:"Libre Baskerville",Georgia,serif}
  .archive-copy::before{content:"";position:absolute;left:5.4%;right:10%;top:50%;height:1px;background:repeating-linear-gradient(90deg,rgba(124,95,47,.12) 0 18px,transparent 18px 30px);transform:translateY(72px);opacity:.42}
  .archive-year{display:inline-flex;align-items:center;gap:12px;color:#806128;font-family:"Cormorant Garamond","Spectral",Georgia,serif;font-weight:600;font-size:clamp(1.92rem,3.18vw,2.82rem);line-height:.88;letter-spacing:.01em}
  .archive-year::after{content:"";width:44px;height:1px;background:rgba(122,88,42,.3)}
  .archive-copy h3{margin-top:15px;color:#2f2116;font-family:"Cormorant Garamond","Spectral",Georgia,serif;font-size:clamp(1.68rem,2.62vw,2.5rem);line-height:1.02;font-weight:600;letter-spacing:-.012em}
  .archive-copy p{max-width:31ch;margin-top:16px;color:#584733;font-family:"Libre Baskerville",Georgia,serif;font-weight:400;font-size:clamp(.84rem,1.03vw,.95rem);line-height:1.78}
  .archive-video{width:max-content;margin-top:26px;border:1px solid rgba(74,54,32,.28);border-radius:999px;background:linear-gradient(#6e5230,#553f25);color:#f3e7cf;padding:10px 18px;font-family:"Libre Franklin",sans-serif;font-weight:700;font-size:.82rem;cursor:pointer;box-shadow:0 9px 18px -13px rgba(40,25,10,.7);transition:transform .18s ease,background .2s ease}
  .archive-video:hover{transform:translateY(-1px);background:linear-gradient(#7d5f38,#60492b)}
  .archive-photos{position:relative;display:flex;flex-direction:column;gap:0;align-items:flex-start;min-width:0;padding-right:0;max-width:352px;margin-left:auto;margin-right:16px;transform:translateY(-2px)}
  .archive-photo{position:relative;margin:0;background:linear-gradient(180deg,#fffaf0 0%,#f2e4c9 100%);padding:9px 9px 16px;border-radius:3px;box-shadow:0 15px 26px -23px rgba(55,35,12,.86),0 1px 0 rgba(255,255,255,.72) inset;overflow:visible;width:100%}
  .archive-photo::before{content:"";position:absolute;left:50%;top:-7px;z-index:4;width:66px;height:18px;border:1px solid rgba(122,88,42,.1);border-radius:2px;background:rgba(246,235,202,.6);box-shadow:0 10px 18px -16px rgba(55,35,12,.8);transform:translateX(-50%) rotate(-2deg);pointer-events:none}
  .archive-photo::after{content:"";position:absolute;inset:9px 9px 16px;border:1px solid rgba(84,54,22,.1);pointer-events:none}
  .archive-photo-main{transform:rotate(-.45deg) translateY(-3px);z-index:1;width:288px}
  .archive-photo-side{transform:rotate(1.35deg);margin-top:-18px;margin-left:164px;z-index:2;width:164px}
  .archive-photo img{display:block;width:100%;height:100%;object-fit:cover;border-radius:1px;filter:grayscale(.5) sepia(.2) contrast(1.06) brightness(.98)}
  .archive-photo video{display:block;width:100%;height:100%;object-fit:cover;border-radius:1px;filter:grayscale(.18) sepia(.14) contrast(1.04)}
  .archive-photo-main img,.archive-photo-main video{aspect-ratio:4/3}
  .archive-photo-side img{aspect-ratio:3/4}
  .archive-photo figcaption{position:relative;z-index:2;margin-top:7px;color:#755f42;font-family:"Libre Baskerville",Georgia,serif;font-size:.66rem;font-style:italic;line-height:1.2;text-align:center}
  .archive-controls{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) 42px;gap:14px;align-items:center;width:min(860px,94%);margin:24px auto 0}
  .archive-controls button{font-family:inherit}
  .archive-arrow{width:42px;height:42px;border:1px solid rgba(74,54,32,.22);border-radius:50%;background:#fff7e8;color:#553f25;font-size:1.28rem;cursor:pointer;box-shadow:0 14px 26px -24px rgba(55,35,12,.7);transition:transform .18s ease,background .18s ease}
  .archive-arrow:hover{transform:translateY(-1px);background:#f3e4c9}
  .archive-years{display:flex;justify-content:center;gap:10px;min-width:0}
  .archive-years button{position:relative;border:1px solid rgba(122,88,42,.28);border-radius:999px;background:rgba(255,248,234,.64);color:#6b5a45;padding:10px 15px;font-weight:700;font-size:.8rem;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .18s ease}
  .archive-years button.active{background:#553f25;color:#fff7e8;border-color:#553f25;transform:translateY(-1px)}
  .archive-progress{grid-column:2;position:relative;height:3px;background:rgba(122,88,42,.18);border-radius:999px;overflow:hidden}
  .archive-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,#9a7b3e,#553f25)}
  .archive-progress span.playing{animation:archiveTimer var(--archive-delay,8s) linear both}
  @keyframes archiveTimer{from{width:0}to{width:100%}}
  @keyframes bookPageSweep{
    0%{opacity:0;transform:translateX(-50%) skewX(-8deg)}
    34%{opacity:.28}
    100%{opacity:0;transform:translateX(50%) skewX(-8deg)}
  }
  @keyframes archiveCopyIn{
    from{opacity:0;transform:translateY(12px);filter:blur(3px)}
    to{opacity:1;transform:translateY(0);filter:blur(0)}
  }
  @keyframes archiveMainPhotoIn{
    from{opacity:0;transform:rotate(-1.2deg) translateY(14px) scale(.978);filter:blur(3px)}
    to{opacity:1;transform:rotate(-.45deg) translateY(-3px) scale(1);filter:blur(0)}
  }
  @keyframes archiveSidePhotoIn{
    from{opacity:0;transform:rotate(.7deg) translate(10px,12px) scale(.972);filter:blur(3px)}
    to{opacity:1;transform:rotate(1.35deg) translate(0,0) scale(1);filter:blur(0)}
  }

  @media(max-width:820px){
    .book{width:min(720px,100%);aspect-ratio:auto;min-height:0;padding:22px;background:var(--grain),linear-gradient(120deg,#f3e2c0,#d5bb87);background-size:160px 160px,auto;border-radius:8px}
    .book::before{inset:0}
    .book::after{opacity:.28}
    .archive-spread{position:relative;inset:auto;grid-template-columns:1fr;gap:24px}
    .archive-copy{padding:14px 12px 0}
    .archive-copy::before{display:none}
    .archive-photos{display:grid;grid-template-columns:1fr .62fr;gap:0;width:100%;max-width:none;margin:0;padding:0 8px 10px}
    .archive-photo-main{width:100%;max-width:420px}
    .archive-photo-side{width:100%;max-width:220px;margin-top:30px;margin-left:-28px}
    .archive-controls{grid-template-columns:40px minmax(0,1fr) 40px;gap:10px}
    .archive-years{justify-content:flex-start;overflow-x:auto;padding:2px 0 8px;scrollbar-width:none}
    .archive-years::-webkit-scrollbar{display:none}
    .archive-years button{flex:0 0 auto}
    .archive-progress{grid-column:1 / -1}
  }
  @media(max-width:560px){
    .book{padding:16px}
    .archive-photos{grid-template-columns:1fr;gap:16px;padding:0}
    .archive-photo-main,.archive-photo-side{transform:none;margin:0}
    .archive-photo-side img{aspect-ratio:4/3}
    .archive-spread.is-revealing .archive-photo-main,.archive-spread.is-revealing .archive-photo-side{animation:archiveMobilePhotoIn .78s cubic-bezier(.2,.72,.18,1) both}
  }
  @keyframes archiveMobilePhotoIn{
    from{opacity:0;transform:translateY(16px) scale(.98)}
    to{opacity:1;transform:translateY(0) scale(1)}
  }

  /* MODAL ÁLBUM */
  .am-modal{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(30,20,10,.7);backdrop-filter:blur(6px);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}
  .am-modal.open{opacity:1;visibility:visible}
  .am-dialog{position:relative;width:min(760px,100%);max-height:90vh;overflow:auto;background:#f5edda;border-radius:14px;transform:translateY(26px) scale(.96);opacity:0;transition:transform .4s cubic-bezier(.2,.7,.2,1),opacity .35s ease}
  .am-modal.open .am-dialog{transform:none;opacity:1}
  .am-vhead{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 24px 14px;font-family:"Spectral",Georgia,serif}
  .am-vhead .yr{font-weight:700;font-size:1.6rem;color:var(--blue);line-height:1}
  .am-vhead h3{font-size:1.2rem;color:#3a2a1c;font-weight:600;margin-top:2px}
  .am-video{margin:0 24px 24px;aspect-ratio:16/9;background:#04243f;border-radius:10px;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.72);font-family:"Libre Franklin",sans-serif;font-size:.85rem;text-align:center;padding:0 18px}
  .am-close{background:rgba(60,40,20,.12);border:none;color:#3a2a1c;width:36px;height:36px;border-radius:50%;font-size:1rem;cursor:pointer;line-height:1;flex:none}
  .am-close:hover{background:rgba(60,40,20,.22)}
  @media(prefers-reduced-motion:reduce){.am-modal,.am-dialog,.archive-spread{transition:none}.am-dialog{transform:none}}

  /* MARCAS */
  .marcas{position:relative;overflow:hidden;background:linear-gradient(132deg,#002f55 0%,#004274 50%,#007db7 100%);color:#fff}
  .marcas::before{content:"100";position:absolute;right:-.14em;top:24px;font-weight:700;font-size:clamp(10rem,26vw,25rem);line-height:.78;letter-spacing:-.1em;color:rgba(255,255,255,.055);pointer-events:none}
  .marcas::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(118deg,transparent 0 42%,rgba(255,255,255,.1) 48%,transparent 58% 100%)}
  .marcas .wrap{position:relative;z-index:2}
  .marcas .eyebrow{color:var(--sky)}
  .marcas h2{color:#fff}
  .marcas .intro{color:rgba(255,255,255,.78);max-width:660px}
  .brand-carousel{position:relative;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:0;margin-top:38px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:rgba(255,255,255,.08);box-shadow:0 32px 70px -38px rgba(0,20,36,.82);overflow:hidden}
  .brand-visual{position:relative;min-height:520px;background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(230,242,248,.82));overflow:hidden}
  .brand-visual::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(0,66,116,.18),transparent 40%,rgba(0,125,183,.15));z-index:2;pointer-events:none}
  .brand-photo-track{position:absolute;inset:0}
  .brand-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transform:scale(1.04);transition:opacity .65s ease,transform 3.2s ease}
  .brand-photo.active{opacity:1;transform:scale(1)}
  .brand-photo-placeholder{position:absolute;inset:32px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px dashed rgba(0,66,116,.38);background:repeating-linear-gradient(45deg,rgba(0,66,116,.06),rgba(0,66,116,.06) 14px,rgba(0,125,183,.1) 14px,rgba(0,125,183,.1) 28px);color:var(--blue);font-weight:600;letter-spacing:.04em;text-transform:uppercase}
  .brand-photo-placeholder span{font-family:"Spectral",Georgia,serif;font-size:clamp(3rem,9vw,7rem);line-height:.9;letter-spacing:-.03em;text-transform:none;color:rgba(0,66,116,.18)}
  .brand-photo-meta{position:absolute;left:28px;right:28px;bottom:28px;z-index:4;display:flex;align-items:flex-end;justify-content:space-between;gap:18px}
  .brand-photo-caption{max-width:34ch;padding:14px 16px;border-radius:8px;background:rgba(0,45,80,.74);backdrop-filter:blur(10px);box-shadow:0 18px 32px -22px rgba(0,0,0,.8)}
  .brand-photo-caption .n{font-weight:700;color:#fff;font-size:.95rem}
  .brand-photo-caption .d{font-size:.78rem;color:rgba(255,255,255,.76);margin-top:2px}
  .brand-photo-dots{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
  .brand-photo-dots button{width:8px;height:8px;border:0;border-radius:50%;background:rgba(255,255,255,.42);cursor:pointer;padding:0}
  .brand-photo-dots button.active{background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.18)}
  .brand-timer{position:absolute;left:0;right:0;bottom:0;z-index:5;height:4px;background:rgba(255,255,255,.2)}
  .brand-timer span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--blue),var(--bright));box-shadow:0 0 14px rgba(0,125,183,.55)}
  .brand-timer span.playing{animation:brandTimer var(--brand-delay,3s) linear both}
  @keyframes brandTimer{from{width:0}to{width:100%}}
  .brand-info{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:520px;padding:54px 52px;background:linear-gradient(180deg,rgba(0,47,85,.56),rgba(0,47,85,.18))}
  .brand-kicker{font-size:.74rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--sky);margin-bottom:14px}
  .brand-title{font-weight:700;font-size:clamp(2rem,4vw,3.35rem);line-height:1;letter-spacing:-.03em;color:#fff}
  .brand-title .yr{display:block;margin-top:12px;font-size:1rem;font-weight:600;letter-spacing:.14em;color:rgba(255,255,255,.66)}
  .brand-copy{margin-top:24px;color:rgba(255,255,255,.84);font-size:1.02rem;font-weight:300;max-width:48ch}
  .brand-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:34px}
  .brand-video-btn{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.34);border-radius:999px;background:#fff;color:var(--blue);padding:13px 20px;font-family:inherit;font-weight:700;font-size:.88rem;cursor:pointer;box-shadow:0 14px 30px -22px rgba(0,0,0,.85);transition:transform .2s ease,background .2s ease}
  .brand-video-btn:hover{transform:translateY(-2px);background:var(--sky)}
  .brand-video-btn::before{content:"";width:0;height:0;border-left:9px solid var(--blue);border-top:6px solid transparent;border-bottom:6px solid transparent}
  .brand-controls{display:flex;align-items:center;gap:14px;margin-top:40px}
  .brand-arrow{display:inline-grid;place-items:center;flex:0 0 42px;width:42px;height:42px;aspect-ratio:1;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.1);color:#fff;font-family:Arial,sans-serif;font-weight:700;font-size:1.55rem;line-height:1;padding:0;cursor:pointer;transition:background .2s ease,transform .2s ease}
  .brand-arrow:hover{background:rgba(255,255,255,.2);transform:translateY(-1px)}
  .brand-tabs{display:flex;gap:8px;flex-wrap:wrap}
  .brand-tabs button{border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.72);padding:9px 13px;font-family:inherit;font-size:.78rem;font-weight:700;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}
  .brand-tabs button.active{background:#fff;color:var(--blue);border-color:#fff}
  .brand-timeline{position:relative;height:124px;margin-top:26px;border:1px solid rgba(255,255,255,.22);border-radius:8px;background:linear-gradient(120deg,rgba(255,255,255,.14),rgba(255,255,255,.06));box-shadow:0 22px 54px -36px rgba(0,20,36,.9);overflow:hidden}
  .brand-timeline-scroll{position:relative;height:100%;min-width:100%}
  .brand-timeline::before{content:"Historia de marcas";position:absolute;left:28px;top:18px;font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--sky)}
  .brand-timeline-track,.brand-timeline-fill{position:absolute;left:56px;top:58px;height:4px;border-radius:999px}
  .brand-timeline-track{right:56px;background:rgba(255,255,255,.22)}
  .brand-timeline-fill{width:0;background:linear-gradient(90deg,var(--sky),#fff);box-shadow:0 0 22px rgba(166,202,223,.5);transition:width .55s cubic-bezier(.2,.7,.2,1)}
  .brand-time-node{position:absolute;left:56px;top:38px;transform:translateX(-50%);width:48px;height:48px;border:0;background:transparent;padding:0;cursor:pointer}
  .brand-time-node::before{content:"";position:absolute;left:50%;top:50%;width:14px;height:14px;border-radius:50%;background:rgba(255,255,255,.76);transform:translate(-50%,-50%);box-shadow:0 0 0 9px rgba(255,255,255,.09);transition:background .2s ease,box-shadow .2s ease,transform .2s ease}
  .brand-time-node.active::before{background:#fff;box-shadow:0 0 0 10px rgba(166,202,223,.28),0 0 26px rgba(255,255,255,.44);transform:translate(-50%,-50%) scale(1.25)}
  .brand-time-node .year{position:absolute;top:42px;left:50%;transform:translateX(-50%);font-size:.92rem;font-weight:900;letter-spacing:.08em;color:rgba(255,255,255,.78);white-space:nowrap}
  .brand-time-node.active .year{color:#fff}
  .brand-time-node .label{position:absolute;top:68px;left:50%;transform:translateX(-50%);min-width:126px;text-align:center;font-size:.76rem;font-weight:800;color:rgba(255,255,255,.72);transition:color .2s ease,opacity .2s ease}
  .brand-time-node.active .label{color:#fff}
  .brand-video-modal{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(0,30,55,.72);backdrop-filter:blur(6px);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}
  .brand-video-modal.open{opacity:1;visibility:visible}
  .brand-video-dialog{position:relative;width:min(820px,100%);background:#fff;border-radius:14px;overflow:hidden;transform:translateY(24px) scale(.96);opacity:0;transition:transform .35s cubic-bezier(.2,.7,.2,1),opacity .3s ease}
  .brand-video-modal.open .brand-video-dialog{transform:none;opacity:1}
  .brand-video-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 24px 14px}
  .brand-video-head .s{font-size:.74rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--bright)}
  .brand-video-head h3{font-size:1.25rem;color:var(--ink);font-weight:700;margin-top:2px}
  .brand-video-stage{margin:0 24px 24px;aspect-ratio:16/9;border-radius:10px;background:linear-gradient(135deg,#002f55,#007db7);display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;color:rgba(255,255,255,.78);font-size:.95rem}
  .brand-video-stage video{width:100%;height:100%;object-fit:cover;border-radius:10px}
  .brand-video-close{background:rgba(0,66,116,.1);border:none;color:var(--blue);width:36px;height:36px;border-radius:50%;font-size:1rem;cursor:pointer;line-height:1;flex:none}
  .brand-video-close:hover{background:rgba(0,66,116,.18)}
  @media(max-width:880px){
    .brand-carousel{grid-template-columns:1fr}
    .brand-visual,.brand-info{min-height:auto}
    .brand-visual{aspect-ratio:4/3}
    .brand-info{padding:34px 26px 36px}
    .brand-controls{align-items:flex-start;flex-wrap:wrap}
    .brand-timeline{height:104px;margin-top:20px}
    .brand-timeline::before{left:20px;top:14px}
    .brand-timeline-track,.brand-timeline-fill{left:30px;top:52px}
    .brand-timeline-track{right:30px}
    .brand-time-node{top:32px;width:42px;height:42px}
    .brand-time-node .year{top:38px;font-size:.78rem;opacity:0}
    .brand-time-node.active .year{opacity:1}
    .brand-time-node .label{display:none}
  }
  @media(max-width:560px){
    .brand-photo-meta{left:16px;right:16px;bottom:18px;align-items:flex-start;flex-direction:column}
    .brand-photo-caption{max-width:100%}
    .brand-tabs{width:100%}
    .brand-tabs button{flex:1}
  }

  /* MÁS (páginas aparte) */
  /* MARCAS - museo premium */
  .marcas{background:radial-gradient(80% 70% at 18% 18%,rgba(0,125,183,.54),transparent 58%),linear-gradient(138deg,#00243f 0%,#003e6e 48%,#007db7 100%)}
  .marcas::before{right:-.08em;top:44px;color:rgba(255,255,255,.045);font-size:clamp(12rem,30vw,28rem)}
  .marcas::after{background:linear-gradient(112deg,transparent 0 36%,rgba(255,255,255,.08) 43%,transparent 54%),repeating-linear-gradient(150deg,rgba(255,255,255,.038) 0 1px,transparent 1px 24px)}
  .marcas .sec-head{max-width:820px}
  .marcas .intro{max-width:760px}
  .brand-carousel{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(360px,.82fr);grid-template-areas:"visual info" "timeline timeline";gap:0;margin-top:46px;border:1px solid rgba(255,255,255,.18);border-radius:0;background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.045));box-shadow:0 40px 90px -48px rgba(0,12,30,.9);overflow:hidden}
  .brand-carousel.is-changing .brand-visual,.brand-carousel.is-changing .brand-info{opacity:.18;filter:blur(5px);transform:translateY(12px) scale(.992)}
  .brand-carousel.is-revealing .brand-visual{animation:brandVisualIn .82s cubic-bezier(.2,.72,.18,1) both}
  .brand-carousel.is-revealing .brand-info{animation:brandInfoIn .82s cubic-bezier(.2,.72,.18,1) .08s both}
  .brand-visual{grid-area:visual;min-height:620px;background:radial-gradient(72% 72% at 50% 44%,rgba(255,255,255,.98),rgba(225,240,248,.92) 42%,rgba(0,66,116,.18) 78%),linear-gradient(145deg,rgba(255,255,255,.96),rgba(207,231,243,.88));transition:opacity .42s ease,filter .42s ease,transform .42s ease}
  .brand-visual::before{background:radial-gradient(60% 72% at 50% 50%,transparent 0 54%,rgba(0,47,85,.3) 100%),linear-gradient(120deg,rgba(0,66,116,.18),transparent 44%,rgba(0,125,183,.14));z-index:2}
  .brand-orbit{position:absolute;left:50%;top:50%;z-index:1;transform:translate(-50%,-50%);font-weight:800;font-size:clamp(11rem,22vw,22rem);line-height:.8;letter-spacing:-.12em;color:rgba(0,66,116,.07);pointer-events:none}
  .brand-photo-track{inset:34px;z-index:3}
  .brand-photo{inset:0;width:100%;height:100%;object-fit:contain;object-position:center;filter:drop-shadow(0 28px 36px rgba(0,45,80,.28));transform:translateX(26px) scale(.97);transition:opacity .62s ease,transform 2.9s cubic-bezier(.2,.72,.18,1)}
  .brand-photo.active{opacity:1;transform:translateX(0) scale(1)}
  .brand-photo-placeholder{inset:46px;z-index:3;border:1px solid rgba(0,66,116,.28);background:radial-gradient(circle at 50% 34%,rgba(255,255,255,.92),rgba(202,230,242,.58)),repeating-linear-gradient(45deg,rgba(0,66,116,.055),rgba(0,66,116,.055) 16px,rgba(0,125,183,.08) 16px,rgba(0,125,183,.08) 32px)}
  .brand-photo-placeholder span{font-size:clamp(5rem,13vw,10rem);color:rgba(0,66,116,.16)}
  .brand-photo-meta{left:30px;right:30px;bottom:30px;z-index:5;align-items:flex-end}
  .brand-photo-caption{max-width:38ch;border:1px solid rgba(255,255,255,.22);border-radius:6px;background:rgba(0,47,85,.72)}
  .brand-photo-dots{display:grid;grid-template-columns:repeat(4,56px);gap:8px;align-items:end}
  .brand-photo-dots button{width:56px;height:42px;border-radius:4px;border:1px solid rgba(255,255,255,.4);background-color:rgba(255,255,255,.28);background-position:center;background-size:cover;box-shadow:0 14px 28px -20px rgba(0,0,0,.8);opacity:.72;transition:opacity .2s ease,transform .2s ease,border-color .2s ease,box-shadow .2s ease}
  .brand-photo-dots button.active{opacity:1;transform:translateY(-3px);border-color:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.18),0 18px 30px -22px rgba(0,0,0,.9)}
  .brand-timer{height:5px;background:rgba(0,47,85,.12)}
  .brand-timer span{background:linear-gradient(90deg,var(--sky),#fff,var(--bright));box-shadow:0 0 18px rgba(166,202,223,.7)}
  .brand-info{grid-area:info;min-height:620px;padding:70px 58px 58px;background:linear-gradient(180deg,rgba(0,47,85,.78),rgba(0,47,85,.34));transition:opacity .42s ease,filter .42s ease,transform .42s ease}
  .brand-info::before{display:none}
  .brand-kicker{margin-bottom:18px;color:rgba(166,202,223,.92)}
  .brand-title{font-size:clamp(2.5rem,4.8vw,4.35rem);letter-spacing:-.045em}
  .brand-title .yr{display:inline-flex;align-items:center;gap:12px;margin-top:18px;font-size:1rem;letter-spacing:.2em;color:#fff}
  .brand-title .yr::before{content:attr(data-prefix);font-size:.65rem;letter-spacing:.16em;color:var(--sky)}
  .brand-title .yr[data-prefix=""]{gap:0}
  .brand-title .yr[data-prefix=""]::before{display:none}
  .brand-copy{margin-top:30px;font-size:1.04rem;line-height:1.78;color:rgba(255,255,255,.86)}
  .brand-actions{margin-top:36px}
  .brand-video-btn{border-color:rgba(255,255,255,.55);border-radius:4px;background:#fff;color:var(--blue)}
  .brand-video-btn.is-pending{background:rgba(255,255,255,.1);color:rgba(255,255,255,.78)}
  .brand-video-btn.is-pending::before{border-left-color:rgba(255,255,255,.78)}
  .brand-controls{margin-top:auto;padding-top:42px}
  .brand-arrow{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.24)}
  .brand-tabs{gap:10px}
  .brand-tabs button{border-radius:4px;background:rgba(255,255,255,.07);padding:10px 14px}
  .brand-tabs button.active{background:#fff;color:var(--blue)}
  .brand-timeline{grid-area:timeline;height:154px;margin:0;border:0;border-top:1px solid rgba(255,255,255,.16);border-radius:0;background:linear-gradient(90deg,rgba(0,36,63,.82),rgba(0,83,132,.5));box-shadow:none}
  .brand-timeline::before{content:"L\00ednea de tiempo";left:34px;top:24px;color:var(--sky)}
  .brand-timeline-track,.brand-timeline-fill{left:64px;top:72px;height:3px}
  .brand-timeline-track{right:64px;background:rgba(255,255,255,.2)}
  .brand-timeline-fill{background:linear-gradient(90deg,var(--sky),#fff);box-shadow:0 0 24px rgba(255,255,255,.38)}
  .brand-time-node{top:48px;width:56px;height:56px}
  .brand-time-node::before{width:16px;height:16px;background:rgba(255,255,255,.72)}
  .brand-time-node.active::before{background:#fff;box-shadow:0 0 0 12px rgba(166,202,223,.25),0 0 30px rgba(255,255,255,.48)}
  .brand-time-node .year{top:48px;font-size:.92rem;color:rgba(255,255,255,.86)}
  .brand-time-node .label{top:78px;min-width:140px;color:rgba(255,255,255,.72)}
  .brand-time-node.active .label{color:#fff}
  @keyframes brandVisualIn{from{opacity:0;transform:translateX(-22px) scale(.985);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}
  @keyframes brandInfoIn{from{opacity:0;transform:translateX(18px);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}
  @media(max-width:980px){
    .brand-carousel{grid-template-columns:1fr;grid-template-areas:"visual" "info" "timeline"}
    .brand-visual{min-height:520px}
    .brand-info{min-height:auto;padding:42px 30px 38px}
    .brand-controls{margin-top:0;padding-top:34px}
  }
  @media(max-width:620px){
    .brand-carousel{margin-top:34px}
    .brand-visual{min-height:430px;aspect-ratio:auto}
    .brand-photo-track{inset:24px 18px 94px}
    .brand-photo-meta{left:18px;right:18px;bottom:18px;gap:12px}
    .brand-photo-dots{grid-template-columns:repeat(4,44px)}
    .brand-photo-dots button{width:44px;height:34px}
    .brand-info{padding:34px 24px 34px}
    .brand-title{font-size:clamp(2.1rem,12vw,3.2rem)}
    .brand-controls{gap:10px}
    .brand-tabs button{flex:1 1 calc(50% - 8px)}
    .brand-timeline{height:126px}
    .brand-timeline::before{left:22px;top:18px}
    .brand-timeline-track,.brand-timeline-fill{left:30px;top:60px}
    .brand-timeline-track{right:30px}
    .brand-time-node{top:38px;width:42px;height:42px}
    .brand-time-node .year{top:40px;font-size:.78rem;opacity:0}
    .brand-time-node.active .year{opacity:1}
    .brand-time-node .label{display:none}
  }

  /* MARCAS - ajustes compactos */
  .marcas{padding-block:54px}
  .marcas .sec-head{margin-bottom:18px}
  .marcas h2{font-size:clamp(1.75rem,3vw,2.35rem)}
  .marcas .intro{font-size:.92rem;line-height:1.48}
  .brand-timeline{height:104px;margin:20px 0 14px;border:1px solid rgba(255,255,255,.18);border-radius:0;background:linear-gradient(90deg,rgba(0,36,63,.78),rgba(0,83,132,.48))}
  .brand-timeline::before{top:14px}
  .brand-timeline-track,.brand-timeline-fill{top:46px}
  .brand-time-node{top:18px}
  .brand-time-node .year{top:34px}
  .brand-time-node .label{top:54px}
  .brand-carousel{grid-template-areas:"visual info";margin-top:0}
  .brand-visual,.brand-info{height:420px;min-height:0}
  .brand-photo-track{inset:18px 24px 74px}
  .brand-photo-meta{left:20px;right:20px;bottom:18px}
  .brand-info{padding:30px 38px 28px;overflow:hidden}
  .brand-info::before{margin-bottom:10px;padding:6px 10px;font-size:.62rem}
  .brand-kicker{margin-bottom:9px;font-size:.68rem}
  .brand-title{font-size:clamp(1.9rem,3.2vw,2.9rem)}
  .brand-title .yr{margin-top:8px;font-size:.85rem}
  .brand-copy{margin-top:16px;font-size:.88rem;line-height:1.52}
  .brand-actions{margin-top:18px}
  .brand-controls{padding-top:16px;justify-content:flex-start}
  .brand-tabs{display:none}
  @media(max-width:980px){
    .marcas{padding-block:64px}
    .brand-carousel{grid-template-areas:"visual" "info"}
    .brand-visual{height:440px;min-height:0}
    .brand-info{height:auto;min-height:auto;padding:34px 28px 32px}
  }
  @media(max-width:620px){
    .marcas{padding-block:56px}
    .marcas .sec-head{margin-bottom:20px}
    .brand-timeline{height:112px;margin:24px 0 16px}
    .brand-visual{height:360px;min-height:0}
    .brand-photo-track{inset:22px 16px 86px}
    .brand-photo-dots{grid-template-columns:repeat(4,40px)}
    .brand-photo-dots button{width:40px;height:30px}
    .brand-info{padding:28px 22px 30px}
    .brand-copy{font-size:.92rem}
  }

  /* Mobile: archivo y marcas */
  @media(max-width:700px){
    .album{padding-block:52px;background:var(--grain),linear-gradient(180deg,#f0e2c6 0%,#cdb88b 56%,#9d8358 100%);background-size:140px 140px,auto}
    .album .sec-head{margin-bottom:24px;text-align:left}
    .album .sec-head .rule{margin-left:0}
    .album h2{font-size:clamp(2rem,12vw,3.2rem);line-height:.95}
    .album .sec-head p{font-size:.94rem;line-height:1.55}
    .book-stage{display:block;padding:0}
    .book-stage::after{display:none}
    .book{width:100%;min-height:0;aspect-ratio:auto;padding:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
    .book::before,.book::after{display:none}
    .book.is-turning::before{animation:none}
    .archive-spread{position:relative;inset:auto;display:flex;flex-direction:column;gap:16px;padding:16px 16px 18px;border:1px solid rgba(86,58,27,.18);border-radius:8px;background:linear-gradient(156deg,rgba(255,250,237,.97),rgba(232,212,172,.94));box-shadow:0 22px 48px -34px rgba(55,35,12,.84),inset 0 0 0 1px rgba(255,255,255,.42)}
    .archive-spread::before{content:"Archivo hist\00f3rico";align-self:flex-start;border:1px solid rgba(122,88,42,.22);border-radius:999px;background:rgba(255,255,255,.48);color:#7b6032;padding:7px 10px;font-family:"Libre Franklin",sans-serif;font-size:.62rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
    .archive-spread.is-changing{opacity:0;transform:translateY(10px) scale(.986);filter:blur(2px) saturate(.86)}
    .archive-spread.is-revealing .archive-copy{animation:archiveMobileCardIn .72s cubic-bezier(.2,.72,.18,1) both}
    .archive-spread.is-revealing .archive-photo-main{animation:archiveMobilePhotoIn .78s cubic-bezier(.2,.72,.18,1) both}
    .archive-spread.is-revealing .archive-photo-side{animation:none}
    .archive-photos{order:2;display:block;width:100%;max-width:none;margin:0;padding:0}
    .archive-copy{order:1;padding:0 4px 2px;font-family:"Libre Baskerville",Georgia,serif}
    .archive-year{display:flex;width:100%;justify-content:space-between;color:#7c5f2f;font-family:"Cormorant Garamond","Spectral",Georgia,serif;font-size:2.25rem}
    .archive-year::after{width:36%;align-self:center;background:rgba(122,88,42,.24)}
    .archive-copy h3{margin-top:12px;font-family:"Cormorant Garamond","Spectral",Georgia,serif;font-size:clamp(1.58rem,8.2vw,2.18rem);line-height:1.02}
    .archive-copy p{margin-top:10px;font-family:"Libre Baskerville",Georgia,serif;font-size:.88rem;line-height:1.64}
    .archive-photo{border-radius:6px;padding:8px 8px 24px;background:#fff8ea;box-shadow:0 16px 32px -26px rgba(55,35,12,.9);overflow:visible}
    .archive-photo::before{content:"";position:absolute;left:50%;top:-9px;width:78px;height:21px;border-radius:3px;background:rgba(255,255,255,.56);box-shadow:0 10px 20px -17px rgba(55,35,12,.8);transform:translateX(-50%) rotate(-2deg);backdrop-filter:blur(2px)}
    .archive-photo::after{inset:8px 8px 24px;border-color:rgba(84,54,22,.14)}
    .archive-photo-main{width:100%;aspect-ratio:4/3.18;transform:rotate(-.8deg)}
    .archive-photo-main img,.archive-photo-main video{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;border-radius:4px;filter:grayscale(.18) sepia(.2) contrast(1.05) brightness(.96)}
    .archive-photo-side{display:none}
    .archive-photo figcaption{margin-top:10px;font-size:.8rem;color:#725d3f}
    .archive-controls{width:100%;grid-template-columns:42px minmax(0,1fr) 42px;gap:10px;margin-top:18px}
    .archive-arrow{width:42px;height:42px;border-color:rgba(74,54,32,.2);background:rgba(255,247,232,.9);font-size:1.3rem}
    .archive-years{justify-content:flex-start;gap:8px;overflow-x:auto;padding:2px 2px 9px;scrollbar-width:none;scroll-snap-type:x proximity}
    .archive-years::-webkit-scrollbar{display:none}
    .archive-years button{flex:0 0 auto;scroll-snap-align:center;padding:9px 13px;background:rgba(255,248,234,.72);font-size:.76rem}
    .archive-years button.active{background:#553f25;color:#fff7e8}
    .archive-progress{grid-column:1 / -1;height:4px;background:rgba(122,88,42,.18)}

    .marcas{padding-block:42px;background:radial-gradient(90% 55% at 50% 4%,rgba(105,199,255,.24),transparent 62%),linear-gradient(180deg,#00243f 0%,#004274 54%,#007db7 100%)}
    .marcas::before{right:-.22em;top:92px;font-size:13rem;color:rgba(255,255,255,.045)}
    .marcas .sec-head{margin-bottom:14px}
    .marcas h2{font-size:clamp(1.62rem,8vw,2.2rem);line-height:1.02}
    .marcas .intro{font-size:.84rem;line-height:1.42;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
    .brand-timeline{height:82px;margin:14px 0 10px;border-radius:8px;background:linear-gradient(100deg,rgba(0,36,63,.9),rgba(0,99,151,.58));overflow:hidden}
    .brand-timeline::before{content:"L\00ednea de tiempo";left:18px;top:11px;font-size:.58rem}
    .brand-timeline-track,.brand-timeline-fill{left:24px;top:42px;height:3px}
    .brand-timeline-track{right:24px}
    .brand-time-node{top:20px;width:40px;height:40px}
    .brand-time-node::before{width:13px;height:13px;box-shadow:0 0 0 8px rgba(255,255,255,.08)}
    .brand-time-node.active::before{box-shadow:0 0 0 10px rgba(166,202,223,.28),0 0 28px rgba(255,255,255,.42)}
    .brand-time-node .year{top:36px;font-size:.72rem;opacity:0}
    .brand-time-node.active .year{opacity:1}
    .brand-time-node .label{display:none}
    .brand-carousel{display:grid;grid-template-columns:1fr;grid-template-areas:"visual" "info";margin-top:0;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:rgba(255,255,255,.09);box-shadow:0 26px 62px -42px rgba(0,12,30,.9);overflow:hidden}
    .brand-visual{height:auto;min-height:0;padding:10px 10px 0;background:radial-gradient(86% 68% at 50% 40%,#fff 0%,#e8f5fb 48%,rgba(166,202,223,.45) 100%)}
    .brand-visual::before{border-radius:inherit;background:linear-gradient(120deg,rgba(0,66,116,.14),transparent 48%,rgba(0,125,183,.12))}
    .brand-orbit{font-size:9.4rem;color:rgba(0,66,116,.06)}
    .brand-photo-track{position:relative;inset:auto;height:clamp(185px,52vw,235px);z-index:3}
    .brand-photo{object-fit:contain;filter:drop-shadow(0 22px 30px rgba(0,45,80,.22));transform:translateY(10px) scale(.96)}
    .brand-photo.active{transform:translateY(0) scale(1)}
    .brand-photo-placeholder{inset:10px;border-radius:6px}
    .brand-photo-meta{position:relative;left:auto;right:auto;bottom:auto;z-index:5;display:grid;gap:8px;margin-top:8px;padding-bottom:12px}
    .brand-photo-caption{max-width:none;border-radius:6px;background:rgba(0,47,85,.84);padding:10px 12px}
    .brand-photo-caption .n{font-size:.88rem}
    .brand-photo-caption .d{font-size:.74rem}
    .brand-photo-dots{display:flex;justify-content:flex-start;gap:8px;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}
    .brand-photo-dots::-webkit-scrollbar{display:none}
    .brand-photo-dots button{flex:0 0 auto;width:42px;height:32px;border-radius:5px}
    .brand-timer{height:4px;background:rgba(0,47,85,.16)}
    .brand-info{display:block;height:auto;min-height:0;padding:16px 16px 19px;background:linear-gradient(180deg,rgba(0,47,85,.82),rgba(0,47,85,.52));overflow:visible}
    .brand-info::before{display:none}
    .brand-kicker{margin-bottom:8px;font-size:.6rem}
    .brand-title{font-size:clamp(1.5rem,7.4vw,2.05rem);line-height:.98}
    .brand-title .yr{margin-top:7px;font-size:.72rem}
    .brand-copy{margin-top:10px;font-size:.82rem;line-height:1.42;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
    .brand-actions{margin-top:12px}
    .brand-video-btn{min-height:42px;padding:11px 15px;border-radius:999px;font-size:.78rem}
    .brand-controls{display:flex;justify-content:space-between;align-items:center;margin-top:0;padding-top:18px}
    .brand-arrow{width:44px;height:44px;flex-basis:44px;border-radius:50%;font-size:1.45rem;background:rgba(255,255,255,.13)}
    .brand-tabs{display:none}
  }

  @keyframes archiveMobileCardIn{
    from{opacity:0;transform:translateY(14px)}
    to{opacity:1;transform:translateY(0)}
  }

  .mas .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
  .mas-card{border:1px solid var(--line);border-radius:10px;padding:32px 28px;background:#fff;text-decoration:none;color:var(--ink);transition:transform .2s ease,box-shadow .2s ease;display:block}
  .mas-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:transparent}
  .mas-card .num{font-weight:700;font-size:.78rem;color:var(--bright);letter-spacing:.12em}
  .mas-card h3{font-weight:600;font-size:1.3rem;margin:14px 0 8px}
  .mas-card p{font-size:.9rem}
  .mas-card .go{margin-top:18px;font-size:.82rem;font-weight:600;color:var(--bright)}
  @media(max-width:760px){.mas .grid{grid-template-columns:1fr}}

  /* HUB DEL CENTENARIO */
  .hub-centenario{position:relative;overflow:hidden;background:linear-gradient(180deg,#f3f8fb 0%,#214a6c 100%);padding:76px 0 86px}
  .hub-centenario::before{content:"100";position:absolute;right:-.08em;top:34px;font-size:clamp(10rem,26vw,23rem);font-weight:800;line-height:.8;letter-spacing:-.12em;color:rgba(0,66,116,.045);pointer-events:none}
  .hub-centenario .wrap{position:relative;z-index:2}
  .hub-centenario .sec-head{max-width:1000px}
  .hub-grid{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(360px,.84fr);grid-template-areas:"videos comments";gap:20px;margin-top:34px;align-items:start}
  .hub-panel{position:relative;border:1px solid rgba(0,66,116,.14);border-radius:6px;background:#fff;box-shadow:0 26px 60px -44px rgba(0,58,99,.55);overflow:hidden}
  .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .hub-panel-head{display:flex;align-items:flex-start;gap:16px;padding:24px 24px 18px}
  .hub-num{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--blue);color:#fff;font-size:.76rem;font-weight:800;letter-spacing:.08em}
  .hub-panel h3{font-size:clamp(1.25rem,2vw,1.75rem);line-height:1.05;color:var(--ink);font-weight:700}
  .hub-panel p{margin-top:5px;font-size:.9rem;line-height:1.48;color:var(--muted)}
  .hub-videos{grid-area:videos;background:linear-gradient(140deg,#002f55 0%,#004274 58%,#007db7 100%);color:#fff;border-color:rgba(255,255,255,.18)}
  .hub-videos::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(150deg,rgba(255,255,255,.05) 0 1px,transparent 1px 20px);pointer-events:none}
  .hub-videos .hub-panel-head,.video-carousel{position:relative;z-index:2}
  .hub-videos .hub-num{background:#fff;color:var(--blue)}
  .hub-videos h3{color:#fff}
  .hub-videos p{color:rgba(255,255,255,.78)}
  .video-carousel{padding:0 24px 24px}
  .video-stage{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:6px;background:#001f38;box-shadow:0 26px 58px -34px rgba(0,0,0,.92)}
  .video-stage video{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.96) contrast(1.06)}
  .video-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,25,45,.02) 34%,rgba(0,25,45,.84));pointer-events:none}
  .video-now{position:absolute;left:22px;right:128px;bottom:21px;color:#fff}
  .video-now span{display:block;margin-bottom:7px;color:rgba(255,255,255,.74);font-size:.7rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
  .video-now strong{display:block;font-size:clamp(1.25rem,2.2vw,2rem);line-height:1.05}
  .video-now p{max-width:520px;color:rgba(255,255,255,.82);font-size:.9rem}
  .icon-btn{display:inline-grid;place-items:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:rgba(255,255,255,.12);color:#fff;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease}
  .icon-btn:hover{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.42);transform:translateY(-1px)}
  .icon-btn svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}
  .video-sound{position:absolute;right:18px;top:18px;z-index:3;background:rgba(255,255,255,.92);color:var(--blue);border-color:rgba(255,255,255,.9);box-shadow:0 12px 32px -22px rgba(0,25,45,.9)}
  .video-sound .icon-muted{display:none}
  .video-sound.is-muted .icon-volume{display:none}
  .video-sound.is-muted .icon-muted{display:block}
  .video-progress{height:3px;background:rgba(255,255,255,.18);margin:16px 0 14px;overflow:hidden}
  .video-progress span{display:block;width:0;height:100%;background:#69c7ff;transition:width .12s linear}
  .video-controls{display:flex;justify-content:center;gap:12px;margin-bottom:16px}
  .video-controls .icon-btn{justify-self:center}
  .video-play-toggle{width:52px;height:52px;background:#fff;color:var(--blue);border-color:#fff}
  .video-play-toggle .icon-play{display:none}
  .video-play-toggle.is-paused .icon-pause{display:none}
  .video-play-toggle.is-paused .icon-play{display:block}
  .video-playlist button:hover{background:rgba(255,255,255,.18)}
  .video-playlist{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
  .video-playlist button{position:relative;min-height:132px;overflow:hidden;border:1px solid rgba(255,255,255,.18);border-radius:6px;background:#002f55;color:#fff;text-align:left;padding:0;cursor:pointer;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}
  .video-playlist button.active{border-color:rgba(255,255,255,.7);transform:translateY(-2px);box-shadow:0 18px 38px -30px rgba(0,0,0,.9)}
  .video-playlist button::after{content:"";position:absolute;inset:0;border:2px solid transparent;border-radius:5px;pointer-events:none}
  .video-playlist button.active::after{border-color:#69c7ff}
  .video-playlist video,.video-playlist img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.04);transform:scale(1.02)}
  .video-thumb-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,35,60,.12) 0%,rgba(0,28,50,.82) 86%);pointer-events:none}
  .video-thumb-meta,.video-playlist strong,.video-playlist em{position:relative;z-index:2;display:block;margin-left:13px;margin-right:13px}
  .video-thumb-meta{margin-top:60px;color:#9ee0ff;font-size:.66rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
  .video-playlist strong{margin-top:7px;font-size:.92rem;line-height:1.15;text-shadow:0 8px 20px rgba(0,0,0,.52)}
  .video-playlist em{margin-top:6px;margin-bottom:12px;color:rgba(255,255,255,.74);font-size:.72rem;font-style:normal}
  .hub-comments{grid-area:comments;background:linear-gradient(145deg,#eefaff 0%,#fff 46%,#e8f6ff 100%);overflow:hidden}
  .hub-comments::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,139,209,.12) 0 10%,transparent 10% 20%,rgba(0,66,116,.08) 20% 30%,transparent 30%);background-size:86px 86px;opacity:.42;pointer-events:none}
  .comment-wall{position:relative;z-index:2;display:grid;gap:16px;padding:0 24px 24px}
  .comment-hero-card{position:relative;overflow:hidden;border-radius:8px;padding:24px;background:linear-gradient(135deg,#004274 0%,#008bd1 58%,#65d4ff 100%);color:#fff;box-shadow:0 30px 58px -42px rgba(0,66,116,.9);animation:commentFloat 6s ease-in-out infinite}
  .comment-hero-card::before{content:"";position:absolute;right:-32px;top:-26px;width:128px;height:128px;background:repeating-linear-gradient(45deg,rgba(255,255,255,.32) 0 8px,transparent 8px 16px);transform:rotate(8deg);opacity:.5}
  .comment-hero-card::after{content:"100";position:absolute;right:12px;bottom:-24px;color:rgba(255,255,255,.16);font-size:6.4rem;font-weight:900;line-height:1;letter-spacing:-.08em}
  .comment-hero-card>span{position:relative;z-index:2;display:block;margin-bottom:12px;font-size:.68rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.78)}
  .featured-message{position:relative;z-index:2;display:flex;align-items:center;gap:12px;margin-bottom:14px}
  .featured-message strong{display:block;color:#fff;font-size:1.05rem}
  .featured-message small{display:block;color:rgba(255,255,255,.72);font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
  .comment-hero-card p{position:relative;z-index:2;margin:0 0 18px;color:#fff;font-size:1.12rem;line-height:1.42}
  .featured-foot{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;margin:-4px 0 16px;color:rgba(255,255,255,.72);font-size:.76rem;font-weight:800;letter-spacing:.1em}
  .featured-pulse{width:62px;height:4px;border-radius:999px;background:rgba(255,255,255,.25);overflow:hidden}
  .featured-pulse::before{content:"";display:block;width:42%;height:100%;border-radius:inherit;background:#fff;animation:featuredPulse 5.2s linear infinite}
  .comment-open{position:relative;z-index:2;display:inline-flex;align-items:center;gap:10px;border:0;border-radius:999px;background:#fff;color:var(--blue);padding:12px 16px;font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;box-shadow:0 16px 34px -22px rgba(0,25,45,.86)}
  .comment-open span{display:inline;margin:0;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit}
  .comment-open svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  .comment-open:hover{transform:translateY(-1px)}
  .comment-mosaic{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;align-items:start}
  .comment-card{position:relative;grid-column:span 3;border:1px solid rgba(0,66,116,.1);border-radius:8px;background:#fff;padding:18px 16px 16px;box-shadow:0 28px 56px -40px rgba(0,58,99,.7);animation:commentFloat 7s ease-in-out infinite;transform-origin:50% 12px}
  .comment-card:nth-child(2n){transform:rotate(1.2deg);animation-delay:-1.7s}
  .comment-card:nth-child(3n){transform:rotate(-1.4deg);animation-delay:-3.2s}
  .comment-card-large{grid-column:span 4}
  .paper-sky{background:linear-gradient(135deg,#e5f7ff,#fff)}
  .paper-yellow{background:linear-gradient(135deg,#fff5bf,#fffdf2)}
  .paper-mint{background:linear-gradient(135deg,#dff8ee,#fbfffd)}
  .paper-rose{background:linear-gradient(135deg,#ffe2ea,#fff8fa)}
  .paper-lilac{background:linear-gradient(135deg,#eee7ff,#fff)}
  .paper-tape{position:absolute;left:50%;top:-10px;width:74px;height:22px;border-radius:3px;background:rgba(255,255,255,.58);box-shadow:0 8px 18px -15px rgba(0,25,45,.6);transform:translateX(-50%) rotate(-2deg);backdrop-filter:blur(2px)}
  .comment-card:nth-child(2n) .paper-tape{transform:translateX(-50%) rotate(3deg)}
  .comment-card-head{display:flex;align-items:center;gap:11px;margin-bottom:12px}
  .comment-avatar{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fff;color:var(--blue);border:2px solid rgba(255,255,255,.82);box-shadow:0 12px 26px -20px rgba(0,25,45,.82);font-size:.82rem;font-weight:900;letter-spacing:.02em}
  .comment-avatar.paper-sky{background:#c7edff}
  .comment-avatar.paper-yellow{background:#ffe777}
  .comment-avatar.paper-mint{background:#b9f0d4}
  .comment-avatar.paper-rose{background:#ffc8d8}
  .comment-avatar.paper-lilac{background:#d8ccff}
  .comment-card span{display:block;color:var(--bright);font-size:.62rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
  .comment-card h4{color:var(--ink);font-size:1rem}
  .comment-card p{font-size:.88rem}
  .comment-actions{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:14px}
  .reaction-btn,.reply-toggle{border:1px solid rgba(0,66,116,.12);border-radius:999px;background:rgba(255,255,255,.7);color:var(--ink);padding:7px 9px;font-size:.76rem;font-weight:800;cursor:pointer}
  .reaction-btn{display:inline-flex;align-items:center;gap:5px}
  .reaction-btn:hover,.reply-toggle:hover{border-color:rgba(0,139,209,.35);background:#fff;transform:translateY(-1px)}
  .reaction-btn span{display:inline;color:inherit;font-size:.88rem;letter-spacing:0;text-transform:none}
  .reaction-btn b{font-size:.72rem}
  .reply-toggle{color:var(--bright)}
  .comment-replies{margin-top:10px;border-top:1px dashed rgba(0,66,116,.16);padding-top:10px}
  .reply-list{display:grid;gap:6px}
  .reply-list p{margin:0;font-size:.78rem;color:var(--muted)}
  .reply-list strong{color:var(--ink)}
  .reply-form{display:flex;gap:6px;margin-top:9px}
  .reply-form input{min-width:0;flex:1;border:1px solid rgba(0,66,116,.16);border-radius:999px;background:rgba(255,255,255,.72);padding:8px 10px;font:inherit;font-size:.8rem;outline:0}
  .reply-form button{flex:none;width:34px;height:34px;border:0;border-radius:50%;background:var(--blue);color:#fff;font-weight:900;cursor:pointer}
  .comment-list-buckets{display:none}
  .comment-modal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:24px;background:rgba(0,25,45,.62);backdrop-filter:blur(10px);opacity:0;pointer-events:none;transition:opacity .22s ease}
  .comment-modal.open{opacity:1;pointer-events:auto}
  .comment-modal-panel{position:relative;width:min(520px,100%);max-height:min(760px,92vh);overflow:auto;border-radius:8px;background:#fff;box-shadow:0 34px 90px -44px rgba(0,25,45,.95)}
  .comment-modal-panel::before{content:"";position:absolute;inset:0 0 auto;height:9px;background:linear-gradient(90deg,#004274,#008bd1,#65d4ff,#18a999)}
  .comment-modal-close{position:absolute;right:14px;top:15px;z-index:2;display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:50%;background:#f1f8fc;color:var(--blue);cursor:pointer}
  .comment-modal-close svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round}
  .comment-modal-head{padding:34px 28px 8px}
  .comment-modal-head span{display:block;color:var(--bright);font-size:.7rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
  .comment-modal-head h3{margin-top:8px;color:var(--ink);font-size:clamp(1.55rem,3vw,2.15rem);line-height:1}
  .comment-modal-head p{color:var(--muted);font-size:.92rem}
  .comment-compose{display:grid;gap:12px;padding:18px 28px 26px;color:var(--ink)}
  .comment-compose label{display:grid;gap:6px;color:var(--bright);font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
  .comment-compose input,.comment-compose select,.comment-compose textarea{width:100%;border:1px solid rgba(0,66,116,.16);border-radius:4px;background:#f7fbfd;color:var(--ink);padding:12px 13px;font:inherit;text-transform:none;letter-spacing:0;outline:0}
  .comment-compose option{color:#002f55;background:#fff}
  .comment-compose textarea{resize:vertical;min-height:118px}
  .comment-compose input::placeholder,.comment-compose textarea::placeholder{color:rgba(31,69,93,.45)}
  .comment-compose input:focus,.comment-compose select:focus,.comment-compose textarea:focus{border-color:#008bd1;background:#fff}
  .comment-compose button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:999px;background:var(--blue);color:#fff;padding:13px 16px;font-size:.8rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
  .comment-compose button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  .comment-status{min-height:1.2em;color:var(--bright);font-size:.78rem}
  @keyframes commentFloat{0%,100%{translate:0 0}50%{translate:0 -5px}}
  @keyframes featuredPulse{0%{translate:-110% 0}100%{translate:260% 0}}
  @media(max-width:1000px){
    .hub-grid{grid-template-columns:1fr;grid-template-areas:"videos" "comments"}
  }
  @media(max-width:620px){
    .hub-centenario{padding:58px 0 66px}
    .hub-grid{margin-top:26px;gap:14px}
    .hub-panel-head{padding:20px 18px 14px}
    .video-carousel,.comment-wall{padding:0 18px 18px}
    .video-now{left:16px;right:16px;bottom:16px}
    .video-now p{display:none}
    .video-sound{right:12px;top:12px}
    .video-controls{display:grid;grid-template-columns:repeat(3,1fr)}
    .video-playlist{grid-template-columns:1fr}
    .video-playlist button{min-height:82px}
    .video-thumb-meta{margin-top:32px}
    .video-playlist em{display:none}
    .comment-mosaic{grid-template-columns:1fr}
    .comment-card,.comment-card-large{grid-column:1}
    .comment-card:nth-child(n){transform:none}
    .comment-hero-card{padding:22px}
    .comment-modal{padding:14px}
    .comment-modal-head{padding:32px 20px 6px}
    .comment-compose{padding:16px 20px 22px}
  }

  /* TESTIMONIOS */
  .hub-comments[hidden],.comment-modal[hidden]{display:none!important}
  .hub-centenario{min-height:calc(100svh - var(--nav-h));padding:38px 0 42px;overflow:hidden;color:#fff;background:radial-gradient(circle at 72% 48%,rgba(0,139,209,.22),transparent 24%),radial-gradient(circle at 18% 18%,rgba(0,139,209,.18),transparent 28%),radial-gradient(circle at 82% 88%,rgba(0,66,116,.52),transparent 30%),linear-gradient(135deg,#001126 0%,#001a33 48%,#002f55 100%);contain:layout paint style}
  .hub-centenario::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,17,38,.94) 0%,rgba(0,17,38,.74) 26%,rgba(0,17,38,.18) 58%,rgba(0,17,38,.52) 100%),repeating-linear-gradient(155deg,rgba(166,202,223,.07) 0 1px,transparent 1px 34px);background-size:auto,140% 140%;pointer-events:none}
  .hub-centenario::after{content:"100";position:absolute;right:5vw;bottom:32px;color:rgba(0,139,209,.16);font-size:clamp(4.8rem,11vw,10rem);font-weight:900;line-height:.75;letter-spacing:-.12em;pointer-events:none}
  .hub-centenario .wrap{position:relative;z-index:2;display:grid;grid-template-columns:minmax(240px,350px) minmax(0,1fr);gap:34px;align-items:center;width:min(1540px,calc(100% - 72px));max-width:none}
  .hub-centenario .sec-head{position:relative;align-self:center;max-width:350px;margin-top:0;color:#fff}
  .hub-centenario .sec-head .eyebrow{color:#18b9ff;letter-spacing:.12em}
  .hub-centenario .sec-head h2{max-width:13.8ch;color:#fff;font-size:clamp(1.9rem,2.55vw,2.72rem);line-height:1;font-weight:500;letter-spacing:-.055em}
  .hub-centenario .sec-head p{position:relative;max-width:29ch;margin-top:34px;color:rgba(255,255,255,.78);font-size:.94rem;line-height:1.52}
  .hub-centenario .sec-head p::before{content:"";position:absolute;left:0;top:-22px;width:48px;height:2px;background:#18b9ff;box-shadow:0 0 18px rgba(24,185,255,.72)}
  .hub-centenario .sec-head::after{content:"1926  —  2026\A 100 AÑOS CUIDANDO LO ESENCIAL";display:block;margin-top:34px;white-space:pre;color:#18b9ff;font-size:.78rem;font-weight:500;line-height:1.9;letter-spacing:.3em}
  .hub-centenario .sec-head.in .eyebrow,.hub-centenario .sec-head.in h2,.hub-centenario .sec-head.in p,.hub-centenario .sec-head.in::after{animation:copyReveal .82s cubic-bezier(.2,.8,.2,1) both}
  .hub-centenario .sec-head.in h2{animation-delay:.08s}
  .hub-centenario .sec-head.in p{animation-delay:.18s}
  .hub-centenario .sec-head.in::after{animation-delay:.28s}
  .hub-grid{display:block;grid-template-columns:minmax(0,1fr);grid-template-areas:"videos";max-width:none;margin:0}
  .hub-testimonials{border:0;background:transparent;box-shadow:none;overflow:visible;color:#fff}
  .hub-testimonials::before,.hub-testimonials::after,.hub-testimonials .hub-panel-head{display:none}
  .voice-constellation{--focus-w:min(610px,50vw);position:relative;min-height:560px;padding:0;isolation:isolate;contain:layout paint}
  .voice-constellation::before{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(ellipse at 52% 43%,rgba(24,185,255,.15),transparent 28%),radial-gradient(ellipse at 50% 43%,transparent 0 31%,rgba(166,202,223,.1) 31.1% 31.4%,transparent 31.6% 100%),radial-gradient(ellipse at 50% 43%,transparent 0 43%,rgba(166,202,223,.08) 43.1% 43.35%,transparent 43.6% 100%);opacity:.82}
  .voice-constellation::after{content:"";position:absolute;inset:8% 4% 4% 2%;z-index:0;background:linear-gradient(90deg,transparent 0 44%,rgba(166,202,223,.14) 44.1% 44.25%,transparent 44.4% 100%),linear-gradient(0deg,transparent 0 55%,rgba(166,202,223,.08) 55.1% 55.24%,transparent 55.4% 100%);mask-image:radial-gradient(ellipse at 52% 50%,#000 0 52%,transparent 73%);pointer-events:none}
  .voice-lines{position:absolute;inset:-22px 0 -28px;z-index:2;pointer-events:none;overflow:visible}
  .voice-map{position:absolute;inset:0;width:100%;height:100%;overflow:visible;mix-blend-mode:screen}
  .voice-map-orbits ellipse{fill:none;stroke:rgba(166,202,223,.26);stroke-width:.44;stroke-dasharray:2.2 3.4;vector-effect:non-scaling-stroke;transform-origin:50% 43%}
  .voice-map-orbits ellipse:nth-child(2){stroke:rgba(24,185,255,.18);stroke-width:.36;stroke-dasharray:1 4.6}
  .voice-map-line{fill:none;stroke:rgba(214,244,255,.6);stroke-width:.48;stroke-linecap:round;stroke-dasharray:4 5;vector-effect:non-scaling-stroke;opacity:.48}
  .voice-map-line.is-pulse{stroke:#18b9ff;stroke-width:.58;stroke-dasharray:1 10;opacity:.42}
  .voice-map-points circle{fill:#d6f4ff;opacity:.72}
  .voice-stars{position:absolute;inset:0;overflow:visible}
  .voice-stars span{position:absolute;left:var(--sx);top:var(--sy);width:calc(6px * var(--ss));height:calc(6px * var(--ss));border-radius:50%;background:#d6f4ff;box-shadow:0 0 12px rgba(24,185,255,.46);opacity:.48;transform:translate(-50%,-50%)}
  .voice-line{position:absolute;left:50%;top:50%;width:var(--line-l,220px);height:1px;background:linear-gradient(90deg,rgba(166,202,223,.62),rgba(24,185,255,.16) 74%,transparent);opacity:.38;transform-origin:left center;transform:rotate(var(--line-a,0deg)) scaleX(.78)}
  .voice-line::after{content:"";position:absolute;right:0;top:50%;width:7px;height:7px;border-radius:50%;background:#d6f4ff;box-shadow:0 0 16px rgba(24,185,255,.9);transform:translate(50%,-50%)}
  .voice-focus{position:relative;z-index:4;display:grid;grid-template-columns:minmax(226px,1fr) minmax(230px,.86fr);width:var(--focus-w);min-height:274px;aspect-ratio:auto;margin:92px auto 0;border:1px solid rgba(214,244,255,.48);border-radius:18px;background:linear-gradient(115deg,rgba(0,47,85,.9),rgba(0,26,51,.96));box-shadow:0 34px 72px -50px rgba(0,0,0,.95),0 0 32px rgba(24,185,255,.1),inset 0 0 0 1px rgba(255,255,255,.04);overflow:visible;transition:border-color .35s ease,box-shadow .35s ease}
  .hub-grid.in .voice-focus{animation:focusEnter .62s cubic-bezier(.2,.8,.2,1) both}
  .voice-focus::before{content:"";position:absolute;inset:0;border-radius:20px;background:linear-gradient(90deg,rgba(255,255,255,.08),transparent 38%,rgba(255,255,255,.04)),repeating-linear-gradient(90deg,transparent 0 78px,rgba(214,244,255,.045) 78px 79px,transparent 79px 156px);pointer-events:none}
  .voice-focus::after{content:"";position:absolute;inset:-1px;border-radius:20px;background:linear-gradient(105deg,transparent 0 32%,rgba(214,244,255,.18) 47%,transparent 64%);opacity:.14;mix-blend-mode:screen;pointer-events:none}
  .voice-video{position:relative;min-height:274px;height:auto;border-radius:18px 0 0 18px;background:radial-gradient(circle at 50% 34%,rgba(24,185,255,.2),transparent 48%),linear-gradient(140deg,#001f38,#003a63);overflow:hidden}
  .voice-video::before{content:"";position:absolute;inset:20px;border:1px solid rgba(214,244,255,.24);border-radius:16px;background:radial-gradient(circle at 50% 38%,rgba(255,255,255,.06),transparent 46%);pointer-events:none}
  .voice-video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:radial-gradient(circle at 50% 42%,rgba(255,255,255,.18),transparent 56%),linear-gradient(135deg,#003a63,#008bd1)}
  .voice-vimeo{position:absolute;inset:0;z-index:2;display:none;background:#111}
  .voice-vimeo iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
  .voice-video-placeholder{position:absolute;inset:0;z-index:2;display:grid;place-items:center;align-content:center;gap:8px;color:#fff;text-align:center;background:radial-gradient(circle at 50% 38%,rgba(255,255,255,.12),transparent 52%)}
  .voice-video-placeholder span{font-size:.68rem;font-weight:900;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.7)}
  .voice-video-placeholder strong{font-size:clamp(1.6rem,4vw,2.8rem);line-height:1;letter-spacing:-.04em}
  .voice-focus.has-video .voice-video-placeholder{display:none}
  .voice-focus.has-vimeo .voice-video{min-height:274px;background:radial-gradient(circle at 50% 36%,rgba(24,185,255,.18),transparent 50%),linear-gradient(150deg,#001f38,#003a63)}
  .voice-focus.has-vimeo .voice-video-placeholder,.voice-focus.has-vimeo .voice-video video{display:none}
  .voice-focus.has-vimeo .voice-vimeo{display:block;left:50%;right:auto;width:auto;height:100%;aspect-ratio:9/16;max-width:100%;transform:translateX(-50%);box-shadow:0 0 0 1px rgba(255,255,255,.18),0 30px 62px -44px rgba(0,0,0,.95)}
  .voice-focus.has-vimeo .video-shade{display:none}
  .voice-focus .video-shade{z-index:3;background:linear-gradient(180deg,rgba(0,20,38,.02) 20%,rgba(0,20,38,.74) 100%)}
  .voice-focus .video-now{position:relative;z-index:5;display:flex;flex-direction:column;justify-content:center;min-height:274px;left:auto;right:auto;bottom:auto;padding:22px 28px 72px;color:#fff;border-left:1px solid rgba(214,244,255,.16);background:linear-gradient(145deg,rgba(0,31,56,.76),rgba(0,17,38,.46))}
  .voice-focus .video-now::before{content:"";width:46px;height:2px;margin-bottom:14px;background:#18b9ff;box-shadow:0 0 16px rgba(24,185,255,.78)}
  .voice-focus .video-now::after{content:"”";position:absolute;right:26px;bottom:24px;color:rgba(24,185,255,.16);font-size:6.7rem;font-weight:900;line-height:1}
  .voice-focus .video-now span{display:block;color:#18b9ff;font-size:.86rem;font-weight:500;letter-spacing:0;text-transform:none}
  .voice-focus .video-now strong{display:block;margin-top:7px;color:#fff;font-size:clamp(1.32rem,1.78vw,2rem);line-height:1.02;font-weight:500;letter-spacing:-.05em}
  .voice-focus .video-now p{display:block;max-width:27ch;margin-top:12px;color:rgba(255,255,255,.84);font-size:.9rem;line-height:1.38;font-style:italic}
  .voice-focus .video-now em{display:block;width:max-content;margin-top:14px;padding-top:10px;border-top:1px solid rgba(24,185,255,.72);color:#18b9ff;font-style:normal;font-size:.82rem;font-weight:500;letter-spacing:0;text-transform:none}
  .voice-focus.is-switching .voice-video,.voice-focus.is-switching .video-now span,.voice-focus.is-switching .video-now strong,.voice-focus.is-switching .video-now p,.voice-focus.is-switching .video-now em{animation:testimonialSwitch .62s cubic-bezier(.2,.8,.2,1) both}
  .voice-focus.is-switching .video-now strong{animation-delay:.05s}
  .voice-focus.is-switching .video-now p{animation-delay:.1s}
  .voice-focus.is-switching .video-now em{animation-delay:.15s}
  .voice-focus .video-progress{position:absolute;left:26px;bottom:22px;z-index:8;width:32%;height:4px;margin:0;background:rgba(255,255,255,.16);overflow:visible;border-radius:999px}
  .voice-focus.is-placeholder .video-progress{display:none}
  .voice-focus .video-progress::before{content:"01:24";position:absolute;left:-2px;bottom:12px;color:#fff;font-size:.72rem}
  .voice-focus .video-progress::after{content:"04:36";position:absolute;right:-42px;bottom:12px;color:#fff;font-size:.72rem}
  .voice-focus .video-progress span{display:block;width:0;height:100%;border-radius:999px;background:#18b9ff;box-shadow:0 0 16px rgba(24,185,255,.85)}
  .voice-controls{position:absolute;left:auto;right:18px;bottom:12px;z-index:12;transform:none;display:flex;align-items:center;gap:8px;margin:0;padding:7px 9px;border:1px solid rgba(214,244,255,.26);border-radius:999px;background:linear-gradient(145deg,rgba(0,47,85,.9),rgba(0,17,38,.82));box-shadow:0 16px 34px -30px rgba(0,0,0,.95),0 0 22px rgba(24,185,255,.12),inset 0 0 0 1px rgba(255,255,255,.05)}
  .voice-controls::before{content:"";position:absolute;inset:6px;border:1px solid rgba(214,244,255,.08);border-radius:999px;pointer-events:none}
  .voice-controls::after{content:"Explorá cada testimonio";position:absolute;right:12px;top:-24px;width:max-content;color:rgba(166,202,223,.82);font-size:.7rem;letter-spacing:.08em;transform:none}
  .voice-controls .icon-btn{width:36px;height:36px;background:rgba(0,47,85,.68);border-color:rgba(24,185,255,.38);box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),0 14px 30px -28px rgba(0,0,0,.95)}
  .voice-controls .icon-btn:disabled{opacity:.42;cursor:not-allowed;filter:saturate(.55)}
  .voice-controls .icon-btn:hover{background:rgba(0,89,139,.7);border-color:rgba(24,185,255,.75)}
  .voice-controls .video-play-toggle{width:48px;height:48px;margin:-5px 1px;background:rgba(0,47,85,.76);color:#fff;border-color:rgba(214,244,255,.82);box-shadow:0 0 0 4px rgba(24,185,255,.16),0 0 28px rgba(24,185,255,.36)}
  .voice-controls .video-sound{position:static;background:rgba(0,47,85,.62);color:#fff;border-color:rgba(24,185,255,.38);box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),0 18px 38px -28px rgba(0,0,0,.95)}
  .testimonial-playlist{position:absolute;inset:0;z-index:5;display:block;pointer-events:none}
.testimonial-playlist button{--x:50%;--y:50%;--node-scale:1;box-sizing:border-box;position:absolute;left:clamp(94px,var(--x),calc(100% - 94px));top:clamp(38px,var(--y),calc(100% - 38px));width:178px;height:64px;min-height:64px;padding:8px 10px 8px 54px;border:1px solid rgba(214,244,255,.42);border-radius:10px;background:linear-gradient(140deg,rgba(0,47,85,.9),rgba(0,23,43,.78));color:#fff;text-align:left;box-shadow:0 20px 44px -34px rgba(0,0,0,.95),0 0 18px rgba(24,185,255,.08),inset 0 0 0 1px rgba(255,255,255,.05);translate:-50% -50%;transform:scale(var(--node-scale));cursor:pointer;pointer-events:auto;transition:transform .24s ease,border-color .24s ease,background .24s ease,box-shadow .24s ease}
  .hub-grid.in .testimonial-playlist button{animation:nodeEnter .58s cubic-bezier(.2,.8,.2,1) both}
  .testimonial-playlist button::before{content:"";position:absolute;left:9px;top:50%;width:36px;height:36px;border-radius:50%;background:var(--thumb-bg,radial-gradient(circle at 50% 34%,rgba(214,244,255,.72) 0 14%,transparent 15%),radial-gradient(ellipse at 50% 76%,rgba(214,244,255,.52) 0 27%,transparent 28%),linear-gradient(135deg,#0f4164,#021d35));background-position:center;background-size:cover;transform:translateY(-50%);box-shadow:inset 0 0 0 2px rgba(214,244,255,.78),0 0 0 6px rgba(166,202,223,.08),0 12px 22px -18px rgba(0,0,0,.9)}
  .testimonial-playlist button::after{content:"";position:absolute;left:48px;top:50%;width:7px;height:7px;border-radius:50%;background:#d6f4ff;box-shadow:0 0 0 7px rgba(24,185,255,.14),0 0 22px rgba(24,185,255,.72);transform:translate(-50%,-50%);opacity:.95}
  .testimonial-playlist button.active{--node-scale:1.045;background:linear-gradient(140deg,rgba(0,74,120,.9),rgba(0,31,56,.82));border-color:rgba(214,244,255,.78);box-shadow:0 0 0 1px rgba(24,185,255,.48),0 0 30px rgba(24,185,255,.22),0 24px 48px -34px rgba(0,0,0,.95)}
  .testimonial-playlist button.active::before{box-shadow:inset 0 0 0 2px #d6f4ff,0 0 0 4px rgba(24,185,255,.48),0 0 24px rgba(24,185,255,.58)}
  .testimonial-playlist button.active,.testimonial-playlist button:hover{transform:scale(var(--node-scale))}
  .testimonial-playlist button.active::after{border-color:transparent;border-radius:50%}
  .testimonial-playlist button:hover{--node-scale:1.06;border-color:rgba(214,244,255,.8)}
  .testimonial-playlist strong,.testimonial-playlist em,.video-thumb-meta{position:relative;z-index:2;display:block;margin:0}
  .testimonial-playlist .video-thumb-meta{color:rgba(24,185,255,.98);font-size:.48rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
  .testimonial-playlist strong{margin-top:2px;color:#fff;font-size:.72rem;line-height:1.02;font-weight:800;text-shadow:0 10px 20px rgba(0,0,0,.28);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .testimonial-playlist em{margin-top:2px;color:rgba(255,255,255,.76);font-size:.58rem;line-height:1.08;font-style:normal;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
  .testimonial-playlist video,.testimonial-playlist img,.testimonial-thumb-placeholder{display:none}
  .testimonial-playlist button:nth-child(1){animation-delay:.08s}
  .testimonial-playlist button:nth-child(2){animation-delay:.14s}
  .testimonial-playlist button:nth-child(3){animation-delay:.2s}
  .testimonial-playlist button:nth-child(4){animation-delay:.26s}
  .testimonial-playlist button:nth-child(5){animation-delay:.32s}
  .testimonial-playlist button:nth-child(6){animation-delay:.38s}
  .testimonial-playlist button:nth-child(7){animation-delay:.44s}
  .testimonial-playlist button:nth-child(8){animation-delay:.5s}
  .testimonial-playlist button:nth-child(9){animation-delay:.56s}
  .voice-constellation{--focus-w:min(526px,43vw);min-height:540px}
  .voice-focus{grid-template-columns:176px minmax(220px,1fr);width:var(--focus-w);min-height:246px;margin:96px auto 0;border-radius:22px;background:linear-gradient(120deg,rgba(0,54,91,.72),rgba(0,17,38,.9));border-color:rgba(214,244,255,.54);box-shadow:0 30px 66px -46px rgba(0,0,0,.95),0 0 30px rgba(24,185,255,.12),inset 0 0 0 1px rgba(255,255,255,.05)}
  .voice-focus::before{border-radius:22px;background:linear-gradient(90deg,rgba(255,255,255,.08),transparent 34%,rgba(255,255,255,.04)),repeating-linear-gradient(90deg,transparent 0 64px,rgba(214,244,255,.04) 64px 65px,transparent 65px 130px)}
  .voice-focus::after{border-radius:22px;opacity:.13}
  .voice-video{min-height:246px;margin:12px 0 12px 12px;border-radius:18px;background:radial-gradient(circle at 50% 34%,rgba(24,185,255,.22),transparent 50%),linear-gradient(150deg,#001f38,#004a78);box-shadow:inset 0 0 0 1px rgba(214,244,255,.18),0 20px 38px -28px rgba(0,0,0,.95)}
  .voice-video::before{inset:13px;border-radius:14px;border-color:rgba(214,244,255,.28)}
  .voice-focus.has-vimeo .voice-video{min-height:246px}
  .voice-video-placeholder{gap:7px}
  .voice-video-placeholder span{font-size:.58rem;letter-spacing:.18em;color:rgba(255,255,255,.66)}
  .voice-video-placeholder strong{max-width:8ch;font-size:clamp(1.22rem,2vw,1.75rem);line-height:.95}
  .voice-focus .video-now{min-height:246px;padding:20px 24px 66px;border-left-color:rgba(214,244,255,.14);background:linear-gradient(145deg,rgba(0,31,56,.58),rgba(0,17,38,.3))}
  .voice-focus .video-now::before{width:40px;margin-bottom:12px}
  .voice-focus .video-now::after{right:20px;bottom:20px;color:rgba(24,185,255,.13);font-size:4.6rem}
  .voice-focus .video-now span{font-size:.78rem}
  .voice-focus .video-now strong{font-size:clamp(1.18rem,1.5vw,1.68rem)}
  .voice-focus .video-now p{max-width:24ch;margin-top:10px;font-size:.82rem;line-height:1.34}
  .voice-focus .video-now em{max-width:100%;margin-top:12px;padding-top:9px;font-size:.76rem}
  .voice-focus .video-progress{left:28px;bottom:26px;width:118px;height:3px}
  .voice-controls{right:16px;bottom:14px;gap:6px;padding:6px 8px}
  .voice-controls .icon-btn{width:32px;height:32px}
  .voice-controls .video-play-toggle{width:42px;height:42px}
  .voice-constellation{--focus-w:min(430px,36vw)}
  .voice-focus{grid-template-columns:132px minmax(178px,1fr);min-height:208px;margin:112px auto 0;border-radius:18px}
  .voice-focus::before,.voice-focus::after{border-radius:18px}
  .voice-video{min-height:188px;margin:10px 0 10px 10px;border-radius:14px}
  .voice-video::before{inset:10px;border-radius:11px}
  .voice-focus.has-vimeo .voice-video{min-height:188px}
  .voice-focus .video-now{min-height:208px;padding:16px 20px 56px}
  .voice-focus .video-now::before{width:34px;margin-bottom:10px}
  .voice-focus .video-now::after{right:16px;bottom:16px;font-size:3.6rem}
  .voice-focus .video-now span{font-size:.72rem}
  .voice-focus .video-now strong{font-size:clamp(1.04rem,1.18vw,1.36rem)}
  .voice-focus .video-now p{max-width:22ch;margin-top:8px;font-size:.76rem;line-height:1.3}
  .voice-focus .video-now em{margin-top:10px;padding-top:8px;font-size:.7rem}
  .voice-focus .video-progress{left:24px;bottom:22px;width:88px;height:3px}
  .voice-focus .video-progress::before,.voice-focus .video-progress::after{font-size:.62rem}
  .voice-controls{right:12px;bottom:10px;gap:5px;padding:5px 7px}
  .voice-controls::after{top:-20px;font-size:.62rem}
  .voice-controls .icon-btn{width:28px;height:28px}
  .voice-controls .icon-btn svg{width:17px;height:17px}
  .voice-controls .video-play-toggle{width:38px;height:38px}
  .voice-constellation{--focus-w:min(372px,31vw);min-height:548px}
  .voice-focus{grid-template-columns:minmax(158px,1.04fr) minmax(128px,.96fr);min-height:198px;margin:114px auto 0;border-radius:16px}
  .voice-focus::before,.voice-focus::after{border-radius:16px}
  .voice-video{min-height:178px;margin:10px 0 10px 10px;border-radius:13px}
  .voice-video::before{inset:9px;border-radius:10px}
  .voice-focus.has-vimeo .voice-video{min-height:178px}
  .voice-video-placeholder span{font-size:.52rem}
  .voice-video-placeholder strong{font-size:clamp(1.04rem,1.42vw,1.38rem)}
  .voice-focus .video-now{min-height:198px;padding:12px 14px 46px}
  .voice-focus .video-now::before{width:28px;margin-bottom:7px}
  .voice-focus .video-now::after{right:12px;bottom:12px;font-size:2.8rem}
  .voice-focus .video-now span{font-size:.62rem}
  .voice-focus .video-now strong{font-size:clamp(.9rem,.96vw,1.08rem);line-height:1.04;letter-spacing:-.03em}
  .voice-focus .video-now p{max-width:18ch;margin-top:6px;font-size:.64rem;line-height:1.22}
  .voice-focus .video-now em{margin-top:7px;padding-top:6px;font-size:.62rem}
  .voice-focus .video-progress{left:22px;bottom:18px;width:82px;height:3px}
  .voice-focus .video-progress::before,.voice-focus .video-progress::after{font-size:.58rem}
  .voice-controls{right:8px;bottom:8px;gap:4px;padding:4px 6px}
  .voice-controls::after{right:7px;top:-17px;font-size:.56rem}
  .voice-controls .icon-btn{width:25px;height:25px}
  .voice-controls .icon-btn svg{width:15px;height:15px}
  .voice-controls .video-play-toggle{width:34px;height:34px}
  .testimonial-playlist button{left:clamp(82px,var(--x),calc(100% - 82px));top:clamp(34px,var(--y),calc(100% - 34px));width:162px;height:58px;min-height:58px;padding:7px 9px 7px 50px;border-radius:9px}
  .testimonial-playlist button::before{left:8px;width:32px;height:32px}
  .testimonial-playlist button::after{left:44px;width:7px;height:7px}
  .testimonial-playlist .video-thumb-meta{font-size:.44rem;letter-spacing:.1em}
  .testimonial-playlist strong{font-size:.66rem;line-height:1}
  .testimonial-playlist em{font-size:.54rem;line-height:1.06}
  .voice-focus .voice-video,.voice-focus.has-vimeo .voice-video{background:linear-gradient(180deg,rgba(0,28,52,.08),rgba(0,18,36,.58)),var(--poster-bg,radial-gradient(circle at 50% 34%,rgba(24,185,255,.22),transparent 50%),linear-gradient(150deg,#001f38,#004a78));background-position:center;background-size:cover}
  .voice-focus .voice-video-placeholder{background:linear-gradient(180deg,rgba(0,20,38,.08),rgba(0,20,38,.38))}
  .voice-focus .voice-video-placeholder span,.voice-focus .voice-video-placeholder strong,.voice-focus .video-now span,.voice-focus .video-now em,.testimonial-playlist .video-thumb-meta{display:none}
  .voice-focus .video-now strong{margin-top:0}
  .voice-focus .video-now p{margin-top:8px}
  .testimonial-playlist strong{margin-top:0}
  @keyframes centenarioGridDrift{0%{background-position:0 0,0 0}100%{background-position:0 0,180px 120px}}
  @keyframes voiceOrbitPulse{0%,100%{opacity:.74;filter:drop-shadow(0 0 0 rgba(24,185,255,0));transform:scale(1)}50%{opacity:1;filter:drop-shadow(0 0 18px rgba(24,185,255,.2));transform:scale(1.018)}}
  @keyframes voiceLineTrace{0%,100%{opacity:.34;transform:rotate(var(--line-a,0deg)) scaleX(.62)}45%,62%{opacity:.78;transform:rotate(var(--line-a,0deg)) scaleX(1)}}
  @keyframes voiceFocusGlow{0%,100%{box-shadow:0 42px 90px -48px rgba(0,0,0,.95),0 0 42px rgba(24,185,255,.12);border-color:rgba(214,244,255,.46)}50%{box-shadow:0 42px 90px -48px rgba(0,0,0,.95),0 0 76px rgba(24,185,255,.24);border-color:rgba(214,244,255,.7)}}
  @keyframes focusSweep{0%,68%{opacity:0;transform:translateX(-20%)}78%{opacity:.55}100%{opacity:0;transform:translateX(20%)}}
  @keyframes copyReveal{0%{opacity:0;translate:-14px 10px}100%{opacity:1;translate:0 0}}
  @keyframes focusEnter{0%{opacity:0;translate:0 22px;scale:.985}100%{opacity:1;translate:0 0;scale:1}}
  @keyframes testimonialSwitch{0%{opacity:.18;translate:0 10px}100%{opacity:1;translate:0 0}}
  @keyframes nodeEnter{0%{opacity:0;transform:scale(.88)}100%{opacity:1;transform:scale(var(--node-scale))}}
  @keyframes nodeFloat{0%,100%{translate:-50% -50%}50%{translate:-50% calc(-50% - 7px)}}
  @keyframes controlFloat{0%,100%{translate:0 0}50%{translate:0 -4px}}
  @keyframes voicePulse{0%,100%{box-shadow:0 0 0 7px rgba(24,185,255,.12),0 0 22px rgba(24,185,255,.32)}50%{box-shadow:0 0 0 12px rgba(24,185,255,.2),0 0 40px rgba(24,185,255,.52)}}
  @keyframes constellationOrbit{0%{transform:rotate(0deg);opacity:.5}50%{opacity:.92}100%{transform:rotate(360deg);opacity:.5}}
  @keyframes constellationTrace{0%,100%{opacity:.28;stroke-dashoffset:0}45%,62%{opacity:.7;stroke-dashoffset:-18}}
  @keyframes constellationPulse{0%{stroke-dashoffset:24;opacity:0}12%{opacity:.95}86%{opacity:.78}100%{stroke-dashoffset:-24;opacity:0}}
  @keyframes constellationTwinkle{0%,100%{opacity:.34;transform:scale(.76)}45%{opacity:1;transform:scale(1.12)}}
  @keyframes constellationStar{0%,100%{opacity:.22;scale:.72}45%{opacity:.82;scale:1.18}70%{opacity:.45;scale:.92}}
  .testimonial-playlist button:not(.active)::after{animation:none}
  @media(max-width:1180px){
    .hub-centenario .wrap{grid-template-columns:1fr;width:min(1040px,calc(100% - 48px));gap:28px}
    .hub-centenario .sec-head{max-width:720px;margin-top:0}
    .hub-centenario .sec-head h2{max-width:14ch}
    .hub-centenario .sec-head p{max-width:56ch;margin-top:28px}
    .hub-centenario .sec-head::after{margin-top:26px}
    .voice-constellation{min-height:620px}
    .voice-focus{width:min(470px,100%);margin:112px auto 0}
  }
  @media(max-width:980px){
    .hub-centenario{padding:72px 0 88px}
    .voice-constellation{display:flex;flex-direction:column;min-height:auto;padding:0}
    .voice-lines{display:none}
    .voice-focus{order:1;grid-template-columns:1fr;width:100%;margin:0 auto;min-height:0;overflow:hidden}
    .voice-video,.voice-focus.has-vimeo .voice-video{min-height:500px;border-radius:20px 20px 0 0}
    .voice-focus.has-vimeo .voice-vimeo{height:100%;width:auto}
    .voice-focus .video-now{min-height:0;padding:32px 28px 112px;border-left:0;border-top:1px solid rgba(214,244,255,.16)}
    .voice-focus .video-progress{left:32px;bottom:auto;top:460px;width:48%}
    .testimonial-playlist{order:2;position:relative;display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:24px;pointer-events:auto}
    .hub-grid.in .testimonial-playlist button,.testimonial-playlist button{position:relative;left:auto;top:auto;width:auto;height:auto;min-height:86px;padding:12px 14px 12px 72px;translate:0 0!important;transform:none;animation:none!important}
    .testimonial-playlist button.active,.testimonial-playlist button:hover{--node-scale:1;transform:none}
    .voice-controls{right:24px;bottom:24px}
  }
  @media(max-width:620px){
    .hub-centenario{min-height:0;padding:46px 0 58px}
    .hub-centenario .wrap{width:min(100% - 28px,520px)}
    .hub-grid,.hub-testimonials,.voice-constellation{width:100%;max-width:100%;min-width:0}
    .voice-constellation{overflow:hidden}
    .hub-centenario .sec-head{margin-top:0}
    .hub-centenario .sec-head h2{font-size:clamp(1.85rem,9.5vw,2.75rem);max-width:11ch}
    .hub-centenario .sec-head p{margin-top:22px;max-width:33ch;font-size:.88rem;line-height:1.46;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
    .hub-centenario .sec-head p::before{top:-16px;width:44px}
    .hub-centenario .sec-head::after{content:"1926  \2014  2026";margin-top:26px;white-space:normal;font-size:.68rem;line-height:1.6;letter-spacing:.22em}
    .voice-video,.voice-focus.has-vimeo .voice-video{min-height:min(56vh,430px)}
    .voice-focus .video-now{padding:26px 20px 106px}
    .voice-focus .video-now strong{font-size:clamp(1.6rem,8.4vw,2.45rem)}
    .voice-focus .video-progress{top:calc(min(56vh,430px) - 42px);width:54%}
    .testimonial-playlist{display:flex;grid-template-columns:none;align-self:stretch;box-sizing:border-box;width:calc(100% + 28px);max-width:calc(100% + 28px);min-width:0;gap:12px;margin:22px -14px 0;padding:0 14px 12px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scroll-padding-inline:14px;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x;scrollbar-width:thin;scrollbar-color:rgba(166,202,223,.72) rgba(255,255,255,.08)}
    .testimonial-playlist::-webkit-scrollbar{height:5px}
    .testimonial-playlist::-webkit-scrollbar-track{background:rgba(255,255,255,.08)}
    .testimonial-playlist::-webkit-scrollbar-thumb{border-radius:999px;background:rgba(166,202,223,.78)}
    .hub-grid.in .testimonial-playlist button,.testimonial-playlist button{flex:0 0 min(78vw,300px);width:min(78vw,300px);min-height:104px;padding:14px 16px 14px 78px;border-radius:14px;scroll-snap-align:center}
    .testimonial-playlist button::before{left:14px;width:44px;height:44px}
    .testimonial-playlist button::after{left:62px;width:10px;height:10px}
    .testimonial-playlist .video-thumb-meta{display:block;font-size:.54rem}
    .testimonial-playlist strong{font-size:.92rem;line-height:1.04}
    .testimonial-playlist em{font-size:.68rem;line-height:1.08}
    .voice-controls{right:16px;bottom:18px;gap:8px;padding:8px}
    .voice-controls::after{display:none}
    .voice-controls .icon-btn{width:40px;height:40px}
    .voice-controls .video-play-toggle{width:52px;height:52px;margin:-6px 0}
  }

  /* SECTION HEADINGS - polish pass */
  .sec-head{position:relative;margin-bottom:clamp(30px,4vw,46px)}
  .sec-head .eyebrow{margin-bottom:12px;color:var(--section-accent,var(--bright));font-size:.7rem;font-weight:800;letter-spacing:.18em}
  .sec-head h2{font-weight:650;line-height:1.02;letter-spacing:-.035em}
  .sec-head p,.sec-head .intro{max-width:64ch;margin-top:16px;font-size:clamp(.96rem,1.05vw,1.05rem);line-height:1.56}
  .sec-head::after{content:"";display:block;width:54px;height:2px;margin-top:20px;border-radius:999px;background:var(--section-accent,var(--bright));box-shadow:0 0 18px color-mix(in srgb,var(--section-accent,var(--bright)) 28%,transparent)}
  .episodios{--section-accent:var(--bright)}
  .album{--section-accent:#b58f4b}
  .album .sec-head::after{margin-left:auto;margin-right:auto;box-shadow:none}
  .album .sec-head .rule{display:none}
  .album .sec-head h2{font-weight:600;letter-spacing:-.025em}
  .marcas{--section-accent:var(--sky)}
  .marcas .sec-head::after{background:linear-gradient(90deg,var(--sky),rgba(255,255,255,.86));box-shadow:0 0 18px rgba(166,202,223,.35)}
  .hub-centenario{--section-accent:#18b9ff}
  .hub-centenario .sec-head{margin-bottom:0}
  .hub-centenario .sec-head::after{width:auto;height:auto;border-radius:0;background:none;box-shadow:none}
  .bajada-mark{margin-bottom:16px;font-size:.7rem;font-weight:800;letter-spacing:.18em}
  .bajada-mark::before{width:54px;background:rgba(255,255,255,.68);box-shadow:0 0 18px rgba(166,202,223,.28)}
  .bajada-text h2{font-weight:650;line-height:1.02;letter-spacing:-.045em}
  .bajada-text p{line-height:1.58}
  .lema .eyebrow{position:relative;display:inline-block;font-size:.7rem;font-weight:800;letter-spacing:.18em}
  .lema .eyebrow::after{content:"";display:block;width:54px;height:2px;margin-top:14px;border-radius:999px;background:var(--sky);box-shadow:0 0 18px rgba(166,202,223,.35)}
  @media(max-width:700px){
    .sec-head{margin-bottom:24px}
    .sec-head .eyebrow,.bajada-mark,.lema .eyebrow{font-size:.64rem;letter-spacing:.15em}
    .sec-head h2{line-height:1.03}
    .sec-head p,.sec-head .intro{font-size:.9rem;line-height:1.5}
    .marcas .intro{font-size:.84rem;line-height:1.42}
    .sec-head::after{width:46px;margin-top:16px}
    .album .sec-head::after{margin-left:0;margin-right:0}
    .bajada-mark::before,.lema .eyebrow::after{width:46px}
  }

  /* INTERACTION POLISH */
  .btn,.ep-open,.brand-video-btn,.comment-open,.comment-compose button{position:relative;isolation:isolate;overflow:hidden;box-shadow:0 18px 34px -28px rgba(0,42,76,.72);transition:transform .22s cubic-bezier(.2,.72,.2,1),background .22s ease,color .22s ease,border-color .22s ease,box-shadow .22s ease}
  .btn::after,.ep-open::after,.brand-video-btn::after,.comment-open::after,.comment-compose button::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;mix-blend-mode:screen;background:linear-gradient(110deg,transparent 0 34%,rgba(255,255,255,.26) 48%,transparent 62% 100%);opacity:0;transform:translateX(-32%);transition:opacity .22s ease,transform .55s cubic-bezier(.2,.72,.2,1)}
  .btn:hover,.ep-open:hover,.brand-video-btn:hover,.comment-open:hover,.comment-compose button:hover{transform:translateY(-2px);box-shadow:0 24px 42px -30px rgba(0,42,76,.82)}
  .btn:hover::after,.ep-open:hover::after,.brand-video-btn:hover::after,.comment-open:hover::after,.comment-compose button:hover::after{opacity:1;transform:translateX(30%)}
  .btn:active,.ep-open:active,.brand-video-btn:active,.comment-open:active,.comment-compose button:active{transform:translateY(0);box-shadow:0 12px 26px -24px rgba(0,42,76,.72)}
  .nav-menu-toggle,.site-lang button,.ep-close,.am-close,.brand-video-close,.archive-arrow,.brand-arrow,.icon-btn,.reaction-btn,.reply-toggle,.reply-form button,.bajada-dots button,.brand-photo-dots button,.archive-years button,.brand-tabs button,.ep-rail button,.testimonial-playlist button{outline:none}
  .nav-menu-toggle:focus-visible,.site-lang button:focus-visible,.ep-close:focus-visible,.am-close:focus-visible,.brand-video-close:focus-visible,.archive-arrow:focus-visible,.brand-arrow:focus-visible,.icon-btn:focus-visible,.reaction-btn:focus-visible,.reply-toggle:focus-visible,.reply-form button:focus-visible,.bajada-dots button:focus-visible,.brand-photo-dots button:focus-visible,.archive-years button:focus-visible,.brand-tabs button:focus-visible,.ep-rail button:focus-visible,.testimonial-playlist button:focus-visible,.btn:focus-visible,.ep-open:focus-visible,.brand-video-btn:focus-visible,.comment-open:focus-visible,.comment-compose button:focus-visible{outline:2px solid color-mix(in srgb,var(--sky) 72%,#fff);outline-offset:3px}
  .ep-close,.am-close,.brand-video-close,.archive-arrow,.brand-arrow,.icon-btn,.nav-menu-toggle{transition:transform .2s cubic-bezier(.2,.72,.2,1),background .2s ease,border-color .2s ease,box-shadow .2s ease,color .2s ease}
  .ep-close:hover,.am-close:hover,.brand-video-close:hover,.archive-arrow:hover,.brand-arrow:hover,.icon-btn:hover,.nav-menu-toggle:hover{transform:translateY(-1px);box-shadow:0 18px 34px -28px rgba(0,42,76,.74)}
  .ep-close:active,.am-close:active,.brand-video-close:active,.archive-arrow:active,.brand-arrow:active,.icon-btn:active,.nav-menu-toggle:active{transform:translateY(0) scale(.98)}
  .bajada-dots button,.brand-photo-dots button{position:relative}
  .bajada-dots button::after,.brand-photo-dots button::after{content:"";position:absolute;inset:-6px;border:1px solid rgba(255,255,255,.34);border-radius:inherit;opacity:0;transform:scale(.7);transition:opacity .2s ease,transform .2s ease}
  .bajada-dots button:hover::after,.brand-photo-dots button:hover::after,.bajada-dots button.active::after,.brand-photo-dots button.active::after{opacity:1;transform:scale(1)}
  .ep-rail button:hover,.archive-years button:hover,.brand-tabs button:hover{transform:translateY(-1px);box-shadow:0 16px 30px -24px rgba(0,42,76,.64)}
  .ep-rail button:active,.archive-years button:active,.brand-tabs button:active{transform:translateY(0)}
  .bajada-progress,.ep-progress,.archive-progress,.brand-timer,.voice-focus .video-progress,.video-progress{border-radius:999px}
  .bajada-progress span,.ep-progress span,.archive-progress span,.brand-timer span,.voice-focus .video-progress span,.video-progress span{border-radius:999px}
  @media(prefers-reduced-motion:reduce){
    .btn,.ep-open,.brand-video-btn,.comment-open,.comment-compose button,.ep-close,.am-close,.brand-video-close,.archive-arrow,.brand-arrow,.icon-btn,.nav-menu-toggle,.bajada-dots button::after,.brand-photo-dots button::after{transition:none!important}
    .btn:hover,.ep-open:hover,.brand-video-btn:hover,.comment-open:hover,.comment-compose button:hover,.ep-close:hover,.am-close:hover,.brand-video-close:hover,.archive-arrow:hover,.brand-arrow:hover,.icon-btn:hover,.nav-menu-toggle:hover{transform:none}
    .btn::after,.ep-open::after,.brand-video-btn::after,.comment-open::after,.comment-compose button::after{display:none}
  }

  @media(min-width:701px){
    .brand-time-node .label{min-width:118px;max-width:138px;white-space:normal;line-height:1.05}
    .brand-time-node:nth-of-type(odd) .label{top:54px}
    .brand-time-node:nth-of-type(even) .label{top:-4px}
  }

  /* MOBILE BRAND TIMELINE - horizontal scroll */
  @media(max-width:700px){
    .brand-timeline{height:148px;margin:16px 0 12px;padding:34px 0 10px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scroll-padding-inline:28px;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x;background:linear-gradient(100deg,rgba(0,36,63,.92),rgba(0,99,151,.62));scrollbar-width:thin;scrollbar-color:rgba(166,202,223,.72) rgba(255,255,255,.08)}
    .brand-timeline::-webkit-scrollbar{height:5px}
    .brand-timeline::-webkit-scrollbar-track{background:rgba(255,255,255,.08)}
    .brand-timeline::-webkit-scrollbar-thumb{border-radius:999px;background:rgba(166,202,223,.78)}
    .brand-timeline::before{left:18px;top:13px;z-index:4;font-size:.62rem;letter-spacing:.22em}
    .brand-timeline-scroll{position:relative;display:flex;align-items:flex-start;gap:22px;width:max-content;min-width:0;height:100%;padding:0 28px}
    .brand-timeline-scroll::before{content:"";position:absolute;left:58px;right:58px;top:38px;height:2px;border-radius:999px;background:linear-gradient(90deg,rgba(255,255,255,.16),rgba(255,255,255,.5),rgba(255,255,255,.16))}
    .brand-timeline-track,.brand-timeline-fill{display:none}
    .brand-time-node{position:relative;left:auto!important;top:auto;width:138px;height:92px;flex:0 0 138px;transform:none;scroll-snap-align:center}
    .brand-time-node::before{left:50%;top:38px;width:16px;height:16px;background:rgba(255,255,255,.78);box-shadow:0 0 0 9px rgba(166,202,223,.13),0 10px 20px -14px rgba(0,0,0,.8)}
    .brand-time-node.active::before{background:#fff;box-shadow:0 0 0 12px rgba(166,202,223,.3),0 0 32px rgba(255,255,255,.54);transform:translate(-50%,-50%) scale(1.08)}
    .brand-time-node .year{display:block;top:0;opacity:1;font-size:.86rem;line-height:1;color:rgba(255,255,255,.74);text-shadow:0 8px 18px rgba(0,20,36,.48)}
    .brand-time-node.active .year{color:#fff}
    .brand-time-node .label{display:block;top:58px;width:120px;max-width:120px;min-width:0;min-height:0;padding:6px 10px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(0,28,50,.34);box-shadow:none;font-size:.6rem;line-height:1.08;color:rgba(255,255,255,.66);text-shadow:0 8px 18px rgba(0,20,36,.52);white-space:normal;opacity:1;visibility:visible;pointer-events:none;z-index:5;transform:translateX(-50%)}
    .brand-time-node.active .label,.brand-time-node:focus-visible .label{border-color:rgba(255,255,255,.28);background:rgba(0,28,50,.82);box-shadow:0 14px 28px -22px rgba(0,0,0,.85);color:#fff}
  }
  @media(max-width:390px){
    .brand-timeline-scroll{gap:18px;padding:0 24px}
    .brand-timeline-scroll::before{left:52px;right:52px}
    .brand-time-node{width:128px;flex-basis:128px}
    .brand-time-node .label{width:112px;max-width:112px;font-size:.58rem}
  }

  /* Devolucion: marcas y testimonios */
  .brand-actions[hidden]{display:none!important}
  .hub-centenario .sec-head::after{content:none!important;display:none!important}
  .hub-centenario .sec-head h2{max-width:12ch}
  .hub-centenario .sec-head p{max-width:31ch}
  .voice-constellation{--focus-w:min(198px,18.5vw);min-height:610px;overflow:visible}
  .voice-focus{display:flex;flex-direction:column;width:var(--focus-w);min-height:0;margin:70px auto 0;inset-inline:0;border-radius:24px;overflow:hidden;background:linear-gradient(180deg,rgba(0,61,96,.82),rgba(0,20,39,.96));box-shadow:0 32px 68px -46px rgba(0,0,0,.95),0 0 36px rgba(24,185,255,.15),inset 0 0 0 1px rgba(255,255,255,.06)}
  .voice-focus::before{border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 34%,rgba(255,255,255,.04))}
  .voice-focus::after{border-radius:24px}
  .voice-video,.voice-focus.has-vimeo .voice-video{width:100%;min-height:0;aspect-ratio:9/16;margin:0;border-radius:24px 24px 0 0;background:linear-gradient(180deg,rgba(0,28,52,.08),rgba(0,18,36,.58)),var(--poster-bg,radial-gradient(circle at 50% 34%,rgba(24,185,255,.22),transparent 50%),linear-gradient(150deg,#001f38,#004a78));background-position:center;background-size:cover}
  .voice-video::before{inset:12px;border-radius:18px}
  .voice-focus.has-vimeo .voice-vimeo{left:0;right:0;width:100%;height:100%;max-width:none;aspect-ratio:auto;transform:none}
  .voice-focus .video-now{min-height:0;padding:14px 15px 62px;border-left:0;border-top:1px solid rgba(214,244,255,.16);background:linear-gradient(180deg,rgba(0,31,56,.72),rgba(0,17,38,.46))}
  .voice-focus .video-now::before{width:30px;margin-bottom:8px}
  .voice-focus .video-now::after{right:12px;bottom:42px;font-size:2.55rem}
  .voice-focus .video-now strong{font-size:clamp(.9rem,1vw,1.08rem);line-height:1.08;letter-spacing:-.02em}
  .voice-focus .video-now p{max-width:18ch;margin-top:6px;font-size:.6rem;line-height:1.2}
  .voice-focus .video-now em{display:none}
  .voice-focus .video-progress{left:15px;right:15px;bottom:49px;width:auto;height:3px}
  .voice-focus .video-progress::before,.voice-focus .video-progress::after{display:none}
  .voice-controls{left:50%;right:auto;bottom:9px;transform:translateX(-50%);gap:5px;padding:5px 7px}
  .voice-controls::after{display:none}
  .voice-controls .icon-btn{width:27px;height:27px}
  .voice-controls .video-play-toggle{width:38px;height:38px;margin:-4px 0}
  .testimonial-playlist button{width:166px;height:60px;min-height:60px}

  @media(max-width:1180px){
    .voice-constellation{--focus-w:min(198px,31vw);min-height:620px}
    .voice-focus{margin:76px auto 0}
  }
  @media(max-width:980px){
    .voice-constellation{display:flex;flex-direction:column;min-height:auto;overflow:hidden}
    .voice-focus{width:100%;max-width:360px;margin:0 auto}
    .voice-video,.voice-focus.has-vimeo .voice-video{min-height:0}
    .voice-focus .video-now{padding:24px 22px 92px}
    .voice-focus .video-now strong{font-size:clamp(1.35rem,6vw,2rem)}
    .voice-focus .video-now p{max-width:28ch;font-size:.82rem;line-height:1.38}
    .voice-focus .video-progress{left:24px;right:24px;bottom:74px;top:auto;width:auto}
    .voice-controls{bottom:18px}
    .testimonial-playlist{display:flex;grid-template-columns:none;align-self:stretch;box-sizing:border-box;width:calc(100% + 28px);max-width:calc(100% + 28px);min-width:0;gap:12px;margin:22px -14px 0;padding:0 14px 12px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scroll-padding-inline:14px;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x;scrollbar-width:thin;scrollbar-color:rgba(166,202,223,.72) rgba(255,255,255,.08)}
    .hub-grid.in .testimonial-playlist button,.testimonial-playlist button{position:relative;left:auto;top:auto;flex:0 0 min(78vw,300px);width:min(78vw,300px);height:auto;min-height:104px;padding:14px 16px 14px 78px;border-radius:14px;translate:0 0!important;transform:none;animation:none!important;scroll-snap-align:center}
  }

  /* Motion accents shared by the centennial chapters */
  .media-morph{position:fixed;pointer-events:none;background-position:center;background-size:cover;box-shadow:0 18px 46px -30px rgba(0,20,36,.65);overflow:hidden;will-change:left,top,width,height,opacity}
  .bajada-photo .frame::before{content:"";position:absolute;inset:0;z-index:3;background:linear-gradient(105deg,transparent 20%,rgba(255,248,226,.12) 43%,rgba(255,248,226,.3) 50%,transparent 66%);opacity:0;transform:translateX(-100%);pointer-events:none}
  .bajada-carousel.is-switching::before{animation:bajadaLightPass .72s ease-out both}
  @keyframes bajadaLightPass{0%{opacity:0;transform:translateX(-100%)}35%{opacity:1}100%{opacity:0;transform:translateX(100%)}}
  .lema .quote b{background-image:linear-gradient(var(--sky),var(--sky));background-repeat:no-repeat;background-position:left bottom;background-size:0 2px}
  .lema .wrap.in .quote b{animation:lemaUnderline .9s .35s ease-out both}
  @keyframes lemaUnderline{to{background-size:100% 2px}}
  .book.is-turning::after{animation:bookCrease .72s ease-in-out both}
  @keyframes bookCrease{0%,100%{opacity:.46}50%{opacity:.68}}
  .brand-carousel.is-changing .brand-visual,.brand-carousel.is-changing .brand-info{opacity:.58;filter:none;transform:none;transition:opacity .19s ease}
  .brand-carousel.is-revealing .brand-visual{animation:brandSelectedIn .55s cubic-bezier(.2,.72,.18,1) both}
  .brand-carousel.is-revealing .brand-info{animation:brandInfoSelectedIn .48s ease-out both}
  .brand-carousel.is-revealing .brand-time-node.active::before{animation:brandNodeSelect .55s ease-out both}
  @keyframes brandSelectedIn{from{opacity:.45;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0)}}
  @keyframes brandInfoSelectedIn{from{opacity:.5}to{opacity:1}}
  @keyframes brandNodeSelect{0%{filter:brightness(1.8);scale:1.25}100%{filter:none;scale:1}}
  .voice-map-pulse .is-pulse{opacity:0;stroke:rgba(24,185,255,.88);stroke-width:1.1;stroke-dasharray:5 4;transition:opacity .3s ease}
  .voice-map-pulse .is-pulse.active{opacity:.92}
  .hub-centenario.is-playing .voice-map-lines,.hub-centenario.is-playing .voice-stars{opacity:.28}
  .hub-centenario.is-playing .voice-constellation::before{opacity:.55}
  @media(prefers-reduced-motion:reduce){.bajada-carousel.is-switching::before,.lema .wrap.in .quote b,.book.is-turning::after,.brand-carousel.is-revealing .brand-visual,.brand-carousel.is-revealing .brand-info,.brand-carousel.is-revealing .brand-time-node.active::before{animation:none!important}.lema .quote b{background-size:100% 2px}.brand-carousel.is-changing .brand-visual,.brand-carousel.is-changing .brand-info{opacity:1}.voice-map-pulse .is-pulse{transition:none}}

  /* FOOTER */
  footer{background:var(--navy);color:rgba(255,255,255,.72);padding:60px 0 38px;border-top:1px solid rgba(255,255,255,.12)}
  .foot-top{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;align-items:flex-start}
  .foot-logo{height:74px;margin-bottom:14px}
  .foot-brand p{max-width:420px;margin:0;color:rgba(255,255,255,.68);font-size:.9rem;line-height:1.55}
  .foot-cols{display:flex;gap:56px;flex-wrap:wrap}
  .foot-legal{min-width:220px}
  .foot-cols h4{font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--sky);margin-bottom:14px}
  .foot-cols a{display:block;color:rgba(255,255,255,.72);text-decoration:none;font-size:.9rem;margin-bottom:9px}
  .foot-cols a:hover{color:#fff}
  .foot-bottom{margin-top:46px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);font-size:.8rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;letter-spacing:.02em}

  /* mockup flag */
  .mock-flag{display:none}

  /* reveal */
  .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}
  .reveal.in{opacity:1;transform:none}
  @media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.hero::after,.hero-glow,.hero-logo,.hero-years,.scroll-cue,.comment-card,.comment-hero-card,.featured-pulse::before{animation:none;opacity:1}html{scroll-behavior:auto}}
  @media(prefers-reduced-motion:reduce){.hub-centenario::before,.voice-constellation::before,.voice-line,.voice-map-orbits ellipse,.voice-map-line,.voice-map-points circle,.voice-stars span,.voice-focus,.voice-focus::after,.voice-focus.is-switching .voice-video,.voice-focus.is-switching .video-now span,.voice-focus.is-switching .video-now strong,.voice-focus.is-switching .video-now p,.voice-focus.is-switching .video-now em,.voice-controls .icon-btn,.testimonial-playlist button,.testimonial-playlist button:not(.active)::after,.hub-centenario .sec-head.in .eyebrow,.hub-centenario .sec-head.in h2,.hub-centenario .sec-head.in p,.hub-centenario .sec-head.in::after{animation:none!important;transition:none!important}}
