@property --anillo{syntax:"<number>";inherits:false;initial-value:0}
@property --barra{syntax:"<number>";inherits:false;initial-value:0}

:root{
  --superficie:#FFFFFF;
  --superficie-2:var(--color-light);
  --tinte:#EAF4FF;
  --borde:color-mix(in srgb,var(--color-primary) 13%,transparent);
  --borde-fuerte:color-mix(in srgb,var(--color-primary) 28%,transparent);
  --sobre-oscuro:var(--color-text);
  --atenuado-oscuro:var(--color-text-light);
  --borde-oscuro:var(--borde);
  --vidrio:color-mix(in srgb,var(--superficie) 80%,transparent);

  --acento-texto:var(--color-primary);

  --sombra-1:0 1px 2px color-mix(in srgb,var(--color-secondary) 10%,transparent);
  --sombra-2:0 .5rem 1.5rem -.5rem color-mix(in srgb,var(--color-secondary) 22%,transparent);
  --sombra-3:0 1.5rem 3rem -1rem color-mix(in srgb,var(--color-secondary) 28%,transparent);
  --sombra-4:0 2.5rem 5rem -1.5rem color-mix(in srgb,var(--color-dark) 28%,transparent);

  --r-xs:.5rem;
  --r-s:.875rem;
  --r-m:.875rem;
  --r-l:.875rem;
  --r-xl:.875rem;
  --r-full:999px;

  --e-1:.25rem;  --e-2:.5rem;   --e-3:.75rem;  --e-4:1rem;
  --e-5:1.5rem;  --e-6:2rem;    --e-7:3rem;    --e-8:4.5rem;

  --t-rapido:170ms;
  --t-medio:280ms;
  --t-lento:520ms;
  --curva:cubic-bezier(.22,1,.36,1);
  --curva-suave:cubic-bezier(.4,0,.2,1);

  --cabecera:4rem;
}

html{
  scroll-behavior:smooth;
  scroll-padding-top:calc(var(--cabecera) + 1.5rem);
  background:var(--superficie);
}

body{background:var(--superficie);overflow-x:hidden}

h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;letter-spacing:-.022em;line-height:1.14;text-wrap:balance}

p{text-wrap:pretty}

figure{margin:0}

picture{display:contents}

::selection{background:color-mix(in srgb,var(--color-accent) 28%,transparent)}

/* El sprite de iconos no lleva viewBox. Sin una regla propia le aplica el `height:auto` de la hoja
   base, y Safari resuelve eso como los 150 px de alto de un elemento reemplazado sin proporción:
   un hueco blanco encima de la cabecera en todas las páginas. Se saca del flujo en lugar de
   ocultarlo, porque con `display:none` Safari deja de resolver los <use> que apuntan aquí. */
.sprite{position:absolute;width:0;height:0;overflow:hidden}

.skip{
  position:absolute;
  left:var(--e-4);
  top:var(--e-4);
  z-index:100;
  padding:.75rem 1.25rem;
  border-radius:var(--r-full);
  background:var(--color-dark);
  color:var(--color-light);
  font-weight:600;
  text-decoration:none;
  transform:translateY(-200%);
  transition:transform var(--t-rapido) var(--curva);
}
.skip:focus-visible{transform:translateY(0)}

.sr-only{
  position:absolute;
  width:1px;height:1px;
  padding:0;margin:-1px;
  overflow:hidden;
  clip-path:inset(50%);
  white-space:nowrap;
}

.wrap--estrecho{max-width:48rem}

.section--tinte{background:var(--tinte)}

.section--oscuro{
  position:relative;
  background:var(--tinte);
  color:var(--sobre-oscuro);
  isolation:isolate;
}
.section--oscuro h2,.section--oscuro h3{color:var(--sobre-oscuro)}
.section--oscuro .lead{color:var(--atenuado-oscuro)}
.section--oscuro a{color:var(--color-primary)}
.section--oscuro+.section--tinte{background:var(--superficie)}

.section__cabeza{max-width:44rem;margin-bottom:var(--e-7)}
*+.section__cabeza{margin-top:var(--e-8)}
.section__cabeza--centro{margin-inline:auto;text-align:center}

.pastilla{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  margin:0 0 var(--e-5);
  padding:.4rem .9rem .4rem .5rem;
  border:1px solid var(--borde);
  border-radius:var(--r-full);
  background:var(--superficie);
  color:var(--color-primary);
  font-family:var(--font-detail);
  font-size:.75rem;
  font-weight:500;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.pastilla__punto{
  width:1.5rem;height:1.5rem;
  display:grid;place-items:center;
  border-radius:50%;
  background:color-mix(in srgb,var(--color-accent) 16%,transparent);
  color:var(--color-accent);
  flex:none;
}
.pastilla__punto svg{width:.875rem;height:.875rem}
.pastilla--oscura{
  border-color:var(--borde-oscuro);
  background:var(--vidrio);
  color:var(--sobre-oscuro);
  backdrop-filter:blur(12px);
}

.eyebrow{
  margin:0 0 var(--e-3);
  color:var(--acento-texto);
  font-family:var(--font-detail);
  font-size:.75rem;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.section--oscuro .eyebrow{color:var(--acento-texto)}

.display--xl{font-size:clamp(2.5rem,1.5rem + 4.2vw,4.5rem);letter-spacing:-.035em}
.display--s{font-size:clamp(1.5rem,1.2rem + 1.2vw,2rem)}
.display em{font-style:normal;color:var(--acento-texto)}
.section--oscuro .display em,.hero .display em,.page-head .display em{color:var(--acento-texto)}
.section--oscuro .display em{color:var(--acento-texto)}

.resalte{
  position:relative;
  white-space:nowrap;
}
.resalte::after{
  content:"";
  position:absolute;
  left:-.08em;right:-.08em;bottom:.04em;
  height:.34em;
  border-radius:var(--r-full);
  background:color-mix(in srgb,var(--color-accent) 30%,transparent);
  z-index:-1;
}

.btn__icono{
  display:grid;
  place-items:center;
  width:1.75rem;height:1.75rem;
  margin-right:-.5rem;
  border-radius:50%;
  background:color-mix(in srgb,var(--color-text) 12%,transparent);
  flex:none;
  transition:transform var(--t-medio) var(--curva);
}
.btn__icono svg{width:.875rem;height:.875rem}
.btn:hover .btn__icono{transform:translateX(.2rem)}

.btn{border-radius:var(--r-xs)}
.btn--fantasma{
  background:transparent;
  border:1px solid var(--borde-fuerte);
  color:var(--color-primary);
}
.btn--fantasma:hover{
  background:color-mix(in srgb,var(--color-primary) 6%,transparent);
  border-color:var(--color-primary);
  box-shadow:none;
}
.btn--fantasma .btn__icono{background:color-mix(in srgb,var(--color-primary) 10%,transparent)}

.btn--claro{
  background:var(--vidrio);
  border:1px solid var(--borde-oscuro);
  color:var(--sobre-oscuro);
  backdrop-filter:blur(12px);
}
.btn--claro:hover{
  background:color-mix(in srgb,var(--color-primary) 6%,var(--superficie));
  box-shadow:none;
}
.btn--claro .btn__icono{background:color-mix(in srgb,var(--color-primary) 10%,transparent)}

.btn--pequeno{min-height:2.5rem;padding:.4rem 1.1rem;font-size:.9375rem}
.btn--bloque{width:100%}

.enlace-flecha{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  color:var(--color-primary);
  font-weight:600;
  text-decoration:none;
}
.enlace-flecha svg{width:1rem;height:1rem;transition:transform var(--t-medio) var(--curva)}
.enlace-flecha:hover{text-decoration:underline;text-underline-offset:.25em}
.enlace-flecha:hover svg{transform:translateX(.25rem)}

.top{
  position:sticky;
  top:0;
  z-index:50;
  display:flex;
  align-items:center;
  gap:var(--e-5);
  min-height:var(--cabecera);
  padding-inline:clamp(1.125rem,4vw,2.5rem);
  background:linear-gradient(180deg,color-mix(in srgb,var(--superficie) 92%,transparent),color-mix(in srgb,var(--superficie) 82%,transparent));
  -webkit-backdrop-filter:blur(20px) saturate(1.8);
  backdrop-filter:blur(20px) saturate(1.8);
  box-shadow:inset 0 -1px 0 color-mix(in srgb,var(--superficie) 70%,transparent);
}
.top::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  box-shadow:0 1px 0 var(--borde),0 1.25rem 2.5rem -1.75rem color-mix(in srgb,var(--color-secondary) 40%,transparent);
  opacity:0;
  transition:opacity var(--t-medio) var(--curva-suave);
  pointer-events:none;
}
.top--fijo::after{opacity:1}
.top:has(.nav--abierta){background:var(--superficie)}

@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){
  .top{background:color-mix(in srgb,var(--superficie) 96%,transparent)}
}

@media (prefers-reduced-transparency:reduce){
  .top{background:var(--superficie);-webkit-backdrop-filter:none;backdrop-filter:none}
}

.marca{display:flex;align-items:center;gap:.6rem;flex:none;min-width:0;text-decoration:none}
.foot .marca{flex-wrap:wrap}
.marca__logo{width:auto;height:2.5rem}
.marca__nombre{
  color:var(--sobre-oscuro);
  font-family:var(--font-display);
  font-size:1.125rem;
  font-weight:800;
  letter-spacing:-.02em;
}

.nav{display:flex;align-items:center;gap:.25rem;margin-left:auto}
.nav__enlace{
  position:relative;
  padding:.5rem .8rem;
  border-radius:var(--r-full);
  color:color-mix(in srgb,var(--color-dark) 72%,var(--superficie));
  font-size:.9375rem;
  font-weight:500;
  text-decoration:none;
  transition:color var(--t-rapido) ease,background-color var(--t-rapido) ease;
}
.nav__enlace:hover,.nav__enlace:focus-visible{color:var(--color-dark)}
.nav__enlace::after{
  content:"";
  position:absolute;
  left:.8rem;right:.8rem;bottom:.15rem;
  height:2px;
  border-radius:2px;
  background:var(--color-accent);
  transform:scaleX(0);
  transform-origin:50% 50%;
  transition:transform var(--t-medio) var(--curva);
}
.nav__enlace:hover::after,
.nav__enlace:focus-visible::after,
.nav__enlace[aria-current="page"]::after{transform:scaleX(1)}
.nav__enlace[aria-current="page"]{color:var(--color-dark)}
.nav__sep{width:1px;height:1.5rem;margin-inline:.5rem;background:var(--borde)}

.menu-btn{
  display:none;
  width:2.75rem;height:2.75rem;
  margin-left:auto;
  padding:0;
  border:1px solid var(--borde);
  border-radius:var(--r-full);
  background:color-mix(in srgb,var(--superficie) 72%,transparent);
  box-shadow:inset 0 1px 0 var(--superficie),var(--sombra-1);
  color:var(--color-dark);
  cursor:pointer;
}
.menu-btn svg{width:1.25rem;height:1.25rem;margin-inline:auto}

.moneda{position:relative;flex:none;margin-left:var(--e-3)}
.moneda__boton{display:inline-flex;align-items:center;gap:.45rem;min-height:2.5rem;padding:.3rem .65rem .3rem .5rem;border:1px solid var(--borde);border-radius:var(--r-xs);background:color-mix(in srgb,var(--superficie) 72%,transparent);box-shadow:inset 0 1px 0 var(--superficie),var(--sombra-1);color:var(--color-dark);font-family:var(--font-detail);font-size:.8125rem;font-weight:600;letter-spacing:.04em;cursor:pointer;transition:border-color var(--t-rapido) ease,background-color var(--t-rapido) ease}
.moneda__boton:hover,.moneda__boton[aria-expanded="true"]{border-color:var(--borde-fuerte);background:var(--tinte)}
.moneda__bandera{width:1.25rem;height:1.25rem;flex:none;border-radius:50%;box-shadow:0 0 0 1px var(--borde)}
.moneda__flecha{width:.9rem;height:.9rem;opacity:.7;transition:transform var(--t-rapido) var(--curva)}
.moneda__boton[aria-expanded="true"] .moneda__flecha{transform:rotate(180deg)}
.moneda__panel{position:absolute;right:0;top:calc(100% + .5rem);width:16.5rem;padding:.4rem;border:1px solid var(--borde);border-radius:var(--r-s);background:var(--superficie);box-shadow:var(--sombra-3);z-index:60;animation:entra-pregunta var(--t-medio) var(--curva) both}
.moneda__lista{margin:0;padding:0;list-style:none;max-height:min(60vh,22rem);overflow:auto}
.moneda__lista button{display:flex;align-items:center;gap:.6rem;width:100%;padding:.55rem .6rem;border:0;border-radius:var(--r-xs);background:none;color:var(--color-text);font:inherit;font-size:.9375rem;text-align:left;cursor:pointer;transition:background-color var(--t-rapido) ease}
.moneda__lista button:hover,.moneda__lista button:focus-visible{background:var(--tinte);outline:none}
.moneda__lista button[aria-selected="true"]{background:color-mix(in srgb,var(--color-primary) 8%,transparent);color:var(--color-primary)}
.moneda__lista svg{width:1.25rem;height:1.25rem;flex:none;border-radius:50%;box-shadow:0 0 0 1px var(--borde)}
.moneda__lista span{flex:1}
.moneda__lista b{font-family:var(--font-detail);font-size:.75rem;font-weight:600;color:var(--color-text-light)}
.moneda__lista button[aria-selected="true"] b{color:inherit}
.moneda__nota{margin:.45rem .6rem .3rem;color:var(--color-text-light);font-size:.75rem;line-height:1.4}

@media (max-width:63.99em){
  .menu-btn{display:block;margin-left:0}
  .moneda{margin-left:auto}
  .moneda__codigo{display:none}
  .nav{
    position:fixed;
    inset:var(--cabecera) 0 auto 0;
    flex-direction:column;
    align-items:stretch;
    gap:.25rem;
    margin:0;
    padding:var(--e-4) clamp(1.125rem,4vw,2.5rem) var(--e-6);
    background:var(--superficie);
    border-bottom:1px solid var(--borde);
    transform:translateY(-110%);
    visibility:hidden;
    transition:transform var(--t-medio) var(--curva),visibility var(--t-medio);
  }
  .nav--abierta{transform:translateY(0);visibility:visible}
  .nav__enlace{padding:.85rem 1rem;font-size:1.0625rem}
  .nav__enlace[aria-current="page"]::after{display:none}
  .nav__sep{display:none}
  .nav .btn{margin-top:var(--e-3)}
}

.hero{
  position:relative;
  background:var(--tinte);
  color:var(--sobre-oscuro);
  isolation:isolate;
  overflow:hidden;
}
.hero__fondo{
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    radial-gradient(60rem 40rem at 78% 18%,color-mix(in srgb,var(--color-primary) 16%,transparent),transparent 62%),
    radial-gradient(40rem 32rem at 12% 92%,color-mix(in srgb,var(--superficie) 70%,transparent),transparent 60%),
    linear-gradient(175deg,var(--tinte),color-mix(in srgb,var(--color-primary) 6%,var(--tinte)) 58%);
}
.hero__fondo::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(to right,var(--borde-oscuro) 1px,transparent 1px),
    linear-gradient(to bottom,var(--borde-oscuro) 1px,transparent 1px);
  background-size:4.5rem 4.5rem;
  mask-image:radial-gradient(70% 60% at 50% 35%,#000,transparent 75%);
  opacity:.5;
}
.hero__fondo::after{
  content:"";
  position:absolute;
  left:50%;top:-30%;
  width:min(90rem,160%);
  aspect-ratio:1;
  translate:-50% 0;
  border-radius:50%;
  background:radial-gradient(circle,color-mix(in srgb,var(--color-primary) 12%,transparent),transparent 58%);
  animation:respirar 14s var(--curva-suave) infinite;
}

@keyframes respirar{
  0%,100%{opacity:.55;scale:1}
  50%{opacity:.85;scale:1.08}
}

.hero__ventana{overflow:hidden}
.hero__pista{display:flex}
.hero__pista>*{flex:0 0 100%}

.slide{
  display:grid;
  grid-template-columns:3fr 1fr;
  align-items:center;
  gap:clamp(1.5rem,4vw,3rem);
  min-height:22rem;
  padding-block:.75rem .5rem;
}

.slide__cuerpo{max-width:46rem;container-type:inline-size}
.slide__titulo{margin:0 0 var(--e-4);font-size:min(3.15rem,8.3cqw);letter-spacing:-.035em;white-space:nowrap}
.slide__texto{
  margin:0 0 var(--e-6);
  max-width:40ch;
  color:var(--atenuado-oscuro);
  font-size:clamp(1.0625rem,1rem + .4vw,1.1875rem);
}

