/* =====================================================================
   HURBAX · identidad visual común a toda la web (pública e intranet).
   LA TIPOGRAFÍA SE CAMBIA AQUÍ: variables --hx-fd (titulares),
   --hx-fb (texto) y --hx-fm (datos y tiempos).
   ===================================================================== */
:root{
  /* Titulares en Saira (26/10/2026): de la familia del logo, cuadrada; más contenida que la Archivo ancha anterior (?t=ancha) */
  --hx-fd:Saira,"Arial Black",Impact,sans-serif; --hx-fx:100%; --hx-fx-t:100%; --hx-fw:800; --hx-fi:normal; --hx-tt:uppercase; --hx-ls:0; --hx-lh:.95;
  --hx-k:8.63; /* ancho relativo de "COMPETICIÓN" para encajar el titular de portada (mayor = titular más pequeño) */
  --hx-kc:1.07; --hx-cr:.81; /* ancho medio de una letra del titular (en em), para que las palabras largas no se salgan */
  --hx-fb:Geist,system-ui,-apple-system,"Segoe UI",sans-serif;
  --hx-fm:"Geist Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --hx-negro:#080a0c; --hx-negro2:#101417; --hx-claro:#eef2f3; --hx-tinta:#0b1012;
  --hx-acc:#2fb9cc; --hx-acc-osc:#0b8da1;
  --hx-grad:linear-gradient(90deg,#e6391e,#ea7b3c 45%,#2fb9cc);
}
html[data-t=ancha]{--hx-fd:Archivo,"Arial Black",Impact,sans-serif;--hx-fx:118%;--hx-fx-t:106%;--hx-fw:900;--hx-ls:-.015em;--hx-lh:.9;--hx-k:9.2;--hx-kc:1;--hx-cr:.86}
html[data-t=veloz]{--hx-fd:Anybody,"Arial Black",Impact,sans-serif;--hx-fx:112%;--hx-fx-t:100%;--hx-fi:italic;--hx-ls:-.02em;--hx-lh:.88;--hx-k:8.5;--hx-kc:1.1;--hx-cr:.78}
html[data-t=moderna]{--hx-fd:Unbounded,system-ui,sans-serif;--hx-fx:100%;--hx-fx-t:100%;--hx-fw:800;--hx-tt:none;--hx-ls:-.045em;--hx-lh:.95;--hx-k:7.95;--hx-kc:1.18;--hx-cr:.74}

/* ---- Base: se aplica a todas las páginas ---- */
body,.font-sans,.font-cond{font-family:var(--hx-fb)!important}
h1,h2{font-family:var(--hx-fd)!important;font-stretch:var(--hx-fx-t);font-style:var(--hx-fi);letter-spacing:var(--hx-ls)!important;overflow-wrap:break-word;hyphens:auto}
h3,h4{font-family:var(--hx-fb)!important;letter-spacing:-.01em}
.tabular-nums,.font-mono{font-family:var(--hx-fm)}
.hbx-grad{background:var(--hx-grad)}

/* Utilidades de marca para usar en cualquier vista */
.hx-d{font-family:var(--hx-fd);font-stretch:var(--hx-fx);font-weight:var(--hx-fw);font-style:var(--hx-fi);text-transform:var(--hx-tt);letter-spacing:var(--hx-ls);line-height:var(--hx-lh);text-wrap:balance}
.hx-k{font:700 12px/1.2 var(--hx-fm);letter-spacing:.14em;text-transform:uppercase}
.hx-raya{height:5px;width:88px;background:var(--hx-grad);border-radius:3px}

/* ---- Cabecera y pie públicos (oscuros) ---- */
.hx-top{background:rgba(8,10,12,.92);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff}
.hx-top .hx-nav a{color:rgba(255,255,255,.72);font-weight:600}
.hx-top .hx-nav a:hover,.hx-top .hx-nav a.on{color:#fff;background:rgba(255,255,255,.08)}
.hx-top .hx-bt{border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:999px}
.hx-top .hx-bt:hover{background:rgba(255,255,255,.08)}
.hx-top .hx-cta{background:#fff;color:#000;border-radius:999px;font-weight:700}
.hx-panel{background:var(--hx-negro);border-top:1px solid rgba(255,255,255,.08)}
.hx-panel nav a.hx-l{display:block;padding:10px 4px;border-bottom:1px solid rgba(255,255,255,.08);color:#fff;font-family:var(--hx-fd);font-stretch:var(--hx-fx);font-weight:var(--hx-fw);font-style:var(--hx-fi);text-transform:var(--hx-tt);letter-spacing:var(--hx-ls);font-size:clamp(20px,6vw,30px);line-height:1.2}
.hx-panel nav a.hx-l.on{color:var(--hx-acc)}
.hx-pie{background:var(--hx-negro);color:#98a5aa;border-top:1px solid rgba(255,255,255,.08)}
.hx-pie a{color:#fff}
.hx-pie a:hover{color:var(--hx-acc)}
.hx-pie .hx-sub a{color:#98a5aa}

/* =====================================================================
   PORTADA (.hxp): estilos de la página de inicio
   ===================================================================== */
.hxp{--g:20px;background:var(--hx-negro);color:#f3f6f7;font-family:var(--hx-fb)}
.hxp *{box-sizing:border-box}
.hxp a{color:inherit;text-decoration:none}
.hxp img{display:block;max-width:100%}
.hxp .d{font-family:var(--hx-fd);font-stretch:var(--hx-fx);font-weight:var(--hx-fw);font-style:var(--hx-fi);text-transform:var(--hx-tt);letter-spacing:var(--hx-ls)!important;line-height:var(--hx-lh);text-wrap:balance;hyphens:manual}
.hxp .k{font:700 12px/1.2 var(--hx-fm);letter-spacing:.14em;text-transform:uppercase;color:var(--hx-acc)}
.hxp .wrap{max-width:1200px;margin:0 auto;padding-inline:var(--g)}
.hxp .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;font-weight:700;font-size:15px;padding:15px 24px;transition:transform .15s,background .2s}
.hxp .btn:active{transform:scale(.97)}
.hxp .btn:focus-visible{outline:2px solid var(--hx-acc);outline-offset:3px}
.hxp .btn-p{background:#fff;color:#000}
.hxp .btn-a{background:var(--hx-acc);color:#03181b}
.hxp .btn-g{border:1.5px solid rgba(255,255,255,.32);color:#fff;background:rgba(0,0,0,.18);backdrop-filter:blur(8px)}
.hxp .btn-o{border:1.5px solid currentColor}
.hxp .arr:after{content:"→";font-weight:400}
.hxp section{padding-block:72px}
.hxp h2.d{font-size:clamp(34px,8.6vw,92px);margin-top:12px}
html[data-t=veloz] .hxp h2.d{font-size:clamp(36px,9.4vw,100px)}
html[data-t=moderna] .hxp h2.d{font-size:clamp(32px,8.4vw,88px)}
.hxp .lead{color:#98a5aa;max-width:54ch;margin-top:16px;font-size:17px;line-height:1.55}

/* portada con vídeo */
.hxp .hero{position:relative;height:calc(88svh - 60px);min-height:520px;max-height:940px;overflow:hidden;display:flex;align-items:flex-end;background:#000}
.hxp .hero video,.hxp .hero > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hxp .hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.35) 0%,rgba(0,0,0,0) 22%,rgba(0,0,0,.1) 50%,rgba(0,0,0,.88) 100%)}
.hxp .hero .in{position:relative;z-index:2;padding-bottom:30px;width:100%}
.hxp .hero h1{font-size:min(150px,calc((min(100vw,1200px) - 2*var(--g))/var(--hx-k)));color:#fff;margin:16px 0 0}
.hxp .hero .hx-raya{margin-top:18px}
.hxp .hero p.sub{margin-top:14px;font-size:clamp(18px,4.8vw,26px);color:rgba(255,255,255,.88);font-weight:400;max-width:30ch;line-height:1.3}
.hxp .hero .acts{margin-top:24px;display:flex;flex-wrap:wrap;gap:10px}
.hxp .chip{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:7px 12px 7px 8px;background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(8px);font-size:13px;font-weight:600;color:#fff}
.hxp .chip b{background:var(--hx-acc);color:#03181b;border-radius:999px;padding:3px 8px;font:700 11px/1.2 var(--hx-fm);letter-spacing:.06em;text-transform:uppercase}

/* sección clara */
.hxp .claro{background:var(--hx-claro);color:var(--hx-tinta)}
.hxp .claro .k{color:#0d7f8e}
.hxp .claro .lead{color:#56656b}
.hxp .ruta{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 20px 14px;margin:30px -20px 0;scrollbar-width:none}
.hxp .ruta::-webkit-scrollbar,.hxp .rail::-webkit-scrollbar,.hxp .mods::-webkit-scrollbar{display:none}
.hxp .est{scroll-snap-align:start;flex:0 0 80%;max-width:340px;display:flex;flex-direction:column;gap:10px}
.hxp .est .ft{position:relative;border-radius:20px;overflow:hidden;aspect-ratio:4/5;background:#222}
.hxp .est .ft img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hxp .est .ft:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.82))}
.hxp .est .n{position:absolute;top:14px;left:14px;z-index:2;font:700 12px/1 var(--hx-fm);letter-spacing:.1em;background:#fff;color:#000;border-radius:999px;padding:6px 10px}
.hxp .est .tx{position:absolute;inset:auto 0 0;z-index:2;padding:18px;color:#fff}
.hxp .est .tx .d{font-size:clamp(22px,6.8vw,32px)}
.hxp .est .tx small{display:block;margin-top:8px;font:500 14px/1.2 var(--hx-fm);color:rgba(255,255,255,.85)}
.hxp .est .km{display:flex;align-items:center;gap:10px;font:700 12px/1 var(--hx-fm);letter-spacing:.1em;text-transform:uppercase;color:#56656b}
.hxp .est .km:before{content:"";height:3px;flex:0 0 30px;border-radius:2px;background:var(--hx-grad)}
.hxp .pista{margin-top:10px;font:600 13px var(--hx-fb);color:#56656b}

/* la ciudad es el estadio */
.hxp .ciudad{position:relative;padding:0;overflow:hidden}
.hxp .ciudad .fc{position:relative;aspect-ratio:3/2;width:100%}
.hxp .ciudad .fc img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hxp .ciudad .fc:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,10,12,0) 60%,var(--hx-negro))}
.hxp .ciudad .wrap{position:relative;z-index:2;padding-block:8px 64px}
.hxp .ciudad ul{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:10px;max-width:520px}
.hxp .ciudad li{display:flex;gap:12px;align-items:baseline;color:rgba(255,255,255,.88)}
.hxp .ciudad li b{font:700 12px/1 var(--hx-fm);color:var(--hx-acc);letter-spacing:.08em;flex:0 0 auto}

/* carrusel de sedes */
.hxp .rail{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 20px 8px;margin:28px -20px 0;scrollbar-width:none}
.hxp .card{scroll-snap-align:start;flex:0 0 72%;max-width:320px;position:relative;border-radius:20px;overflow:hidden;aspect-ratio:3/4;background:#111;container-type:inline-size}
.hxp .card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.hxp .card:hover img{transform:scale(1.04)}
.hxp .card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.88))}
.hxp .card .c{position:absolute;inset:auto 0 0;padding:18px;z-index:2;color:#fff}
.hxp .card .c .d{font-size:min(38px,calc(8.4cqi * var(--hx-kc)))}
.hxp .card .f{font:500 13px/1.3 var(--hx-fm);color:rgba(255,255,255,.8);margin-top:8px}
.hxp .tag{display:inline-block;border-radius:999px;padding:5px 10px;font:700 11px/1.2 var(--hx-fm);letter-spacing:.06em;text-transform:uppercase;background:rgba(255,255,255,.16);margin-bottom:10px;backdrop-filter:blur(6px)}
.hxp .tag.ac{background:var(--hx-acc);color:#03181b}
.hxp .tag.ro{background:#e6391e;color:#fff}

/* campeones */
.hxp .tab{margin-top:30px;border-top:1px solid rgba(255,255,255,.1)}
.hxp .fila{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 14px;align-items:baseline;padding:14px 2px;border-bottom:1px solid rgba(255,255,255,.1)}
.hxp .fila .cat{grid-column:1/-1;font:700 11px/1.2 var(--hx-fm);letter-spacing:.12em;text-transform:uppercase;color:#98a5aa}
.hxp .fila .nm{font-weight:700;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hxp .fila .tm{font:700 17px/1 var(--hx-fm);font-variant-numeric:tabular-nums;color:var(--hx-acc)}

/* modalidades */
.hxp .mods{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 20px 8px;margin:30px -20px 0;scrollbar-width:none}
.hxp .mod{scroll-snap-align:start;flex:0 0 80%;max-width:380px;position:relative;border-radius:20px;overflow:hidden;aspect-ratio:4/5;display:flex;align-items:flex-end;padding:20px;container-type:inline-size;color:#fff}
.hxp .mod img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hxp .mod:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.88))}
.hxp .mod div{position:relative;z-index:2}
.hxp .mod .d{font-size:min(46px,calc(8.4cqi * var(--hx-kc)))}
.hxp .mod small{display:block;margin-top:6px;font:700 11px/1.2 var(--hx-fm);letter-spacing:.1em;text-transform:uppercase;color:var(--hx-acc)}
.hxp .mod p{color:rgba(255,255,255,.86);font-size:14px;margin-top:8px;max-width:34ch}

/* mosaico */
.hxp .mos{columns:2;column-gap:6px;margin-top:30px;padding-inline:6px}
.hxp .mos img{width:100%;margin-bottom:6px;border-radius:10px;break-inside:avoid}

/* entrena */
.hxp .app{display:grid;gap:30px;align-items:center}
.hxp .app ul{margin:18px 0 0;padding:0;list-style:none;display:grid;gap:10px}
.hxp .app li{display:flex;gap:10px;align-items:flex-start;color:#98a5aa}
.hxp .app li b{color:#f3f6f7}
.hxp .app li:before{content:"";flex:0 0 14px;height:3px;border-radius:2px;background:var(--hx-grad);margin-top:11px}
.hxp .ph{justify-self:center;width:min(290px,78vw);aspect-ratio:9/19;border-radius:42px;border:9px solid #1d2428;background:#0b0f12;overflow:hidden;position:relative}
.hxp .ph .sc{position:absolute;inset:0;padding:22px 14px;display:flex;flex-direction:column;gap:10px}
.hxp .ph .row{border-radius:14px;background:#141b1f;padding:12px}
.hxp .ph .row small{display:block;color:#98a5aa;font:700 10px/1.2 var(--hx-fm);letter-spacing:.1em;text-transform:uppercase}
.hxp .ph .row b{font-size:15px}
.hxp .ph .barra{height:6px;border-radius:9px;background:#22303a;margin-top:8px;overflow:hidden}
.hxp .ph .barra i{display:block;height:100%;width:64%;background:var(--hx-grad)}

/* llamada final */
.hxp .cierre{position:relative;border-radius:24px;overflow:hidden;min-height:460px;display:flex;align-items:flex-end;padding:26px 22px}
.hxp .cierre img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hxp .cierre:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.9))}
.hxp .cierre > div{position:relative;z-index:2}
.hxp .cierre .d{font-size:clamp(34px,8.6vw,92px);color:#fff}
.hxp .cierre p{color:rgba(255,255,255,.86);margin-top:12px;max-width:42ch}
.hxp .cierre .btn{margin-top:22px;width:100%}

/* botón fijo en el móvil */
.hxp .fija{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:50;transition:transform .3s ease,opacity .3s ease;transform:translateY(140%);opacity:0}
.hxp .fija.on{transform:none;opacity:1}
.hxp .fija a{width:100%;box-shadow:0 12px 30px rgba(0,0,0,.45)}

@media (min-width:768px){
 .hxp{--g:36px}
 .hxp .hero{height:calc(92svh - 64px)}
 .hxp .hero .in{padding-bottom:64px}
 .hxp section{padding-block:110px}
 .hxp .ruta{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));overflow:visible;margin-inline:0;padding-inline:0}
 .hxp .est{max-width:none}
 .hxp .est .tx .d{font-size:clamp(20px,2.1vw,30px)}
 .hxp .pista{display:none}
 .hxp .ciudad{min-height:86svh;display:flex;align-items:flex-end}
 .hxp .ciudad .fc{position:absolute;inset:0;aspect-ratio:auto}
 .hxp .ciudad .fc:after{background:linear-gradient(90deg,rgba(8,10,12,.92),rgba(8,10,12,.55) 45%,rgba(8,10,12,0) 75%)}
 .hxp .ciudad .wrap{padding-block:90px;width:100%}
 .hxp .card{flex-basis:290px}
 .hxp .tab{display:grid;grid-template-columns:1fr 1fr;column-gap:40px}
 .hxp .mods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;margin-inline:0;padding-inline:0}
 .hxp .mod{max-width:none;aspect-ratio:3/4}
 .hxp .mos{columns:4;padding-inline:10px}
 .hxp .app{grid-template-columns:1.1fr .9fr}
 .hxp .cierre{min-height:560px;padding:60px}
 .hxp .cierre .btn{width:auto}
 .hxp .fija{display:none}
}
@media (prefers-reduced-motion:reduce){.hxp *{transition:none!important}}

/* ---- Cabecera de página común (partials/cabecera) ---- */
.hx-cab{position:relative;overflow:hidden;background:var(--hx-negro);color:#fff;display:flex;align-items:flex-end;min-height:220px;container-type:inline-size}
.hx-cab.con-foto{min-height:300px}
.hx-cab-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.hx-cab.con-foto:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,10,12,.2),rgba(8,10,12,.92))}
.hx-cab-in{position:relative;z-index:2;width:100%;max-width:72rem;margin:0 auto;padding:44px 16px 32px}
.hx-cab.centro .hx-cab-in{text-align:center}
.hx-cab.centro .hx-raya,.hx-cab.centro .hx-cab-acts{margin-inline:auto;justify-content:center}
.hx-cab.centro .hx-cab-sub{margin-inline:auto}
.hx-cab-k{color:var(--hx-acc)}
.hx-cab-t{margin-top:10px;font-size:min(72px,11cqi,calc((100cqi - 40px) / (var(--n,8) * var(--hx-cr))));color:#fff;hyphens:manual}
.hx-cab-raya{margin-top:16px}
.hx-cab-sub{margin-top:14px;max-width:56ch;font-size:16px;line-height:1.55;color:rgba(255,255,255,.78)}
.hx-cab-sub b,.hx-cab-sub strong{color:#fff}
.hx-cab-acts{margin-top:20px;display:flex;flex-wrap:wrap;gap:10px}
.hx-cab-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:12px 20px;font-weight:700;font-size:14px;border:1.5px solid rgba(255,255,255,.32);color:#fff}
.hx-cab-btn.p{background:#fff;color:#000;border-color:#fff}
@media (min-width:640px){.hx-cab-in{padding:64px 24px 44px}.hx-cab.con-foto{min-height:380px}}

/* ---- Tipografías candidatas (se prueban con ?t=clave; la fuente se carga solo si se elige) ---- */
html[data-t=clash]{--hx-fd:'Clash Display',Impact,sans-serif;--hx-fx:100%;--hx-fx-t:100%;--hx-fw:700;--hx-fi:normal;--hx-tt:uppercase;--hx-ls:-.01em;--hx-lh:.92;--hx-k:7.51;--hx-kc:1.23;--hx-cr:0.704}
html[data-t=panchang]{--hx-fd:Panchang,Impact,sans-serif;--hx-fx:100%;--hx-fx-t:100%;--hx-fw:800;--hx-fi:normal;--hx-tt:uppercase;--hx-ls:0;--hx-lh:.92;--hx-k:11.12;--hx-kc:0.83;--hx-cr:1.052}
html[data-t=kanit]{--hx-fd:Kanit,Impact,sans-serif;--hx-fx:100%;--hx-fx-t:100%;--hx-fw:800;--hx-fi:italic;--hx-tt:uppercase;--hx-ls:-.01em;--hx-lh:.92;--hx-k:6.86;--hx-kc:1.34;--hx-cr:0.642}
html[data-t=tanker]{--hx-fd:Tanker,Impact,sans-serif;--hx-fx:100%;--hx-fx-t:100%;--hx-fw:400;--hx-fi:normal;--hx-tt:uppercase;--hx-ls:.01em;--hx-lh:.92;--hx-k:4.76;--hx-kc:1.93;--hx-cr:0.439}
html[data-t=cabinet]{--hx-fd:'Cabinet Grotesk',Impact,sans-serif;--hx-fx:100%;--hx-fx-t:100%;--hx-fw:800;--hx-fi:normal;--hx-tt:uppercase;--hx-ls:-.01em;--hx-lh:.92;--hx-k:6.77;--hx-kc:1.36;--hx-cr:0.633}
html[data-t=barlow]{--hx-fd:'Barlow Condensed',Impact,sans-serif;--hx-fx:100%;--hx-fx-t:100%;--hx-fw:800;--hx-fi:italic;--hx-tt:uppercase;--hx-ls:0;--hx-lh:.92;--hx-k:5.1;--hx-kc:1.8;--hx-cr:0.472}
html[data-t=bricolage]{--hx-fd:'Bricolage Grotesque',Impact,sans-serif;--hx-fx:100%;--hx-fx-t:100%;--hx-fw:800;--hx-fi:normal;--hx-tt:uppercase;--hx-ls:-.02em;--hx-lh:.92;--hx-k:6.43;--hx-kc:1.43;--hx-cr:0.6}
html[data-t=dela]{--hx-fd:'Dela Gothic One',Impact,sans-serif;--hx-fx:100%;--hx-fx-t:100%;--hx-fw:400;--hx-fi:normal;--hx-tt:uppercase;--hx-ls:0;--hx-lh:.92;--hx-k:9.96;--hx-kc:0.92;--hx-cr:0.941}
html[data-t=chakra]{--hx-fd:'Chakra Petch',Impact,sans-serif;--hx-fx:100%;--hx-fx-t:100%;--hx-fw:700;--hx-fi:normal;--hx-tt:uppercase;--hx-ls:0;--hx-lh:.92;--hx-k:6.8;--hx-kc:1.35;--hx-cr:0.636}
/* Ronda 2 (26/10): caminos distintos, comparados en /diseno/tipos2 */
html[data-t=contenida]{--hx-fd:Archivo,Impact,sans-serif;--hx-fx:100%;--hx-fx-t:100%;--hx-fw:800;--hx-fi:normal;--hx-tt:uppercase;--hx-ls:-.01em;--hx-lh:.92;--hx-k:7.7;--hx-kc:1.19;--hx-cr:0.722}
html[data-t=ciudad]{--hx-fd:'Big Shoulders Display',Impact,sans-serif;--hx-fx:100%;--hx-fx-t:100%;--hx-fw:800;--hx-fi:normal;--hx-tt:uppercase;--hx-ls:0;--hx-lh:.9;--hx-k:4.83;--hx-kc:1.9;--hx-cr:0.449}
html[data-t=spartan]{--hx-fd:'League Spartan',Impact,sans-serif;--hx-fx:100%;--hx-fx-t:100%;--hx-fw:800;--hx-fi:normal;--hx-tt:uppercase;--hx-ls:-.02em;--hx-lh:.92;--hx-k:6.58;--hx-kc:1.4;--hx-cr:0.61}
html[data-t=limpia]{--hx-fd:Geist,system-ui,sans-serif;--hx-fx:100%;--hx-fx-t:100%;--hx-fw:700;--hx-fi:normal;--hx-tt:none;--hx-ls:-.045em;--hx-lh:.95;--hx-k:5.91;--hx-kc:1.56;--hx-cr:0.515}
html[data-t=editorial]{--hx-fd:'Instrument Serif',Georgia,serif;--hx-fx:100%;--hx-fx-t:100%;--hx-fw:400;--hx-fi:italic;--hx-tt:none;--hx-ls:-.01em;--hx-lh:.95;--hx-k:4.62;--hx-kc:1.99;--hx-cr:0.402}
/* Ronda 3 (26/10): letras de la familia del logo, más pequeñas (k y cr un 25-30 % mayores = titular más contenido); /diseno/tipos3 */
html[data-t=russo]{--hx-fd:'Russo One',Impact,sans-serif;--hx-fx:100%;--hx-fx-t:100%;--hx-fw:400;--hx-fi:normal;--hx-tt:uppercase;--hx-ls:0;--hx-lh:.95;--hx-k:9.27;--hx-kc:.99;--hx-cr:.85}
html[data-t=saira]{--hx-fd:Saira,Impact,sans-serif;--hx-fx:100%;--hx-fx-t:100%;--hx-fw:800;--hx-fi:normal;--hx-tt:uppercase;--hx-ls:0;--hx-lh:.95;--hx-k:8.63;--hx-kc:1.07;--hx-cr:.81}
html[data-t=tomorrow]{--hx-fd:Tomorrow,Impact,sans-serif;--hx-fx:100%;--hx-fx-t:100%;--hx-fw:800;--hx-fi:normal;--hx-tt:uppercase;--hx-ls:-.01em;--hx-lh:.95;--hx-k:10.45;--hx-kc:.88;--hx-cr:.97}
html[data-t=exo]{--hx-fd:'Exo 2',Impact,sans-serif;--hx-fx:100%;--hx-fx-t:100%;--hx-fw:800;--hx-fi:normal;--hx-tt:uppercase;--hx-ls:-.01em;--hx-lh:.95;--hx-k:8.57;--hx-kc:1.07;--hx-cr:.8}
html:is([data-t=limpia],[data-t=editorial]) :is(h1,h2){text-transform:none!important}
html[data-t] h1,html[data-t] h2{font-weight:var(--hx-fw)}

/* =====================================================================
   PÁGINAS INTERIORES (públicas e intranet): aprobado el 26/10/2026
   ===================================================================== */
/* ---- Base de las páginas interiores ---- */
body{background:var(--hx-claro)}
main{--hx-borde:#dde4e6}

/* Antetítulos (texto pequeño en mayúsculas espaciadas): letra de datos, como en la portada */
main :is(p,span,div,h2,h3,h4)[class*="tracking-[0."].uppercase:not(label *):not(label),
main :is(p,span,div)[class*="tracking-[0."][class*="text-[1"]:not(label *){font-family:var(--hx-fm)!important;letter-spacing:.12em!important;font-weight:700!important}

/* Titulares: sin degradado en el texto (se queda limpio, la raya de color va aparte) */
:is(h1,h2,h3) .bg-clip-text{background:none!important;-webkit-text-fill-color:currentColor!important;color:inherit!important}
main h1,main h2{text-wrap:balance}

/* Botones: píldora, sin mayúsculas, peso firme (como en la portada) */
main :is(a,button)[class*="py-"]:is(.bg-accent,.border,[class*="bg-white"]):is(.uppercase,[class*="rounded-xl"],[class*="rounded-2xl"],[class*="rounded-lg"],[class*="rounded-md"]):not(.hx-cab-btn):not([class*="aspect-"]):not(.block.border.bg-surface){border-radius:999px!important;text-transform:none!important;letter-spacing:0!important;font-weight:700!important}
main :is(a,button).bg-accent{background:var(--hx-tinta)!important;color:#fff!important}
main :is(a,button).bg-accent:hover{background:#000!important}
main section.grain :is(a,button).bg-accent,main .bg-black :is(a,button).bg-accent,main [class*="from-black"] ~ * :is(a,button).bg-accent{background:#fff!important;color:#000!important}

/* Etiquetas de estado: letra de datos */
main span[class*="rounded-full"][class*="text-[10px]"].uppercase,
main span[class*="rounded-full"][class*="text-[11px]"].uppercase{font-family:var(--hx-fm)!important;letter-spacing:.06em!important}

/* Tarjetas: esquinas algo más contenidas y borde frío */
main .rounded-3xl{border-radius:22px}
main .border-border{border-color:var(--hx-borde)}

/* Cifras y tiempos en letra de datos */
main .tabular-nums,main td.font-mono,main .font-mono{font-family:var(--hx-fm)!important}

/* Cabeceras con foto de las fichas (evento, 2027…): degradado de la marca en vez de la raya fina superior */
main section.grain > .hbx-grad{display:none}

/* Más aire entre palabras en los titulares (con letra ancha y mayúsculas los espacios quedaban muy justos) */
h1,h2,.hx-d,.hxp .d{word-spacing:.12em}

/* Cualquier botón o enlace con forma de botón: sin mayúsculas forzadas */
main :is(a,button)[class*="py-"][class*="rounded"].uppercase:not([class*="aspect-"]){text-transform:none!important;letter-spacing:0!important}

/* Integrantes de parejas/equipos en el tablero de campeones de la portada */
.hxp .fila .nm .block{white-space:normal;margin-top:2px}
.hxp .text-muted{color:#98a5aa!important}

/* ---- Portada: vídeo a pantalla completa con clips que rotan, cabecera transparente y flecha para bajar ---- */
.hxp .hero video.hx-clip{opacity:0;transition:opacity .7s ease}.hxp .hero video.hx-clip.on{opacity:1}
/* Portada a pantalla completa con la cabecera transparente encima */
.hx-top-home{position:fixed!important;left:0;right:0;top:0;background:transparent;border-bottom-color:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;transition:background .3s,border-color .3s}
.hx-top-home.solido,.hx-top-home.abierto{background:rgba(8,10,12,.94);border-bottom-color:rgba(255,255,255,.08);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.hxp .hero{height:100svh;min-height:560px;max-height:none}
.hxp .hero:after{background:linear-gradient(180deg,rgba(0,0,0,.55) 0%,rgba(0,0,0,0) 26%,rgba(0,0,0,.08) 50%,rgba(0,0,0,.9) 100%)}
.hxp .hero .in{padding-bottom:110px}
.hxp .hero .cta-hero{width:100%;padding:17px 24px;font-size:16px}
.hxp .baja{position:absolute;left:50%;bottom:calc(18px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:2px;color:#fff;font:700 11px/1.2 var(--hx-fm);letter-spacing:.12em;text-transform:uppercase;opacity:.9}
.hxp .baja svg{animation:hxBaja 1.6s ease-in-out infinite}
@keyframes hxBaja{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}
@media (min-width:768px){.hxp .hero{height:100svh}.hxp .hero .in{padding-bottom:120px}.hxp .hero .cta-hero{width:auto}}
@media (prefers-reduced-motion:reduce){.hxp .baja svg{animation:none}}


/* ---- Portada con el vídeo limpio: solo una línea pequeña y la flecha; titular y botón debajo ---- */
.hxp .hero:after{background:linear-gradient(180deg,rgba(0,0,0,.5) 0%,rgba(0,0,0,0) 22%,rgba(0,0,0,0) 70%,rgba(0,0,0,.6) 100%)}
.hxp .hero .in{padding-bottom:70px}
.hxp .hero .lema{color:rgba(255,255,255,.9);font-size:14px;line-height:1.4;text-shadow:0 1px 8px rgba(0,0,0,.5);max-width:30ch}
.hxp .hero .lema b{font-family:var(--hx-fd);font-stretch:var(--hx-fx);font-weight:var(--hx-fw);text-transform:var(--hx-tt);letter-spacing:.02em;color:#fff}
.hxp .baja{gap:0}
.hxp section.intro{padding-block:44px 56px;background:var(--hx-negro)}
.hxp .intro h1{font-size:min(150px,calc((min(100vw,1200px) - 2*var(--g))/var(--hx-k)));color:#fff;margin:0}
.hxp .intro .hx-raya{margin-top:18px}
.hxp .intro .sub{margin-top:14px;font-size:clamp(18px,4.8vw,26px);color:rgba(255,255,255,.85);line-height:1.3;max-width:30ch}
.hxp .intro .acts{margin-top:24px;display:flex;flex-wrap:wrap;gap:10px}
.hxp .intro .cta-hero{width:100%;padding:17px 24px;font-size:16px}
.hxp .intro .btn-g{width:100%}
@media (min-width:768px){.hxp section.intro{padding-block:72px 84px}.hxp .intro .cta-hero,.hxp .intro .btn-g{width:auto}.hxp .hero .lema{font-size:16px;max-width:none}}

/* ---- Portada: vídeo sin textos encima; solo el aviso de deslizar, bien visible ---- */
.hxp .hero:after{background:linear-gradient(180deg,rgba(0,0,0,.5) 0%,rgba(0,0,0,0) 22%,rgba(0,0,0,0) 75%,rgba(0,0,0,.45) 100%)}
.hxp .baja{bottom:calc(22px + env(safe-area-inset-bottom,0px));gap:8px;opacity:1}
.hxp .baja-txt{font:700 12px/1 var(--hx-fm);letter-spacing:.18em;text-transform:uppercase;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.6)}
.hxp .baja-btn{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#000;box-shadow:0 8px 24px rgba(0,0,0,.35);animation:hxBaja 1.6s ease-in-out infinite}
.hxp .baja svg{animation:none}
@media (prefers-reduced-motion:reduce){.hxp .baja-btn{animation:none}}
