@font-face{font-family:"Sini Display";src:url(/assets/tipos/lato-black.woff) format("woff");font-weight:900;font-style:normal;font-display:swap}
@font-face{font-family:"Sini Text";src:url(/assets/tipos/lato-regular.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}

/* ---------------------------------------------------------------
   Dos mundos: el frío finlandés (hielo, lago, aurora) manda en toda
   la web; el magenta de los murales y de Twitch entra solo como
   acento y en la zona de directos.
   --------------------------------------------------------------- */
:root{
  /* La tira fría de la propuesta, ahora como superficies de verdad y no solo
     como color de enlace: hielo, nieve, lago, arena y tinta. */
  --hielo:#EFF3F6;
  --nieve:#E4EDF3;
  --papel:#FFFFFF;
  --hundido:#E4EDF3;
  --tinta:#0D1A24;
  --tinta-2:#55697A;
  --linea:#D2DDE5;
  --lago:#00457E;
  --lago-hondo:#08243D;
  --aurora:#0E7FB8;
  --arena:#E3C4B2;
  --campo-frio:#E4EDF3;
  --campo-caliente:#00457E;
  --campo-lago:#00457E;
  --campo-directos:#08243D;
  --sobre-caliente:#FFFFFF;
  --sobre-caliente-2:#C6DCEE;
  --sobre-frio:#EAF3FA;
  --acento:#D6117E;
  --barra-fondo:rgba(239,243,246,.88);

  --t-hero:clamp(2.4rem,11vw,8rem);
  --t-1:clamp(1.9rem,4.4vw,3.3rem);
  --t-2:clamp(1.3rem,2.4vw,1.85rem);
  --t-cuerpo:1.0625rem;
  --t-peq:.9rem;
  --t-etiqueta:.72rem;
  --ancho:1180px;
  --canal:clamp(1.25rem,4vw,3rem);
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --hielo:#08131C; --nieve:#101E29; --papel:#0F1F2C; --hundido:#101E29;
    --tinta:#E6EFF5; --tinta-2:#94A8B7; --linea:#1E3242;
    --lago:#6FB3EA; --lago-hondo:#0B2C48; --aurora:#57B6E8; --arena:#D9B49F;
    --campo-frio:#101E29; --campo-caliente:#2673B5;
    --campo-lago:#0A3556; --campo-directos:#103C63;
    --sobre-caliente:#FFFFFF; --sobre-caliente-2:#D3E6F5;
    --sobre-frio:#DCEBF7; --acento:#FF4FA5;
    --barra-fondo:rgba(8,19,28,.88);
  }
}
:root[data-theme="dark"]{
  --hielo:#08131C; --nieve:#101E29; --papel:#0F1F2C; --hundido:#101E29;
  --tinta:#E6EFF5; --tinta-2:#94A8B7; --linea:#1E3242;
  --lago:#6FB3EA; --lago-hondo:#0B2C48; --aurora:#57B6E8; --arena:#D9B49F;
  --campo-frio:#101E29; --campo-caliente:#2673B5;
  --campo-lago:#0A3556; --campo-directos:#103C63;
  --sobre-caliente:#FFFFFF; --sobre-caliente-2:#D3E6F5;
  --sobre-frio:#DCEBF7; --acento:#FF4FA5;
  --barra-fondo:rgba(8,19,28,.88);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:5rem}
body{
  margin:0;background:var(--hielo);color:var(--tinta);
  font-family:"Sini Text",system-ui,-apple-system,sans-serif;
  font-size:var(--t-cuerpo);line-height:1.65;-webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:"Sini Display",system-ui,sans-serif;font-weight:900;margin:0;text-wrap:balance}
p{margin:0}
img{display:block;max-width:100%}
a{color:var(--lago)}
a:focus-visible,button:focus-visible{outline:3px solid currentColor;outline-offset:3px;border-radius:2px}

.etiqueta{font-family:"Sini Text",system-ui,sans-serif;font-size:var(--t-etiqueta);
  letter-spacing:.19em;text-transform:uppercase;color:var(--tinta-2);line-height:1.4;margin:0}
.contenedor{max-width:var(--ancho);margin:0 auto;padding-inline:var(--canal)}

/* ---------- Barra ---------- */
.barra{position:sticky;top:0;z-index:50;background:var(--barra-fondo);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--linea)}
.barra__int{max-width:var(--ancho);margin:0 auto;padding:.7rem var(--canal);
  display:flex;align-items:center;gap:1.25rem}
.barra__marca{font-family:"Sini Display",system-ui,sans-serif;font-weight:900;font-size:1.1rem;
  letter-spacing:-.02em;text-decoration:none;color:var(--tinta);text-transform:uppercase}