.slide__ventajas{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem var(--e-5);
  margin:0 0 var(--e-6);
  padding:0;
  list-style:none;
}
.slide__ventajas li{
  display:flex;
  align-items:center;
  gap:.5rem;
  color:var(--atenuado-oscuro);
  font-size:.9375rem;
}
.slide__ventajas li::before{
  content:"";
  width:1.125rem;height:1.125rem;
  flex:none;
  border-radius:50%;
  background:color-mix(in srgb,var(--color-contrast) 22%,transparent)
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FF8A3D' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 13 4 4L19 7'/%3E%3C/svg%3E") center/.7rem no-repeat;
}
.slide__ventajas[data-bullets="vertical"]{flex-direction:column;gap:.6rem}

.acciones{display:flex;flex-wrap:wrap;gap:var(--e-3);margin-bottom:var(--e-7)}

.marcadores{
  display:flex;
  flex-wrap:wrap;
  gap:var(--e-6);
  margin:0;
  padding:0;
  list-style:none;
}
.marcador__cifra{
  display:block;
  color:var(--sobre-oscuro);
  font-family:var(--font-display);
  font-size:1.75rem;
  font-weight:800;
  font-variant-numeric:tabular-nums;
  letter-spacing:-.03em;
  line-height:1.1;
}
.marcador__etiqueta{
  display:block;
  color:var(--atenuado-oscuro);
  font-family:var(--font-detail);
  font-size:.75rem;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.marcadores--claro .marcador__cifra{color:var(--color-primary)}
.marcadores--claro .marcador__etiqueta{color:var(--color-text-light)}

.escena{
  position:relative;
  display:grid;
  place-items:end center;
  min-height:21rem;
}
.escena__halo{
  position:absolute;
  left:50%;bottom:0;
  width:min(17rem,100%);
  aspect-ratio:1;
  translate:-50% 0;
  border-radius:50% 50% 42% 58%/55% 48% 52% 45%;
  background:
    radial-gradient(circle at 50% 44%,
      color-mix(in srgb,var(--color-primary) 8%,var(--color-light)) 0%,
      color-mix(in srgb,var(--color-primary) 34%,transparent) 44%,
      color-mix(in srgb,var(--color-primary) 10%,transparent) 64%,
      transparent 74%);
  animation:flotar-halo 18s ease-in-out infinite;
}
.escena__halo::after{
  content:"";
  position:absolute;
  inset:8%;
  border-radius:inherit;
  border:1px dashed color-mix(in srgb,var(--color-primary) 24%,transparent);
}
@keyframes flotar-halo{
  0%,100%{border-radius:50% 50% 42% 58%/55% 48% 52% 45%}
  50%{border-radius:44% 56% 52% 48%/48% 55% 45% 52%}
}

.escena__figura{
  position:relative;
  width:min(14rem,100%);
  mask-image:linear-gradient(to bottom,#000 88%,transparent 100%);
  filter:drop-shadow(0 1.5rem 2.5rem transparent);
}

.flota{
  position:absolute;
  z-index:2;
  display:flex;
  align-items:center;
  gap:.75rem;
  padding:.75rem .95rem;
  border:1px solid var(--borde-oscuro);
  border-radius:var(--r-m);
  background:color-mix(in srgb,var(--superficie) 78%,transparent);
  backdrop-filter:blur(16px) saturate(1.3);
  box-shadow:var(--sombra-4);
  animation:flotar 7s ease-in-out infinite;
}
.flota--a{top:30%;left:-52%;animation-delay:-1s}
.flota--b{top:56%;right:-46%;animation-delay:-3.5s}
.flota--c{bottom:18%;left:-58%;animation-delay:-5.5s}

.escena .flota{padding:.5rem .7rem;gap:.55rem;border-radius:var(--r-s)}
.escena .flota__titulo{font-size:.8125rem}
.escena .flota__dato{font-size:.6875rem}
.escena .flota__cifra{font-size:1.25rem}
.escena .anillo{width:2.5rem}
.escena .anillo::before{inset:.22rem}
.escena .anillo__valor{font-size:.8125rem}
.escena .flota__icono{width:1.125rem;height:1.125rem}

.acciones:empty{display:none}

@keyframes flotar{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-.65rem)}
}

.flota__texto{display:flex;flex-direction:column;line-height:1.25}
.flota__titulo{
  color:var(--sobre-oscuro);
  font-family:var(--font-display);
  font-size:.9375rem;
  font-weight:700;
}
.flota__dato{
  color:var(--atenuado-oscuro);
  font-family:var(--font-detail);
  font-size:.75rem;
  font-variant-numeric:tabular-nums;
}
.flota__cifra{
  color:var(--color-primary);
  font-family:var(--font-display);
  font-size:1.5rem;
  font-weight:800;
  font-variant-numeric:tabular-nums;
  letter-spacing:-.03em;
}

.chispa{
  position:absolute;
  color:var(--color-contrast);
  opacity:.75;
  animation:brillar 4s ease-in-out infinite;
}
.chispa svg{width:100%;height:100%}
.chispa--1{top:2%;right:14%;width:1.5rem;height:1.5rem}
.chispa--2{bottom:26%;right:2%;width:1rem;height:1rem;animation-delay:-1.8s}
.chispa--3{top:56%;left:-5%;width:1.125rem;height:1.125rem;animation-delay:-3.2s}
@keyframes brillar{
  0%,100%{opacity:.25;transform:scale(.85) rotate(0)}
  50%{opacity:.9;transform:scale(1) rotate(45deg)}
}

.anillo{
  position:relative;
  display:grid;
  place-items:center;
  width:3.25rem;
  aspect-ratio:1;
  flex:none;
  border-radius:50%;
  background:conic-gradient(var(--color-contrast) calc(var(--anillo) * 1%),color-mix(in srgb,var(--color-primary) 12%,transparent) 0);
  transition:--anillo 1.1s var(--curva);
}
.anillo::before{
  content:"";
  position:absolute;
  inset:.28rem;
  border-radius:50%;
  background:var(--superficie);
}
.anillo__valor{
  position:relative;
  color:var(--color-primary);
  font-family:var(--font-display);
  font-size:.9375rem;
  font-weight:800;
  font-variant-numeric:tabular-nums;
}
.anillo--grande{width:5.5rem}
.anillo--grande::before{inset:.4rem}
.anillo--grande .anillo__valor{font-size:1.5rem}

.franja{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));
  gap:var(--e-4);
  padding:var(--e-5);
  border:1px solid var(--borde);
  border-radius:var(--r-l);
  background:var(--superficie);
  box-shadow:var(--sombra-2);
}
.franja__dato{display:flex;align-items:center;gap:.85rem}
.franja__icono{
  display:grid;
  place-items:center;
  width:2.75rem;height:2.75rem;
  flex:none;
  border-radius:var(--r-s);
  background:color-mix(in srgb,var(--color-primary) 8%,transparent);
  color:var(--color-primary);
}
.franja__icono svg{width:1.25rem;height:1.25rem}
.franja__texto{display:flex;flex-direction:column;line-height:1.3}
.franja__titulo{font-family:var(--font-display);font-size:1rem;font-weight:700}
.franja__pie{color:var(--color-text-light);font-size:.8125rem}

.franja--flotante{margin-top:-3.5rem;position:relative;z-index:3}

.filtros{
  position:relative;
  z-index:3;
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  align-items:center;
  gap:.15rem;
  width:max-content;
  max-width:100%;

  margin:calc(-1 * clamp(3rem,7vw,5.5rem) - 1rem) 0 var(--e-5) auto;
  padding:.25rem;
  border:1px solid var(--borde);
  border-radius:var(--r-xs);
  background:var(--superficie);
  box-shadow:var(--sombra-2);
}
.filtro{
  display:flex;
  align-items:center;
  gap:.3rem;
  padding:.3rem .55rem;
  border:0;
  border-radius:.375rem;
  background:transparent;
  color:var(--color-text);
  cursor:pointer;
  transition:background-color var(--t-rapido) ease,box-shadow var(--t-rapido) ease;
}
.filtro:hover{background:var(--tinte)}
.filtro:focus-within{background:var(--tinte);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 32%,transparent)}
.filtro svg{width:.75rem;height:.75rem;flex:none;color:var(--color-text-light)}
.filtro select{
  appearance:none;
  max-width:11rem;
  border:0;
  padding:0;
  background:transparent;
  color:inherit;
  font:inherit;
  font-size:.8125rem;
  font-weight:600;
  text-overflow:ellipsis;
  cursor:pointer;
}
.filtro select:focus{outline:none}
.filtros__sep{width:1px;align-self:stretch;margin-block:.35rem;background:var(--borde)}
@media (max-width:40em){
  .filtros{width:100%;flex-wrap:nowrap}
  .filtro{flex:1;min-width:0}
  .filtro select{flex:1;min-width:0;max-width:none;overflow:hidden}
}

.ranking{display:grid;gap:var(--e-6);margin:var(--e-6) 0 0;padding:0;list-style:none}
[hidden]{display:none!important}

.fila{
  position:relative;
  display:grid;
  grid-template-columns:3.5rem minmax(0,1fr) 13rem;
  align-items:center;
  gap:var(--e-5);
  padding:var(--e-5);
  border:1px solid var(--borde);
  border-radius:var(--r-l);
  background:var(--superficie);
  box-shadow:var(--sombra-1);
  transition:transform var(--t-medio) var(--curva),box-shadow var(--t-medio) var(--curva),border-color var(--t-medio) ease;
}
.fila:hover{
  transform:translateY(-3px);
  border-color:var(--borde-fuerte);
  box-shadow:var(--sombra-3);
}

.fila--destacada{
  border-color:color-mix(in srgb,var(--color-accent) 45%,transparent);
  box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent) 22%,transparent),var(--sombra-2);
}
.fila--nuestra{
  border-color:color-mix(in srgb,var(--color-primary) 40%,transparent);
  background:linear-gradient(180deg,color-mix(in srgb,var(--color-primary) 4%,var(--superficie)),var(--superficie));
}

.fila__puesto{
  display:grid;
  place-items:center;
  width:3.5rem;height:3.5rem;
  border-radius:var(--r-m);
  background:var(--tinte);
  color:var(--color-primary);
  font-family:var(--font-display);
  font-size:1.25rem;
  font-weight:800;
  font-variant-numeric:tabular-nums;
}
.fila--destacada .fila__puesto{background:var(--color-accent);color:var(--color-text)}

.fila__cuerpo{min-width:0}

.fila__marca{display:flex;align-items:center;gap:.75rem;margin-bottom:.35rem;flex-wrap:wrap}
.fila__nombre{margin:0;font-size:1.1875rem}


.fila__ventajas{display:flex;flex-wrap:wrap;gap:.4rem .9rem;margin:0 0 .75rem;padding:0;list-style:none}
.fila__ventajas li{display:flex;align-items:center;gap:.4rem;font-size:.875rem}
.fila__ventajas li::before{
  content:"";
  width:1rem;height:1rem;
  flex:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230073E6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 13 4 4L19 7'/%3E%3C/svg%3E") center/contain no-repeat;
}

.fila__pie{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.4rem .85rem;
  color:var(--color-text-light);
  font-family:var(--font-detail);
  font-size:.75rem;
}
.fila__pie b{color:var(--color-text);font-weight:600}

.fila__lado{display:flex;flex-direction:column;align-items:stretch;gap:.6rem;text-align:center}

.nota{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.75rem;
  padding:.65rem .9rem;
  border-radius:var(--r-m);
  background:var(--tinte);
  color:var(--sobre-oscuro);
}
.nota__texto{display:flex;flex-direction:column;line-height:1.2;text-align:left}
.nota__etiqueta{
  white-space:nowrap;
  color:var(--color-primary);
  font-family:var(--font-detail);
  font-size:.6875rem;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.nota__escala{color:var(--atenuado-oscuro);font-family:var(--font-detail);font-size:.6875rem;white-space:nowrap}

.section--oscuro .pendiente,.eleccion .pendiente{
  border-color:var(--borde-oscuro);
  color:var(--atenuado-oscuro);
}

.pendiente{
  display:inline-flex;
  align-items:center;
  gap:.3rem;
  padding:.1rem .5rem;
  border:1px dashed var(--borde-fuerte);
  border-radius:var(--r-full);
  color:var(--color-text-light);
  font-family:var(--font-detail);
  font-size:.6875rem;
}

.eleccion{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);
  gap:clamp(1.5rem,4vw,3.5rem);
  align-items:center;
  padding:clamp(1.5rem,4vw,3rem);
  border-radius:var(--r-xl);
  background:
    radial-gradient(40rem 30rem at 85% 10%,color-mix(in srgb,var(--color-primary) 14%,transparent),transparent 65%),
    var(--tinte);
  color:var(--sobre-oscuro);
}
.eleccion__panel{
  padding:var(--e-5);
  border:1px solid var(--borde-oscuro);
  border-radius:var(--r-l);
  background:var(--vidrio);
  backdrop-filter:blur(12px);
}
.eleccion__lista{display:grid;gap:.75rem;margin:0;padding:0;list-style:none}
.eleccion__lista div{display:flex;justify-content:space-between;gap:var(--e-4);padding-block:.5rem;border-bottom:1px solid var(--borde-oscuro)}
.eleccion__lista div:last-child{border-bottom:0}
.eleccion__lista dt{color:var(--atenuado-oscuro);font-size:.9375rem}
.eleccion__lista dd{margin:0;font-family:var(--font-detail);font-size:.9375rem;font-variant-numeric:tabular-nums}

.aviso-transparencia{
  display:flex;
  gap:.75rem;
  margin-top:var(--e-5);
  padding:var(--e-4);
  border:1px solid var(--borde-oscuro);
  border-left:3px solid var(--color-contrast);
  border-radius:var(--r-s);
  background:color-mix(in srgb,var(--color-contrast) 8%,transparent);
  color:var(--atenuado-oscuro);
  font-size:.875rem;
}
.aviso-transparencia svg{width:1.125rem;height:1.125rem;flex:none;color:var(--color-primary)}
.aviso-transparencia b{color:var(--sobre-oscuro)}

.criterios{display:grid;gap:var(--e-5);margin:0;padding:0;list-style:none}
.criterio__cabeza{display:flex;justify-content:space-between;align-items:baseline;gap:var(--e-4);margin-bottom:.5rem}
.criterio__nombre{font-family:var(--font-display);font-size:1.0625rem;font-weight:700}
.criterio__peso{
  color:var(--color-primary);
  font-family:var(--font-detail);
  font-size:1rem;
  font-variant-numeric:tabular-nums;
}
.criterio__barra{display:block;height:.5rem;border-radius:var(--r-full);background:var(--borde-oscuro);overflow:hidden}
.criterio__relleno{
  display:block;
  height:100%;
  width:calc(var(--barra) * 1%);
  border-radius:inherit;
  background:linear-gradient(90deg,var(--color-primary),var(--color-contrast));
  transition:--barra 1.2s var(--curva);
}
.criterio__texto{margin:.5rem 0 0;color:var(--atenuado-oscuro);font-size:.875rem}

.doble{display:grid;grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));gap:clamp(2rem,5vw,4rem);align-items:center}

.marco{
  position:relative;
  border-radius:var(--r-xl);
  overflow:hidden;
  box-shadow:var(--sombra-3);
}
.marco img{width:100%;height:100%;object-fit:cover}
.marco--alto{aspect-ratio:3/4}
.marco--ancho{aspect-ratio:4/3}
.marco::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(200deg,transparent 45%,color-mix(in srgb,var(--color-dark) 55%,transparent));
}

.tabla-envoltorio{
  border:1px solid var(--borde);
  border-radius:var(--r-l);
  background:var(--superficie);
  overflow:hidden;
  box-shadow:var(--sombra-2);
}
.tabla-scroll{overflow-x:auto;max-width:100%}
.tabla-scroll:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}

.tabla{width:100%;min-width:44rem;border-collapse:collapse;font-size:.9375rem}
.tabla caption{
  padding:var(--e-5) var(--e-5) 0;
  color:var(--color-text-light);
  font-size:.875rem;
  text-align:left;
}
.tabla th,.tabla td{padding:.9rem 1rem;text-align:left;vertical-align:top}
.tabla thead th{
  background:var(--tinte);
  border-bottom:1px solid var(--borde);
  color:var(--color-primary);
  font-family:var(--font-detail);
  font-size:.75rem;
  font-weight:600;
  letter-spacing:.06em;
  text-transform:uppercase;
  white-space:nowrap;
}
.tabla tbody tr{border-bottom:1px solid var(--borde)}
.tabla tbody tr:last-child{border-bottom:0}
.tabla tbody tr:hover{background:var(--tinte)}
.tabla tbody th{font-family:var(--font-display);font-size:1rem;font-weight:700;white-space:nowrap}
.tabla__orden{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  padding:0;
  border:0;
  background:none;
  color:inherit;
  font:inherit;
  letter-spacing:inherit;
  text-transform:inherit;
  cursor:pointer;
}
.tabla__orden svg{width:.75rem;height:.75rem;opacity:.4;transition:opacity var(--t-rapido) ease,transform var(--t-rapido) ease}
.tabla__orden:hover svg{opacity:.8}
.tabla th[aria-sort="ascending"] .tabla__orden svg,.tabla th[aria-sort="descending"] .tabla__orden svg{opacity:1;color:var(--acento-texto)}
.tabla th[aria-sort="descending"] .tabla__orden svg{transform:rotate(180deg)}

