/* ============================================================
   CORDEPORTES® — Azul oficial de marca #014BF9
   ============================================================ */
:root{
  --azul:#014BF9;          /* azul corporativo oficial */
  --azul-hover:#2E6BFF;
  --azul-claro:#7FA0FF;    /* acento / eyebrows */
  --fondo:#0A0A0D;
  --fondo-2:#0C0D16;
  --panel:#111114;
  --borde:#1E1E24;
  --texto:#F2F1EE;
  --texto-2:#A9A9B2;
  --texto-3:#8F8F98;
  --texto-4:#5B5B63;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,Helvetica,Arial,sans-serif;
  background:var(--fondo);color:var(--texto);
  position:relative;overflow-x:hidden;-webkit-font-smoothing:antialiased;
}
::selection{background:var(--azul);color:#fff}
a{text-decoration:none;color:inherit}

.eyebrow{font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;color:var(--azul-claro);font-weight:600;margin-bottom:20px}
h1{font-size:clamp(2.6rem,6.2vw,6rem);line-height:1.04;letter-spacing:-.03em;font-weight:800;margin:0 0 28px;max-width:16ch;text-wrap:balance}
h2{font-size:clamp(2rem,3.6vw,3.4rem);line-height:1.12;letter-spacing:-.02em;font-weight:700;margin:0 0 26px;text-wrap:balance}
.acento{color:var(--azul-claro)}
.parrafo{font-size:1.15rem;line-height:1.7;color:var(--texto-2);max-width:60ch}

/* ---------- CTA ---------- */
.cta{
  display:inline-flex;align-items:center;gap:12px;
  background:var(--azul);color:#fff;font-size:1.05rem;font-weight:600;
  padding:18px 34px;border-radius:100px;
  box-shadow:0 20px 50px -18px rgba(1,75,249,.7);
  transition:background .3s ease,transform .3s ease,box-shadow .3s ease;
}
.cta:hover{background:var(--azul-hover);transform:translateY(-2px);box-shadow:0 26px 60px -18px rgba(1,75,249,.85)}
.cta:focus-visible{outline:3px solid #fff;outline-offset:4px}
..cta--grande{
    display:inline-flex;
    justify-content:center;
    align-items:center;

    min-width:380px;
    min-height:78px;

    font-size:1.20rem;
    padding:24px 70px;
    gap:18px;
    white-space:nowrap;
}
.cta-fijo{
  position:fixed;bottom:28px;right:28px;z-index:50;
  display:flex;align-items:center;gap:10px;
  background:var(--azul);color:#fff;font-size:.95rem;font-weight:600;
  padding:16px 26px;border-radius:100px;
  box-shadow:0 20px 50px -18px rgba(1,75,249,.7);
  opacity:0;transform:translateY(16px);pointer-events:none;
  transition:opacity .4s ease,transform .4s ease,background .3s ease;
}
.cta-fijo.visible{opacity:1;transform:translateY(0);pointer-events:auto}
.cta-fijo:hover{background:var(--azul-hover)}
.cta-fijo:focus-visible{outline:3px solid #fff;outline-offset:3px}
.punto{width:8px;height:8px;border-radius:50%;background:#5CFFB0;flex:none;box-shadow:0 0 0 3px rgba(92,255,176,.2)}
@media (max-width:520px){
  .cta-fijo{bottom:16px;right:16px;padding:15px 22px;font-size:.9rem}
}

/* ---------- HERO ---------- */
.hero{
  min-height:100vh;min-height:100svh;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:8vh 6vw 10vh;position:relative;
}
.hero__logo{
  width:min(120px,18vw);height:min(120px,18vw);
  border-radius:22px;margin-bottom:48px;display:block;
  box-shadow:0 30px 80px -20px rgba(1,75,249,.55);
}
.hero__texto{
  font-size:clamp(1.05rem,1.6vw,1.4rem);line-height:1.55;
  color:var(--texto-2);max-width:44ch;margin:0 0 56px;font-weight:400;
}
.hero__scroll{
  position:absolute;bottom:36px;font-size:.8rem;
  letter-spacing:.12em;text-transform:uppercase;color:var(--texto-4);
}

/* ---------- ACTOS ---------- */
.acto{padding:14vh 8vw;display:flex;flex-direction:column;gap:60px;max-width:1280px;margin:0 auto}
.acto--invertido{flex-direction:column-reverse}
.bloque{max-width:900px}

/* ---------- IMÁGENES ---------- */
.placa{
  width:100%;aspect-ratio:16/9;border-radius:8px;overflow:hidden;
  position:relative;background:linear-gradient(140deg,#0F1C46,#0A0F26 60%,#08080C);
  display:flex;align-items:flex-end;
}
.placa img{width:100%;height:100%;object-fit:cover;display:block}
.placa::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(70% 80% at 78% 8%,rgba(1,75,249,.22),transparent 62%);
}
.placa__pie{
  position:relative;z-index:2;padding:22px 26px;
  font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(242,241,238,.5);
}

/* ---------- PANEL DE DATOS ---------- */
.panel{
  width:100%;background:var(--panel);border:1px solid var(--borde);border-radius:14px;
  padding:44px clamp(24px,4vw,56px);display:flex;flex-direction:column;gap:26px;
}
.panel__cab{
  display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;
  color:#6B6B74;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;
}
.barra{display:flex;align-items:center;gap:20px}
.barra__label{width:140px;flex:none;color:#C7C7CF;font-size:.95rem}
.barra__riel{flex:1;height:10px;background:#1C1C22;border-radius:100px;overflow:hidden}
.barra__fill{
  height:100%;border-radius:100px;width:0;
  background:linear-gradient(90deg,var(--azul),var(--azul-claro));
  transition:width 1.4s cubic-bezier(.16,1,.3,1);
}
@media (max-width:600px){
  .barra{flex-direction:column;align-items:flex-start;gap:8px}
  .barra__label{width:auto}
  .barra__riel{width:100%}
}

/* ---------- CIERRE ---------- */
.cierre{
  min-height:90vh;display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:14vh 8vw;
  background:linear-gradient(180deg,var(--fondo) 0%,var(--fondo-2) 100%);
  border-top:1px solid #17171D;
}
.cierre h2{font-size:clamp(2.2rem,5vw,4.4rem);line-height:1.1;letter-spacing:-.03em;font-weight:800;margin:0 0 36px}
.cierre__sub{font-size:1.1rem;color:var(--texto-3);margin:0 0 52px}
.pie{margin-top:110px;font-size:.8rem;letter-spacing:.1em;color:#48484F;line-height:1.8}

/* ---------- REVELADO ---------- */
[data-reveal]{opacity:0;transform:translateY(32px);transition:opacity 1.1s cubic-bezier(.16,1,.3,1),transform 1.1s cubic-bezier(.16,1,.3,1)}
[data-reveal].visto{opacity:1;transform:translateY(0)}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  [data-reveal]{opacity:1;transform:none;transition:none}
  .barra__fill{transition:none}
  *{animation-duration:.001ms!important;transition-duration:.001ms!important}
}
/* ==========================================================
   REDES SOCIALES
========================================================== */

.social-icons{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:18px;
    margin:40px 0 20px;
}

.social-icons a{
    width:48px;
    height:48px;
    display:flex;
    justify-content:center;
    align-items:center;
    border:1px solid rgba(255,255,255,.12);
    border-radius:50%;
    color:#B8C2CC;
    font-size:22px;
    transition:all .30s ease;
}

.social-icons a:hover{
    color:#fff;
    background:#014BF9;
    border-color:#014BF9;
    transform:translateY(-3px);
}