.barra__marca span{color:var(--aurora)}
.barra__nav{display:flex;gap:1.1rem;margin-left:auto;flex-wrap:wrap}
.barra__nav a{font-size:var(--t-peq);text-decoration:none;color:var(--tinta-2)}
.barra__nav a:hover{color:var(--tinta)}
.barra__nav a.destaca{color:var(--lago);font-family:"Sini Display",system-ui,sans-serif;font-weight:900}
.idiomas{display:flex;gap:.4rem;align-items:center;font-size:var(--t-etiqueta);
  letter-spacing:.12em;text-transform:uppercase}
.idiomas a{text-decoration:none;color:var(--tinta-2)}
.idiomas a[aria-current="true"]{color:var(--tinta);font-family:"Sini Display",system-ui,sans-serif;font-weight:900}
.barra__menu{display:none;appearance:none;-webkit-appearance:none;background:none;border:0;cursor:pointer;padding:0;color:var(--tinta)}

@media (max-width:760px){
  .barra__menu{display:inline-flex;align-items:center;justify-content:center;
    width:44px;height:44px;border-radius:10px;order:3}
  .idiomas{order:2;margin-left:auto}
  .idiomas a{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:.3rem}
  .barra__menu-icono{position:relative;display:block;width:22px;height:2px;
    background:currentColor;border-radius:2px}
  .barra__menu-icono::before,.barra__menu-icono::after{content:"";position:absolute;left:0;
    width:22px;height:2px;background:currentColor;border-radius:2px;transition:transform .2s ease}
  .barra__menu-icono::before{top:-7px}
  .barra__menu-icono::after{top:7px}
  .barra.abierta .barra__menu-icono{background:transparent}
  .barra.abierta .barra__menu-icono::before{transform:translateY(7px) rotate(45deg)}
  .barra.abierta .barra__menu-icono::after{transform:translateY(-7px) rotate(-45deg)}

  .barra__nav{display:none;position:absolute;left:0;right:0;top:100%;
    flex-direction:column;gap:0;margin:0;
    background:var(--hielo);
    border-top:1px solid var(--linea);border-bottom:1px solid var(--linea);
    box-shadow:0 14px 26px rgba(0,0,0,.14);
    padding:.25rem var(--canal) .8rem}
  .barra.abierta .barra__nav{display:flex}
  .barra__nav a{font-size:1.05rem;min-height:48px;display:flex;align-items:center;
    color:var(--tinta);border-bottom:1px solid var(--linea)}
  .barra__nav a:last-child{border-bottom:0}

  .barra__nav--simple{display:flex;position:static;flex-direction:row;margin-left:auto;
    background:none;border:0;padding:0;backdrop-filter:none;-webkit-backdrop-filter:none}
  .barra__nav--simple a{min-height:44px;border:0;font-size:var(--t-peq)}
}

/* ---------- Portada: dos campos con costura ---------- */
@property --costura{syntax:"<number>";initial-value:52;inherits:true}
.portada{position:relative;overflow:hidden;isolation:isolate;background:var(--campo-frio);
  --costura:52;
  --poly-frio:polygon(0 0,calc(var(--costura)*1%) 0,calc((var(--costura) - 11)*1%) 100%,0 100%);
  --poly-cal:polygon(calc(var(--costura)*1%) 0,100% 0,100% 100%,calc((var(--costura) - 11)*1%) 100%);
  animation:barre 1s cubic-bezier(.22,.85,.3,1) both}
@keyframes barre{from{--costura:104}to{--costura:52}}
.portada__frio,.portada__cal{position:absolute;inset:0}
.portada__frio{background:var(--campo-frio);clip-path:var(--poly-frio)}
.portada__cal{background:var(--campo-caliente);clip-path:var(--poly-cal)}

.portada__esc{position:relative;z-index:2;animation:sube .8s .2s both}
@keyframes sube{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
/* El titular ocupa todo el ancho para que la costura lo atraviese de verdad;
   el texto y la foto van debajo, cada uno en su mundo. */
.portada__caja{max-width:var(--ancho);margin:0 auto;padding:clamp(2.5rem,5vw,4rem) var(--canal) clamp(2.5rem,5vw,4rem)}
.portada__fila{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.58fr);
  gap:clamp(1.5rem,4vw,3.5rem);align-items:start;margin-top:clamp(1.5rem,3vw,2.5rem)}
.portada__capa{position:absolute;inset:0;clip-path:var(--poly-cal);color:var(--sobre-caliente)}
.portada__capa .etiqueta,.portada__capa .portada__lede{color:var(--sobre-caliente-2)}
.portada__capa .boton--fantasma{border-color:var(--sobre-caliente);color:var(--sobre-caliente)}
.portada__capa .boton--solido{background:var(--sobre-caliente);color:var(--campo-caliente)}