.pasos{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));
  gap:var(--e-4);
  margin:0;
  padding:0;
  list-style:none;
  counter-reset:paso;
}
.paso{
  position:relative;
  padding:var(--e-5);
  border:1px solid var(--borde);
  border-radius:var(--r-l);
  background:var(--superficie);
  counter-increment:paso;
  transition:transform var(--t-medio) var(--curva),box-shadow var(--t-medio) var(--curva);
}
.paso:hover{transform:translateY(-3px);box-shadow:var(--sombra-2)}
.paso::before{
  content:counter(paso,decimal-leading-zero);
  display:block;
  margin-bottom:var(--e-3);
  color:var(--acento-texto);
  font-family:var(--font-detail);
  font-size:.875rem;
  font-weight:600;
}
.paso__titulo{margin:0 0 .4rem;font-size:1.0625rem}
.paso__texto{margin:0;color:var(--color-text-light);font-size:.9375rem}

.bento{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));
  gap:var(--e-4);
  margin:0;
  padding:0;
  list-style:none;
}
.bento__celda{
  display:flex;
  flex-direction:column;
  gap:.5rem;
  padding:var(--e-5);
  border:1px solid var(--borde);
  border-radius:var(--r-l);
  background:var(--superficie);
  transition:transform var(--t-medio) var(--curva),box-shadow var(--t-medio) var(--curva),border-color var(--t-medio) ease;
}
.bento__celda:hover{transform:translateY(-3px);border-color:var(--borde-fuerte);box-shadow:var(--sombra-2)}
.bento__celda--ancha{grid-column:span 2}
.bento__icono{
  display:grid;
  place-items:center;
  width:3rem;height:3rem;
  margin-bottom:var(--e-2);
  border-radius:var(--r-s);
  background:color-mix(in srgb,var(--color-accent) 12%,transparent);
  color:var(--color-accent);
}
.bento__icono svg{width:1.375rem;height:1.375rem}
.bento__icono{color:var(--acento-texto)}
.bento__titulo{margin:0;font-size:1.0625rem}
.bento__texto{margin:0;color:var(--color-text-light);font-size:.9375rem}
.bento__dato{
  margin-top:auto;
  padding-top:var(--e-3);
  color:var(--color-primary);
  font-family:var(--font-detail);
  font-size:.875rem;
  font-variant-numeric:tabular-nums;
}

@media (max-width:47.99em){.bento__celda--ancha{grid-column:span 1}}

.faqs{display:grid;gap:var(--e-3);max-width:52rem}
.faq{
  border:1px solid var(--borde);
  border-radius:var(--r-m);
  background:var(--superficie);
  overflow:hidden;
  transition:border-color var(--t-rapido) ease,box-shadow var(--t-rapido) ease;
}
.faq[open]{border-color:var(--borde-fuerte);box-shadow:var(--sombra-2)}
.faq[open].esta-cerrando{border-color:var(--borde);box-shadow:none}
.faq__q{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--e-4);
  padding:1.1rem var(--e-5);
  font-family:var(--font-display);
  font-size:1.0625rem;
  font-weight:700;
  cursor:pointer;
  list-style:none;
}
.faq__q::-webkit-details-marker{display:none}
.faq__q::after{
  content:"";
  width:1.25rem;height:1.25rem;
  flex:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230073E6' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/contain no-repeat;
  transition:transform var(--t-medio) var(--curva);
}
.faq[open] .faq__q::after{transform:rotate(135deg)}
.faq[open].esta-cerrando .faq__q::after{transform:none}
.faq__a{padding:0 var(--e-5) var(--e-5);color:var(--color-text-light)}
.faq__a>*:first-child{margin-top:0}
.faq__a>*:last-child{margin-bottom:0}

.faq-bloque{display:grid;grid-template-columns:minmax(0,26rem) minmax(0,1fr);gap:var(--e-6) var(--e-7);align-items:start}
.faq-bloque__intro{position:sticky;top:var(--e-6)}
.faq-bloque__intro .display{text-wrap:balance}
.faq-bloque__intro .lead{margin-bottom:var(--e-4)}
.faq-bloque__intro .mas{margin:0}
.faqs--columna{max-width:none;gap:var(--e-2)}
.faqs--columna .faq{position:relative}
.faqs--columna .faq::before{
  content:"";
  position:absolute;
  inset-block:0;
  left:0;
  width:3px;
  background:var(--color-primary);
  opacity:0;
  transform:scaleY(.35);
  transition:opacity var(--t-rapido) ease,transform var(--t-medio) var(--curva);
}
.faqs--columna .faq[open]::before{opacity:1;transform:scaleY(1)}
.faqs--columna .faq[open].esta-cerrando::before{opacity:0;transform:scaleY(.35)}
.faqs--columna .faq:hover{border-color:var(--borde-fuerte)}
.faqs--columna .faq__q{transition:color var(--t-rapido) ease}
.faqs--columna .faq:hover .faq__q{color:var(--color-primary)}
.faqs--columna .faq__q:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px;border-radius:var(--r-m)}
.faqs--columna .faq__a{max-width:46rem;line-height:1.65}
.faq-bloque .faq:not([open]),.faq-bloque .faq.esta-cerrando{box-shadow:0 1px 2px color-mix(in srgb,var(--color-secondary) 6%,transparent),0 .375rem 1rem -.375rem color-mix(in srgb,var(--color-secondary) 14%,transparent)}
@media (max-width:64em){
  .faq-bloque{grid-template-columns:1fr;gap:var(--e-5)}
  .faq-bloque__intro{position:static}
}
@media (prefers-reduced-motion:reduce){
  .faqs--columna .faq::before{transition:none}
}

.entradas{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(17rem,1fr));
  gap:var(--e-5);
  margin:0;
  padding:0;
  list-style:none;
}
.entrada{
  display:flex;
  flex-direction:column;
  border:1px solid var(--borde);
  border-radius:var(--r-l);
  background:var(--superficie);
  overflow:hidden;
  transition:transform var(--t-medio) var(--curva),box-shadow var(--t-medio) var(--curva);
}
.entrada:hover{transform:translateY(-4px);box-shadow:var(--sombra-3)}
.entrada__media{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--tinte)}
.entrada__media img{width:100%;height:100%;object-fit:cover;transition:transform var(--t-lento) var(--curva)}
.entrada:hover .entrada__media img{transform:scale(1.04)}
.entrada__cuerpo{display:flex;flex-direction:column;gap:.5rem;padding:var(--e-5)}
.entrada__meta{
  margin:0;
  color:var(--color-text-light);
  font-family:var(--font-detail);
  font-size:.75rem;
}
.entrada__titulo{margin:0;font-size:1.0625rem}
.entrada__titulo a{color:inherit;text-decoration:none}
.entrada__titulo a::after{content:"";position:absolute;inset:0}
.entrada{position:relative}
.entrada__resumen{margin:0;color:var(--color-text-light);font-size:.9375rem}

.etiquetas{display:flex;flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none}
.etiquetas a{
  display:inline-block;
  padding:.15rem .6rem;
  border:1px solid var(--borde);
  border-radius:var(--r-full);
  color:var(--color-text-light);
  font-family:var(--font-detail);
  font-size:.75rem;
  text-decoration:none;
}
.etiquetas a:hover{border-color:var(--borde-fuerte);color:var(--color-primary)}
.portada--blog .portada__texto{max-width:none;container-type:inline-size}
.portada--blog .display{font-size:min(clamp(2rem,1.3rem + 2.8vw,3.25rem),7.2cqw);white-space:nowrap}
.portada--blog .portada__texto>*{animation:entra-carta .7s var(--curva) both}
.portada--blog .lead{animation-delay:120ms}
.entradas--blog{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--e-6) var(--e-5)}
.entradas--blog .entrada{border-color:transparent;box-shadow:0 1px 2px color-mix(in srgb,var(--color-secondary) 5%,transparent),0 .25rem 1rem -.125rem color-mix(in srgb,var(--color-secondary) 9%,transparent),0 1rem 2.5rem -1.25rem color-mix(in srgb,var(--color-secondary) 14%,transparent);transition:translate var(--t-medio) var(--curva),scale var(--t-rapido) var(--curva),box-shadow var(--t-medio) var(--curva)}
.entradas--blog .entrada:hover{translate:0 -4px;box-shadow:var(--sombra-3)}
.entradas--blog .entrada:active{translate:0 -1px;scale:.995}
.entradas--blog .entrada:has(.entrada__titulo a:focus-visible){translate:0 -4px;box-shadow:var(--sombra-3),0 0 0 3px color-mix(in srgb,var(--color-primary) 35%,transparent)}
.entradas--blog .entrada__media{position:relative}
.entradas--blog .entrada__media::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,color-mix(in srgb,var(--color-primary) 28%,transparent),transparent 60%);opacity:0;transition:opacity var(--t-medio) ease}
.entradas--blog .entrada:hover .entrada__media::after{opacity:1}
.entradas--blog .entrada__cuerpo{flex:1;gap:.6rem}
.entradas--blog .entrada__titulo{font-size:1.125rem;line-height:1.3}
.entradas--blog .entrada__titulo a{transition:color var(--t-rapido) ease}
.entradas--blog .entrada:hover .entrada__titulo a{color:var(--color-primary)}
.entradas--blog .entrada__meta{margin-top:-.1rem;font-size:.6875rem;letter-spacing:.02em}
.entradas--blog .entrada__meta time{text-transform:uppercase}
.entradas--blog .entrada__meta time,.entradas--blog .entrada__meta span{white-space:nowrap}
.entradas--blog .entrada__resumen{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}
.entradas--blog .etiquetas{position:relative;z-index:1}
.entrada__leer{display:inline-flex;align-items:center;gap:.4rem;margin-top:auto;padding-top:var(--e-3);color:var(--color-primary);font-size:.875rem;font-weight:600;transition:color var(--t-rapido) ease}
.entrada__leer svg{width:1rem;height:1rem;transition:transform var(--t-rapido) var(--curva)}
.entrada:hover .entrada__leer{color:color-mix(in srgb,var(--color-primary) 80%,var(--color-text))}
.entrada:hover .entrada__leer svg{transform:translateX(4px)}
@media (scripting:enabled){
  .entradas--blog .entrada[data-reveal]{transition:opacity var(--t-lento) var(--curva),transform var(--t-lento) var(--curva),translate var(--t-medio) var(--curva),scale var(--t-rapido) var(--curva),box-shadow var(--t-medio) var(--curva);transition-delay:calc(var(--i,0) * 70ms),calc(var(--i,0) * 70ms),0s,0s,0s}
  .entradas--blog .entrada[data-reveal]:not(.es-visible){transform:translateY(1.25rem) scale(.985)}
}
@media (max-width:63.99em){
  .entradas--blog{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:40em){
  .entradas--blog{grid-template-columns:minmax(0,1fr)}
}

.cta-final{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:var(--e-5);
  padding:clamp(1.75rem,4vw,3rem);
  border-radius:var(--r-xl);
  background:
    radial-gradient(30rem 20rem at 90% 20%,color-mix(in srgb,var(--color-accent) 30%,transparent),transparent 70%),
    linear-gradient(120deg,var(--color-primary),color-mix(in srgb,var(--color-primary) 70%,var(--color-dark)));
  color:var(--color-light);
}
.cta-final h2{margin:0 0 .4rem;font-size:clamp(1.5rem,1.2rem + 1.4vw,2.125rem)}
.cta-final p{margin:0;max-width:40ch;color:color-mix(in srgb,var(--color-light) 84%,transparent)}

.foot{
  padding-block:var(--e-8) var(--e-5);
  border-top:1px solid var(--borde);
  background:var(--superficie);
  color:var(--atenuado-oscuro);
  font-size:.9375rem;
}
.foot__rejilla{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--e-6);
  padding-bottom:var(--e-6);
  border-bottom:1px solid var(--borde-oscuro);
}
.foot__rejilla>*{min-width:0}
.foot__rejilla>*:first-child{grid-column:1/-1}

@media (min-width:48em){
  .foot__rejilla{grid-template-columns:minmax(12rem,1.4fr) repeat(3,minmax(0,1fr))}
  .foot__rejilla>*:first-child{grid-column:auto}
}
.foot__lema{margin:var(--e-4) 0 0;max-width:30ch}
.foot__origen{display:flex;align-items:center;gap:.45rem;margin:var(--e-4) 0 0;font-family:var(--font-detail);font-size:.75rem;letter-spacing:.04em}
.foot__origen svg{width:.95rem;height:.95rem;color:var(--color-primary)}
.foot__titulo{
  margin:0 0 var(--e-3);
  color:var(--sobre-oscuro);
  font-family:var(--font-detail);
  font-size:.75rem;
  font-weight:600;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.foot__lista{display:grid;gap:.6rem;margin:0;padding:0;list-style:none}
.foot__lista a{color:var(--atenuado-oscuro);text-decoration:none;transition:color var(--t-rapido) ease}
.foot__contacto li{display:flex;align-items:flex-start;gap:.6rem;line-height:1.5}
.foot__contacto svg{flex:none;width:1rem;height:1rem;margin-top:.2rem;color:var(--color-primary)}
.foot__lista a:hover{color:var(--sobre-oscuro);text-decoration:underline;text-underline-offset:.25em}
.foot__fin{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:var(--e-4);
  padding-top:var(--e-5);
  font-family:var(--font-detail);
  font-size:.8125rem;
}
.foot__legal{display:flex;flex-wrap:wrap;gap:var(--e-4);margin:0;padding:0;list-style:none}
.foot__legal a{color:var(--atenuado-oscuro);text-decoration:none}
.foot__legal a:hover{color:var(--sobre-oscuro)}
.foot__copy{margin:0}
.foot__arriba{display:inline-flex;align-items:center;gap:.35rem;margin-left:auto;color:var(--atenuado-oscuro);text-decoration:none;transition:color var(--t-rapido) ease}
.foot__arriba svg{width:1rem;height:1rem;transform:rotate(180deg);transition:transform var(--t-medio) var(--curva)}
.foot__arriba:hover{color:var(--sobre-oscuro)}
.foot__arriba:hover svg{transform:rotate(180deg) translateY(2px)}

.notice{
  padding:var(--e-5);
  border:1px dashed var(--borde-fuerte);
  border-radius:var(--r-m);
  background:var(--tinte);
  color:var(--color-text-light);
}
.notice p{margin:0}

.prose{max-width:42rem;color:var(--color-text)}
.prose h2{margin:2em 0 .6em;font-size:clamp(1.375rem,1.2rem + .8vw,1.75rem)}
.prose h3{margin:1.6em 0 .5em;font-size:1.1875rem}
.prose p,.prose ul,.prose ol{margin:0 0 1.1em}
.prose ul,.prose ol{padding-left:1.25em}
.prose li{margin-bottom:.4em}
.prose a{color:var(--color-primary);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--color-primary) 30%,transparent);transition:border-color var(--t-rapido) var(--curva),color var(--t-rapido) var(--curva)}
.prose a:hover{color:var(--color-accent);border-bottom-color:var(--color-accent)}
.prose blockquote{
  margin:1.5em 0;
  padding:.25em 0 .25em 1.25em;
  border-left:3px solid var(--color-accent);
  color:var(--color-text-light);
  font-size:1.0625rem;
}

.hk-consent{
  position:fixed;
  z-index:80;
  right:var(--e-4);
  bottom:var(--e-4);
  left:var(--e-4);
  max-width:26rem;
  margin-left:auto;
  padding:var(--e-5);
  border:1px solid var(--borde-oscuro);
  border-radius:var(--r-l);
  background:color-mix(in srgb,var(--superficie) 96%,transparent);
  backdrop-filter:blur(16px);
  box-shadow:var(--sombra-4);
  color:var(--atenuado-oscuro);
  font-size:.875rem;
  animation:entrar-consent var(--t-lento) var(--curva) both;
}
@keyframes entrar-consent{from{opacity:0;transform:translateY(1.5rem)}to{opacity:1;transform:none}}
.hk-consent__title{margin:0 0 .4rem;color:var(--sobre-oscuro);font-size:1.0625rem}
.hk-consent__text{margin:0 0 var(--e-4)}
.hk-consent__text a{display:inline-block;min-height:1.5rem;padding-block:.35rem;color:var(--color-primary)}
.hk-consent__options{display:none;flex-direction:column;gap:.6rem;margin-bottom:var(--e-4)}
.hk-consent.is-open .hk-consent__options{display:flex}
.hk-consent__options label{display:flex;align-items:center;gap:.5rem}
.hk-consent__actions{display:flex;flex-wrap:wrap;gap:.5rem}
.hk-consent button{
  min-height:2.5rem;
  padding:.45rem 1rem;
  border:1px solid var(--borde-oscuro);
  border-radius:var(--r-full);
  background:transparent;
  color:var(--sobre-oscuro);
  font-family:var(--font-body);
  font-size:.875rem;
  font-weight:600;
  cursor:pointer;
  transition:background-color var(--t-rapido) ease;
}
.hk-consent button:hover{background:var(--tinte)}
.hk-consent [data-hk-consent-action="all"]{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-text)}
.hk-consent [data-hk-consent-action="all"]:hover{background:color-mix(in srgb,var(--color-accent) 88%,var(--color-text))}

