@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@600;700&family=Cormorant+SC:wght@600;700&display=swap');

  /* ======================================================================
     MÓDULO ENCAPSULADO: #academy-virtual
     Todas las reglas están prefijadas con #academy-virtual para no afectar
     ni ser afectadas por estilos globales del proyecto (site.css, etc).
     Los nombres de clase NO cambiaron respecto al original.
     ====================================================================== */
#academy-virtual {
  /* ---- variables locales (antes en :root) ---- */
  --av-black: #0a0a0a;
  --av-black-2: #121212;
  --av-black-3: #1a1a1a;
  --av-paper: #f5f3ee;
  --av-gold: #d4a017;
  --av-gold-dim: #8a6a14;
  --av-grey: #6b6f76;
  --av-grey-line: #2a2a2a;
  --av-green: #3fa66b;
  --av-red: #c25b4a;

  /* ---- nuevas fuentes ---- */
  --av-display: 'Cormorant Garamond', 'Cormorant SC', serif;
  --av-body: 'Inter', sans-serif;
  --av-mono: 'JetBrains Mono', monospace;

  /* ---- reset de lo que antes vivía en html/body ---- */
  display: block;
  width: 100%;
  background: var(--av-black);
  color: var(--av-paper);
  font-family: var(--av-body);
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  position: relative;
  isolation: isolate;
  line-height: normal;
}
  /* ---- reset interno SOLO para descendientes del módulo (no toca el resto del sitio) ---- */
  #academy-virtual,
  #academy-virtual *,
  #academy-virtual *::before,
  #academy-virtual *::after{
    margin:0;
    padding:0;
    box-sizing:border-box;
  }

  #academy-virtual a{color:inherit; text-decoration:none;}
  #academy-virtual :focus-visible{outline:2px solid var(--av-gold); outline-offset:3px;}
  #academy-virtual ul, #academy-virtual ol{list-style:none;}
  #academy-virtual button, #academy-virtual input{font:inherit; color:inherit;}

  /* ---------- texture ---------- */
  #academy-virtual .grain{
    position:absolute; inset:0; pointer-events:none; z-index:999;
    opacity:0.035; mix-blend-mode:overlay;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  }
  /* ================= MARQUEE ================= */
  #academy-virtual .marquee-wrap{
    border-top:1px solid var(--av-grey-line); border-bottom:1px solid var(--av-grey-line);
    overflow:hidden; padding:16px 0; background:var(--av-black-2);
  }
  #academy-virtual .marquee{display:flex; white-space:nowrap; animation:av-marquee 28s linear infinite; width:max-content;}
  #academy-virtual .marquee span{
    font-family:var(--av-mono); font-size:13px; letter-spacing:2px; text-transform:uppercase; color:var(--av-grey);
    padding:0 28px; display:flex; align-items:center; gap:28px;
  }
  #academy-virtual .marquee span::after{content:'◆'; color:var(--av-gold); font-size:8px;}
  @keyframes av-marquee{from{transform:translateX(0);} to{transform:translateX(-50%);}}




  /* ============ responsive ============ */
  @media (max-width:860px){
    #academy-virtual .hero-grid{grid-template-columns:1fr; gap:30px;}
    #academy-virtual .hero-stamp-col{align-items:flex-start;}
    #academy-virtual .hero-stats{justify-content:flex-start;}
    #academy-virtual .hero-stat{text-align:left;}
    #academy-virtual .section-head{grid-template-columns:1fr;}
    #academy-virtual .why-grid{grid-template-columns:1fr;}
    #academy-virtual .method-row{grid-template-columns:1fr;}
    #academy-virtual .choice-grid{grid-template-columns:1fr;}
    #academy-virtual .seal{display:none;}
    #academy-virtual footer{flex-direction:column; align-items:flex-start;}
  }

  @media (prefers-reduced-motion: reduce){
    #academy-virtual *{animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important;}
  }