.portada__titulo{font-size:var(--t-hero);line-height:.86;letter-spacing:-.045em;text-transform:uppercase}
/* La segunda línea va a la derecha para que caiga entera en el campo magenta:
   Finlandia queda en el hielo y España en el calor, que es lo que cuenta. */
.portada__titulo .l2{display:block;text-align:right}
@media (max-width:860px){.portada__titulo .l2{text-align:left}}
.portada__lede{max-width:30ch;margin-top:clamp(1.2rem,2.5vw,1.9rem);
  font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.5;color:var(--tinta-2)}
.portada__acciones{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:clamp(1.5rem,3vw,2.2rem)}
.retrato{border:1px solid var(--linea);background:var(--hundido)}
.retrato img{width:100%;height:auto;aspect-ratio:2/3;object-fit:cover}
/* Después de .retrato img a propósito: misma especificidad, así que manda el orden.
   En portada la foto va menos alargada para que no dispare el alto del bloque. */
.portada__foto img{aspect-ratio:4/5}
@media (max-width:860px){
  .portada{--poly-frio:polygon(0 0,100% 0,100% 44%,0 54%);
           --poly-cal:polygon(0 54%,100% 44%,100% 100%,0 100%);animation:none}
  .portada__fila{grid-template-columns:minmax(0,1fr)}
  .portada__foto{max-width:19rem}
}

/* ---------- Botones ---------- */
.boton{display:inline-block;padding:.62rem 1.15rem;font-size:var(--t-peq);text-decoration:none;
  font-family:"Sini Display",system-ui,sans-serif;font-weight:900;letter-spacing:.01em;border:2px solid transparent}
.boton--solido{background:var(--tinta);color:var(--hielo)}
.boton--fantasma{border-color:var(--tinta);color:var(--tinta)}
.boton--neon{background:var(--arena);color:var(--tinta)}
.boton:hover{opacity:.85}

/* ---------- Secciones ---------- */
.seccion{padding-block:clamp(3.5rem,7vw,6rem);border-top:1px solid var(--linea)}
.seccion--papel{background:var(--papel)}
.seccion--caliente{background:var(--campo-directos);color:var(--sobre-caliente);border-top:0}
.seccion--caliente .etiqueta,.seccion--caliente .dim{color:var(--sobre-caliente-2)}
.seccion--caliente a{color:var(--sobre-caliente)}
/* Bloque frío a sangre. El magenta se reserva para los directos: si aparece
   dos veces a página completa deja de ser acento y pasa a ser el fondo. */
.seccion--fria{background:var(--campo-lago);color:var(--sobre-frio);border-top:0}
.seccion--fria .etiqueta,.seccion--fria .dim{color:#AECDE6}
.seccion--fria a{color:#fff}
.seccion h2{font-size:var(--t-1);letter-spacing:-.03em;line-height:1.02;text-transform:uppercase}
.seccion h3{font-size:var(--t-2);letter-spacing:-.015em;line-height:1.15}
.dim{color:var(--tinta-2)}
.pila{display:flex;flex-direction:column;gap:1.1rem}
.pila p{max-width:62ch}
.dos{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.68fr);gap:clamp(1.75rem,4vw,3.5rem);align-items:center}
.dos--invertida .dos__foto{order:-1}
@media (max-width:820px){.dos{grid-template-columns:minmax(0,1fr)}.dos--invertida .dos__foto{order:0}.dos__foto{max-width:22rem}}

.cita{font-family:"Sini Display",system-ui,sans-serif;font-weight:900;
  font-size:clamp(1.3rem,2.5vw,1.9rem);line-height:1.15;letter-spacing:-.025em;max-width:22ch}
.cita span{color:var(--lago)}

/* ---------- Rejillas ---------- */
.fichas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;
  background:var(--linea);border:1px solid var(--linea);margin-top:1.75rem}
.ficha{background:var(--papel);padding:1.5rem 1.4rem;display:flex;flex-direction:column;gap:.5rem}
.ficha h3{font-size:1.1rem}
.ficha p{font-size:var(--t-peq);line-height:1.55;color:var(--tinta-2)}
@media (max-width:640px){.fichas{grid-template-columns:minmax(0,1fr)}}

.redes{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1px;
  background:var(--linea);border:1px solid var(--linea);margin-top:1.75rem}
.red{background:var(--papel);padding:1.2rem 1.3rem;text-decoration:none;color:inherit;
  display:flex;flex-direction:column;gap:.25rem}