.form{display:grid;gap:var(--e-4)}
.form label{display:grid;gap:.4rem;font-size:.9375rem;font-weight:600}
.form label small{color:var(--color-text-light);font-weight:400}
.form input,.form textarea,.form select{
  width:100%;
  padding:.8rem 1rem;
  border:1px solid var(--borde-fuerte);
  border-radius:var(--r-s);
  background:var(--superficie);
  color:var(--color-text);
  font-family:inherit;
  font-size:1rem;
  transition:border-color var(--t-rapido) ease,box-shadow var(--t-rapido) ease;
}
.form input:focus,.form textarea:focus,.form select:focus{
  outline:0;
  border-color:var(--color-primary);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 18%,transparent);
}
.form textarea{min-height:8rem;resize:vertical}
.form__consent{display:flex;align-items:flex-start;gap:.6rem;font-weight:400}
.form__consent input{width:1.125rem;height:1.125rem;margin-top:.2rem;flex:none}
.form__status{margin:0;min-height:1.5rem;color:var(--color-primary);font-size:.9375rem}
.form__hp{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}

.hero__nav{
  position:absolute;
  bottom:var(--e-6);
  left:50%;
  translate:-50% 0;
  display:flex;
  align-items:center;
  gap:var(--e-3);
  padding:.4rem;
  border:1px solid var(--borde-oscuro);
  border-radius:var(--r-full);
  background:var(--vidrio);
  backdrop-filter:blur(12px);
}
.hero__flecha{
  display:grid;
  place-items:center;
  width:2.25rem;height:2.25rem;
  border:0;
  border-radius:50%;
  background:transparent;
  color:var(--sobre-oscuro);
  cursor:pointer;
  transition:background-color var(--t-rapido) ease;
}
.hero__flecha:hover{background:color-mix(in srgb,var(--color-primary) 8%,transparent)}
.hero__flecha svg{width:1rem;height:1rem}
.hero__puntos{display:flex;gap:.1rem;margin:0;padding:0;list-style:none;align-items:center}
.hero__punto{
  display:grid;
  place-items:center;
  width:1.75rem;height:1.75rem;
  padding:0;
  border:0;
  border-radius:50%;
  background:none;
  cursor:pointer;
}
.hero__punto::before{
  content:"";
  width:.5rem;height:.5rem;
  border-radius:var(--r-full);
  background:color-mix(in srgb,var(--color-primary) 25%,transparent);
  transition:width var(--t-medio) var(--curva),background-color var(--t-medio) ease;
}
.hero__punto:hover::before{background:color-mix(in srgb,var(--color-primary) 45%,transparent)}
.hero__punto[aria-current="true"]::before{width:1.25rem;background:var(--color-accent)}

@media (scripting:enabled){
  [data-reveal]{
    opacity:0;
    transform:translateY(1.5rem);
    transition:opacity var(--t-lento) var(--curva),transform var(--t-lento) var(--curva);
    transition-delay:calc(var(--i,0) * 70ms);
  }
  [data-reveal].es-visible{opacity:1;transform:none}

  .ranking .fila[data-reveal]{opacity:1;transform:none;transition:none;transition-delay:0s}
}

@media (max-width:63.99em){
  .slide{grid-template-columns:1fr;gap:var(--e-5);padding-block:var(--e-5);text-align:left}
  .escena{min-height:14rem;order:-1}
  .escena__figura{width:min(12rem,52%)}
  .escena__halo{width:min(13.5rem,68%)}
  .flota{padding:.55rem .75rem}
  .flota--a{top:auto;bottom:40%;left:0}
  .flota--b{top:auto;bottom:12%;right:0}
  .flota--c{display:none}
  .chispa--2{display:none}
  .slide__texto{margin-bottom:var(--e-5)}
  .acciones{margin-bottom:var(--e-5)}
  .eleccion{grid-template-columns:1fr}
  .franja--flotante{margin-top:var(--e-6)}
}

@media (max-width:47.99em){
  .fila{grid-template-columns:2.75rem minmax(0,1fr);row-gap:var(--e-4)}
  .fila__puesto{width:2.75rem;height:2.75rem;font-size:1.0625rem}
  .fila__lado{grid-column:1/-1;flex-direction:row;align-items:center;gap:var(--e-3)}
  .fila__lado .nota{flex:1.35;justify-content:flex-start;padding-inline:.7rem}
  .fila__lado .btn{flex:1}
  .nota__etiqueta{font-size:.625rem;letter-spacing:.03em}
  .flota{padding:.5rem .7rem;gap:.5rem}
  .flota__cifra{font-size:1.25rem}
  .marcadores{gap:var(--e-5)}
  .marcador__cifra{font-size:1.5rem}
  .cta-final{flex-direction:column;align-items:flex-start}
  .hk-consent{max-width:none}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
    scroll-behavior:auto !important;
  }
  [data-reveal]{opacity:1;transform:none}
  .anillo{--anillo:var(--anillo-final,0)}
}

.fila__monograma{
  display:grid;
  place-items:center;
  width:2.5rem;height:2.5rem;
  flex:none;
  border:1px solid var(--borde);
  border-radius:var(--r-s);
  background:var(--tinte);
  color:var(--color-primary);
  font-family:var(--font-display);
  font-size:1rem;
  font-weight:800;
}

.fila__nota-editorial{
  display:flex;
  align-items:flex-start;
  gap:.5rem;
  margin:0;
  color:var(--color-text-light);
  font-size:.875rem;
}
.fila__nota-editorial svg{width:1rem;height:1rem;margin-top:.2rem;flex:none;color:var(--color-primary)}

.section__cabeza--ancha{max-width:56rem}
.rangos{display:grid;gap:var(--e-3);margin:0;padding:0;list-style:none}
.rango{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:var(--e-4);
  padding:var(--e-4) var(--e-5);
  border:1px solid var(--borde);
  border-radius:var(--r-m);
  background:var(--superficie);
}
.rango__nombre{display:block;font-family:var(--font-display);font-weight:700}
.rango__texto{display:block;margin:.15rem 0 0;color:var(--color-text-light);font-size:.875rem}

.flota__icono{color:var(--color-primary);flex:none}
.mas{margin:var(--e-6) 0 0}
.rango svg{color:var(--color-primary);width:2.25rem;height:2.25rem;background:none;border-radius:0}

.page-head{
  position:relative;
  padding-block:clamp(3rem,7vw,5rem) clamp(2.5rem,6vw,4rem);
  background:var(--tinte);
  color:var(--sobre-oscuro);
  isolation:isolate;
  overflow:hidden;
}
.page-head .lead{color:var(--atenuado-oscuro)}
.page-head .display{margin-bottom:.35em}
.page-head__rejilla{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:clamp(1.5rem,4vw,3rem);
}

.crumbs{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.5rem;
  margin:0 0 var(--e-4);
  padding:0;
  list-style:none;
  color:var(--atenuado-oscuro);
  font-family:var(--font-detail);
  font-size:.8125rem;
}
.crumbs li{display:flex;align-items:center;gap:.5rem}
.crumbs li+li::before{content:"/";opacity:.45}
.crumbs a{color:inherit;text-decoration:none}
.crumbs a:hover{color:var(--sobre-oscuro);text-decoration:underline;text-underline-offset:.25em}
.crumbs [aria-current="page"]{color:var(--sobre-oscuro)}

.ficha{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);
  gap:clamp(1.5rem,4vw,3.5rem);
  align-items:start;
}
.ficha__aside{position:sticky;top:calc(var(--cabecera) + 1.5rem);display:grid;gap:var(--e-4)}

.panel{
  padding:var(--e-5);
  border:1px solid var(--borde);
  border-radius:var(--r-l);
  background:var(--superficie);
  box-shadow:var(--sombra-1);
}
.panel__titulo{margin:0 0 var(--e-4);font-size:1.0625rem}
.panel--oscuro{
  border-color:var(--borde-oscuro);
  background:var(--superficie);
  color:var(--sobre-oscuro);
}
.panel--oscuro .panel__titulo{color:var(--sobre-oscuro)}

.datos{display:grid;gap:0;margin:0}
.datos>div{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  justify-content:space-between;
  gap:var(--e-3);
  padding-block:.7rem;
  border-bottom:1px solid var(--borde);
}
.datos>div:last-child{border-bottom:0}
.datos dt{color:var(--color-text-light);font-size:.9375rem}
.datos dd{
  margin:0;
  font-family:var(--font-detail);
  font-size:.9375rem;
  font-variant-numeric:tabular-nums;
  text-align:right;
}
.panel--oscuro .datos>div{border-bottom-color:var(--borde-oscuro)}
.panel--oscuro .datos dt{color:var(--atenuado-oscuro)}

.veredicto{display:grid;gap:var(--e-5);margin:0;padding:0;list-style:none}
@media (min-width:48em){.veredicto{grid-template-columns:1fr 1fr}}
.veredicto__lista{display:grid;gap:.6rem;margin:0;padding:0;list-style:none}
.veredicto__lista li{display:flex;align-items:flex-start;gap:.6rem;font-size:.9375rem}
.veredicto__lista li{--marca-fondo:color-mix(in srgb,var(--color-primary) 10%,transparent);--marca-icono:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23475569'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3C/svg%3E")}
.veredicto__lista li::before{
  content:"";
  width:1.25rem;height:1.25rem;
  margin-top:.1rem;
  flex:none;
  border-radius:50%;
  background:var(--marca-fondo) var(--marca-icono) center/.7rem no-repeat;
}
.veredicto__lista--pendiente li{--marca-fondo:color-mix(in srgb,var(--color-contrast) 16%,transparent);--marca-icono:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FF8A3D' stroke-width='2.6' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='8'/%3E%3Cpath d='M12 8v4l2.5 2'/%3E%3C/svg%3E")}
.veredicto--favor .veredicto__lista li{--marca-fondo:color-mix(in srgb,#2DB742 14%,transparent);--marca-icono:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232DB742' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 13 4 4L19 7'/%3E%3C/svg%3E")}
.veredicto--contra .veredicto__lista li{--marca-fondo:color-mix(in srgb,var(--color-accent) 14%,transparent);--marca-icono:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FF8A3D' stroke-width='3.2' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6 6 18'/%3E%3C/svg%3E")}
.veredicto__titulo{display:flex;align-items:center;gap:.5rem;margin:0 0 var(--e-4);font-size:1.0625rem}

.marca-grande{
  display:grid;
  place-items:center;
  width:4.5rem;height:4.5rem;
  flex:none;
  border:1px solid var(--borde-oscuro);
  border-radius:var(--r-m);
  background:var(--vidrio);
  color:var(--sobre-oscuro);
  font-family:var(--font-display);
  font-size:1.75rem;
  font-weight:800;
}

.nota-grande{
  display:flex;
  align-items:center;
  gap:var(--e-4);
  padding:var(--e-4) var(--e-5);
  border:1px solid var(--borde-oscuro);
  border-radius:var(--r-l);
  background:var(--vidrio);
  backdrop-filter:blur(12px);
}
.nota-grande__texto{display:flex;flex-direction:column;line-height:1.25}
.nota-grande__etiqueta{
  color:var(--color-primary);
  font-family:var(--font-display);
  font-size:1.125rem;
  font-weight:700;
}
.nota-grande__pie{color:var(--atenuado-oscuro);font-family:var(--font-detail);font-size:.75rem}

.salida{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
}
.salida::after{
  content:"";
  width:.875rem;height:.875rem;
  background:currentColor;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17 17 7M9 7h8v8'/%3E%3C/svg%3E") center/contain no-repeat;
}

.progreso{
  position:fixed;
  inset:0 auto auto 0;
  z-index:60;
  width:100%;
  height:3px;
  transform-origin:0 50%;
  scale:var(--avance,0) 1;
  background:linear-gradient(90deg,var(--color-primary),var(--color-accent));
  transition:opacity var(--t-medio) var(--curva-suave);
}
.progreso.es-completo{opacity:0}

.entry__meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.4rem .85rem;
  margin:0 0 var(--e-4);
  color:var(--atenuado-oscuro);
  font-family:var(--font-detail);
  font-size:.8125rem;
}
.entry__cuerpo{max-width:42rem;margin-inline:auto}

/* Cabecera de entrada: el texto a la izquierda y la imagen rectangular a la derecha. */
.page-head--entrada{
  --entrada-lineas:3;
  padding-block:clamp(1.5rem,3vw,2rem);
}
.entrada-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) clamp(18rem,40%,27rem);
  align-items:stretch;
  gap:clamp(1.5rem,4vw,3rem);
}
.entrada-hero__texto{display:flex;flex-direction:column;justify-content:flex-end;min-width:0}
/* Reservar tres líneas de título y dos de entradilla deja todas las cabeceras con la misma altura.
   El texto se ancla abajo: así la fecha y el autor caen siempre en el mismo punto y el aire sobrante
   queda arriba, donde no se lee como un error. Con un título más largo, la cabecera crece sin romperse. */
.page-head--entrada .entrada-hero__titulo{
  display:grid;
  align-content:end;
  min-height:calc(var(--entrada-lineas) * 1.12em);
  margin:0;
  font-size:clamp(1.75rem,1.3rem + 1.6vw,2.375rem);
  line-height:1.12;
}
/* La entradilla se reserva tres líneas y nunca pasa de ahí: es lo que mantiene iguales todas las
   cabeceras. Un cuerpo algo menor que el de una portada deja entrar el texto sin recortarlo. */
.page-head--entrada .entrada-hero__lead{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  line-clamp:3;
  overflow:hidden;
  min-height:calc(3 * 1.55em);
  max-width:60ch;
  margin:var(--e-3) 0 0;
  font-size:clamp(1rem,.95rem + .3vw,1.125rem);
  line-height:1.55;
}
.entrada-hero__etiquetas{margin:0 0 var(--e-3)}
.page-head--entrada .etiquetas a{border-color:var(--borde-oscuro);background:var(--vidrio);color:var(--sobre-oscuro)}
.page-head--entrada .etiquetas a:hover{border-color:var(--color-primary);color:var(--color-primary)}
/* Autoría en dos renglones: quién y cuándo pesan más que el tiempo de lectura, que va debajo y
   atenuado. Un filete corto los separa del texto sin meter otra línea de ruido. */
.entrada-hero__firma{
  display:flex;
  flex-direction:column;
  gap:.3rem;
  margin:var(--e-5) 0 0;
  padding-top:var(--e-4);
  border-top:1px solid var(--borde-oscuro);
  color:var(--atenuado-oscuro);
  font-family:var(--font-detail);
  font-size:.8125rem;
  line-height:1.45;
}
.entrada-hero__autoria{color:var(--sobre-oscuro)}
.entrada-hero__autoria b{font-weight:400}
.entrada-hero__autoria time{font-variant-numeric:tabular-nums}
.entrada-hero__lectura{font-size:.75rem;letter-spacing:.02em}
.entrada-hero__media{
  position:relative;
  align-self:stretch;
  min-height:11rem;
  margin:0;
  overflow:hidden;
  border:1px solid var(--borde-oscuro);
  border-radius:var(--r-xl);
  background:var(--vidrio);
  box-shadow:var(--sombra-3);
}
.entrada-hero__media img{width:100%;height:100%;object-fit:cover}
/* El hueco se reserva siempre, tenga imagen la entrada o no. Sin imagen se dibuja como un marco de
   encuadre —retícula y esquinas marcadas— para que se lea como sitio reservado, no como un fallo. */
.entrada-hero__media--vacia{
  box-shadow:none;
  border-style:dashed;
  border-color:color-mix(in srgb,var(--color-primary) 22%,transparent);
  background:color-mix(in srgb,var(--superficie) 45%,transparent);
}
.entrada-hero__media--vacia::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(to right,var(--borde-oscuro) 1px,transparent 1px),
    linear-gradient(to bottom,var(--borde-oscuro) 1px,transparent 1px);
  background-size:2.25rem 2.25rem;
  mask-image:radial-gradient(75% 75% at 50% 50%,#000,transparent 80%);
}
.entrada-hero__media--vacia::after{
  content:"";
  position:absolute;
  inset:.75rem;
  border:1px solid color-mix(in srgb,var(--color-contrast) 26%,transparent);
  border-radius:calc(var(--r-xl) - .5rem);
  mask-image:
    linear-gradient(to right,#000 2.5rem,transparent 2.5rem calc(100% - 2.5rem),#000 calc(100% - 2.5rem)),
    linear-gradient(to bottom,#000 2.5rem,transparent 2.5rem calc(100% - 2.5rem),#000 calc(100% - 2.5rem));
  mask-composite:intersect;
  -webkit-mask-composite:source-in;
}

/* Cuerpo de la entrada: ocupa el ancho de página, con el artículo a la izquierda —limitado a una
   medida cómoda de lectura— y la columna lateral a la derecha. */
.entrada-cuerpo{
  display:grid;
  grid-template-columns:minmax(0,44rem) minmax(0,1fr);
  gap:clamp(2rem,5vw,4rem);
  padding-top:clamp(2rem,4vw,3rem);
}
.entrada-cuerpo__texto{min-width:0}
.entrada-cuerpo .entry__cuerpo,
.entrada-cuerpo .entry__pie{max-width:none;margin-inline:0}

/* La columna lateral acompaña la lectura: se queda fija bajo la cabecera mientras dura el artículo.
   Para eso la columna tiene que ocupar toda la fila —de ahí el stretch—, porque lo pegajoso solo se
   mueve dentro de su propio contenedor. */
.entrada-aside{min-width:0;align-self:stretch}
.entrada-aside__fijo{position:sticky;top:calc(var(--cabecera) + var(--e-5))}
.entrada-aside__lista{margin:0;padding:0;list-style:none;display:grid;gap:var(--e-5)}

.wlat{
  overflow:hidden;
  border:1px solid var(--borde);
  border-radius:var(--r-l);
  background:var(--superficie);
}
.wlat__titulo{
  margin:0;
  padding:var(--e-4) var(--e-5);
  border-bottom:1px solid var(--borde);
  color:var(--color-text-light);
  font-family:var(--font-detail);
  font-size:.6875rem;
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.wlat__posts{margin:0;padding:0;list-style:none;counter-reset:wlat}
.wlat__post+.wlat__post{border-top:1px solid var(--borde)}
.wlat__post a{
  display:grid;
  gap:.2rem;
  padding:var(--e-3) var(--e-5);
  color:inherit;
  text-decoration:none;
  transition:background-color var(--t-rapido) var(--curva);
}
.wlat__post a:hover{background:var(--tinte)}
.wlat__post-titulo{font-size:.9375rem;line-height:1.35;text-wrap:pretty}
.wlat__post a:hover .wlat__post-titulo{color:var(--color-primary)}
.wlat__post-fecha{color:var(--color-text-light);font-family:var(--font-detail);font-size:.6875rem}
.wlat__imagen{display:block;line-height:0}
.wlat__imagen img,.wlat__promo-media img{width:100%;aspect-ratio:4/3;object-fit:cover}
.wlat__promo-media{display:block;line-height:0}
.wlat__texto{padding:var(--e-4) var(--e-5);color:var(--color-text-light);font-size:.9375rem;line-height:1.55}
.wlat__texto>*{margin:0 0 .7em}
.wlat__texto>*:last-child{margin-bottom:0}
.wlat__texto ul,.wlat__texto ol{padding-left:1.15em}
.wlat__texto a{color:var(--color-primary)}
.wlat__btn{width:calc(100% - 2 * var(--e-5));min-height:2.75rem;margin:0 var(--e-5) var(--e-5);padding-inline:var(--e-4);font-size:.9375rem}
.wlat__titulo+.wlat__btn{margin-top:var(--e-5)}
.wlat--vacio{
  min-height:20rem;
  border-style:dashed;
  background:
    linear-gradient(to right,var(--borde) 1px,transparent 1px) 0 0/2rem 2rem,
    linear-gradient(to bottom,var(--borde) 1px,transparent 1px) 0 0/2rem 2rem,
    var(--superficie);
}


/* En una columna no hay nada que igualar: el texto manda y la entradilla se lee entera. */
@media (max-width:63.99em){
  .entrada-hero{grid-template-columns:1fr;gap:var(--e-5)}
  .page-head--entrada .entrada-hero__titulo,
  .page-head--entrada .entrada-hero__lead{min-height:0}
  .page-head--entrada .entrada-hero__lead{display:block;-webkit-line-clamp:none;line-clamp:none;overflow:visible}
  .entrada-hero__media{aspect-ratio:16/9;min-height:0}
  .entrada-cuerpo{grid-template-columns:1fr;gap:var(--e-7)}
  .entrada-aside__fijo{position:static}
  .wlat--vacio{min-height:12rem}
}

.entrada-faqs{max-width:42rem;margin:var(--e-7) 0 0}
.entrada-faqs__titulo{margin:0 0 var(--e-5);font-family:var(--font-display);font-size:clamp(1.375rem,1.2rem + .8vw,1.75rem);line-height:1.2;letter-spacing:-.015em}

.entry__pie{display:flex;flex-wrap:wrap;align-items:center;gap:var(--e-4);max-width:42rem;margin:var(--e-7) auto 0;padding-top:var(--e-5);border-top:1px solid var(--borde)}

.pager{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:var(--e-4);
  margin-top:var(--e-7);
}
.pager__enlace{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  min-height:2.75rem;
  padding:.5rem 1.2rem;
  border:1px solid var(--borde-fuerte);
  border-radius:var(--r-full);
  color:var(--color-primary);
  font-weight:600;
  text-decoration:none;
  transition:background-color var(--t-rapido) ease,border-color var(--t-rapido) ease,translate var(--t-rapido) var(--curva),box-shadow var(--t-rapido) ease;
}
.pager__enlace:hover{background:var(--tinte);border-color:var(--color-primary);translate:0 -2px;box-shadow:var(--sombra-2)}
.pager__enlace:active{translate:0;box-shadow:none}
.pager__enlace svg{width:1rem;height:1rem;transition:transform var(--t-rapido) var(--curva)}
.pager__enlace:first-child:hover svg{transform:translateX(-3px)}
.pager__enlace:last-child:hover svg{transform:translateX(3px)}
.pager__etiqueta{color:var(--color-text-light);font-family:var(--font-detail);font-size:.875rem}
.pager:not(:has(.pager__enlace)){display:none}

.contacto{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
.contacto__dato{display:flex;align-items:center;gap:.85rem;padding-block:var(--e-3)}
.mapa{margin-top:var(--e-5);border-radius:var(--r-l);overflow:hidden}
.mapa:empty{display:none}

.legal__fecha{margin-top:var(--e-6);color:var(--color-text-light);font-family:var(--font-detail);font-size:.875rem}

.error{display:grid;place-items:center;min-height:calc(100svh - var(--cabecera));text-align:center}
.error__cifra{
  margin:0;
  color:var(--color-primary);
  font-family:var(--font-display);
  font-size:clamp(5rem,4rem + 10vw,11rem);
  font-weight:800;
  line-height:.9;
  letter-spacing:-.05em;
}
.error__enlaces{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--e-3);margin-top:var(--e-6)}

@media (max-width:63.99em){
  .ficha,.contacto{grid-template-columns:1fr}
  .ficha__aside{position:static}
  .page-head__rejilla{grid-template-columns:1fr}
}

.fila{--aire:var(--e-6);--lado-izq:var(--e-5);--lado-der:var(--e-6);--cinta:1.625rem;--cinta-arriba:.75rem;--marco:var(--color-primary);--marco-texto:var(--color-light);border-color:transparent;border-radius:var(--r-s);grid-template-columns:minmax(11rem,14rem) auto minmax(6rem,1fr) minmax(13rem,14.5rem);grid-template-areas:"marca cuerpo nota acciones" "letra letra letra letra";align-items:center;column-gap:var(--e-5);padding:var(--aire) var(--lado-der) var(--aire) var(--lado-izq);box-shadow:0 1px 2px color-mix(in srgb,var(--color-secondary) 5%,transparent),0 .25rem 1rem -.125rem color-mix(in srgb,var(--color-secondary) 9%,transparent),0 1rem 2.5rem -1.25rem color-mix(in srgb,var(--color-secondary) 14%,transparent)}
.fila:hover{border-color:transparent}
.fila:has(>.fila__puesto--1){--marco:#2DB742;--marco-texto:var(--color-secondary)}
.fila:has(>.fila__puesto--2){--marco:color-mix(in srgb,#2DB742 62%,var(--color-light));--marco-texto:var(--color-secondary)}
.fila:has(>.fila__puesto--3){--marco:#FF8A3D;--marco-texto:var(--color-secondary)}
.fila--destacada{border-color:transparent}
.fila .fila__puesto{position:absolute;top:var(--cinta-arriba);left:-.5rem;z-index:2;display:inline-flex;align-items:center;gap:.4rem;width:auto;height:var(--cinta);margin:0;padding:0 .75rem 0 1.05rem;border-radius:.3125rem .5rem .5rem 0;background:linear-gradient(135deg,color-mix(in srgb,var(--marco) 80%,var(--superficie)),var(--marco) 65%);box-shadow:0 .4rem .9rem -.45rem color-mix(in srgb,var(--marco) 80%,transparent);color:var(--marco-texto);text-align:left;white-space:nowrap}
.fila .fila__puesto::before{content:"";position:absolute;top:100%;left:0;width:.5rem;height:.375rem;background:color-mix(in srgb,var(--marco) 55%,var(--color-text));clip-path:polygon(0 0,100% 0,100% 100%)}
.fila__trofeo{display:block;flex:none;width:.9375rem;height:.9375rem;transition:transform var(--t-medio) var(--curva)}
.fila:hover .fila__trofeo{transform:rotate(-12deg) scale(1.1)}
.fila__numero{font-family:var(--font-display);font-size:.875rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.01em;line-height:1}
.fila__sello{padding-left:.45rem;border-left:1px solid color-mix(in srgb,var(--marco-texto) 28%,transparent);font-family:var(--font-detail);font-size:.625rem;font-weight:600;letter-spacing:.08em;line-height:1;text-transform:uppercase}
.fila__marca{grid-area:marca;margin:var(--e-5) 0 0;flex-wrap:nowrap;gap:.85rem}
.fila__identidad{min-width:0}
.fila__nombre{margin:0;font-size:1.375rem;font-weight:800;letter-spacing:-.025em;line-height:1.15}
.fila__nombre a,.marca-bloque__titulo a{color:inherit;text-decoration:none}
.fila__nombre a:hover,.marca-bloque__titulo a:hover{text-decoration:underline;text-underline-offset:.2em}
.fila__nombre a{display:flex;width:fit-content}
.fila .fila__logo{display:block;max-width:100%;height:auto}
.fila__frase{margin:.5rem 0 0;color:var(--color-text-light);font-size:.875rem;line-height:1.4}
.fila__nota{grid-area:nota;justify-self:center;display:flex;flex-direction:column;align-items:center;gap:.5rem;margin:0}
.fila .anillo{position:relative;display:grid;place-items:center;width:5.5rem;aspect-ratio:1;background:none;transition:none}
.fila .anillo::before{content:none}
.fila .anillo svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg);overflow:visible}
.fila .anillo circle{cx:20px;cy:20px;r:16.5px;fill:none;stroke-width:4.5}
.fila .anillo__pista{stroke:var(--tinte)}
.fila .anillo__arco{stroke:url(#g-anillo-4);stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--anillo,0));transition:stroke-dashoffset 1.1s var(--curva)}
.fila .anillo--1 .anillo__arco{stroke:url(#g-anillo-1)}
.fila .anillo--2 .anillo__arco{stroke:url(#g-anillo-2)}
.fila .anillo--3 .anillo__arco{stroke:url(#g-anillo-3)}
.fila .anillo__valor{position:relative;display:flex;flex-direction:column;align-items:center;line-height:1;color:var(--color-text);font-size:1.5rem}
.fila .anillo__valor small{margin-top:.15rem;color:var(--color-text-light);font-size:.5625rem;font-weight:600;letter-spacing:.02em}
.fila__escala{display:flex;flex-direction:column;align-items:center;line-height:1.2;color:var(--color-text);font-family:var(--font-detail);font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
.fila__escala small{color:var(--color-text-light);font-size:.6875rem;font-weight:400;letter-spacing:0;text-transform:none}
.fila__cuerpo{grid-area:cuerpo;position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:center;min-width:0}
.fila__cuerpo::before{content:"";position:absolute;top:0;bottom:0;left:calc(var(--e-5) / -2);width:1px;background:linear-gradient(180deg,transparent,var(--borde) 18%,var(--borde) 82%,transparent);pointer-events:none}
.ayuda{position:relative;white-space:nowrap}
.ayuda__boton{display:inline-grid;place-items:center;width:1.5rem;height:1.5rem;margin:-.25rem 0;padding:0;border:0;border-radius:50%;background:transparent;color:var(--color-primary);vertical-align:middle;cursor:help;transition:background-color var(--t-rapido) ease}
.ayuda__boton svg{width:1rem;height:1rem}
.ayuda__boton:hover,.ayuda__boton:focus-visible{background:var(--tinte)}
.ayuda__boton:focus-visible{border-radius:50%}
.ayuda__burbuja{position:absolute;right:.75rem;bottom:calc(100% + .55rem);z-index:5;display:none;width:max-content;max-width:min(17rem,calc(100vw - 2rem));padding:.6rem .8rem;border:1px solid color-mix(in srgb,var(--superficie) 72%,transparent);border-radius:var(--r-s);background:linear-gradient(180deg,color-mix(in srgb,var(--superficie) 82%,transparent),color-mix(in srgb,var(--superficie) 66%,transparent));-webkit-backdrop-filter:blur(14px) saturate(1.8);backdrop-filter:blur(14px) saturate(1.8);box-shadow:inset 0 1px 0 var(--superficie),0 0 0 1px var(--borde),0 .875rem 2rem -.875rem color-mix(in srgb,var(--color-secondary) 45%,transparent);color:var(--color-text);font-size:.8125rem;font-weight:500;line-height:1.45;text-align:left;white-space:normal;cursor:default;translate:calc(50% + var(--desplazar,0px)) 0;transform-origin:50% 100%;opacity:0;transform:translateY(.3rem) scale(.96);transition:opacity var(--t-rapido) ease,transform var(--t-rapido) var(--curva);transition:opacity var(--t-rapido) ease,transform var(--t-rapido) var(--curva),display var(--t-rapido) allow-discrete}
.ayuda__burbuja::after{content:"";position:absolute;inset:100% 0 auto;height:.8rem}
.ayuda:not(.ayuda--cerrada)>.ayuda__boton:is(:hover,:focus-visible)+.ayuda__burbuja,.ayuda:not(.ayuda--cerrada)>.ayuda__burbuja:hover{display:block;opacity:1;transform:none}
@starting-style{.ayuda:not(.ayuda--cerrada)>.ayuda__boton:is(:hover,:focus-visible)+.ayuda__burbuja{opacity:0;transform:translateY(.3rem) scale(.96)}}
@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.ayuda__burbuja{background:color-mix(in srgb,var(--superficie) 97%,transparent)}}
@media (prefers-reduced-transparency:reduce){.ayuda__burbuja{background:var(--superficie);-webkit-backdrop-filter:none;backdrop-filter:none}}
.fila__bullets{display:grid;gap:.6rem;margin:0;padding:0;list-style:none}
.bullet{display:flex;align-items:flex-start;gap:.6rem;color:var(--color-text);font-size:.9375rem;font-weight:500;line-height:1.3}
.bullet::before{content:"";width:1.25rem;height:1.25rem;flex:none;background:center/contain no-repeat}
.bullet--si::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10' fill='%232DB742'/%3E%3Cpath d='m7.6 12.4 3 3 5.8-6.2' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.bullet--no::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10' fill='%23C0392B'/%3E%3Cpath d='m8.6 8.6 6.8 6.8M15.4 8.6l-6.8 6.8' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E")}
.fila__acciones{grid-area:acciones;position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:.15rem;min-width:0}
.fila__desde{display:flex;align-items:center;gap:.15rem;margin:0;color:var(--color-text-light);font-size:.8125rem;font-weight:500;line-height:1.4}
.fila__desde .ayuda{display:inline-flex}
.fila__desde .ayuda__boton svg{width:.875rem;height:.875rem}
.fila__acciones .btn{min-height:2.875rem;margin-top:.75rem;border-radius:var(--r-xs);background:var(--color-primary);color:var(--color-light);font-size:.9375rem;font-weight:700}
.fila__acciones .btn:hover{background:color-mix(in srgb,var(--color-primary) 88%,var(--color-text));box-shadow:0 .75rem 1.75rem -.75rem color-mix(in srgb,var(--color-primary) 70%,transparent)}
.fila__acciones .btn svg{width:1rem;height:1rem;flex:none;transition:transform var(--t-rapido) var(--curva)}
.fila__acciones .btn:hover svg{transform:translateX(3px)}
.fila__letra{grid-area:letra;margin:0 calc(-1 * var(--lado-der)) calc(-1 * var(--aire)) calc(-1 * var(--lado-izq));border-top:1px solid var(--borde)}
.fila__letra-boton{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.9rem var(--lado-der) .9rem var(--lado-izq);border-radius:0 0 var(--r-s) var(--r-s);color:var(--color-primary);font-size:.875rem;font-weight:600;list-style:none;cursor:pointer;user-select:none;transition:background-color var(--t-rapido) ease}
.fila__letra-boton::-webkit-details-marker{display:none}
.fila__letra-boton:hover{background:var(--tinte)}
.fila__letra-boton:focus-visible{outline-offset:-3px}
.fila__letra[open]>.fila__letra-boton{border-radius:0}
.fila__letra-lupa{width:1rem;height:1rem;flex:none}
.fila__letra-flecha{width:.875rem;height:.875rem;flex:none;transition:transform var(--t-medio) var(--curva)}
.fila__letra-boton:hover .fila__letra-flecha{transform:translateY(2px)}
.fila__letra[open]:not(.esta-cerrando) .fila__letra-flecha{transform:rotate(180deg)}
.fila__letra-cuerpo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:var(--e-3) var(--lado-der) var(--aire) var(--lado-izq)}
.fila__letra-col:first-child{padding-right:var(--e-6)}
.fila__letra-col+.fila__letra-col{padding-left:var(--e-6);border-left:1px solid var(--borde)}
.fila__letra-titulo{display:flex;align-items:center;gap:.5rem;margin:0 0 .9rem;font-size:.9375rem;letter-spacing:-.005em}
.fila__letra-icono{width:1.125rem;height:1.125rem;flex:none}
.fila__letra-icono--malo{color:#C0392B}
.fila__letra-icono--bueno{color:#2DB742}
.fila__letra-lista{display:grid;gap:.6rem;margin:0;padding:0;list-style:none}
.fila__letra .bullet{font-size:.875rem;font-weight:400;line-height:1.45}
.fila__letra .bullet::before{width:1.125rem;height:1.125rem;margin-top:.0625rem}
.fila__precio{display:flex;align-items:baseline;gap:.3rem;margin:0;white-space:nowrap}
.fila__precio b{color:var(--color-text);font-family:var(--font-display);font-size:1.75rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.03em;line-height:1.15}
.fila__precio span{color:var(--color-text-light);font-size:.9375rem}
.fila__trust{display:flex;align-items:center;gap:.45rem;margin:.6rem 0 0;color:var(--color-text-light);font-family:var(--font-detail);font-size:.75rem}
.fila__trust-nota{color:var(--color-text);font-size:.8125rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1}
.fila__trust-logo{display:block;width:auto;height:1.125rem;flex:none}
.estrellas{position:relative;display:inline-block;width:5em;height:1em;font-size:.9rem;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23CBD5E1' d='M12 2.5l2.9 6.2 6.8.7-5.1 4.6 1.5 6.7L12 17.2l-6.1 3.5 1.5-6.7L2.3 9.4l6.8-.7z'/%3E%3C/svg%3E") left center/1em 1em repeat-x}
.estrellas::after{content:"";position:absolute;inset:0;width:var(--llenas,0%);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23FF8A3D' d='M12 2.5l2.9 6.2 6.8.7-5.1 4.6 1.5 6.7L12 17.2l-6.1 3.5 1.5-6.7L2.3 9.4l6.8-.7z'/%3E%3C/svg%3E") left center/1em 1em repeat-x}
.estrellas--0{--llenas:0%}
.estrellas--1{--llenas:10%}
.estrellas--2{--llenas:20%}
.estrellas--3{--llenas:30%}
.estrellas--4{--llenas:40%}
.estrellas--5{--llenas:50%}
.estrellas--6{--llenas:60%}
.estrellas--7{--llenas:70%}
.estrellas--8{--llenas:80%}
.estrellas--9{--llenas:90%}
.estrellas--10{--llenas:100%}
@media (max-width:64em){
  .fila{--lado-izq:var(--e-5);--lado-der:var(--e-5);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"marca nota" "cuerpo cuerpo" "acciones acciones" "letra letra";row-gap:var(--e-5);padding:calc(var(--cinta-arriba) + var(--cinta) + var(--e-5)) var(--lado-der) var(--aire) var(--lado-izq)}
  .fila__cuerpo::before{content:none}
  .fila__marca{margin:0}
  .fila__bullets{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--e-4)}
  .fila__acciones{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"desde boton" "precio boton";align-items:center;column-gap:var(--e-5);row-gap:0;padding-top:var(--e-4);border-top:1px solid var(--borde)}
  .fila__desde{grid-area:desde}
  .fila__precio{grid-area:precio}
  .fila__acciones .btn{grid-area:boton;margin-top:0}
}
@media (max-width:40em){
  .fila{--lado-izq:var(--e-4);--lado-der:var(--e-4);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"marca nota" "cuerpo cuerpo" "acciones acciones" "letra letra";padding:calc(var(--cinta-arriba) + var(--cinta) + var(--e-5)) var(--lado-der) var(--aire) var(--lado-izq);row-gap:var(--e-4)}
  .fila .anillo{width:4.25rem}
  .fila .anillo__valor{font-size:1.125rem}
  .fila__bullets{grid-template-columns:minmax(0,1fr)}
  .fila__acciones{grid-template-columns:minmax(0,1fr);grid-template-areas:"desde" "precio" "boton"}
  .fila__acciones .btn{margin-top:.75rem}
  .fila__letra-cuerpo{grid-template-columns:minmax(0,1fr)}
  .fila__letra-col:first-child{padding-right:0}
  .fila__letra-col+.fila__letra-col{margin-top:var(--e-5);padding:var(--e-5) 0 0;border-left:0;border-top:1px solid var(--borde)}
}
@media (prefers-reduced-motion:reduce){
  .fila__trofeo,.fila:hover .fila__trofeo,.fila__letra-flecha,.fila__acciones .btn svg,.fila .anillo__arco{transition:none;transform:none}
  .fila__letra[open]:not(.esta-cerrando) .fila__letra-flecha{transform:rotate(180deg)}
  .fila .anillo svg{transform:rotate(-90deg)}
}

.aviso-precio{display:flex;align-items:flex-start;gap:.5rem;margin:var(--e-4) 0 0;color:var(--color-text-light);font-size:.8125rem;line-height:1.5}
.aviso-precio svg{width:1rem;height:1rem;flex:none;margin-top:.15rem;color:var(--color-primary)}

.asistente-zona{--elegido:#2DB742;--hueco:1rem;background:var(--superficie);overflow-x:clip}
.asistente__cabeza{margin-bottom:var(--e-5)}
.asistente__titulo{white-space:nowrap}
.asistente__cabeza .lead{max-width:none;margin-bottom:0;font-size:1.0625rem}

.pasos-g{display:flex;align-items:center;gap:0;margin:0 0 var(--e-5);padding:.3rem .2rem;list-style:none;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}
.pasos-g::-webkit-scrollbar{display:none}
.paso-g{display:flex;align-items:center;gap:.55rem;flex:1 1 auto;min-width:max-content;color:var(--color-text-light);font-size:.8125rem;font-weight:600}
.paso-g+.paso-g::before{content:"";flex:1 1 1.5rem;height:2px;min-width:1.25rem;margin:0 .75rem;border-radius:2px;background:var(--borde);transition:background-color var(--t-medio) var(--curva)}
.paso-g__num{display:grid;place-items:center;width:1.9rem;height:1.9rem;flex:none;border-radius:var(--r-full);border:2px solid var(--borde);background:var(--superficie);color:var(--color-text-light);font-family:var(--font-display);font-size:.8125rem;font-weight:700;transition:background-color var(--t-medio) var(--curva),border-color var(--t-medio) var(--curva),color var(--t-medio) var(--curva),transform var(--t-medio) var(--curva)}
.paso-g.es-activo{color:var(--color-text)}
.paso-g.es-activo .paso-g__num{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-light);transform:scale(1.08)}
.paso-g.es-hecho{color:var(--color-text)}
.paso-g.es-hecho .paso-g__num{background:var(--elegido);border-color:var(--elegido);color:#fff}
.paso-g.es-hecho+.paso-g::before{background:var(--elegido)}
.paso-g.es-activo+.paso-g::before{background:color-mix(in srgb,var(--color-primary) 35%,transparent)}

.asistente{padding:var(--e-6);border:1px solid var(--borde);border-radius:var(--r-l);background:var(--superficie);box-shadow:var(--sombra-3)}
.pregunta{margin:0;padding:0;border:0}
.pregunta.entra{animation:entra-pregunta var(--t-medio) var(--curva) both}
@keyframes entra-pregunta{from{opacity:0;transform:translateY(.6rem)}to{opacity:1;transform:none}}
.pregunta__num{margin:0;color:var(--color-text-light);font-family:var(--font-detail);font-size:.75rem;letter-spacing:.06em;text-transform:uppercase}
.pregunta__titulo{margin:.4rem 0 .2rem;font-size:1.3125rem}
.pregunta__ayuda{margin:0 0 var(--e-4);color:var(--color-text-light);font-size:.9375rem}
[data-asistente]:not(.es-interactivo) .pregunta+.pregunta{margin-top:var(--e-6);padding-top:var(--e-5);border-top:1px solid var(--borde)}
[data-asistente]:not(.es-interactivo) .asistente__pie,[data-asistente]:not(.es-interactivo) .pasos-g{display:none}

.opciones{--alto-opcion:calc(4.2rem + 3px);display:grid;grid-template-columns:repeat(auto-fit,minmax(16.5rem,1fr));align-content:start;gap:.7rem;min-height:calc(2 * var(--alto-opcion) + .7rem)}
.opciones--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.opciones--5,.opciones--6{grid-template-columns:repeat(3,minmax(0,1fr))}
.opcion{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.8rem .9rem;border:1.5px solid var(--borde);border-radius:var(--r-s);background:var(--superficie);cursor:pointer;transition:border-color var(--t-rapido) ease,box-shadow var(--t-rapido) ease,transform var(--t-rapido) var(--curva),background-color var(--t-rapido) ease}
.opcion:hover{border-color:color-mix(in srgb,var(--elegido) 55%,transparent);box-shadow:var(--sombra-2);transform:translateY(-2px)}
.opcion input{position:absolute;opacity:0;width:1px;height:1px}
.opcion__icono{display:grid;place-items:center;width:2.6rem;height:2.6rem;flex:none;border-radius:var(--r-xs);background:var(--color-primary);color:var(--color-light);transition:background-color var(--t-rapido) ease,color var(--t-rapido) ease,transform var(--t-rapido) var(--curva)}
.opcion__icono svg{width:1.3rem;height:1.3rem}
.opcion__texto{display:flex;flex-direction:column;gap:.1rem;min-width:0}
.opcion__texto b{font-size:.9375rem;line-height:1.25}
.opcion__texto small{color:var(--color-text-light);font-size:.8125rem;line-height:1.3}
.opcion__marca{display:grid;place-items:center;width:1.35rem;height:1.35rem;flex:none;border-radius:var(--r-full);background:var(--elegido);color:#fff;opacity:0;transform:scale(.4);transition:opacity var(--t-rapido) ease,transform var(--t-medio) var(--curva)}
.opcion__marca svg{width:.8rem;height:.8rem}
.opcion:has(input:checked){border-color:var(--elegido);background:color-mix(in srgb,var(--elegido) 6%,var(--superficie));box-shadow:var(--sombra-2)}
.opcion:has(input:checked) .opcion__icono{background:var(--elegido);color:#fff;transform:scale(1.05)}
.opcion:has(input:checked) .opcion__marca{opacity:1;transform:none}
.opcion:has(input:focus-visible){outline:2px solid var(--elegido);outline-offset:3px}

.asistente__pie{display:flex;justify-content:space-between;gap:var(--e-3);margin-top:var(--e-5)}
.asistente__pie [data-siguiente]{margin-left:auto}
.asistente__pie .btn svg{width:1rem;height:1rem}
.asistente__pie .btn[hidden]{display:none!important}
.asistente__pie .btn[disabled]{opacity:.4;cursor:not-allowed}
.asistente__pie .btn:not([disabled]):hover svg{transform:translateX(3px)}

.procesando{display:grid;place-items:center;gap:.4rem;padding:var(--e-8) var(--e-5);border:1px solid var(--borde);border-radius:var(--r-l);background:var(--superficie);box-shadow:var(--sombra-3);text-align:center}
.procesando__anillo{position:relative;display:block;width:3.75rem;height:3.75rem;margin-bottom:var(--e-4)}
.procesando__anillo i{position:absolute;inset:0;border-radius:var(--r-full);border:3px solid transparent;border-top-color:var(--color-primary);animation:gira 1.1s linear infinite}
.procesando__anillo i:nth-child(2){inset:.55rem;border-top-color:var(--elegido);animation-duration:1.5s;animation-direction:reverse}
.procesando__anillo i:nth-child(3){inset:1.1rem;border-top-color:var(--color-accent);animation-duration:.9s}
@keyframes gira{to{transform:rotate(360deg)}}
.procesando__titulo{margin:0;font-family:var(--font-display);font-size:1.25rem}
.procesando__paso{margin:0;color:var(--color-text-light);font-size:.9375rem}
.procesando__paso.cambia{animation:entra-pregunta var(--t-medio) var(--curva) both}

.resultado{animation:entra-pregunta var(--t-lento) var(--curva) both}
.resultado__cabeza{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--e-3);margin-bottom:var(--e-4)}
.resultado__zona{display:grid;grid-template-columns:calc((100% - 2 * var(--hueco)) / 3) minmax(0,1fr);gap:var(--hueco);align-items:start}

.perfil{padding:var(--e-5);border:1px solid var(--borde);border-radius:var(--r-m);background:var(--tinte)}
.perfil__cabeza{display:flex;align-items:center;gap:var(--e-4);margin-bottom:var(--e-4);padding-bottom:var(--e-4);border-bottom:1px solid var(--borde)}
.perfil__icono{display:grid;place-items:center;width:3.5rem;height:3.5rem;flex:none;border-radius:var(--r-full);background:color-mix(in srgb,#2DB742 12%,transparent);color:color-mix(in srgb,#2DB742 55%,var(--color-text))}
.perfil__icono svg{width:1.6rem;height:1.6rem}
.perfil__tipo{margin:0;font-family:var(--font-display);font-size:1.375rem}
.perfil__insignia{margin:.25rem 0 0;color:color-mix(in srgb,#2DB742 55%,var(--color-text));font-family:var(--font-detail);font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.perfil__fila{display:flex;align-items:center;justify-content:space-between;gap:var(--e-3);margin-bottom:var(--e-3)}
.perfil__titulo{margin:0;font-family:var(--font-display);font-size:1.0625rem}
.perfil__editar{min-height:1.9rem;gap:.3rem;padding:.2rem .7rem;font-size:.8125rem}
.perfil__editar svg{width:.8rem;height:.8rem}
.perfil__lista{display:grid;gap:.7rem;margin:0;padding:0;list-style:none}
.perfil__lista li{display:grid;grid-template-columns:1.2rem minmax(0,1fr);align-items:center;gap:.15rem .6rem;font-size:.875rem}
.perfil__lista svg{width:1.1rem;height:1.1rem;color:var(--color-primary)}
.perfil__lista span{color:var(--color-text-light)}
.perfil__lista b{grid-column:2;font-weight:600;line-height:1.3}
.perfil__mas{margin-top:var(--e-4)}

.resultado__planes-titulo{margin:0;font-family:var(--font-display);font-size:1.25rem}
.resultado__planes-texto{margin:.2rem 0 0;color:var(--color-text-light);font-size:.9375rem}

.carrusel__mandos{display:flex;align-items:center;gap:.5rem}
.carrusel{position:relative;clip-path:inset(-2.5rem -100vw -2.5rem -2px)}
.carrusel__flecha{display:grid;place-items:center;width:2.6rem;height:2.6rem;flex:none;border:1px solid var(--borde);border-radius:var(--r-xs);background:var(--superficie);color:var(--color-primary);cursor:pointer;box-shadow:var(--sombra-1);transition:border-color var(--t-rapido) ease,box-shadow var(--t-rapido) ease,transform var(--t-rapido) var(--curva)}
.carrusel__flecha:hover{border-color:var(--color-primary);box-shadow:var(--sombra-2);transform:scale(1.06)}
.carrusel__flecha svg{width:1.1rem;height:1.1rem}
.carrusel__pista{display:flex;align-items:flex-start;gap:var(--hueco);margin:0;padding:.35rem 0;list-style:none}

.carta{position:relative;flex:none;width:calc((100% - var(--hueco)) / 2);display:flex;flex-direction:column;gap:.3rem;padding:var(--e-5);border:1px solid var(--borde);border-radius:var(--r-m);background:var(--superficie);box-shadow:var(--sombra-1);animation:entra-carta var(--t-medio) var(--curva) both;animation-delay:var(--retraso,0ms);transition:border-color var(--t-rapido) ease,box-shadow var(--t-rapido) ease,transform var(--t-rapido) var(--curva)}
.carta:hover{border-color:var(--borde-fuerte);box-shadow:var(--sombra-2);transform:translateY(-3px)}
@keyframes entra-carta{from{opacity:0;transform:translateY(.9rem)}to{opacity:1;transform:none}}
.carta__insignia{position:absolute;top:-.7rem;right:var(--e-5);display:inline-flex;align-items:center;gap:.35rem;margin:0;padding:.2rem .7rem;border-radius:var(--r-full);font-family:var(--font-detail);font-size:.6875rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
.carta__insignia svg{width:.8rem;height:.8rem}
.carta__insignia--verde{background:color-mix(in srgb,#2DB742 12%,var(--superficie));color:color-mix(in srgb,#2DB742 55%,var(--color-text))}
.carta__insignia--azul{background:color-mix(in srgb,var(--color-primary) 12%,var(--superficie));color:var(--color-primary)}
.carta__insignia--rosa{background:color-mix(in srgb,#C0392B 11%,var(--superficie));color:#A33226}
.carta__marca{margin:0;color:var(--color-text-light);font-family:var(--font-detail);font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}
.carta__plan{margin:0;font-family:var(--font-display);font-size:1.0625rem}
.carta__cabeza{display:flex;flex-direction:row-reverse;align-items:center;justify-content:space-between;gap:.75rem}
.carta__cabeza .carta__marca{flex:none;white-space:nowrap}
.carta__cabeza .carta__plan{min-width:0}
.carta__nota{display:flex;align-items:center;gap:.35rem;margin:.35rem 0 0;font-size:.875rem;color:var(--color-text-light)}
.carta__nota-base{margin-left:.05rem;color:var(--color-text-light);font-size:.75rem;font-weight:600}
.carta__nota-escala{margin-left:.2rem}
.carta__nota .anillo--mini{margin-right:.15rem}
.anillo--mini{width:1.75rem;background:conic-gradient(var(--color-contrast) calc(var(--anillo) * 1%),color-mix(in srgb,var(--color-primary) 12%,transparent) 0)}
.anillo--mini::before{inset:.2rem;background:var(--superficie)}
.carta__nota b{color:var(--color-text);font-size:1rem;font-weight:800;font-variant-numeric:tabular-nums}
.carta__rasgos{display:grid;gap:.3rem;margin:.75rem 0 0;padding:0;list-style:none;font-size:.8125rem}
.carta__rasgos li{display:flex;align-items:flex-start;gap:.45rem;line-height:1.35}
.carta__rasgos li::before{content:"";width:1rem;height:1rem;flex:none;margin-top:.1rem;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232DB742' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7'/%3E%3C/svg%3E") center/contain no-repeat}
.carta__rasgos li.es-no::before{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C0392B' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6 6 18'/%3E%3C/svg%3E") center/contain no-repeat}
.carta__precio{display:flex;align-items:baseline;gap:.2rem;margin:.85rem 0 0}
.carta__precio b{font-family:var(--font-display);font-size:1.6rem;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.carta__precio span{color:var(--color-text-light);font-size:.875rem}
.carta__ciclo{margin:.1rem 0 0;color:var(--color-text-light);font-size:.75rem;line-height:1.45}
.carta__letra{margin:.6rem 0}
.carta__letra summary{position:relative;display:inline-block;color:var(--color-primary);font-size:1.0625rem;font-weight:600;cursor:pointer;list-style:none}
.carta__letra summary::-webkit-details-marker{display:none}
.carta__letra summary::before{content:"+ "}
.carta__letra[open] summary::before{content:"− "}
.carta__letra summary::after,.plan__letra summary::after{content:"";position:absolute;left:0;right:0;bottom:-.2rem;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--color-primary) 60%,transparent) 20%,color-mix(in srgb,var(--color-primary) 60%,transparent) 80%,transparent);transform-origin:center;animation:latido 2.6s var(--curva) infinite}
.carta__letra[open] summary::after,.plan__letra[open] summary::after{animation:none;opacity:.3;transform:none}
.carta__letra summary:hover::after,.plan__letra summary:hover::after{animation:none;opacity:1;transform:none}
@keyframes latido{0%,100%{opacity:.25;transform:scaleX(.45)}50%{opacity:.9;transform:scaleX(1)}}
.carta__letra ul{margin:.4rem 0 0;padding-left:1.1rem;color:var(--color-text-light);font-size:.9375rem;line-height:1.55}
.aviso-plan{display:flex;align-items:flex-start;gap:.4rem;margin:.5rem 0 0 -1.1rem;list-style:none}
.aviso-plan svg{width:.95rem;height:.95rem;flex:none;margin-top:.1rem;color:#C0392B}

.carta__salto,.plan__salto{margin:.1rem 0 0;color:#A33226;font-size:.75rem;font-weight:600}
.pista{position:relative;display:inline-flex;align-items:center;margin-left:.25rem;vertical-align:middle;cursor:help}
.pista svg{width:.85rem;height:.85rem;color:var(--color-primary)}
.pista__globo{position:absolute;left:50%;bottom:calc(100% + .45rem);width:15rem;padding:.5rem .65rem;border-radius:var(--r-xs);background:var(--color-dark);color:var(--color-light);font-size:.75rem;line-height:1.4;text-align:left;opacity:0;visibility:hidden;transform:translate(-50%,.25rem);transition:opacity var(--t-rapido) ease,transform var(--t-rapido) var(--curva);z-index:4}
.pista:hover .pista__globo,.pista:focus-visible .pista__globo{opacity:1;visibility:visible;transform:translate(-50%,0)}
.carta .btn{margin-top:auto;justify-content:center}
.carta .btn svg{width:1rem;height:1rem}
.resultado .carta .btn{color:var(--color-light)}

.nota-info{display:flex;align-items:flex-start;gap:.6rem;margin:var(--e-5) 0 0;padding:var(--e-4);border:1px solid color-mix(in srgb,var(--color-primary) 18%,transparent);border-radius:var(--r-m);background:color-mix(in srgb,var(--color-primary) 5%,transparent);color:var(--color-text-light);font-size:.8125rem;line-height:1.55}
.nota-info svg{width:1.1rem;height:1.1rem;flex:none;margin-top:.1rem;color:var(--color-primary)}
.nota-info b{color:var(--color-text)}

.marca-bloque+.marca-bloque{margin-top:var(--e-7)}
.marca-bloque__cabeza{display:flex;align-items:center;justify-content:space-between;gap:var(--e-4);margin-bottom:var(--e-4)}
.marca-bloque__titulo{margin:0;font-family:var(--font-display);font-size:1.5rem}
.marca-bloque__titulo a{display:flex;width:fit-content}
.marca-bloque__logo{display:block;max-width:100%;height:auto}

@media (max-width:64em){
  .asistente__titulo{white-space:normal}
  .resultado__zona{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:64em){
  .opciones--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .opciones--5,.opciones--6{grid-template-columns:repeat(2,minmax(0,1fr))}
  .opciones{min-height:calc(3 * var(--alto-opcion) + 1.4rem)}
}
@media (max-width:40em){
  .asistente{padding:var(--e-4)}
  .opciones--4,.opciones--5,.opciones--6{grid-template-columns:1fr}
  .opciones{min-height:0}
  .carta{width:calc(100% - 2.5rem)}
  .paso-g__txt{display:none}
  .paso-g+.paso-g::before{margin:0 .35rem;min-width:.75rem}
  .opciones{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  .pregunta.entra,.resultado,.carta,.procesando__paso.cambia{animation:none}
  .carta__letra summary::after,.plan__letra summary::after{animation:none;opacity:.5;transform:none}
  .procesando__anillo i{animation:none;border-top-color:var(--color-primary)}
}

.hero--portada{padding-block:clamp(1.5rem,3vw,2rem)}
.portada{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:clamp(1.5rem,4vw,3.5rem);
}
.portada__texto{max-width:34rem}
.portada__texto--ancho{max-width:48rem}
.portada .display{margin:0 0 .3em}
.portada .lead{margin:0;max-width:46ch;color:var(--atenuado-oscuro)}
.portada__aviso{
  display:flex;
  align-items:flex-start;
  gap:.5rem;
  margin:var(--e-4) 0 0;
  color:var(--atenuado-oscuro);
  font-size:.8125rem;
  line-height:1.35;
}
.portada__aviso svg{flex:none;width:1.125rem;height:1.125rem;margin-top:.1rem;color:var(--color-primary)}
.portada__actualizado{margin:var(--e-3) 0 0;color:var(--atenuado-oscuro);font-family:var(--font-detail);font-size:.75rem;letter-spacing:.02em}
.entrada-hero__autoria a{color:var(--color-primary);font-weight:600;text-decoration:none;transition:color var(--t-rapido) ease}
.entrada-hero__autoria a:hover{color:color-mix(in srgb,var(--color-primary) 80%,var(--color-text))}
.cifras-vivas{
  position:relative;
  display:flex;
  gap:2rem;
  margin:0;
  padding:0;
  list-style:none;
}
.cifras-vivas::before{
  content:"";
  position:absolute;
  inset:-45% -14%;
  z-index:-1;
  border-radius:50%;
  background:radial-gradient(closest-side,color-mix(in srgb,var(--color-primary) 14%,transparent),transparent);
  filter:blur(1.25rem);
  animation:respirar 9s var(--curva-suave) infinite;
  pointer-events:none;
}
.cifra-viva{
  --i:0;
  position:relative;
  flex:1 1 0;
  min-width:0;
  animation:entra-carta .8s var(--curva) both;
  animation-delay:calc(140ms + var(--i) * 140ms);
}
.cifra-viva:nth-child(2){--i:1}
.cifra-viva:nth-child(3){--i:2}
.cifra-viva__cuerpo{
  position:relative;
  display:grid;
  gap:.5rem;
  min-width:8.75rem;
  height:100%;
  animation:flotar 7s ease-in-out infinite;
  animation-delay:calc(-1s - var(--i) * 2.2s);
  transition:translate var(--t-rapido) var(--curva);
}
.cifra-viva__cuerpo:hover{translate:0 -2px}
.cifra-viva__fila{display:flex;align-items:baseline;gap:.3rem;margin:0}
.cifra-viva__icono{display:inline-flex;flex:none;width:1.125rem;height:1.125rem;color:var(--color-primary)}
.cifra-viva__icono svg{width:100%;height:100%}
.cifra-viva__numero{
  display:block;
  color:var(--sobre-oscuro);
  font-family:var(--font-display);
  font-size:clamp(1.75rem,1.2rem + 1.4vw,2.25rem);
  font-weight:800;
  font-variant-numeric:tabular-nums;
  letter-spacing:-.035em;
  line-height:1;
}
.cifra-viva__texto{
  display:block;
  color:var(--atenuado-oscuro);
  font-family:var(--font-detail);
  font-size:.6875rem;
  letter-spacing:.06em;
  line-height:1.3;
  text-transform:uppercase;
}
.cifra-viva__barra{
  display:block;
  height:2px;
  margin-top:.15rem;
  border-radius:var(--r-full);
  background:linear-gradient(90deg,var(--color-contrast),var(--color-accent));
  transform-origin:left;
  animation:crecer 1.4s var(--curva) both;
  animation-delay:calc(.5s + var(--i) * 140ms);
}
@keyframes crecer{from{scale:0 1}to{scale:1 1}}
@media (max-width:63.99em){
  .portada{grid-template-columns:1fr;gap:var(--e-5)}
  .cifras-vivas{gap:1.25rem}
  .cifra-viva__cuerpo{min-width:0}
}
@media (max-width:40em){
  .cifras-vivas{gap:1rem}
  .cifra-viva__cuerpo{gap:.4rem}
  .cifra-viva__numero{font-size:1.5rem}
  .cifra-viva__texto{font-size:.625rem;letter-spacing:.04em}
}

.formula{
  display:grid;
  grid-template-columns:minmax(0,5fr) minmax(0,7fr);
  gap:clamp(2rem,5vw,4.5rem);
  align-items:start;
}
.formula__texto{position:sticky;top:5.5rem}
.formula__texto .lead+.lead{margin-top:var(--e-4)}
.criterios{counter-reset:criterio;gap:var(--e-3)}
.criterio{
  position:relative;
  padding:1rem 1.1rem 1.1rem;
  border:1px solid transparent;
  border-radius:var(--r-m);
  transition:background var(--t-rapido) ease,border-color var(--t-rapido) ease,translate var(--t-rapido) var(--curva);
}
.criterio:hover{background:var(--tinte);border-color:var(--borde);translate:0 -2px}
.criterio__nombre::before{
  counter-increment:criterio;
  content:counter(criterio,decimal-leading-zero);
  margin-right:.6rem;
}
.criterio__barra{background:color-mix(in srgb,var(--color-primary) 10%,transparent)}
.criterio__relleno{
  position:relative;
  box-shadow:0 0 .75rem color-mix(in srgb,var(--color-contrast) 35%,transparent);
  transition-delay:calc(var(--i,0) * 160ms + 150ms);
}
.criterio__relleno::after{
  content:"";
  position:absolute;
  top:50%;
  right:.12rem;
  width:.3rem;
  height:.3rem;
  translate:0 -50%;
  border-radius:50%;
  background:var(--color-light);
  opacity:.9;
}
.criterio__texto{color:var(--color-text-light)}
.criterio__peso{display:inline-block;transition:color var(--t-medio) ease}
.criterio__peso.es-listo{animation:asentar .45s var(--curva)}
@keyframes asentar{0%{transform:scale(1)}35%{transform:scale(1.12)}100%{transform:scale(1)}}
@media (max-width:63.99em){
  .formula{grid-template-columns:1fr;gap:var(--e-6)}
  .formula__texto{position:static}
}

.niveles{
  display:grid;
  gap:.75rem;
  margin:0;
  padding:0;
  list-style:none;
}
.nivel{
  --tono:var(--color-primary);
  position:relative;
  display:grid;
  gap:.35rem;
  padding:1rem 1.15rem 1.1rem;
  border:1px solid var(--borde);
  border-radius:var(--r-l);
  background:var(--superficie);
  box-shadow:var(--sombra-1);
  transition:border-color var(--t-rapido) ease,box-shadow var(--t-rapido) ease,translate var(--t-rapido) var(--curva);
}
.nivel:hover{border-color:color-mix(in srgb,var(--tono) 45%,transparent);box-shadow:var(--sombra-3);translate:0 -3px}
.nivel--entero{--tono:#2DB742}
.nivel--mitad{--tono:var(--color-contrast)}
.nivel--cero{--tono:#C0392B}
.nivel__icono{display:inline-flex;flex:none;width:1.125rem;height:1.125rem;color:var(--tono)}
.nivel__icono svg{width:100%;height:100%}
.nivel__valor{display:flex;align-items:baseline;gap:.4rem;margin:0;color:var(--tono)}
.nivel__valor b{
  font-family:var(--font-display);
  font-size:1.75rem;
  font-weight:800;
  font-variant-numeric:tabular-nums;
  letter-spacing:-.03em;
  line-height:1;
}
.nivel__valor span{color:var(--color-text-light);font-family:var(--font-detail);font-size:.6875rem;letter-spacing:.06em;text-transform:uppercase}
.nivel__titulo{display:flex;align-items:center;gap:.5rem;margin:.15rem 0 0;font-size:1rem}
.nivel--cero .nivel__titulo{color:var(--tono)}
.nivel__texto{margin:0;color:var(--color-text-light);font-size:.875rem}
.nivel__aviso{display:flex;align-items:flex-start;gap:.4rem;margin:0;color:#C0392B;font-size:.8125rem;line-height:1.45}
.nivel__aviso svg{flex:none;width:1rem;height:1rem;margin-top:.1rem}
.nivel__barra{
  display:block;
  height:.4rem;
  margin-top:.35rem;
  border-radius:var(--r-full);
  background:color-mix(in srgb,var(--tono) 12%,transparent);
  overflow:hidden;
}
.nivel--cero .nivel__barra{background:repeating-linear-gradient(90deg,color-mix(in srgb,var(--tono) 28%,transparent) 0 .4rem,transparent .4rem .8rem)}
.nivel__relleno{
  display:block;
  height:100%;
  width:calc(var(--barra) * 1%);
  border-radius:inherit;
  background:linear-gradient(90deg,color-mix(in srgb,var(--tono) 65%,var(--color-light)),var(--tono));
  box-shadow:0 0 .6rem color-mix(in srgb,var(--tono) 40%,transparent);
  transition:--barra 1.2s var(--curva);
  transition-delay:calc(var(--i,0) * 180ms + 150ms);
}
.politica{
  display:grid;
  grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);
  gap:clamp(2rem,5vw,4rem);
  align-items:start;
}
.politica__titulo{margin:var(--e-6) 0 var(--e-4);font-size:1.0625rem}
.politica .niveles{margin-top:2rem}
.efectos,.fuentes{display:grid;gap:var(--e-3);margin:0;padding:0;list-style:none}
.fuentes{grid-template-columns:repeat(3,minmax(0,1fr))}
.fuentes .fuente{grid-template-columns:1fr;gap:.6rem}
.efecto,.fuente{
  display:grid;
  grid-template-columns:2.5rem minmax(0,1fr);
  gap:var(--e-4);
  align-items:start;
  padding:var(--e-4);
  border:1px solid transparent;
  border-radius:var(--r-m);
  transition:background var(--t-rapido) ease,border-color var(--t-rapido) ease;
}
.efecto:hover,.fuente:hover{background:var(--tinte);border-color:var(--borde)}
.efecto__icono,.fuente__icono{
  display:grid;
  place-items:center;
  width:2.5rem;
  height:2.5rem;
  border-radius:var(--r-s);
  background:color-mix(in srgb,var(--color-primary) 8%,transparent);
  color:var(--color-primary);
}
.efecto__icono svg,.fuente__icono svg{width:1.2rem;height:1.2rem}
.efecto b,.fuente b{display:block;font-family:var(--font-display);font-size:.9375rem}
.efecto span,.fuente span{display:block;margin-top:.15rem;color:var(--color-text-light);font-size:.875rem}
.politica .nota-info{margin-top:var(--e-4)}
@media (max-width:63.99em){
  .politica{grid-template-columns:1fr;gap:var(--e-6)}
  .politica .niveles{margin-top:0}
  .fuentes{grid-template-columns:1fr}
}

.porque{overflow:hidden}
.porque__intro{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);
  gap:clamp(2rem,5vw,4.5rem);
  align-items:start;
  margin-bottom:var(--e-7);
}
.porque__cabeza{max-width:46rem}
.porque__cabeza .display{margin:0 0 .35em}
.porque__respuesta{margin:0;font-size:clamp(1.0625rem,1rem + .4vw,1.1875rem);line-height:1.6}
.porque__cifras{flex-direction:column;gap:1.75rem;margin:2rem 0 0}
.porque__cifras .cifra-viva{animation:none}
.porque__cifras .cifra-viva__texto{font-family:var(--font-body);font-size:.875rem;letter-spacing:0;line-height:1.4;text-transform:none}
.porque__cifras .cifra-viva__barra{
  animation:none;
  scale:0 1;
  transition:scale 2.4s var(--curva);
  transition-delay:calc(var(--i,0) * 420ms + 350ms);
}
.porque__cifras .cifra-viva.es-visible .cifra-viva__barra{scale:1 1}
.cifra-viva__pre{margin-right:.06em;font-size:.62em;vertical-align:.22em}
.razones{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));
  gap:var(--e-4);
  margin:0;
  padding:0;
  list-style:none;
}
.razon{
  position:relative;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:start;
  align-content:start;
  gap:var(--e-3) .75rem;
  padding:var(--e-5);
  border:1px solid var(--borde-oscuro);
  border-radius:var(--r-l);
  background:var(--vidrio);
  transition:border-color var(--t-rapido) ease,background var(--t-rapido) ease,translate var(--t-rapido) var(--curva);
}
.razon:hover{
  border-color:color-mix(in srgb,var(--color-contrast) 45%,transparent);
  background:var(--superficie);
  translate:0 -3px;
}
.razon__cabeza{display:flex;align-items:center;justify-content:space-between;gap:.75rem}
.razon__icono{display:inline-flex;flex:none;width:1.5rem;height:1.5rem;color:var(--color-primary);transition:transform var(--t-medio) var(--curva)}
.razon__icono svg{width:100%;height:100%}
.razon:hover .razon__icono{transform:scale(1.12) rotate(-6deg)}
.razon__titulo{margin:calc((1.5rem - 1.0625rem * 1.14) / 2) 0;font-size:1.0625rem}
.razon__texto{grid-column:1/-1;margin:0;color:var(--atenuado-oscuro);font-size:.9375rem;line-height:1.55}
.porque__cierre{margin:var(--e-6) 0 0}
@media (max-width:63.99em){
  .porque__intro{grid-template-columns:1fr;gap:var(--e-6)}
  .porque__cifras{margin-top:0;gap:1.25rem}
}

@media (scripting:enabled){
  .faqs--columna[data-reveal]{opacity:1;transform:none;transition:none}
  .faqs--columna[data-reveal] .faq{opacity:0}
  .faqs--columna.es-visible .faq{animation:faq-entra .55s var(--curva) both}
  .faqs--columna.es-visible .faq:nth-child(2){animation-delay:40ms}
  .faqs--columna.es-visible .faq:nth-child(3){animation-delay:80ms}
  .faqs--columna.es-visible .faq:nth-child(4){animation-delay:120ms}
  .faqs--columna.es-visible .faq:nth-child(5){animation-delay:160ms}
  .faqs--columna.es-visible .faq:nth-child(6){animation-delay:200ms}
  .faqs--columna.es-visible .faq:nth-child(7){animation-delay:240ms}
  .faqs--columna.es-visible .faq:nth-child(8){animation-delay:280ms}
  .faqs--columna.es-visible .faq:nth-child(9){animation-delay:320ms}
  .faqs--columna.es-visible .faq:nth-child(10){animation-delay:360ms}
  .faqs--columna.es-visible .faq:nth-child(11){animation-delay:400ms}
  .faqs--columna.es-visible .faq:nth-child(12){animation-delay:440ms}
  .faqs--columna.es-visible .faq:nth-child(13){animation-delay:480ms}
  .faqs--columna.es-visible .faq:nth-child(14){animation-delay:520ms}
  .faqs--columna.es-visible .faq:nth-child(15){animation-delay:560ms}
  .faqs--columna.es-visible .faq:nth-child(16){animation-delay:600ms}
  .faqs--columna.es-visible .faq:nth-child(17){animation-delay:640ms}
  .faqs--columna.es-visible .faq:nth-child(18){animation-delay:680ms}
}
@keyframes faq-entra{from{opacity:0;translate:0 .6rem}to{opacity:1;translate:0 0}}
@media (prefers-reduced-motion:reduce){
  .faqs--columna[data-reveal] .faq{opacity:1;animation:none;translate:none}
}

.verificacion .section__cabeza{max-width:none}
.verificacion .lead{max-width:44rem}
.pasos--fila{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--e-4)}
.pasos--fila .paso{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:.6rem var(--e-3);
  align-content:start;
  border-color:var(--borde-oscuro);
  background:var(--vidrio);
  transition:border-color var(--t-rapido) ease,background var(--t-rapido) ease,translate var(--t-rapido) var(--curva);
}
.pasos--fila .paso::before{content:none}
.pasos--fila .paso__titulo::after{
  content:"";
  position:absolute;
  top:50%;
  left:calc(100% + var(--e-3) + 1.75rem + var(--e-5));
  width:var(--e-4);
  height:1px;
  background:color-mix(in srgb,var(--color-primary) 22%,transparent);
}
.pasos--fila .paso:last-child .paso__titulo::after{content:none}
.pasos--fila .paso:hover{
  transform:none;
  translate:0 -3px;
  box-shadow:none;
  border-color:color-mix(in srgb,var(--color-contrast) 45%,transparent);
  background:var(--superficie);
}
.paso__icono{display:inline-flex;width:1.5rem;height:1.5rem;color:var(--color-primary);transition:transform var(--t-medio) var(--curva)}
.paso__icono svg{width:100%;height:100%}
.pasos--fila .paso:hover .paso__icono{transform:scale(1.12) rotate(-6deg)}
.pasos--fila .paso__icono{grid-column:2;grid-row:1;width:1.75rem;height:1.75rem}
.pasos--fila .paso__titulo{position:relative;grid-column:1;grid-row:1;margin:0;color:var(--sobre-oscuro)}
.pasos--fila .paso__texto{grid-column:1/-1;color:var(--atenuado-oscuro)}
@media (max-width:63.99em){
  .pasos--fila{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pasos--fila .paso__titulo::after{content:none}
}
@media (max-width:40em){
  .pasos--fila{grid-template-columns:1fr}
}

.portada .nota-grande{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;border:1px solid var(--borde-oscuro);border-radius:var(--r-l);background:var(--vidrio);backdrop-filter:blur(12px)}
.portada .nota-grande__etiqueta{color:var(--color-primary);font-family:var(--font-display);font-size:1.125rem;font-weight:800}
.incluye{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--e-5)}
.incluye__columna{padding:var(--e-5);border:1px solid var(--borde);border-radius:var(--r-l);background:var(--superficie);transition:border-color var(--t-rapido) ease,translate var(--t-rapido) var(--curva),box-shadow var(--t-rapido) ease}
.incluye__columna:hover{border-color:var(--borde-fuerte);box-shadow:var(--sombra-2);translate:0 -3px}
.incluye__titulo{margin:0 0 .75rem;font-size:1.0625rem}
.ficha__rasgos{margin:0;font-size:.9375rem;gap:.5rem}
.ficha__faltan{display:grid;gap:.35rem;margin:var(--e-4) 0 0;padding:0;list-style:none}
.ficha__faltan .aviso-plan{margin:0;font-size:.9375rem}
.franja__titulo small{color:var(--color-text-light);font-size:.75rem;font-weight:400}
@media (max-width:63.99em){
  .incluye{grid-template-columns:1fr}
}

.section__cabeza--corta{margin-bottom:var(--e-5)}
.veredicto--ficha{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:var(--e-5)}
.veredicto--ficha>li{--tono:#2DB742;position:relative;padding:var(--e-5);border:1px solid var(--borde);border-left:4px solid var(--tono);border-radius:var(--r-l);background:linear-gradient(180deg,color-mix(in srgb,var(--tono) 6%,var(--superficie)),var(--superficie) 40%);transition:border-color var(--t-rapido) ease,box-shadow var(--t-rapido) ease,translate var(--t-rapido) var(--curva)}
.veredicto--ficha>li:hover{box-shadow:var(--sombra-2);translate:0 -2px}
.veredicto--ficha>li.veredicto--contra{--tono:#C0392B}
.veredicto--ficha .veredicto__titulo{font-size:1.375rem;gap:.7rem}
.veredicto__icono{position:relative;display:inline-grid;place-items:center;width:2.5rem;height:2.5rem;color:var(--tono)}
.veredicto__icono--chispas svg{position:absolute}
.veredicto__icono--chispas svg:nth-child(1){width:1.4rem;height:1.4rem;left:.15rem;top:.55rem}
.veredicto__icono--chispas svg:nth-child(2){width:.8rem;height:.8rem;left:1.55rem;top:.15rem;opacity:.85}
.veredicto__icono--chispas svg:nth-child(3){width:.55rem;height:.55rem;left:1.7rem;top:1.6rem;opacity:.7}
.veredicto__icono svg{width:1.4rem;height:1.4rem}
.veredicto--ficha .veredicto__lista li{font-size:1rem}
.criterios-mini{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--e-4);margin:0;padding:0;list-style:none}
.criterio-mini{padding:1rem 1.1rem;border:1px solid var(--borde);border-radius:var(--r-m);background:var(--superficie);transition:border-color var(--t-rapido) ease,translate var(--t-rapido) var(--curva),box-shadow var(--t-rapido) ease}
.criterio-mini:hover{border-color:var(--borde-fuerte);box-shadow:var(--sombra-2);translate:0 -2px}
.criterio-mini__cabeza{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.5rem}
.criterio-mini__nombre{font-family:var(--font-display);font-size:.9375rem;font-weight:700}
.criterio-mini__nombre small{margin-left:.4rem;color:var(--color-text-light);font-family:var(--font-detail);font-size:.6875rem;font-weight:400;letter-spacing:.04em}
.criterio-mini__nota{color:var(--color-primary);font-family:var(--font-detail);font-size:.9375rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.criterio-mini .criterio__barra{background:color-mix(in srgb,var(--color-primary) 10%,transparent)}
.criterio-mini .criterio__relleno{transition-delay:calc(var(--i,0) * 120ms + 150ms)}
.criterio-mini__texto{margin:.5rem 0 0;color:var(--color-text-light);font-size:.8125rem;line-height:1.45}
.ficha-transparencia{margin-top:var(--e-5);padding:var(--e-5);border:1px solid var(--borde);border-radius:var(--r-l);background:var(--superficie)}
.ficha-transparencia__texto{margin:0;color:var(--color-text-light);font-size:.9375rem}
.ficha-planes{--hueco:1rem;overflow-x:clip}
.ficha-planes .wrap{container-type:inline-size}
.carrusel--ficha{clip-path:none;margin-right:calc((100% - 100vw) / 2)}
.carrusel--ficha .carrusel__pista::after{content:"";flex:none;width:calc((100vw - 100cqw) / 2)}
.carrusel--ficha .carrusel__pista{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:.75rem}
.carrusel--ficha .carrusel__pista::-webkit-scrollbar{display:none}
.carrusel--ficha .carta{width:calc((100cqw - 2 * var(--hueco)) / 3 - .5rem);scroll-snap-align:start;animation:none}
.carrusel__flecha:disabled{opacity:.35;cursor:default;transform:none;box-shadow:none}
@media (max-width:63.99em){
  .veredicto--ficha{grid-template-columns:1fr}
  .criterios-mini{grid-template-columns:repeat(2,minmax(0,1fr))}
  .carrusel--ficha .carta{width:calc((100cqw - var(--hueco)) / 2 - .5rem)}
}
@media (max-width:40em){
  .criterios-mini{grid-template-columns:1fr}
  .carrusel--ficha .carta{width:calc(100cqw - 2.5rem)}
}
.ficha-resumen{padding-top:0}
.ficha-resumen .franja{position:relative;z-index:1;margin-top:-1.25rem}
.nota-cabeza{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--e-4);margin-bottom:var(--e-5)}
.nota-cabeza .display{margin:0}
.nota-total{display:inline-flex;align-items:center;gap:.5rem;margin:0;padding:.55rem 1rem .55rem .7rem;border:1px solid var(--borde);border-radius:var(--r-full);background:var(--superficie);box-shadow:var(--sombra-1)}
.nota-total b{font-family:var(--font-display);font-size:1.5rem;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.nota-total__base{color:var(--color-text-light);font-size:.8125rem;font-weight:600}
.nota-total__escala{margin-left:.35rem;color:var(--color-text-light);font-size:.9375rem}
.hero--ficha{padding-block:clamp(2.25rem,4vw,3rem) clamp(2.75rem,4.5vw,3.5rem)}
.btn--grande{padding:.95rem 1.6rem;font-size:1.0625rem}
.cta-final--ficha{background:linear-gradient(120deg,var(--color-primary),color-mix(in srgb,var(--color-primary) 70%,var(--color-dark)))}
.cta-final--ficha p{max-width:none}
.cta-final--ficha .btn{white-space:nowrap}
.ficha-planes__nota{margin:var(--e-5) 0 0;color:var(--color-text-light);font-size:.8125rem}
.ficha-planes__nota+.mas{margin-top:var(--e-3)}
.respuesta{margin:0 0 var(--e-6);padding:var(--e-5);border-left:4px solid var(--color-primary);border-radius:var(--r-m);background:var(--tinte)}
.respuesta__titulo{margin:0 0 .5rem;font-family:var(--font-detail);font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-primary)}
.respuesta p:last-child{margin:0}
.indice{margin:0 0 var(--e-6);padding:var(--e-4) var(--e-5);border:1px solid var(--borde);border-radius:var(--r-m)}
.indice__titulo{margin:0 0 .5rem;font-family:var(--font-detail);font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-light)}
.indice ol{margin:0;padding-left:1.25em;columns:2;column-gap:2rem;font-size:.9375rem}
.indice li{break-inside:avoid;margin-bottom:.3em}
.indice a{color:inherit;text-decoration:none}
.indice a:hover{color:var(--color-primary);text-decoration:underline;text-underline-offset:.2em}
.prose .tabla-scroll{margin:0 0 1.4em}
.prose table{width:100%;margin:0;border-collapse:collapse;font-size:.9375rem}
.prose caption{padding:0 0 .6rem;text-align:left;font-family:var(--font-detail);font-size:.8125rem;color:var(--color-text-light)}
.prose th,.prose td{padding:.6rem .75rem;border-bottom:1px solid var(--borde);text-align:left;vertical-align:top}
.prose thead th{font-family:var(--font-detail);font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-light)}
.prose tbody th{font-weight:600}
.prose .faqs{margin:0 0 1.4em}
.fuentes-lista{font-size:.9375rem;color:var(--color-text-light)}
.entry__nota{margin:0;flex:1 1 100%;font-size:.875rem;color:var(--color-text-light)}
@media (max-width:40em){.indice ol{columns:1}}
@font-face{font-family:"Plus Jakarta Sans";src:url(/assets/fonts/plus-jakarta-sans-latin-var.woff2) format("woff2");font-weight:400 800;font-display:swap}
@font-face{font-family:"Figtree";src:url(/assets/fonts/figtree-latin-var.woff2) format("woff2");font-weight:400 700;font-display:swap}
@font-face{font-family:"Fira Code";src:url(/assets/fonts/fira-code-latin-var.woff2) format("woff2");font-weight:400 600;font-display:swap}