.red:hover{background:var(--hundido)}
.red__nombre{font-family:"Sini Display",system-ui,sans-serif;font-weight:900;font-size:1.05rem;
  display:flex;align-items:center;gap:.5rem}
.red__nombre::before{content:"";width:8px;height:8px;background:var(--tinta-2);flex:0 0 auto}
.red--destacado .red__nombre::before{background:var(--lago)}
.red--caliente .red__nombre::before{background:var(--acento)}
.red__cuenta{font-size:var(--t-peq);color:var(--lago)}
.red__nota{font-size:var(--t-peq);color:var(--tinta-2);line-height:1.5}

.galeria{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.6rem,1.5vw,1rem);margin-top:1.75rem}
@media (max-width:640px){.galeria{grid-template-columns:repeat(2,minmax(0,1fr))}.galeria :nth-child(3){display:none}}

/* ---------- Prensa ---------- */
.prensa{display:flex;flex-direction:column;gap:1px;background:var(--linea);
  border:1px solid var(--linea);margin-top:1.75rem}
.prensa a{display:grid;grid-template-columns:minmax(0,8.5rem) minmax(0,1fr);gap:.3rem 1.5rem;
  padding:1rem 1.25rem;background:var(--papel);text-decoration:none;color:inherit;align-items:baseline}
.prensa a:hover{background:var(--hundido)}
.prensa__medio{font-size:var(--t-etiqueta);letter-spacing:.15em;text-transform:uppercase;color:var(--lago)}
.prensa__titular{font-size:var(--t-peq);line-height:1.5}
.prensa__fecha{font-size:var(--t-etiqueta);color:var(--tinta-2);font-variant-numeric:tabular-nums}
.prensa__tv{display:inline-block;margin-left:.5rem;font-size:var(--t-etiqueta);letter-spacing:.1em;
  text-transform:uppercase;color:var(--lago);border:1px solid currentColor;padding:0 .35rem}
@media (max-width:640px){.prensa a{grid-template-columns:minmax(0,1fr)}}

/* ---------- Cifras y barras (página de marcas) ---------- */
.cifras{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:1px;
  background:var(--linea);border:1px solid var(--linea);margin-top:1.75rem}
.cifra{background:var(--papel);padding:1.4rem 1.3rem;display:flex;flex-direction:column;gap:.3rem}
.cifra b{font-family:"Sini Display",system-ui,sans-serif;font-weight:900;font-size:1.85rem;
  letter-spacing:-.025em;line-height:1;font-variant-numeric:tabular-nums;color:var(--lago)}

.barras{display:flex;flex-direction:column;gap:.8rem;margin-top:1.25rem}
.barra-fila{display:grid;grid-template-columns:minmax(6rem,9rem) minmax(0,1fr);gap:1rem;align-items:center}
.barra-nom{font-size:var(--t-peq);line-height:1.3}
.barra-pista{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.6rem;align-items:center}
.barra-carril{min-width:0}
.barra-val{height:13px;background:var(--aurora);border-radius:0 4px 4px 0;min-width:2px}
.barra-val--destaca{background:var(--lago)}
.barra-pct{font-family:"Sini Display",system-ui,sans-serif;font-weight:900;font-size:var(--t-peq);
  font-variant-numeric:tabular-nums;white-space:nowrap}

.lista-marcas{list-style:none;margin:1.25rem 0 0;padding:0;display:grid;
  grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.6rem 1.5rem}
.lista-marcas li{display:grid;grid-template-columns:.8rem minmax(0,1fr);gap:.65rem;
  font-size:var(--t-peq);line-height:1.5}
.lista-marcas li::before{content:"";width:8px;height:8px;margin-top:.45rem;background:var(--aurora)}

/* ---------- Contacto y pie ---------- */
.correo{font-family:"Sini Display",system-ui,sans-serif;font-weight:900;
  font-size:clamp(1.3rem,3.5vw,2.4rem);letter-spacing:-.03em;word-break:break-word;
  text-decoration:none;color:inherit;border-bottom:3px solid var(--lago)}
.pie{border-top:1px solid var(--linea);padding-block:2.5rem 3.5rem;font-size:var(--t-peq);color:var(--tinta-2)}
.pie__int{display:flex;flex-wrap:wrap;gap:.75rem 2rem;justify-content:space-between;align-items:baseline}
.moi{font-family:"Sini Display",system-ui,sans-serif;font-weight:900;font-size:1.05rem;color:var(--tinta)}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  /* Matamos las animaciones decorativas (la costura del hero) pero conservamos
     las transiciones cortas de hover/foco: son feedback, no movimiento molesto. */
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important}
}
