/* ============================================================
   AYC — hoja de estilos
   Sistema visual tomado de prodataservicios.cl:
   Montserrat · texto #232A37 · naranja #FF7300 ·
   titulares con degradado #FFA412 → #E27D44 ·
   tarjetas #F7F7F7 con borde naranja 1px y radio 23px ·
   botones cuadrados.
   ============================================================ */

:root{
  /* texto */
  --tinta:#232A37;
  --tinta-2:#333333;
  --gris:#6E7681;
  --gris-cl:#898989;
  --gris-lila:#877D8D;

  /* naranjas */
  --naranja:#FF7300;
  --naranja-osc:#E05F00;
  --naranja-med:#E27D44;
  --naranja-cl:#FFA412;
  --naranja-borde:#F49526;

  /* fondos */
  --blanco:#FFFFFF;
  --fondo:#FAFAFB;
  --tarjeta:#F7F7F7;
  --oscuro:#232A37;
  --oscuro-2:#1A202B;

  --linea:#E6E7EA;
  --linea-fuerte:#CFD2D8;

  --fuente:"Montserrat","Helvetica Neue",Helvetica,Arial,sans-serif;
  --grad:linear-gradient(270deg,#FFA412 0%,#E27D44 100%);

  /* Ancho máximo del contenido. Era 1200 px y en pantallas de 1920 quedaba angosto (Amin, 2026-10-18). */
  --env:1440px;
  --r-tarjeta:23px;
  --r-btn:0px;
  --sombra:0 2px 14px rgba(35,42,55,.07);
  --sombra-alta:0 10px 38px rgba(35,42,55,.13);
  --ease:cubic-bezier(.22,.61,.36,1);
}

*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}

html{scroll-behavior:smooth;scroll-padding-top:96px;-webkit-text-size-adjust:100%}

body{
  margin:0;
  background:var(--blanco);
  color:var(--tinta);
  font-family:var(--fuente);
  font-size:16px;
  line-height:1.7;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

img{max-width:100%;display:block}
button{font:inherit;color:inherit}
a{color:inherit}
.grano{display:none}

/* --------- barra de progreso --------- */
.progreso{
  position:fixed;top:0;left:0;height:3px;width:0;z-index:600;
  background:var(--grad);
  transition:width .08s linear;
}

.saltar{position:absolute;left:-9999px;top:0;z-index:1000;background:var(--naranja);color:#fff;padding:.8rem 1.2rem}
.saltar:focus{left:0}

.env{width:100%;max-width:var(--env);margin-inline:auto;padding-inline:clamp(16px,4vw,32px)}

/* --------- tipografía --------- */
.t1{
  font-weight:700;
  font-size:clamp(1.65rem,1.2rem + 1.9vw,2.1rem);
  line-height:1.35;
  margin:0 0 .55em;
  color:var(--tinta);
  text-wrap:balance;
}
.t2{
  font-weight:700;
  font-size:clamp(1.25rem,1.05rem + .9vw,1.6rem);
  line-height:1.4;
  margin:0 0 .6em;
  color:var(--tinta);
  text-wrap:balance;
}
.grad{
  background:var(--grad);
  -webkit-background-clip:text;background-clip:text;
  color:transparent;
}

.rotulo{
  font-size:.74rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--naranja);
  margin:0 0 1rem;
  display:flex;align-items:center;gap:.6rem;
}
.rotulo::before{content:"";width:22px;height:2px;background:currentColor;flex:none}
.rotulo--claro{color:var(--naranja-cl)}

p{margin:0 0 1.1em}
p:last-child{margin-bottom:0}

/* --------- botones --------- */
.btn{
  --bg:var(--naranja);--fg:#fff;--bd:var(--naranja);
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  padding:.78rem 1.5rem;
  border:1px solid var(--bd);
  background:var(--bg);
  color:var(--fg);
  font-size:.94rem;font-weight:600;letter-spacing:.5px;
  border-radius:var(--r-btn);
  cursor:pointer;text-decoration:none;white-space:nowrap;
  transition:background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease),transform .2s var(--ease),box-shadow .25s var(--ease);
}
.btn:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(255,115,0,.26)}
.btn:active{transform:translateY(0)}
.btn:focus-visible{outline:2px solid var(--tinta);outline-offset:3px}

.btn--solido{--bg:var(--naranja);--fg:#fff;--bd:var(--naranja)}
.btn--solido:hover{--bg:var(--naranja-osc);--bd:var(--naranja-osc)}
.btn--linea{--bg:transparent;--fg:var(--tinta);--bd:var(--linea-fuerte)}
.btn--linea:hover{--bd:var(--naranja);--fg:var(--naranja);box-shadow:none}
.btn--ghost{--bg:transparent;--fg:var(--naranja);--bd:var(--naranja-borde);padding:.6rem 1.1rem;font-size:.84rem}
.btn--ghost:hover{--bg:var(--naranja);--fg:#fff;box-shadow:none}
.btn--fantasma{--bg:transparent;--bd:transparent;--fg:currentColor;opacity:.72;padding-inline:.5rem;font-weight:500}
.btn--fantasma:hover{opacity:1;box-shadow:none;transform:none}
.btn--sm{padding:.55rem 1.1rem;font-size:.84rem}
.btn--lg{padding:1rem 2rem;font-size:1rem}

/* ============================================================
   NAV
   ============================================================ */
.nav{
  position:sticky;top:0;z-index:500;
  background:rgba(255,255,255,.94);
  -webkit-backdrop-filter:saturate(180%) blur(12px);
  backdrop-filter:saturate(180%) blur(12px);
  transition:box-shadow .3s var(--ease);
}
.nav.compacta{box-shadow:0 2px 16px rgba(35,42,55,.09)}
.nav__int{display:flex;align-items:center;gap:clamp(.6rem,1vw,.75rem);min-height:80px}

.logo{text-decoration:none;display:flex;align-items:baseline;gap:.6rem;flex:none}
.logo__marca{
  font-weight:700;font-size:1.9rem;letter-spacing:-.01em;line-height:1;
  background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.logo__bajada{
  font-size:.58rem;letter-spacing:.17em;text-transform:uppercase;
  color:var(--gris-cl);font-weight:600;
}

.nav__menu{display:flex;align-items:center;gap:.1rem;margin-left:auto}
.nav__enlace{
  background:none;border:0;cursor:pointer;text-decoration:none;
  font-size:.88rem;font-weight:500;color:var(--tinta);
  padding:.55rem .36rem;position:relative;white-space:nowrap;
}
.nav__enlace::after{
  content:"";position:absolute;left:.5rem;right:.5rem;bottom:.3rem;height:2px;
  background:var(--naranja);transform:scaleX(0);transform-origin:left;
  transition:transform .3s var(--ease);
}
.nav__enlace:hover{color:var(--naranja)}
.nav__enlace:hover::after,.nav__item--desp:hover .nav__enlace::after{transform:scaleX(1)}

.nav__item--desp{position:relative}
.desp{
  position:absolute;top:calc(100% + .3rem);left:0;min-width:330px;
  background:var(--blanco);border:1px solid var(--linea);border-radius:14px;
  box-shadow:var(--sombra-alta);padding:.5rem;
  opacity:0;visibility:hidden;transform:translateY(-6px);
  transition:opacity .2s var(--ease),transform .2s var(--ease),visibility .2s;
}
.nav__item--desp:hover .desp,.nav__item--desp:focus-within .desp{opacity:1;visibility:visible;transform:translateY(0)}
.desp ul{list-style:none;margin:0;padding:0}
.desp a{
  display:block;padding:.5rem .7rem;text-decoration:none;font-size:.86rem;
  border-radius:8px;color:var(--tinta-2);
  transition:background .2s var(--ease),color .2s var(--ease);
}
.desp a:hover{background:var(--tarjeta);color:var(--naranja)}
.desp--corto{min-width:190px}

.nav__acciones{display:flex;gap:.55rem;flex:none}
.nav__acciones .btn{padding-left:.9rem;padding-right:.9rem}

.hamburguesa{
  display:none;background:none;border:1px solid var(--linea-fuerte);
  width:44px;height:40px;cursor:pointer;padding:0;margin-left:auto;
}
.hamburguesa span{display:block;width:18px;height:2px;background:var(--tinta);margin:4px auto;transition:transform .3s var(--ease)}
.hamburguesa[aria-expanded="true"] span:first-child{transform:translateY(3px) rotate(45deg)}
.hamburguesa[aria-expanded="true"] span:last-child{transform:translateY(-3px) rotate(-45deg)}

/* ============================================================
   HERO
   ============================================================ */
.hero{padding:clamp(2.6rem,5vw,4.5rem) 0 0;background:var(--blanco)}
.hero__int{
  display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.92fr);
  gap:clamp(2rem,4.5vw,4rem);align-items:center;
  padding-bottom:clamp(1.4rem,3vw,2.4rem);
}
.rotulo--hero{margin-bottom:1.2rem}

.hero__titulo{
  font-weight:700;
  font-size:clamp(1.95rem,1.1rem + 3.3vw,3.2rem);
  line-height:1.17;
  margin:0 0 1.3rem;
  background:var(--grad);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  text-wrap:balance;
}
.hero__titulo em{display:block;font-style:normal;font-weight:700}

.hero__bajada{font-size:1.02rem;color:var(--tinta-2);max-width:48ch;margin-bottom:1.8rem;line-height:1.8}
.hero__acciones{display:flex;flex-wrap:wrap;gap:.7rem;margin-bottom:1rem}
.hero__nota{font-size:.86rem;color:var(--gris-cl)}

.hero__panel{
  background:var(--tarjeta);
  border:1px solid var(--naranja-borde);
  border-radius:var(--r-tarjeta);
  padding:clamp(1.5rem,2.6vw,2rem);
}
/* cifras del panel: una por fila; subgrid alinea las etiquetas aunque cambie el ancho del numero */
.hero-cifras{
  list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:auto 1fr;column-gap:1.4rem;
}
.hero-cifra{
  grid-column:1/-1;display:grid;grid-template-columns:subgrid;align-items:center;
  padding:1.15rem 0;border-bottom:1px solid #E4E5E8;
}
.hero-cifra:first-child{padding-top:.5rem}
.hero-cifra:last-child{border-bottom:0;padding-bottom:.2rem}
.hero-cifra__valor{
  font-size:clamp(2rem,1.4rem + 1.5vw,2.6rem);
  font-weight:700;line-height:1;white-space:nowrap;
  background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero-cifra__sufijo{font-size:.58em;vertical-align:super}
.hero-cifra__etiqueta{font-size:.9rem;line-height:1.5;color:var(--tinta-2);font-weight:500;max-width:26ch}

/* ============================================================
   OPINIONES DE CLIENTES
   ============================================================ */
.testimonios{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:clamp(1rem,2vw,1.5rem)}
.testimonios--4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1180px){.testimonios--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.testimonios--4{grid-template-columns:minmax(0,1fr)}}
.testimonio{
  position:relative;margin:0;display:flex;flex-direction:column;
  background:var(--tarjeta);border:1px solid var(--naranja-borde);
  border-radius:var(--r-tarjeta);padding:clamp(1.5rem,2.6vw,2rem);
}
.testimonio__cita{margin:0 0 1.4rem;flex:1}
.testimonio__cita p{font-size:1.02rem;line-height:1.65;font-weight:500;color:var(--tinta);margin:0}
.testimonio__autor{display:flex;flex-direction:column;gap:.2rem;padding-top:1rem;border-top:1px solid #E4E5E8}
.testimonio__nombre{font-weight:700;color:var(--tinta);font-size:.95rem}
.testimonio__cargo{font-size:.84rem;color:var(--gris)}
.testimonio__rubro{margin-top:.35rem;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--naranja);font-weight:700}
/* borrador: hasta que se cargue la opinión real */
.testimonio--pendiente{border-style:dashed;border-color:var(--gris-cl)}
.testimonio--pendiente .testimonio__cita p{color:var(--gris);font-weight:400;font-style:italic}
.testimonio__pendiente{
  position:absolute;top:-.7rem;left:1.4rem;
  background:var(--blanco);border:1px dashed var(--gris-cl);border-radius:99px;
  padding:.15rem .7rem;font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;
  color:var(--gris);font-weight:700;
}

/* ============================================================
   SECCIONES
   ============================================================ */
.seccion{padding:clamp(3.2rem,6vw,5.5rem) 0}
.seccion--alt{background:var(--fondo)}
.seccion__cab{max-width:60ch;margin-bottom:clamp(2rem,3.5vw,3rem)}
.seccion__cab--claro .t1{color:#fff}
.seccion__bajada{color:var(--tinta-2);font-size:.99rem;max-width:58ch;line-height:1.8}
.seccion__cab--claro .seccion__bajada{color:rgba(255,255,255,.72)}

/* --------- servicios --------- */
.svcs{display:grid;gap:.9rem}
.svc{
  background:var(--tarjeta);
  border:1px solid var(--naranja-borde);
  border-radius:var(--r-tarjeta);
  overflow:hidden;
  transition:box-shadow .3s var(--ease),transform .3s var(--ease);
}
.svc:hover{box-shadow:var(--sombra)}
.svc.abierto{background:var(--blanco);box-shadow:var(--sombra-alta)}

.svc__cab{
  width:100%;background:none;border:0;cursor:pointer;text-align:left;
  display:grid;grid-template-columns:auto 1fr auto;gap:clamp(1rem,2.4vw,1.8rem);
  align-items:center;padding:clamp(1.1rem,2.2vw,1.5rem) clamp(1.2rem,2.4vw,1.6rem);
}
.svc__cab:focus-visible{outline:2px solid var(--naranja);outline-offset:-3px}

.svc__num{font-size:2.5rem;font-weight:700;color:var(--tinta-2);line-height:1;opacity:.22;transition:opacity .3s var(--ease),color .3s var(--ease)}
.svc__cab:hover .svc__num,.svc.abierto .svc__num{opacity:1;color:var(--naranja)}

.svc__txt{display:block;min-width:0}
.svc__unidad{display:block;font-size:.68rem;letter-spacing:.11em;text-transform:uppercase;color:var(--naranja);margin-bottom:.3rem;font-weight:700}
.svc__titulo{display:block;font-size:clamp(1.05rem,.95rem + .5vw,1.3rem);font-weight:700;line-height:1.3;color:var(--tinta);margin-bottom:.35rem}
.svc__resumen{display:block;color:var(--gris);font-size:.9rem;max-width:66ch;line-height:1.65}

.svc__cruz{
  width:36px;height:36px;border:1px solid var(--naranja-borde);border-radius:50%;
  position:relative;flex:none;
  transition:background .3s var(--ease),transform .4s var(--ease);
}
.svc__cruz::before,.svc__cruz::after{
  content:"";position:absolute;top:50%;left:50%;background:var(--naranja);
  transform:translate(-50%,-50%);transition:opacity .3s var(--ease),background .3s var(--ease);
}
.svc__cruz::before{width:12px;height:2px}
.svc__cruz::after{width:2px;height:12px}
.svc.abierto .svc__cruz{background:var(--naranja);transform:rotate(90deg)}
.svc.abierto .svc__cruz::before{background:#fff}
.svc.abierto .svc__cruz::after{opacity:0}

.svc__cuerpo{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s var(--ease)}
.svc.abierto .svc__cuerpo{grid-template-rows:1fr}
.svc__cuerpo-int{
  overflow:hidden;
  display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);
  gap:clamp(1.2rem,3vw,2.6rem);
  padding-inline:clamp(1.2rem,2.4vw,1.6rem);
}
.svc.abierto .svc__cuerpo-int{padding-bottom:clamp(1.4rem,2.6vw,1.9rem)}
.svc__entregables ul{list-style:none;margin:0;padding:0;columns:2;column-gap:2rem}
.svc__entregables li{
  break-inside:avoid;position:relative;padding-left:1.3rem;margin-bottom:.6rem;
  font-size:.88rem;line-height:1.55;color:var(--tinta-2);
}
.svc__entregables li::before{
  content:"";position:absolute;left:0;top:.52em;width:7px;height:7px;
  background:var(--naranja);border-radius:50%;
}
h4.rotulo{font-size:.66rem;margin-bottom:.7rem}
.svc__lideres{font-size:1rem;font-weight:700;color:var(--tinta);margin-bottom:1rem}

/* --------- segmentos --------- */
.segmentos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,265px),1fr));gap:1rem}
.seg{
  background:var(--blanco);border:1px solid var(--naranja-borde);
  border-radius:var(--r-tarjeta);padding:clamp(1.4rem,2.4vw,1.8rem);
  display:flex;flex-direction:column;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);
}
.seg:hover{transform:translateY(-4px);box-shadow:var(--sombra-alta)}
.seg__cab{margin-bottom:.9rem}
.seg__nombre{font-size:1.14rem;font-weight:700;margin:0 0 .3rem;line-height:1.3;color:var(--tinta)}
.seg__perfil{font-size:.7rem;letter-spacing:.09em;text-transform:uppercase;color:var(--naranja);margin:0;font-weight:700;line-height:1.5}
.seg__dolor{font-size:.88rem;color:var(--gris);line-height:1.72;flex:1;margin-bottom:1.2rem}
.seg__pie{border-top:1px solid var(--linea);padding-top:1rem}
.seg__pie .rotulo{margin-bottom:.45rem;font-size:.62rem}
.seg__entrada{font-size:.97rem;font-weight:700;color:var(--tinta);line-height:1.4;margin-bottom:1rem}

/* ============================================================
   BANDA OSCURA / DIAGNÓSTICO
   ============================================================ */
.oscuro{background:var(--oscuro);color:#fff;padding:clamp(3.2rem,6vw,5.5rem) 0}
.oscuro .t1,.oscuro .t2{color:#fff}

.diag{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(244,149,38,.45);
  border-radius:var(--r-tarjeta);
  padding:clamp(1.3rem,3vw,2.4rem);
}
.diag__pasos{
  list-style:none;display:flex;flex-wrap:wrap;gap:.4rem 1.5rem;margin:0 0 1.8rem;padding:0 0 1rem;
  font-size:.7rem;letter-spacing:.11em;text-transform:uppercase;font-weight:700;
  color:rgba(255,255,255,.38);
  border-bottom:1px solid rgba(255,255,255,.14);
  counter-reset:p;
}
.diag__pasos li{counter-increment:p;display:flex;align-items:center;gap:.4rem;transition:color .3s var(--ease)}
.diag__pasos li::before{content:counter(p,decimal-leading-zero)}
.diag__pasos li.activo{color:var(--naranja-cl)}
.diag__pasos li.hecho{color:#fff}

.diag__pregunta{font-size:clamp(1.1rem,.95rem + .7vw,1.4rem);font-weight:700;line-height:1.4;margin:0 0 1.3rem;color:#fff}
.diag__pregunta span{display:block;font-size:.72rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--naranja-cl);margin-top:.5rem}

.opciones{display:grid;gap:.55rem}
.opciones--grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}
.opcion input{position:absolute;opacity:0;width:0;height:0}
.opcion__marco{
  display:flex;align-items:flex-start;gap:.8rem;
  padding:.9rem 1.1rem;
  border:1px solid rgba(255,255,255,.2);
  border-radius:14px;
  font-size:.91rem;line-height:1.5;cursor:pointer;
  background:rgba(255,255,255,.03);height:100%;
  transition:background .22s var(--ease),border-color .22s var(--ease);
}
.opcion__marco:hover{background:rgba(255,255,255,.08);border-color:rgba(255,164,18,.6)}
.opcion__tick{
  width:18px;height:18px;flex:none;margin-top:.22rem;
  border:1px solid rgba(255,255,255,.5);border-radius:4px;position:relative;
  transition:background .2s var(--ease),border-color .2s var(--ease);
}
.opcion__tick::after{
  content:"";position:absolute;left:5.5px;top:1.5px;width:4px;height:9px;
  border:solid #fff;border-width:0 2px 2px 0;transform:rotate(43deg) scale(0);
  transition:transform .2s var(--ease);
}
.opcion input:checked + .opcion__marco{background:rgba(255,115,0,.16);border-color:var(--naranja)}
.opcion input:checked + .opcion__marco .opcion__tick{background:var(--naranja);border-color:var(--naranja)}
.opcion input:checked + .opcion__marco .opcion__tick::after{transform:rotate(43deg) scale(1)}
.opcion input:focus-visible + .opcion__marco{outline:2px solid var(--naranja-cl);outline-offset:2px}

.diag__nav,.modal__nav{display:flex;gap:.7rem;align-items:center;margin-top:1.6rem;flex-wrap:wrap}
.oscuro .btn--fantasma{color:rgba(255,255,255,.82)}

/* --------- resultado --------- */
.resultado__intro{margin-bottom:1.8rem}
.resultado__grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(1.4rem,3vw,2.6rem)}
.res-lista{list-style:none;margin:0;padding:0}
.res-lista li{display:grid;grid-template-columns:auto 1fr;gap:.9rem;align-items:start;padding:.9rem 0;border-bottom:1px solid rgba(255,255,255,.14)}
.res-lista li:last-child{border-bottom:0}
.res-lista__n{font-size:1.5rem;font-weight:700;color:var(--naranja-cl);line-height:1}
.res-lista__t{font-size:1.05rem;font-weight:700;color:#fff;line-height:1.35;display:block;margin-bottom:.25rem}
.res-lista__d{font-size:.85rem;color:rgba(255,255,255,.62);line-height:1.65}
.res-lista .res-lista__d{display:block}
.res-lista__por{display:block;font-size:.8rem;color:var(--naranja-cl);line-height:1.5;margin:.1rem 0 .35rem}
.res-lista__link{display:inline-block;margin-top:.5rem;font-size:.8rem;font-weight:700;color:#fff;text-decoration:underline;text-decoration-color:rgba(255,164,18,.7);text-underline-offset:3px}
.res-lista__link:hover{color:var(--naranja-cl)}
.resultado__bajada{color:rgba(255,255,255,.72);max-width:62ch;margin:.7rem 0 0;line-height:1.7;font-size:.95rem}
.res-rubro{margin-top:1.6rem;padding-top:1.4rem;border-top:1px solid rgba(255,255,255,.14)}
.res-errores{list-style:none;margin:0 0 .4rem;padding:0}
.res-errores li{position:relative;padding:.35rem 0 .35rem 1.2rem;font-size:.88rem;color:rgba(255,255,255,.82);line-height:1.55}
.res-errores li::before{content:'';position:absolute;left:0;top:.85rem;width:.45rem;height:.45rem;border-radius:50%;background:var(--naranja)}
.res-tarjeta--cta{background:rgba(255,115,0,.12);border-color:var(--naranja)}
.opciones--rubros{grid-template-columns:repeat(auto-fill,minmax(min(100%,215px),1fr))}
.opciones--rubros .opcion__marco{padding:.75rem 1rem;align-items:center}

.res-tarjeta{background:rgba(255,255,255,.07);border:1px solid rgba(244,149,38,.45);border-radius:18px;padding:1.4rem}
.res-tarjeta + .res-tarjeta{margin-top:.9rem}
.res-socio{display:flex;align-items:center;gap:.9rem;margin-bottom:1rem}
.res-socio__sello{
  width:52px;height:52px;flex:none;border-radius:50%;display:grid;place-items:center;
  font-size:1.05rem;font-weight:700;background:var(--grad);color:#fff;
}
.res-socio__n{font-size:1.05rem;font-weight:700;line-height:1.3;color:#fff}
.res-socio__r{font-size:.78rem;color:rgba(255,255,255,.6);line-height:1.45;margin-top:.2rem}
.res-plan__precio{font-size:1.5rem;font-weight:700;color:var(--naranja-cl)}
.res-plan__precio span{font-size:.78rem;color:rgba(255,255,255,.6);font-weight:500}

/* ============================================================
   PLANES
   ============================================================ */
.tabs__guia{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gris);font-weight:700;margin:0 0 .6rem}
.tabs{display:inline-flex;gap:.4rem;background:var(--tarjeta);border:1px solid var(--linea);border-radius:18px;padding:.4rem;margin-bottom:1.4rem}
/* la opcion no elegida se ve como un boton (borde, fondo blanco, hover naranja) para que se note que se puede cambiar */
.tabs__btn{
  display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;text-align:left;
  background:var(--blanco);border:1px solid var(--linea);cursor:pointer;
  padding:.75rem 1.5rem;border-radius:13px;color:var(--tinta);
  transition:background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease);
}
.tabs__btn:hover{border-color:var(--naranja);color:var(--naranja)}
.tabs__btn.activo{background:var(--naranja);border-color:var(--naranja);color:#fff;cursor:default}
.tabs__t{font-size:.95rem;font-weight:700;letter-spacing:.2px}
.tabs__s{font-size:.75rem;font-weight:500;color:var(--gris);transition:color .25s var(--ease)}
.tabs__btn:hover .tabs__s{color:inherit}
.tabs__btn.activo .tabs__s{color:rgba(255,255,255,.88)}
.tabs__desc{color:var(--gris);margin-bottom:1.8rem;max-width:56ch;font-size:.95rem}

.planes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:1rem}

.plan{
  background:var(--tarjeta);border:1px solid var(--naranja-borde);border-radius:var(--r-tarjeta);
  padding:clamp(1.5rem,2.4vw,2rem);display:flex;flex-direction:column;position:relative;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);
}
.plan:hover{transform:translateY(-4px);box-shadow:var(--sombra-alta)}
.plan--destacado{background:var(--blanco);border-width:2px;box-shadow:var(--sombra)}
.plan__badge{
  position:absolute;top:-.75rem;left:50%;transform:translateX(-50%);
  background:var(--naranja);color:#fff;font-size:.62rem;font-weight:700;
  letter-spacing:.11em;text-transform:uppercase;padding:.34rem .9rem;border-radius:100px;white-space:nowrap;
}
.plan__nombre{font-size:1.18rem;font-weight:700;margin:0 0 .3rem;line-height:1.3}
.plan__precio{
  font-size:1.9rem;font-weight:700;margin:0 0 .8rem;line-height:1.2;
  background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.plan__precio span{font-size:.78rem;color:var(--gris);font-weight:500;-webkit-text-fill-color:var(--gris)}
.plan__para{font-size:.86rem;color:var(--gris);line-height:1.7;padding-bottom:1rem;border-bottom:1px solid var(--linea);margin-bottom:1rem}
.plan__incluye{list-style:none;margin:0 0 1.3rem;padding:0;flex:1}
.plan__incluye li{position:relative;padding-left:1.5rem;margin-bottom:.62rem;font-size:.87rem;line-height:1.6;color:var(--tinta-2)}
.plan__incluye li::before{
  content:"";position:absolute;left:0;top:.45em;width:8px;height:5px;
  border:solid var(--naranja);border-width:0 0 2px 2px;transform:rotate(-45deg);
}
.plan__nota{font-size:.78rem;color:var(--gris-cl);margin:-.6rem 0 1.2rem;line-height:1.5}
.planes__nota{margin-top:1.4rem;font-size:.81rem;color:var(--gris-cl);max-width:72ch}

/* ============================================================
   EQUIPO
   ============================================================ */
.equipo{display:grid;gap:1rem}
.persona{
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(1.2rem,3vw,2.4rem);
  background:var(--blanco);border:1px solid var(--naranja-borde);border-radius:var(--r-tarjeta);
  padding:clamp(1.5rem,3vw,2.2rem);
  transition:box-shadow .3s var(--ease)}
.persona:hover{box-shadow:var(--sombra-alta)}
.persona__sello{
  width:clamp(72px,8vw,96px);height:clamp(72px,8vw,96px);
  border-radius:50%;flex:none;display:grid;place-items:center;
  background:var(--grad);color:#fff;
}
.persona__sello span{font-size:clamp(1.5rem,2vw,1.95rem);font-weight:700;letter-spacing:.02em}
.persona__nombre{font-size:clamp(1.2rem,1rem + .6vw,1.45rem);font-weight:700;margin:0 0 .25rem;line-height:1.3}
.persona__rol{font-size:.76rem;letter-spacing:.09em;text-transform:uppercase;color:var(--naranja);margin:0 0 .6rem;font-weight:700}
.persona__credencial{font-size:.83rem;color:var(--gris-cl);margin:0 0 1rem;line-height:1.6}
.persona__bio{font-size:.93rem;line-height:1.85;color:var(--tinta-2);max-width:72ch;margin-bottom:1.2rem}
.persona__logros{list-style:none;margin:0 0 1.3rem;padding:0;display:grid;gap:.45rem}
.persona__logros li{position:relative;padding-left:1.5rem;font-size:.87rem;color:var(--tinta);font-weight:600;line-height:1.55}
.persona__logros li::before{content:"";position:absolute;left:0;top:.5em;width:8px;height:8px;background:var(--naranja);border-radius:50%}
.chips{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 1.3rem;padding:0}
.chips li{font-size:.76rem;padding:.35rem .8rem;border:1px solid var(--linea-fuerte);border-radius:100px;color:var(--gris);background:var(--tarjeta)}
.persona__trayectoria{font-size:.84rem;color:var(--gris);margin-bottom:1.3rem}

/* ============================================================
   MODELO Y PROCESO
   ============================================================ */
.pilares{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:1rem}
.pilar{
  background:var(--tarjeta);border:1px solid var(--naranja-borde);border-radius:var(--r-tarjeta);
  padding:clamp(1.3rem,2.4vw,1.7rem);
}
.pilar__num{font-size:2.2rem;font-weight:700;line-height:1;display:block;margin-bottom:.6rem;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.pilar h3{font-size:1.1rem;font-weight:700;margin:0 0 .5rem;line-height:1.35}
.pilar p{font-size:.88rem;color:var(--gris);line-height:1.75}

.proceso-bloque{margin-top:clamp(2.4rem,5vw,4rem)}
.proceso{list-style:none;margin:1.6rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:clamp(1.2rem,2.6vw,2rem)}
.paso{border-top:3px solid var(--naranja);padding-top:1.1rem}
.paso__num{font-size:1.6rem;font-weight:700;line-height:1;display:block;margin-bottom:.4rem;color:var(--naranja)}
.paso h3{font-size:1.05rem;font-weight:700;margin:0 0 .45rem;line-height:1.35}
.paso p{font-size:.87rem;color:var(--gris);line-height:1.72}

/* ============================================================
   CTA
   ============================================================ */
.cta{background:var(--oscuro);color:#fff;padding:clamp(3rem,6vw,5rem) 0}
.cta__int{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(1.8rem,4vw,3.5rem);align-items:center}
.cta__titulo{color:#fff;margin-bottom:.6rem}
.cta__texto{color:rgba(255,255,255,.72);max-width:52ch;line-height:1.8}
.cta__accion{display:flex;flex-direction:column;gap:.8rem;align-items:flex-start}
.cta__nota{font-size:.82rem;color:rgba(255,255,255,.52);max-width:32ch}

/* ============================================================
   PIE
   ============================================================ */
.pie{background:var(--oscuro-2);color:rgba(255,255,255,.72);padding:clamp(2.6rem,5vw,3.6rem) 0 1.4rem}
.pie__int{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr);gap:2.2rem;padding-bottom:2.2rem;border-bottom:1px solid rgba(255,255,255,.14)}
.logo__marca--pie{font-size:2rem}
.pie__bajada{font-size:.64rem;letter-spacing:.17em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-top:.4rem;font-weight:600}
.pie__nav,.pie__contacto{display:flex;flex-direction:column;gap:.55rem;font-size:.88rem}
.pie__nav a,.pie__dato{text-decoration:none;color:rgba(255,255,255,.72);transition:color .22s var(--ease);width:fit-content}
.pie__nav a:hover,.pie__dato:hover{color:var(--naranja-cl)}
.pie__dato--plano{color:rgba(255,255,255,.5)}
.pie__legal{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;padding-top:1.4rem;font-size:.75rem;color:rgba(255,255,255,.42)}
.pie__intranet{color:inherit;text-decoration:none}
.pie__intranet:hover{color:var(--blanco)}

/* ============================================================
   MODAL AGENDA
   ============================================================ */
.modal{position:fixed;inset:0;z-index:800;display:grid;place-items:center;padding:clamp(0px,3vw,30px)}
.modal__fondo{position:absolute;inset:0;background:rgba(35,42,55,.74);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fundido .3s var(--ease)}
.modal__caja{
  position:relative;background:var(--blanco);width:min(100%,850px);max-height:min(100%,94vh);
  overflow-y:auto;border-radius:var(--r-tarjeta);box-shadow:0 36px 90px rgba(0,0,0,.4);
  animation:subir .4s var(--ease);
}
@keyframes fundido{from{opacity:0}to{opacity:1}}
@keyframes subir{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}

.modal__x{
  position:absolute;top:.8rem;right:.9rem;z-index:2;background:none;border:0;
  font-size:1.9rem;line-height:1;cursor:pointer;color:var(--gris-cl);
  width:40px;height:40px;border-radius:50%;transition:background .22s var(--ease),color .22s var(--ease);
}
.modal__x:hover{background:var(--tarjeta);color:var(--naranja)}

.modal__cab{padding:clamp(1.5rem,3vw,2.1rem) clamp(1.3rem,3vw,2.1rem) 0}
.modal__pasos{
  list-style:none;display:flex;gap:.4rem 1.4rem;flex-wrap:wrap;margin:1.3rem 0 0;padding:0 0 1rem;
  border-bottom:1px solid var(--linea);counter-reset:m;
  font-size:.68rem;letter-spacing:.11em;text-transform:uppercase;color:var(--gris-cl);font-weight:700;
}
.modal__pasos li{counter-increment:m;display:flex;align-items:center;gap:.35rem}
.modal__pasos li::before{content:counter(m,decimal-leading-zero)}
.modal__pasos li.activo{color:var(--naranja)}
.modal__pasos li.hecho{color:var(--tinta)}

.modal__cuerpo{padding:clamp(1.3rem,3vw,2.1rem)}
.modal__pregunta{font-size:1.18rem;font-weight:700;margin:0 0 1.2rem;line-height:1.4}
.modal__pregunta span{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--naranja);margin-left:.6rem;font-weight:700}
.modal__ayuda{font-size:.84rem;color:var(--gris-cl);margin-top:1rem}

.socios{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,205px),1fr));gap:.7rem}
.socio{
  text-align:left;background:var(--tarjeta);border:1px solid var(--linea);border-radius:18px;
  padding:1.1rem;cursor:pointer;
  transition:border-color .22s var(--ease),transform .22s var(--ease),box-shadow .22s var(--ease);
}
.socio:hover{border-color:var(--naranja-borde);transform:translateY(-2px);box-shadow:var(--sombra)}
.socio.activo{border-color:var(--naranja);background:var(--blanco);box-shadow:0 0 0 2px rgba(255,115,0,.2)}
.socio__sello{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;margin-bottom:.7rem;background:var(--grad);color:#fff;font-weight:700;font-size:1rem}
.socio__n{font-size:1rem;font-weight:700;line-height:1.3;display:block;margin-bottom:.3rem}
.socio__r{font-size:.78rem;color:var(--gris);line-height:1.5}

/* --------- calendario --------- */
.calendario{display:grid;gap:1.2rem}
.cal-dia{border-bottom:1px solid var(--linea);padding-bottom:1rem}
.cal-dia:last-child{border-bottom:0}
.cal-dia__t{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--naranja);margin:0 0 .7rem;font-weight:700}
.cal-horas{display:flex;flex-wrap:wrap;gap:.4rem}
.cal-hora{
  background:var(--blanco);border:1px solid var(--linea-fuerte);border-radius:8px;
  padding:.55rem 1rem;font-size:.88rem;font-weight:600;cursor:pointer;
  transition:background .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease);
}
.cal-hora:hover{border-color:var(--naranja);color:var(--naranja)}
.cal-hora.activo{background:var(--naranja);border-color:var(--naranja);color:#fff}
.cal-vacio{color:var(--gris);font-size:.92rem}

/* --------- formulario --------- */
.resumen{
  background:var(--tarjeta);border:1px solid var(--naranja-borde);border-radius:14px;
  padding:1rem 1.2rem;margin-bottom:1.4rem;font-size:.92rem;line-height:1.65;
}
.resumen b{font-weight:700}

.form{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
.campo{display:flex;flex-direction:column;gap:.35rem;min-width:0}
.campo--ancho{grid-column:1/-1}
.campo label{font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:var(--gris);font-weight:700}
.campo label i{color:var(--naranja);font-style:normal}
.campo input,.campo select,.campo textarea{
  font:inherit;font-size:1rem;padding:.72rem .9rem;
  border:1px solid var(--linea-fuerte);border-radius:8px;
  background:var(--blanco);color:var(--tinta);width:100%;
  transition:border-color .2s var(--ease),box-shadow .2s var(--ease);
}
.campo textarea{resize:vertical;min-height:82px}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:0;border-color:var(--naranja);box-shadow:0 0 0 3px rgba(255,115,0,.14)}
.campo input[aria-invalid="true"]{border-color:#C0392B}
.form__error{grid-column:1/-1;color:#C0392B;font-size:.86rem;margin:0}
.form .modal__nav{grid-column:1/-1;margin-top:.3rem}

/* --------- confirmación --------- */
.ok{text-align:center;padding:.8rem 0 .4rem}
.ok__sello{width:64px;height:64px;margin:0 auto 1.2rem;border-radius:50%;background:var(--grad);display:grid;place-items:center;animation:pop .5s var(--ease)}
@keyframes pop{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.08)}100%{transform:scale(1);opacity:1}}
.ok__sello::after{content:"";width:16px;height:29px;border:solid #fff;border-width:0 3px 3px 0;transform:rotate(43deg) translate(-2px,-3px)}
.ok h3{font-size:1.5rem;font-weight:700;margin:0 0 .5rem}
.ok__detalle{background:var(--tarjeta);border:1px solid var(--naranja-borde);border-radius:16px;padding:1.2rem;margin:1.3rem auto;max-width:450px;text-align:left}
.ok__fila{display:flex;justify-content:space-between;gap:1rem;padding:.5rem 0;border-bottom:1px solid var(--linea);font-size:.9rem}
.ok__fila:last-child{border-bottom:0}
.ok__fila span:first-child{color:var(--gris);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700}
.ok__fila span:last-child{text-align:right;font-weight:600}
.ok__acciones{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap;margin-top:1.2rem}
.ok__pie{font-size:.82rem;color:var(--gris);margin-top:1.1rem}

/* ============================================================
   ANIMACIONES
   ============================================================ */
.anim{opacity:0;transform:translateY(16px);animation:entrar .8s var(--ease) forwards;animation-delay:var(--d,0ms)}
@keyframes entrar{to{opacity:1;transform:none}}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .65s var(--ease),transform .65s var(--ease)}
.reveal.visible{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  html{scroll-behavior:auto}
  .anim,.reveal{opacity:1;transform:none}
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:1040px){
  .hero__int{grid-template-columns:1fr}
  .hero__panel{max-width:540px}
  .cta__int,.resultado__grid{grid-template-columns:1fr}
  .svc__cuerpo-int{grid-template-columns:1fr}
  .pie__int{grid-template-columns:1fr 1fr}
}

@media (max-width:860px){
  html{scroll-padding-top:80px}
  .nav__menu,.nav__acciones{
    position:fixed;top:80px;left:0;right:0;
    background:var(--blanco);border-bottom:1px solid var(--linea);
    flex-direction:column;align-items:stretch;gap:0;padding:.5rem clamp(16px,4vw,32px);
    display:none;
  }
  .nav__enlace{padding:.8rem .2rem;text-align:left;width:100%;border-bottom:1px solid var(--linea)}
  .nav__item--desp{width:100%}
  .desp{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;padding:0 0 .5rem;display:none}
  .nav__item--desp.abierto .desp{display:block}
  .hamburguesa{display:block}
  .svc__entregables ul{columns:1}
  .persona{grid-template-columns:1fr}
  .form{grid-template-columns:1fr}
  .pie__int{grid-template-columns:1fr}
  .svc__cab{grid-template-columns:auto 1fr;gap:.9rem}
  .svc__cruz{grid-column:2;justify-self:end;margin-top:.5rem}
}

@media (max-width:520px){
  .modal{padding:0}
  .modal__caja{max-height:100vh;border-radius:0;min-height:100vh}
  .tabs{display:flex;flex-direction:column;width:100%}
  .tabs__btn{width:100%;padding-inline:1.1rem}
  .btn{width:100%}
  .hero__acciones .btn,.ok__acciones .btn,.diag__nav .btn,.modal__nav .btn{width:auto}
  .nav__acciones .btn{width:auto;flex:1}
}

/* ============================================================
   MULTIPÁGINA — componentes nuevos
   ============================================================ */

/* --------- logo con isotipo --------- */
.logo{align-items:center;gap:.7rem}
.logo__img{display:block;width:auto;height:36px;flex:none}
.logo__txt{display:flex;flex-direction:column;line-height:1}
.logo__marca{font-size:1.55rem}
.logo__bajada{margin-top:.3rem}
.pie__logo{display:block;height:48px;width:auto;margin-bottom:.4rem}
.pie__marca .logo__marca--pie{display:block}

.nav__enlace.activo{color:var(--naranja)}
.nav__enlace.activo::after{transform:scaleX(1)}
.desp__todos{
  display:block;margin-top:.3rem;padding:.6rem .7rem;border-top:1px solid var(--linea);
  font-size:.8rem;font-weight:700;color:var(--naranja);text-decoration:none;
}
.desp__todos:hover{text-decoration:underline}

/* --------- migas de pan --------- */
.migas{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;font-size:.8rem;color:var(--gris-cl);margin-bottom:1.6rem}
.migas a{color:var(--gris);text-decoration:none}
.migas a:hover{color:var(--naranja)}
.migas i{font-style:normal;opacity:.5}
.migas [aria-current]{color:var(--tinta);font-weight:600}
.migas__paso{display:inline-flex;align-items:center;gap:.45rem}

/* --------- variantes de sección --------- */
.seccion--primera{padding-top:clamp(2rem,3.5vw,3rem)}
.seccion--ajustada{padding-block:clamp(2.4rem,4.5vw,4rem)}
.seccion__cab--fila{
  max-width:none;display:flex;flex-wrap:wrap;gap:1.4rem 2rem;
  align-items:flex-end;justify-content:space-between;
}
.seccion__cab--fila > div{max-width:60ch}

.enlace{color:var(--naranja);font-weight:600;font-size:.88rem;text-decoration:none;border-bottom:1px solid transparent}
.enlace:hover{border-bottom-color:currentColor}

/* --------- grilla de servicios --------- */
.svc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,275px),1fr));gap:1rem}
.svc-card{
  display:flex;flex-direction:column;text-decoration:none;color:inherit;
  background:var(--tarjeta);border:1px solid var(--naranja-borde);border-radius:var(--r-tarjeta);
  padding:clamp(1.3rem,2.3vw,1.7rem);position:relative;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s var(--ease);
}
.svc-card:hover{transform:translateY(-4px);box-shadow:var(--sombra-alta);background:var(--blanco)}
.svc-card__num{font-size:2rem;font-weight:700;color:var(--tinta-2);opacity:.2;line-height:1;margin-bottom:.5rem;transition:color .3s var(--ease),opacity .3s var(--ease)}
.svc-card:hover .svc-card__num{opacity:1;color:var(--naranja)}
.svc-card__unidad{display:block;font-size:.64rem;letter-spacing:.11em;text-transform:uppercase;color:var(--naranja);font-weight:700;margin-bottom:.4rem}
.svc-card__t{font-size:1.1rem;font-weight:700;margin:0 0 .5rem;line-height:1.3}
.svc-card__r{font-size:.87rem;color:var(--gris);line-height:1.68;flex:1;margin-bottom:1rem}
.svc-card__r strong{color:var(--tinta);font-weight:600}
.svc-card__mas{font-size:.8rem;font-weight:700;color:var(--naranja);display:inline-flex;align-items:center;gap:.35rem}
.svc-card__mas i{font-style:normal;transition:transform .25s var(--ease)}
.svc-card:hover .svc-card__mas i,.seg:hover .svc-card__mas i{transform:translateX(4px)}

.unidad{margin-bottom:clamp(2.2rem,4vw,3.2rem)}
.unidad__t{
  font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--naranja);
  font-weight:700;margin:0 0 1rem;padding-bottom:.7rem;border-bottom:2px solid var(--naranja-borde);
}

/* los segmentos ahora son enlaces */
a.seg{text-decoration:none;color:inherit}

/* --------- cabecera de servicio / segmento --------- */
.svc-top{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,.95fr);gap:clamp(1.6rem,4vw,3.4rem);align-items:start}
.svc-top__resumen{font-size:1.05rem;color:var(--tinta-2);line-height:1.8;max-width:56ch;margin-bottom:1.6rem}
.svc-top__acc{display:flex;flex-wrap:wrap;gap:.7rem}
.svc-top__ficha{background:var(--tarjeta);border:1px solid var(--naranja-borde);border-radius:var(--r-tarjeta);padding:clamp(1.4rem,2.4vw,1.8rem)}
.svc-top__ficha .rotulo{margin-bottom:.4rem;font-size:.64rem}
.svc-top__lid{font-size:1.1rem;font-weight:700;color:var(--tinta);margin:0;line-height:1.35}
.svc-top__dato{font-size:.92rem;color:var(--tinta-2);margin:0}
.ficha__precio{font-size:1.75rem;font-weight:700;margin:.5rem 0 1rem;line-height:1.1;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.ficha__precio span{font-size:.75rem;color:var(--gris);font-weight:500;-webkit-text-fill-color:var(--gris)}
.ficha__incluye{list-style:none;margin:0 0 1rem;padding:0}
.ficha__incluye li{position:relative;padding-left:1.4rem;margin-bottom:.5rem;font-size:.85rem;line-height:1.6;color:var(--tinta-2)}
.ficha__incluye li::before{content:"";position:absolute;left:0;top:.45em;width:8px;height:5px;border:solid var(--naranja);border-width:0 0 2px 2px;transform:rotate(-45deg)}

/* --------- dos columnas --------- */
.dos-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1.6rem,4vw,3.4rem);align-items:start}
.dos-col--ancho{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr)}

.senales{list-style:none;margin:0;padding:0}
.senales li{
  position:relative;padding:.8rem 0 .8rem 2rem;border-bottom:1px solid var(--linea);
  font-size:.93rem;line-height:1.6;color:var(--tinta-2);
}
.senales li:last-child{border-bottom:0}
.senales li::before{
  content:"";position:absolute;left:0;top:1.05em;width:11px;height:11px;
  border-radius:50%;border:3px solid var(--naranja);
}

.entregables{list-style:none;margin:0;padding:0;columns:2;column-gap:2.2rem}
.entregables li{
  break-inside:avoid;position:relative;padding-left:1.4rem;margin-bottom:.7rem;
  font-size:.91rem;line-height:1.6;color:var(--tinta-2);
}
.entregables li::before{content:"";position:absolute;left:0;top:.55em;width:7px;height:7px;background:var(--naranja);border-radius:50%}

/* --------- tarjetas de socio --------- */
.socios-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:1rem}
.socios-grid--uno{grid-template-columns:minmax(0,560px)}
.socios-mini{display:grid;grid-template-columns:minmax(0,1fr);gap:.8rem}
.socio-card > div{min-width:0}
.socio-card{
  display:flex;gap:1.1rem;align-items:flex-start;
  background:var(--blanco);border:1px solid var(--naranja-borde);border-radius:var(--r-tarjeta);
  padding:clamp(1.2rem,2.2vw,1.6rem);
  transition:box-shadow .3s var(--ease),transform .3s var(--ease);
}
.socio-card:hover{box-shadow:var(--sombra-alta);transform:translateY(-3px)}
.socio-card--mini{background:var(--tarjeta);padding:1.1rem}
.socio-card__sello{
  width:54px;height:54px;flex:none;border-radius:50%;display:grid;place-items:center;
  background:var(--grad);color:#fff;font-weight:700;font-size:1.05rem;
}
.socio-card__n{font-size:1.05rem;font-weight:700;margin:0 0 .2rem;line-height:1.3}
.socio-card__r{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--naranja);font-weight:700;margin:0 0 .7rem;line-height:1.45}
.socio-card__b{font-size:.87rem;color:var(--gris);line-height:1.72;margin-bottom:1rem}
.socio-card__acc{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}

.chips--enlace li{padding:0}
.chips--enlace a{display:block;padding:.35rem .8rem;text-decoration:none;color:var(--tinta-2)}
.chips--enlace li:hover{border-color:var(--naranja)}
.chips--enlace li:hover a{color:var(--naranja)}

@media (max-width:1040px){
  .svc-top,.dos-col,.dos-col--ancho{grid-template-columns:1fr}
  .entregables{columns:1}
}
@media (max-width:860px){
  .logo__img{height:36px}
  .logo__marca{font-size:1.3rem}
}

/* ============================================================
   ACADEMIA
   ============================================================ */
.env--lectura{max-width:800px}

.chips--cat{margin-bottom:1.8rem}
.chips--cat li{background:var(--blanco);border-color:var(--naranja-borde);color:var(--naranja);font-weight:700;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}
/* Academia: los temas filtran las guías (antes eran etiquetas que no hacían nada al tocarlas). */
.chips--filtro button{font:inherit;cursor:pointer;background:var(--blanco);border:1px solid var(--naranja-borde);border-radius:100px;color:var(--naranja);font-weight:700;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;padding:.6rem 1rem;min-height:38px}
.chips--filtro button:hover{border-color:var(--naranja)}
.chips--filtro button.activo{background:var(--naranja);border-color:var(--naranja);color:var(--blanco)}
.chips--filtro button:focus-visible{outline:2px solid var(--naranja);outline-offset:2px}
.art-card[hidden]{display:none}

.arts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:1rem}
.art-card{
  display:flex;flex-direction:column;text-decoration:none;color:inherit;
  background:var(--tarjeta);border:1px solid var(--naranja-borde);border-radius:var(--r-tarjeta);
  padding:clamp(1.3rem,2.3vw,1.7rem);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s var(--ease);
}
.art-card:hover{transform:translateY(-4px);box-shadow:var(--sombra-alta);background:var(--blanco)}
.art-card__cat{display:block;font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:var(--naranja);font-weight:700;margin-bottom:.7rem}
.art-card__t{font-size:1.1rem;font-weight:700;margin:0 0 .6rem;line-height:1.32}
.art-card__p{font-size:.87rem;color:var(--gris);line-height:1.65;flex:1;margin-bottom:1.1rem}
.art-card__pie{display:flex;justify-content:space-between;align-items:center;gap:1rem;font-size:.78rem;color:var(--gris-cl);padding-top:.9rem;border-top:1px solid var(--linea)}

/* --------- artículo --------- */
.art__h1{font-size:clamp(1.8rem,1.2rem + 2.2vw,2.6rem);line-height:1.22;margin-bottom:1rem}
.art__meta{
  display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;font-size:.84rem;color:var(--gris-cl);
  padding-bottom:1.6rem;border-bottom:1px solid var(--linea);margin-bottom:1.8rem;
}
.art__meta strong{color:var(--tinta)}

/* bloque de respuesta directa: lo que buscan los motores de respuesta */
.art-resp{
  background:var(--tarjeta);border:2px solid var(--naranja);border-radius:var(--r-tarjeta);
  padding:clamp(1.3rem,2.6vw,1.8rem);margin-bottom:2rem;
}
.art-resp__q{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--naranja);font-weight:700;margin:0 0 .7rem}
.art-resp__a{font-size:1.02rem;line-height:1.72;color:var(--tinta);margin:0;font-weight:500}

.art__intro{font-size:1.02rem;line-height:1.85;color:var(--tinta-2);margin-bottom:1.1rem}

.art-indice{
  background:var(--fondo);border-left:3px solid var(--naranja);border-radius:0 var(--r-tarjeta) var(--r-tarjeta) 0;
  padding:1.3rem 1.6rem;margin:2.2rem 0;
}
.art-indice .rotulo{margin-bottom:.8rem;font-size:.64rem}
.art-indice ol{margin:0;padding-left:1.2rem;display:grid;gap:.45rem}
.art-indice li{font-size:.9rem}
.art-indice a{color:var(--tinta-2);text-decoration:none}
.art-indice a:hover{color:var(--naranja);text-decoration:underline}

.art-sec{margin-bottom:2.6rem;scroll-margin-top:100px}
.art-sec h2{
  font-size:clamp(1.25rem,1.05rem + .8vw,1.6rem);font-weight:700;line-height:1.3;
  margin:0 0 1rem;padding-top:.6rem;color:var(--tinta);
}
.art-sec p{font-size:1rem;line-height:1.85;color:var(--tinta-2);margin-bottom:1.1rem}

.art-lista{list-style:none;margin:0 0 1.3rem;padding:0}
.art-lista li{position:relative;padding-left:1.6rem;margin-bottom:.75rem;font-size:.97rem;line-height:1.75;color:var(--tinta-2)}
.art-lista li::before{content:"";position:absolute;left:0;top:.65em;width:7px;height:7px;background:var(--naranja);border-radius:50%}

.art-pasos{margin:0 0 1.3rem;padding-left:1.4rem;counter-reset:ap}
.art-pasos li{margin-bottom:.9rem;font-size:.97rem;line-height:1.75;color:var(--tinta-2);padding-left:.3rem}
.art-pasos li::marker{color:var(--naranja);font-weight:700}
.art-pasos strong{color:var(--tinta)}

.art-errores{list-style:none;margin:0;padding:0}
.art-errores li{
  position:relative;padding:.85rem 0 .85rem 2rem;border-bottom:1px solid var(--linea);
  font-size:.95rem;line-height:1.7;color:var(--tinta-2);
}
.art-errores li:last-child{border-bottom:0}
.art-errores li::before{
  content:"×";position:absolute;left:0;top:.75em;width:20px;height:20px;line-height:18px;text-align:center;
  border-radius:50%;background:#FCEAE8;color:#C0392B;font-weight:700;font-size:.9rem;
}

.art-nota{
  background:#FFF4EC;border-left:3px solid var(--naranja);border-radius:0 10px 10px 0;
  padding:1rem 1.3rem;margin:1.4rem 0;font-size:.93rem;line-height:1.72;color:var(--tinta-2);
}
.art-nota strong{color:var(--naranja)}

.tw-art{overflow-x:auto;margin:1.4rem 0;border:1px solid var(--linea);border-radius:14px}
.tabla-art{width:100%;border-collapse:collapse;font-size:.88rem;min-width:520px}
.tabla-art th{
  text-align:left;background:var(--tinta);color:#fff;padding:.8rem 1rem;
  font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;
}
.tabla-art td{padding:.8rem 1rem;border-bottom:1px solid var(--linea);vertical-align:top;line-height:1.6;color:var(--tinta-2)}
.tabla-art tbody tr:last-child td{border-bottom:0}
.tabla-art tbody tr:nth-child(even){background:var(--fondo)}
.tabla-art td.primera{font-weight:600;color:var(--tinta)}

.art-faq{display:grid;gap:.6rem}
.art-faq__item{
  background:var(--tarjeta);border:1px solid var(--linea);border-radius:14px;
  padding:1rem 1.3rem;transition:border-color .25s var(--ease);
}
.art-faq__item[open]{border-color:var(--naranja-borde);background:var(--blanco)}
.art-faq__item summary{
  cursor:pointer;font-weight:700;font-size:.97rem;color:var(--tinta);line-height:1.5;
  list-style:none;display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;
}
.art-faq__item summary::-webkit-details-marker{display:none}
.art-faq__item summary::after{content:"+";color:var(--naranja);font-weight:700;font-size:1.25rem;line-height:1;flex:none}
.art-faq__item[open] summary::after{content:"−"}
.art-faq__item p{margin:.9rem 0 0;font-size:.94rem;line-height:1.78;color:var(--tinta-2)}

.art__nota-fuentes{font-size:.86rem;color:var(--gris-cl);margin-bottom:1rem}
.art-fuentes{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.art-fuentes a{
  display:block;padding:.8rem 1rem;background:var(--tarjeta);border:1px solid var(--linea);
  border-radius:10px;text-decoration:none;color:var(--tinta-2);font-size:.9rem;line-height:1.5;
  transition:border-color .25s var(--ease),background .25s var(--ease);
}
.art-fuentes a:hover{border-color:var(--naranja);background:var(--blanco)}
.art-fuentes strong{color:var(--naranja)}

.art-autor{
  display:flex;gap:1.2rem;align-items:flex-start;margin-top:2.6rem;
  background:var(--tarjeta);border:1px solid var(--naranja-borde);border-radius:var(--r-tarjeta);
  padding:clamp(1.3rem,2.4vw,1.7rem);
}
.art-autor .rotulo{margin-bottom:.5rem;font-size:.62rem}

@media (max-width:620px){
  .art-autor{flex-direction:column}
  .art__meta{gap:.3rem 1rem;font-size:.8rem}
}


/* --------- nucleo y servicios secundarios --------- */
.tambien{
  margin-top:1.6rem;background:var(--blanco);border:1px solid var(--linea);
  border-radius:var(--r-tarjeta);padding:clamp(1.3rem,2.4vw,1.8rem);
}
.tambien .rotulo{margin-bottom:1rem}
.tambien__lista{
  list-style:none;margin:0 0 1.1rem;padding:0;
  display:flex;flex-wrap:wrap;gap:.5rem;
}
.tambien__lista a{
  display:inline-block;padding:.45rem .9rem;border:1px solid var(--linea-fuerte);
  border-radius:100px;text-decoration:none;font-size:.85rem;color:var(--tinta-2);
  transition:border-color .22s var(--ease),color .22s var(--ease);
}
.tambien__lista a:hover{border-color:var(--naranja);color:var(--naranja)}
.tambien__pie{font-size:.85rem;color:var(--gris);margin:0}

.socio-card--firma{background:var(--tarjeta)}
.socio-card__sello--firma{background:var(--blanco);border:1px solid var(--naranja-borde);width:62px;height:62px;padding:9px}
.socio-card__sello--firma img{width:100%;height:auto}


/* --------- menu: ancho intermedio ---------
   Con el logo A&C Asesores y "Agenda con nosotros", el menu completo necesita
   ~1.145 px (medido). Bajo 1160 px se pasa al menu hamburguesa. */
@media (max-width:1240px){
  .logo__bajada{display:none}
}
/* Entre la hamburguesa y 1280 px no caben los dos botones: el diagnóstico sigue en el hero y en las páginas. */
@media (min-width:1161px) and (max-width:1279px){
  .nav__acciones .btn--linea{display:none}
}

@media (max-width:1160px){
  .nav__menu,.nav__acciones{
    position:fixed;top:80px;left:0;right:0;
    background:var(--blanco);border-bottom:1px solid var(--linea);
    flex-direction:column;align-items:stretch;gap:0;padding:.5rem clamp(16px,4vw,32px);
    display:none;
  }
  /* Abierto: sin backdrop-filter (con él, lo fijo se ubica respecto de la barra y no de la pantalla). El menú llega
     hasta el pie con scroll propio y los dos botones quedan fijos abajo: ya no tapan nada al abrir Servicios o Recursos. */
  .nav.abierta{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--blanco)}
  .nav.abierta .nav__menu{display:flex;bottom:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:6.5rem}
  .nav.abierta .nav__acciones{display:flex;flex-direction:row;gap:.5rem;top:auto;bottom:0;border-top:1px solid var(--linea);border-bottom:0;
    padding:.75rem clamp(16px,4vw,32px) calc(.75rem + env(safe-area-inset-bottom, 0px));box-shadow:0 -8px 20px rgba(35,42,55,.07)}
  .nav.abierta .nav__acciones .btn{flex:1;justify-content:center}
  body.sin-scroll{overflow:hidden}
  .nav__enlace{padding:.8rem .2rem;text-align:left;width:100%;border-bottom:1px solid var(--linea)}
  .nav__enlace::after{display:none}
  .nav__item--desp{width:100%}
  .desp{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;padding:0 0 .5rem;display:none}
  .nav__item--desp.abierto .desp{display:block}
  .hamburguesa{display:block}
}

/* ============================================================
   KNOW HOW — selector de rubros del inicio
   ============================================================ */
.rubros__lista{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.4rem}
.rubros__btn{
  background:var(--blanco);border:1px solid var(--linea);border-radius:100px;cursor:pointer;
  padding:.55rem 1.05rem;font-family:inherit;font-size:.86rem;font-weight:600;color:var(--tinta);
  transition:background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease);
}
.rubros__btn:hover{border-color:var(--naranja);color:var(--naranja)}
.rubros__btn.activo{background:var(--naranja);border-color:var(--naranja);color:#fff;cursor:default}
.rubro-panel{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);
  background:var(--tarjeta);border:1px solid var(--naranja-borde);border-radius:var(--r-tarjeta);
  padding:clamp(1.5rem,3vw,2.4rem);
}
.rubro-panel__t{font-size:clamp(1.35rem,1.1rem + .9vw,1.75rem);font-weight:700;color:var(--tinta);margin:0 0 .8rem;line-height:1.25}
.rubro-panel__dolor{font-size:.98rem;color:var(--tinta-2);line-height:1.75;margin:0 0 1.4rem}
.rubro-panel__entrada{border-top:1px solid var(--linea);padding-top:1rem;margin-bottom:1.2rem}
.rubro-panel__entrada .rotulo{margin-bottom:.4rem;font-size:.62rem}
.rubro-panel__entrada .seg__entrada{margin:0}
.rubro-panel__acc{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.4rem}
.rubro-panel__errores .rotulo{margin-bottom:.8rem}
@media (max-width:860px){
  .rubro-panel{grid-template-columns:1fr}
}
.rubros__select{display:none}
@media (max-width:520px){
  .rubros__lista{display:none}
  .rubros__select{
    display:block;width:100%;margin-bottom:1.1rem;
    appearance:none;-webkit-appearance:none;cursor:pointer;
    font-family:inherit;font-size:1rem;font-weight:600;color:var(--tinta);
    background:var(--blanco) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%23FF7300' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 1rem center;
    border:1px solid var(--naranja);border-radius:13px;padding:.85rem 2.8rem .85rem 1rem;
  }
}

/* ============================================================
   BUSCADOR DE RUBROS
   ============================================================ */
.buscador{margin:0 0 1rem;max-width:480px}
.buscador__input{
  width:100%;font-family:inherit;font-size:.95rem;color:var(--tinta);
  background:var(--blanco) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239A9EA6' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4'/%3E%3C/svg%3E") no-repeat 1rem center;
  border:1px solid var(--linea);border-radius:100px;padding:.75rem 1rem .75rem 2.65rem;outline:none;
  transition:border-color .2s var(--ease);
}
.buscador__input:focus{border-color:var(--naranja)}
.buscador__vacio{font-size:.86rem;color:var(--gris);margin:.6rem 0 0}
.oscuro .buscador__input{background-color:rgba(255,255,255,.06);border-color:rgba(255,255,255,.25);color:#fff}
.oscuro .buscador__input::placeholder{color:rgba(255,255,255,.5)}
.oscuro .buscador__input:focus{border-color:var(--naranja-cl)}
.oscuro .buscador__vacio{color:rgba(255,255,255,.72)}

/* proyectos a medida: área y "se cotiza" */
.plan__area{font-size:.64rem;letter-spacing:.11em;text-transform:uppercase;color:var(--naranja);font-weight:700;margin:0 0 .35rem}
.ficha__cotiza{font-size:.95rem;font-weight:600;color:var(--tinta-2);margin:.2rem 0 .9rem}

/* ============================================================
   MERCADO DE ASESORES
   ============================================================ */
.mercado__filtros{margin-bottom:1.4rem}
.mercado__chips{display:flex;flex-wrap:wrap;gap:.5rem}
.chip-filtro{
  background:var(--blanco);border:1px solid var(--linea);border-radius:100px;cursor:pointer;
  padding:.5rem 1rem;font-family:inherit;font-size:.84rem;font-weight:600;color:var(--tinta);
  transition:background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease);
}
.chip-filtro:hover{border-color:var(--naranja);color:var(--naranja)}
.chip-filtro.activo{background:var(--naranja);border-color:var(--naranja);color:#fff}
.asesores{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:1.1rem}
.asesor{
  display:flex;flex-direction:column;gap:.85rem;
  background:var(--tarjeta);border:1px solid var(--naranja-borde);border-radius:var(--r-tarjeta);
  padding:clamp(1.3rem,2.4vw,1.8rem);
}
.asesor__cab{display:flex;align-items:center;gap:.9rem}
.asesor__foto{width:64px;height:64px;border-radius:50%;object-fit:cover;flex:none}
.asesor__foto--ini{display:grid;place-items:center;background:var(--grad);color:#fff;font-weight:700;font-size:1.15rem}
.asesor__n{font-size:1.08rem;font-weight:700;color:var(--tinta);margin:0;line-height:1.3}
.asesor__tipo{font-size:.82rem;color:var(--gris);margin:.15rem 0 0}
.asesor__sello{
  align-self:flex-start;display:inline-block;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;
  color:var(--naranja);border:1px solid var(--naranja-borde);border-radius:100px;padding:.25rem .65rem;background:var(--blanco);
}
.asesor__sello--ind{color:var(--tinta-2);border-color:var(--linea)}
.asesor__esp{font-size:.9rem;color:var(--tinta-2);line-height:1.6;margin:0}
.asesor__svc{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem;flex:1;align-content:flex-start}
.asesor__svc a,.asesor__svc span{
  display:inline-block;font-size:.76rem;padding:.3rem .7rem;border-radius:100px;
  border:1px solid var(--linea);color:var(--tinta-2);background:var(--blanco);text-decoration:none;
}
.asesor__svc a:hover{border-color:var(--naranja);color:var(--naranja)}
.asesor__acc{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.2rem;padding-top:.9rem;border-top:1px solid var(--linea)}
.persona .asesor__sello{margin-bottom:.7rem}
.persona__acc{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.4rem;margin-top:1.6rem}
.persona__sello img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.ofrece{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(1.8rem,4vw,3.5rem);align-items:start}
.ofrece__txt .senales{margin-top:1.2rem}
.form--tarjeta{background:var(--blanco);border:1px solid var(--linea);border-radius:var(--r-tarjeta);padding:clamp(1.3rem,2.6vw,2rem)}
.form__acciones{display:flex}
.campo--trampa{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.ofrece__ok h3{margin:0 0 .4rem;font-size:1.25rem;color:var(--tinta)}
.ofrece__ok p{margin:0;color:var(--tinta-2);line-height:1.7}
.desp__todos--mercado{border-top:0;padding-top:.2rem}
@media (max-width:860px){
  .ofrece{grid-template-columns:1fr}
}

/* =========================================================
   MERCADO · PUBLICA TU PERFIL (asistente) Y PERFIL PÚBLICO
   ========================================================= */
.ofrece__acc{margin-top:1.5rem}
.ofrece__nota{font-size:.8rem;color:var(--gris);margin:1rem 0 0;max-width:56ch;line-height:1.6}
.ofrece__pasos{list-style:none;counter-reset:paso;display:grid;gap:1.3rem;margin:0}
.ofrece__pasos li{counter-increment:paso;display:grid;grid-template-columns:40px 1fr;column-gap:1rem;row-gap:.2rem}
.ofrece__pasos li::before{content:counter(paso);grid-row:span 2;width:40px;height:40px;border-radius:50%;background:var(--grad);color:#fff;font-weight:700;display:grid;place-items:center}
.ofrece__pasos b{font-size:.98rem;color:var(--tinta)}
.ofrece__pasos span{font-size:.88rem;color:var(--gris);line-height:1.6}

.wz{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:clamp(1.6rem,3.5vw,3rem);align-items:start;margin-top:.6rem}
.wz__cab{margin-bottom:1.4rem}
.wz__cab .t1{margin:.3rem 0 .5rem}
.wz__bajada{color:var(--gris);margin:0 0 1.2rem;line-height:1.65}
.wz__t{font-size:1.3rem;font-weight:700;color:var(--tinta);margin:0 0 .45rem;outline:none}
.wz__t small,.wz__st small{font-weight:500;color:var(--gris);font-size:.8em}
.wz__st{font-size:.98rem;font-weight:700;margin:1.7rem 0 .7rem;color:var(--tinta)}
.wz__panel{background:var(--blanco);border:1px solid var(--naranja-borde);border-radius:var(--r-tarjeta);padding:clamp(1.3rem,3vw,2.1rem)}
.wz__form{margin-bottom:.4rem}
.wz__oculto{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}

.wz__pasos{position:relative;list-style:none;display:flex;gap:.2rem;padding:0 0 .4rem;margin:0 0 1rem;overflow-x:auto;scrollbar-width:thin}
.wz__paso button{display:flex;align-items:center;gap:.45rem;background:none;border:0;font:inherit;font-size:.8rem;font-weight:600;color:var(--gris);padding:.35rem .55rem;cursor:pointer;white-space:nowrap;border-radius:100px}
.wz__paso button:disabled{opacity:.45;cursor:default}
.wz__paso-n{width:26px;height:26px;border-radius:50%;border:1px solid var(--linea-fuerte);display:grid;place-items:center;font-size:.74rem;font-weight:700;background:var(--blanco)}
.wz__paso.hecho .wz__paso-n{border-color:var(--naranja);color:var(--naranja)}
.wz__paso.activo button{color:var(--tinta)}
.wz__paso.activo .wz__paso-n{background:var(--naranja);border-color:var(--naranja);color:#fff}
/* Ocho pasos no caben con nombre: solo el actual lo muestra (los demás lo dicen al lector de pantalla y en el title). */
.wz__paso:not(.activo) .wz__paso-t{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.wz__opciones{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}
.wz__opcion{position:relative;display:flex;flex-direction:column;gap:.4rem;text-align:left;background:var(--tarjeta);border:1px solid var(--naranja-borde);border-radius:var(--r-tarjeta);padding:1.4rem;cursor:pointer;font:inherit;color:var(--tinta);transition:box-shadow .25s var(--ease),transform .25s var(--ease)}
.wz__opcion:hover,.wz__opcion:focus-within{box-shadow:var(--sombra-alta);transform:translateY(-2px)}
.wz__opcion b{font-size:1.05rem}
.wz__opcion span:not(.wz__opcion-ic){font-size:.86rem;color:var(--gris);line-height:1.55}
.wz__opcion.encima{border-color:var(--naranja);background:#FFF3E8}
.wz__opcion-ic{width:42px;height:42px;border-radius:12px;background:var(--grad);color:#fff;display:grid;place-items:center;font-weight:800;font-size:1.05rem;margin-bottom:.3rem}
.wz__estado{min-height:1.2em;font-weight:600;font-size:.9rem;color:var(--naranja-osc);margin:1rem 0 0}
.wz__ayuda{margin:1rem 0 0;font-size:.88rem;color:var(--tinta-2)}
.wz__ayuda summary{cursor:pointer;font-weight:600;color:var(--naranja)}
.wz__ayuda ol{margin:.6rem 0 0;padding-left:1.2rem;line-height:1.7}
.wz__privado{font-size:.8rem;color:var(--gris);margin:1rem 0 0;padding-left:1.4rem;position:relative;line-height:1.55}
.wz__privado::before{content:"";position:absolute;left:0;top:.2em;width:12px;height:9px;border:2px solid var(--gris);border-radius:2px;border-top-width:4px}
.wz__extra{display:flex;gap:1.4rem;flex-wrap:wrap;margin-top:1.1rem}
button.enlace{background:none;border:0;padding:0;font-family:inherit;cursor:pointer}

.wz__cuenta{align-self:flex-end;font-size:.72rem;color:var(--gris)}
.wz__ayuda-campo{font-size:.76rem;color:var(--gris);margin:0;line-height:1.5}
.wz__alerta{background:#FDECEA;color:#8A1F11;border-radius:10px;padding:.65rem .85rem;font-size:.84rem;margin:.6rem 0 0}
.wz__info{background:#FFF3E8;color:var(--tinta);border-radius:10px;padding:.7rem .9rem;font-size:.86rem;margin:.8rem 0 0;line-height:1.55}
.wz__error{color:#B42318;font-weight:600;font-size:.88rem;margin:1.1rem 0 0}
.wz__nav{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.7rem;flex-wrap:wrap}

.wz__cats{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
.wz__cat{text-align:left;display:flex;flex-direction:column;gap:.3rem;background:var(--blanco);border:1px solid var(--linea-fuerte);border-radius:16px;padding:.95rem 1rem;font:inherit;color:var(--tinta);cursor:pointer;transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}
.wz__cat b{font-size:.92rem}
.wz__cat span:not(.wz__sug){font-size:.78rem;color:var(--gris);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.wz__cat:hover{border-color:var(--naranja)}
.wz__cat.activo{border-color:var(--naranja);box-shadow:0 0 0 3px rgba(255,115,0,.14);background:#FFF9F3}
.wz__sug{align-self:flex-start;background:var(--naranja);color:#fff;font-size:.66rem;font-weight:700;padding:.15rem .55rem;border-radius:100px}
.wz__toggles,.wz__sugs{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}
.wz__sugs{margin:0 0 1.1rem}
.wz__sugs > span{font-size:.8rem;color:var(--gris);margin-right:.2rem}
.wz__nota-bloq{font-size:.78rem;color:var(--gris);margin:1.4rem 0 0;line-height:1.55}
.wz__elegidos{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;background:var(--tarjeta);border:1px solid var(--naranja-borde);border-radius:12px;padding:.7rem .8rem;margin-bottom:.4rem}
.wz__elegidos > span:first-child{font-size:.78rem;color:var(--gris);font-weight:600;margin-right:.2rem}
.wz__elegido{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;background:var(--blanco);border:1px solid var(--linea-fuerte);border-radius:100px;padding:.28rem .7rem}
.wz__elegido--1{border-color:var(--naranja);background:#FFF3E8}
.wz__elegido b{color:var(--naranja-osc);font-size:.66rem;text-transform:uppercase;letter-spacing:.06em}
.wz__elegido .enlace{font-size:.7rem}
.wz__toggles .chip-filtro small{font-weight:500;color:var(--naranja)}
.wz__cmf{background:#FFF9F3;border:1px solid var(--naranja-borde);border-radius:12px;padding:.9rem 1rem .3rem;margin-top:1.4rem}
.wz__cmf p{font-size:.86rem;line-height:1.55;margin:0 0 .7rem;color:var(--tinta-2)}
.pf__cmf{font-size:.76rem;color:var(--tinta-2);background:#F1F8F5;border:1px solid #CBE6DA;border-radius:8px;padding:.35rem .6rem;margin:-.4rem 0 .9rem;display:inline-block}

.wz__aptitudes{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;border:1px solid var(--linea-fuerte);border-radius:8px;padding:.5rem;background:var(--blanco)}
.wz__apt{display:inline-flex;align-items:center;gap:.25rem;background:var(--tarjeta);border:1px solid var(--linea-fuerte);border-radius:100px;padding:.2rem .25rem .2rem .7rem;font-size:.8rem}
.wz__apt button{background:none;border:0;cursor:pointer;color:var(--gris);font-size:1rem;line-height:1;padding:0 .3rem}
.wz__apt-in{border:0;flex:1;min-width:180px;font:inherit;font-size:.9rem;padding:.35rem;outline:none;background:transparent}
.wz__lista{display:grid;gap:.5rem}
.wz__lista .btn{justify-self:start}
.wz__fila{display:grid;grid-template-columns:1.2fr 1.2fr .9fr auto;gap:.4rem;align-items:center}
.wz__fila input{font:inherit;font-size:.88rem;padding:.6rem .75rem;border:1px solid var(--linea-fuerte);border-radius:8px;background:var(--blanco);color:var(--tinta);width:100%;min-width:0}
.wz__fila input:focus{outline:0;border-color:var(--naranja);box-shadow:0 0 0 3px rgba(255,115,0,.14)}
.wz__quitar{background:none;border:0;font-size:1.35rem;color:var(--gris);cursor:pointer;line-height:1;padding:.2rem .45rem}
.wz__quitar:hover{color:var(--naranja)}
.wz__svcs{display:grid;gap:1rem;margin-bottom:1rem}
.wz__svc{border:1px solid var(--linea-fuerte);border-radius:16px;padding:1rem 1.1rem;background:var(--blanco)}
.wz__svc-cab{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.9rem}

.wz__foto{margin-top:.4rem}
.wz__soltar{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;border:2px dashed var(--naranja-borde);border-radius:var(--r-tarjeta);padding:2.6rem 1rem;cursor:pointer;text-align:center;background:var(--tarjeta);transition:background .2s var(--ease)}
.wz__soltar b{color:var(--naranja);font-size:1.02rem}
.wz__soltar span{font-size:.84rem;color:var(--gris)}
.wz__soltar.encima,.wz__soltar:hover{background:#FFF3E8}
.wz__recorte canvas{width:280px;max-width:100%;aspect-ratio:1;border-radius:50%;cursor:grab;touch-action:none;display:block;margin:0 auto;box-shadow:0 0 0 4px #fff,0 0 0 5px var(--naranja-borde)}
.wz__recorte canvas:active{cursor:grabbing}
.wz__recorte .wz__ayuda-campo{text-align:center;margin-top:.6rem}
.wz__zoom{display:flex;gap:.7rem;align-items:center;justify-content:center;margin:1.1rem 0 .8rem;font-size:.8rem;color:var(--gris);font-weight:600}
.wz__zoom input{accent-color:var(--naranja);width:180px}
.wz__foto-actual{display:flex;align-items:center;gap:1.3rem;flex-wrap:wrap}
.wz__foto-actual img{width:120px;height:120px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 4px #fff,0 0 0 5px var(--naranja-borde)}
.wz__foto-acc{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center}

.wz__nivel{background:var(--tarjeta);border:1px solid var(--naranja-borde);border-radius:16px;padding:1rem 1.2rem;margin:.6rem 0 1.2rem}
.wz__nivel p{margin:0;font-size:.9rem}
.wz__nivel ul{margin:.5rem 0 0;padding-left:1.1rem;font-size:.86rem;color:var(--tinta-2);line-height:1.7}
.wz__nivel-barra{height:8px;background:var(--linea);border-radius:100px;overflow:hidden;margin-bottom:.7rem}
.wz__nivel-barra span{display:block;height:100%;background:var(--grad);transition:width .4s var(--ease)}
.wz__terminos{border:1px solid var(--linea);border-radius:12px;padding:.8rem 1rem;font-size:.86rem}
.wz__terminos summary{cursor:pointer;font-weight:600}
.wz__terminos ul{margin:.6rem 0;padding-left:1.1rem;line-height:1.7;color:var(--tinta-2)}
.wz__checks{display:grid;gap:.8rem;margin:1.2rem 0 0}
.wz__checks label{display:flex;gap:.6rem;align-items:flex-start;font-size:.88rem;line-height:1.55;cursor:pointer}
.wz__checks input{accent-color:var(--naranja);width:18px;height:18px;margin-top:.15rem;flex:none}
.wz__checks i{color:var(--naranja);font-style:normal}
.wz__listo p{line-height:1.7}

.wz__vista{position:sticky;top:96px;max-height:calc(100vh - 116px);overflow:auto;background:var(--blanco);border:1px solid var(--naranja-borde);border-radius:var(--r-tarjeta);box-shadow:var(--sombra)}
.wz__vista-cab{display:flex;justify-content:space-between;align-items:center;gap:.8rem;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gris);font-weight:700;padding:.85rem 1.2rem;border-bottom:1px solid var(--linea);position:sticky;top:0;background:var(--blanco);z-index:1}
.wz__guardado{text-transform:none;letter-spacing:0;font-weight:500;text-align:right}
.wz__vista-marco{padding:1.3rem;container-type:inline-size}
.wz__ver,.wz__cerrar{display:none}

/* ---------- perfil público ---------- */
.pf{color:var(--tinta);font-size:.94rem}
.pf__ejemplo{display:inline-block;background:#FFF3E8;color:var(--naranja-osc);font-size:.72rem;font-weight:700;padding:.25rem .65rem;border-radius:100px;margin:0 0 .9rem}
.pf__cab{display:flex;gap:1.1rem;align-items:flex-start}
.pf__foto{width:84px;height:84px;border-radius:50%;overflow:hidden;background:var(--grad);display:grid;place-items:center;color:#fff;font-weight:700;font-size:1.6rem;flex:none;box-shadow:0 0 0 4px #fff,0 0 0 5px var(--naranja-borde)}
.pf__foto img{width:100%;height:100%;object-fit:cover;display:block}
.pf__id{min-width:0}
.pf__esp{font-size:.7rem;letter-spacing:.09em;text-transform:uppercase;color:var(--naranja);font-weight:700;margin:0 0 .2rem}
.pf__nombre{font-size:1.35rem;font-weight:700;margin:0 0 .2rem;line-height:1.2;word-break:break-word}
.pf__titular{color:var(--tinta-2);margin:0 0 .35rem;font-weight:500;line-height:1.45}
.pf__meta{color:var(--gris);font-size:.8rem;margin:0 0 .9rem;line-height:1.5}
.pf__acc{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.pf__acc .btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}
.pf__chips{margin:1rem 0 0}
.pf__bloque{margin-top:1.5rem;padding-top:1.3rem;border-top:1px solid var(--linea)}
.pf__t{font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:var(--naranja);font-weight:700;margin:0 0 .75rem}
.pf__resumen p{margin:0 0 .8rem;line-height:1.7;color:var(--tinta-2)}
.pf__resumen p:last-child{margin-bottom:0}
.pf__svc,.pf__casos{display:grid;gap:.75rem}
.pf__svc-item,.pf__caso{background:var(--tarjeta);border:1px solid var(--naranja-borde);border-radius:16px;padding:.95rem 1.05rem}
.pf__svc-n{font-weight:700;margin:0 0 .3rem;line-height:1.35}
.pf__svc-d{font-size:.85rem;color:var(--tinta-2);margin:0 0 .6rem;line-height:1.55}
.pf__svc-p{margin:0;display:flex;justify-content:space-between;gap:.6rem;flex-wrap:wrap;align-items:baseline}
.pf__svc-p b{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:1.05rem}
.pf__svc-p span{font-size:.78rem;color:var(--gris)}
.pf__nota{font-size:.74rem;color:var(--gris);margin:.7rem 0 0}
.pf__caso-r{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gris);font-weight:700;margin:0 0 .25rem}
.pf__caso-t{font-weight:700;margin:0 0 .5rem}
.pf__caso p{font-size:.86rem;line-height:1.55;margin:0 0 .4rem;color:var(--tinta-2)}
.pf__video{position:relative;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#111}
.pf__video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.pf__tray{list-style:none;margin:0;padding:0;display:grid;gap:.7rem}
.pf__tray li{padding-left:1rem;border-left:2px solid var(--naranja-borde);font-size:.9rem;line-height:1.45}
.pf__tray span{display:block;font-size:.78rem;color:var(--gris)}
.pf__guia{color:var(--gris-cl);font-style:italic;font-weight:400;font-size:.92em}
.pf__pie{margin:1.8rem 0 0;font-size:.74rem;color:var(--gris);line-height:1.55}
@container (min-width:640px){
  .pf__foto{width:124px;height:124px;font-size:2.2rem}
  .pf__nombre{font-size:2rem}
  .pf__svc,.pf__casos{grid-template-columns:1fr 1fr}
}

/* vista previa de una postulación (panel) */
.pf-aviso{max-width:900px;margin:1rem auto 0;background:#FFF3E8;border-radius:12px;padding:.85rem 1.1rem;font-size:.86rem;line-height:1.6}
#pf-vista{container-type:inline-size;max-width:900px;margin:1rem auto 0;background:var(--blanco);border:1px solid var(--naranja-borde);border-radius:var(--r-tarjeta);padding:clamp(1.3rem,3.5vw,2.6rem)}
.pf-cargando{color:var(--gris);margin:0}
.pf__pronto{font-size:.76rem;color:var(--gris);margin:.55rem 0 0}
.pf-volver{max-width:900px;margin:1.3rem auto 0}

/* ficha de un servicio del mercado: invitación a asesores */
.svc-asesor-cta{background:var(--tarjeta);border:1px solid var(--naranja-borde);border-radius:var(--r-tarjeta);padding:clamp(1.4rem,2.6vw,2rem)}
.svc-asesor-cta h3{font-size:1.15rem;line-height:1.35;color:var(--tinta);margin:.2rem 0 .6rem}
.svc-asesor-cta p{color:var(--tinta-2);line-height:1.65;margin:0 0 1.1rem;font-size:.92rem}

.wz__col{min-width:0}
@media (max-width:980px){
  .wz{grid-template-columns:minmax(0,1fr)}
  .wz__vista{position:fixed;inset:0;z-index:1100;max-height:none;border-radius:0;border:0;transform:translateY(105%);transition:transform .32s var(--ease);visibility:hidden}
  .wz--vista .wz__vista{transform:none;visibility:visible}
  .wz__ver{display:inline-flex;position:fixed;right:16px;bottom:16px;z-index:150;box-shadow:var(--sombra-alta)}
  .wz--vista .wz__ver{display:none}
  .wz__cerrar{display:block;background:none;border:0;font-size:1.7rem;line-height:1;cursor:pointer;color:var(--tinta);padding:0 .2rem}
}
@media (max-width:620px){
  .wz__opciones,.wz__cats{grid-template-columns:1fr}
  .wz__fila{grid-template-columns:1fr auto}
  .wz__fila input{grid-column:1}
  .wz__fila .wz__quitar{grid-column:2;grid-row:1}
  .wz__panel{padding:1.1rem}
}

/* Solo para lectores de pantalla */
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* =========================================================
   MERCADO DE ASESORES · MARKETPLACE
   ========================================================= */
.mk-hero{padding:clamp(2rem,3.5vw,3rem) 0 clamp(2.2rem,4vw,3.4rem);background:linear-gradient(180deg,var(--blanco) 0%,var(--fondo) 100%)}
.mk-hero__int{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:clamp(1.6rem,4vw,3.4rem);align-items:center;margin-top:.8rem}
.mk-hero__txt .t1{margin:.35rem 0 .7rem;max-width:18ch}
.mk-hero__bajada{color:var(--tinta-2);line-height:1.7;margin:0 0 1.5rem;max-width:58ch}
.mk-busca{display:flex;gap:.5rem;background:var(--blanco);border:1px solid var(--naranja-borde);border-radius:14px;padding:.45rem;box-shadow:var(--sombra)}
.mk-busca__q{flex:1;min-width:0}
.mk-busca input,.mk-busca select{width:100%;font:inherit;font-size:.95rem;color:var(--tinta);border:0;background:transparent;padding:.75rem .8rem;outline:none}
.mk-busca__r{flex:0 0 190px;border-left:1px solid var(--linea)}
.mk-busca select{cursor:pointer}
.mk-busca .btn{flex:none}
.mk-populares{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;margin-top:1rem}
.mk-populares > span{font-size:.8rem;color:var(--gris);margin-right:.2rem}
.mk-populares .chip-filtro{font-size:.78rem;padding:.4rem .85rem}

.mk-publica{background:var(--tinta);color:#fff;border-radius:var(--r-tarjeta);padding:clamp(1.5rem,3vw,2.2rem);position:relative;overflow:hidden}
.mk-publica::after{content:"";position:absolute;right:-60px;top:-60px;width:180px;height:180px;border-radius:50%;background:var(--grad);opacity:.35}
.mk-publica .rotulo{color:var(--naranja-cl)}
.mk-publica__t{font-size:clamp(1.4rem,2.2vw,1.75rem);font-weight:700;margin:.3rem 0 .6rem;position:relative}
.mk-publica__d{color:rgba(255,255,255,.82);line-height:1.65;margin:0 0 1rem;font-size:.93rem}
.mk-publica__lista{list-style:none;margin:0 0 1.4rem;padding:0;display:grid;gap:.45rem;font-size:.88rem}
.mk-publica__lista li{padding-left:1.4rem;position:relative;color:rgba(255,255,255,.92)}
.mk-publica__lista li::before{content:"";position:absolute;left:0;top:.38em;width:9px;height:9px;border-radius:50%;border:2.5px solid var(--naranja-cl)}
.mk-publica__nota{font-size:.74rem;color:rgba(255,255,255,.6);margin:1rem 0 0;line-height:1.55}
/* En celular la tarjeta de publicar queda abajo: este aviso la pone primero. */
.mk-publica-mini{display:none;align-items:center;gap:.4rem;margin:.6rem 0 0;padding:.8rem 1rem;border-radius:12px;background:var(--tinta);color:#fff;text-decoration:none;font-size:.9rem}
.mk-publica-mini b{color:var(--naranja-cl)}
.mk-publica-mini i{font-style:normal;margin-left:auto;color:var(--naranja-cl)}
@media (max-width:980px){.mk-publica-mini{display:flex}}

.mk{padding-top:clamp(2rem,4vw,3rem)}
.mk__int{display:grid;grid-template-columns:250px minmax(0,1fr);gap:clamp(1.4rem,3vw,2.4rem);align-items:start}
.mk-filtros{position:sticky;top:96px;max-height:calc(100vh - 116px);overflow:auto;background:var(--blanco);border:1px solid var(--linea);border-radius:16px;padding:1.1rem 1.1rem .6rem;scrollbar-width:thin}
.mk-filtros__ayuda{font-size:.76rem;color:var(--gris);margin:0 0 .3rem}
.mk-filtros__cab{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4rem}
.mk-filtros__cab b{font-size:.95rem}
.mk-filtros__cerrar,.mk-filtros__ver{display:none}
.mk-f{border:0;margin:0;padding:.9rem 0;border-top:1px solid var(--linea)}
.mk-f legend{font-size:.7rem;letter-spacing:.09em;text-transform:uppercase;color:var(--naranja);font-weight:700;padding:0;margin-bottom:.55rem}
.mk-f__op{display:flex;align-items:flex-start;gap:.5rem;font-size:.85rem;color:var(--tinta-2);padding:.28rem 0;cursor:pointer;line-height:1.35}
.mk-f__op input{accent-color:var(--naranja);margin-top:.15rem;flex:none}
.mk-f__op:hover{color:var(--naranja)}
.mk-f__n{font-style:normal;color:var(--gris-cl);font-size:.78rem;margin-left:.2rem}
.mk-f__op--cero{opacity:.45}
.mk-f__t{font-size:.7rem;letter-spacing:.09em;text-transform:uppercase;color:var(--naranja);font-weight:700;margin:0 0 .4rem}
.mk-f__grupo{border-bottom:1px dashed var(--linea);padding:.15rem 0 .35rem}
.mk-f__grupo:last-child{border-bottom:0}
.mk-f__grupo summary{cursor:pointer;font-size:.84rem;font-weight:700;color:var(--tinta);padding:.4rem 0;list-style:none;display:flex;justify-content:space-between;align-items:center}
.mk-f__grupo summary::-webkit-details-marker{display:none}
.mk-f__grupo summary::after{content:"+";color:var(--naranja);font-weight:700;font-size:1rem}
.mk-f__grupo[open] summary::after{content:"−"}
.mk-f__grupo .mk-f__op{padding-left:.15rem}

.mk-res__cab{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:.8rem}
.mk-res__n{margin:0;font-size:.95rem}
.mk-res__n span{color:var(--gris);font-size:.85rem}
.mk-res__acc{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center}
.mk-res__filtros{display:none}
.mk-orden{font-size:.82rem;color:var(--gris);display:flex;align-items:center;gap:.45rem}
.mk-orden select{font:inherit;font-size:.85rem;color:var(--tinta);border:1px solid var(--linea-fuerte);border-radius:8px;padding:.45rem .6rem;background:var(--blanco);cursor:pointer}
.mk-activos{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}
.mk-activos:empty{display:none}
.mk-activo{font:inherit;font-size:.78rem;font-weight:600;color:var(--naranja-osc);background:#FFF3E8;border:1px solid var(--naranja-borde);border-radius:100px;padding:.3rem .7rem;cursor:pointer}
.mk-activo:hover{background:var(--naranja);color:#fff}

.mk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:1rem}
.mk-card{display:flex;flex-direction:column;background:var(--blanco);border:1px solid var(--linea);border-radius:18px;overflow:hidden;text-decoration:none;color:var(--tinta);transition:box-shadow .25s var(--ease),transform .25s var(--ease),border-color .25s var(--ease)}
.mk-card:hover{box-shadow:var(--sombra-alta);transform:translateY(-3px);border-color:var(--naranja-borde)}
.mk-card__media{position:relative;height:132px;display:grid;place-items:center}
.mk-card__media--naranja{background:var(--grad)}
.mk-card__media--tinta{background:linear-gradient(135deg,#2E3646 0%,var(--tinta) 100%)}
.mk-card__media--claro{background:linear-gradient(135deg,#FFF3E8 0%,#FFE2C7 100%)}
.mk-card__av{width:88px;height:88px;border-radius:50%;display:grid;place-items:center;overflow:hidden;font-size:1.7rem;font-weight:700;letter-spacing:.02em;background:rgba(255,255,255,.18);color:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.55)}
.mk-card__media--claro .mk-card__av{background:var(--blanco);color:var(--naranja);box-shadow:0 0 0 4px rgba(255,115,0,.18)}
.mk-card__media--tinta .mk-card__av{color:var(--naranja-cl);background:rgba(255,255,255,.06)}
.mk-card__av img{width:100%;height:100%;object-fit:cover;display:block}
.mk-card__ej{position:absolute;top:.6rem;right:.6rem;background:var(--blanco);color:var(--naranja-osc);font-size:.64rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.2rem .5rem;border-radius:100px;box-shadow:var(--sombra)}
.mk-card__cuerpo{display:flex;flex-direction:column;flex:1;padding:1rem 1.1rem 1.05rem}
.mk-card__esp{font-size:.66rem;letter-spacing:.09em;text-transform:uppercase;color:var(--naranja);font-weight:700;margin:0 0 .3rem;line-height:1.4}
.mk-card__n{font-size:1.06rem;font-weight:700;margin:0 0 .3rem;line-height:1.25}
.mk-card__tit{font-size:.86rem;color:var(--tinta-2);line-height:1.5;margin:0 0 .7rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mk-card__meta{list-style:none;margin:0 0 .9rem;padding:0;display:grid;gap:.2rem;font-size:.76rem;color:var(--gris)}
.mk-card__temas{list-style:none;margin:0 0 .75rem;padding:0;display:flex;flex-wrap:wrap;gap:.3rem}
.mk-card__temas li{font-size:.68rem;font-weight:600;color:var(--tinta-2);background:var(--tarjeta);border:1px solid var(--linea);border-radius:100px;padding:.18rem .55rem}
.mk-card__det{font-size:.76rem;color:var(--gris)}
.mk-card__pie{margin-top:auto;display:flex;justify-content:space-between;align-items:baseline;gap:.6rem;padding-top:.8rem;border-top:1px solid var(--linea)}
.mk-card__precio{margin:0;font-weight:700;font-size:1.08rem;color:var(--tinta)}
.mk-card__precio small{font-size:.7rem;font-weight:600;color:var(--gris)}
.mk-card__conv{font-size:.85rem;color:var(--gris);font-weight:600}
.mk-card__ver{font-size:.8rem;font-weight:700;color:var(--naranja);white-space:nowrap}
.mk-card--cargando{min-height:330px;background:linear-gradient(100deg,var(--tarjeta) 30%,#FDFDFD 50%,var(--tarjeta) 70%);background-size:300% 100%;animation:mk-brillo 1.3s infinite linear;border-color:var(--linea)}
@keyframes mk-brillo{from{background-position:100% 0}to{background-position:0 0}}
.mk-vacio{background:var(--blanco);border:1px dashed var(--naranja-borde);border-radius:18px;padding:2rem;text-align:center;color:var(--tinta-2)}
.mk-vacio p{margin:0 0 .5rem}
.mk-svc-cab{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;flex-wrap:wrap;max-width:none}
.mk-grid--ancho{grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr))}

@media (max-width:980px){
  .mk-hero__int{grid-template-columns:1fr}
  .mk__int{grid-template-columns:1fr}
  .mk-res__filtros{display:inline-flex}
  .mk-filtros{position:fixed;inset:0;z-index:1100;max-height:none;border-radius:0;border:0;overflow:auto;padding:1.2rem 1.2rem 5rem;transform:translateX(-105%);transition:transform .3s var(--ease);visibility:hidden}
  .mk-filtros.abierto{transform:none;visibility:visible}
  .mk-filtros__cerrar{display:block;background:none;border:0;font-size:1.7rem;line-height:1;cursor:pointer;color:var(--tinta)}
  .mk-filtros__cab{gap:1rem}
  .mk-filtros__cab .enlace{margin-left:auto}
  .mk-filtros__ver{display:flex;position:fixed;left:1.2rem;right:1.2rem;bottom:1rem;justify-content:center}
}
@media (max-width:620px){
  .mk-busca{flex-wrap:wrap}
  .mk-busca__q{flex:1 1 100%}
  .mk-busca__r{flex:1;border-left:0;border-top:1px solid var(--linea)}
  .mk-busca .btn{flex:1 1 100%}
}

/* =========================================================
   RECURSOS · CALCULADORAS (espacio hecho, herramientas en preparación)
   ========================================================= */
.calc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:1rem;margin-top:.5rem}
.calc{position:relative;background:var(--tarjeta);border:1px solid var(--naranja-borde);border-radius:var(--r-tarjeta);padding:1.5rem 1.4rem}
.calc__estado{display:inline-block;font-size:.64rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--naranja-osc);background:#FFF3E8;border-radius:100px;padding:.25rem .6rem;margin-bottom:1rem}
.calc__area{font-size:.68rem;letter-spacing:.09em;text-transform:uppercase;color:var(--gris);font-weight:700;margin:0 0 .3rem}
.calc__t{font-size:1.12rem;line-height:1.3;margin:0 0 .55rem;color:var(--tinta)}
.calc__d{font-size:.87rem;line-height:1.6;color:var(--tinta-2);margin:0}
.calc-nota{margin:1.6rem 0 0;color:var(--tinta-2);font-size:.92rem}
.calc--activa{display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:box-shadow .25s var(--ease),transform .25s var(--ease)}
.calc--activa:hover{box-shadow:var(--sombra-alta);transform:translateY(-3px)}
.calc__ir{margin-top:auto;padding-top:1rem;font-size:.84rem;font-weight:700;color:var(--naranja)}

/* ---------- página de una calculadora ---------- */
.cx{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(1.6rem,3.5vw,3rem);align-items:start;margin-top:.6rem}
.cx__form .t1{margin:.3rem 0 .6rem}
.cx__bajada{color:var(--tinta-2);line-height:1.65;margin:0 0 1.4rem}
.cx-form{background:var(--blanco);border:1px solid var(--naranja-borde);border-radius:var(--r-tarjeta);padding:clamp(1.2rem,2.6vw,1.8rem)}
.cx-form .campo[hidden]{display:none}
.cx-ayuda{font-size:.74rem;color:var(--gris);margin:0;line-height:1.45}
.cx-check{display:flex;align-items:center;gap:.5rem;font-size:.9rem;text-transform:none;letter-spacing:0;font-weight:500;color:var(--tinta);padding:.7rem 0}
.cx-check input{width:18px!important;height:18px;accent-color:var(--naranja)}
.cx-fuente{font-size:.76rem;color:var(--gris);margin:.7rem 0 0}
.cx-supuestos{margin-top:1.2rem;border:1px solid var(--linea);border-radius:12px;padding:.8rem 1rem;font-size:.86rem;background:var(--blanco)}
.cx-supuestos summary{cursor:pointer;font-weight:700;color:var(--tinta)}
.cx-supuestos ul{margin:.7rem 0 0;padding-left:1.1rem;line-height:1.65;color:var(--tinta-2)}
.cx__res{position:sticky;top:96px;background:var(--blanco);border:1px solid var(--naranja-borde);border-radius:var(--r-tarjeta);padding:clamp(1.2rem,2.6vw,1.8rem);box-shadow:var(--sombra)}
.cx-res__rot{font-size:.7rem;letter-spacing:.09em;text-transform:uppercase;color:var(--naranja);font-weight:700;margin:0}
.cx-res__total{font-size:clamp(2rem,3.4vw,2.6rem);font-weight:800;margin:.2rem 0 .3rem;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;line-height:1.1}
.cx-res__total--texto{font-size:clamp(1.3rem,2.2vw,1.6rem)}
.cx-res__sub{font-size:.84rem;color:var(--gris);margin:0 0 1rem;line-height:1.5}
.cx-bloque{border-top:1px solid var(--linea);padding-top:.8rem;margin-top:.8rem}
.cx-bloque__t{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--tinta);font-weight:700;margin:0 0 .4rem}
.cx-fila{display:flex;justify-content:space-between;gap:1rem;padding:.42rem 0;font-size:.9rem;align-items:baseline}
.cx-fila span{color:var(--tinta-2);line-height:1.4}
.cx-fila small{display:block;font-size:.72rem;color:var(--gris);margin-top:.1rem}
.cx-fila b{white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--tinta)}
.cx-fila--total{border-top:1px dashed var(--linea-fuerte);margin-top:.2rem;padding-top:.55rem}
.cx-fila--total span{color:var(--tinta);font-weight:700}
.cx-res__nota{font-size:.76rem;color:var(--gris);margin:.8rem 0 0;line-height:1.5}
.cx-vacio{color:var(--gris);margin:0}
.cx-req{display:flex;gap:.5rem;font-size:.86rem;padding:.25rem 0;color:var(--tinta-2);line-height:1.45}
.cx-req span{font-weight:800;flex:none}
.cx-req.si span{color:#0A6B50}
.cx-req.no span{color:#B42318}
.cx-req small{color:var(--gris)}
.cx-comp{display:grid;gap:.7rem}
.cx-op{border:1px solid var(--linea);border-radius:14px;padding:.6rem .9rem}
.cx-op--rec{border-color:var(--naranja);background:#FFF9F3}
.cx-op--no{opacity:.55}
.cx-op__n{font-weight:700;font-size:.9rem;margin:.2rem 0 .2rem}
.cx-op__n small{font-weight:500;color:#B42318;font-size:.72rem}
.cx-op__rec{font-style:normal;font-weight:700;font-size:.68rem;letter-spacing:.04em;text-transform:uppercase;color:var(--naranja-osc);margin-left:.35rem}
.cx-aviso{font-size:.76rem;color:var(--gris);margin:1.4rem 0 0}
@media (max-width:980px){
  .cx{grid-template-columns:minmax(0,1fr)}
  .cx__res{position:static}
}

/* ============================================================
   INTRANET — Amin y Cristián entran con Google; módulos a la
   izquierda (al estilo de PrestaShop). Lo marcado data-solo-intranet
   (el Mercado de asesores) solo se ve con la sesión iniciada.
   ============================================================ */
html:not(.intranet) [data-solo-intranet]{display:none!important}
.ix-cuerpo{margin:0;background:var(--fondo);font-family:var(--fuente);color:var(--tinta);min-height:100vh}
.ix-entrar{min-height:100vh;display:grid;place-items:center;padding:24px 16px}
.ix-entrar__caja{background:var(--blanco);border:1px solid var(--linea);border-radius:var(--r-tarjeta);padding:clamp(20px,5vw,44px);width:min(420px,100%);min-width:0;display:grid;gap:.75rem;justify-items:center;text-align:center;box-shadow:0 18px 50px rgba(35,42,55,.08)}
.ix-entrar__caja .rotulo{margin:.6rem 0 0}
.ix-entrar__logo{height:40px;width:auto;display:block}
.ix-entrar__t{font-size:1.35rem;margin:0;font-weight:700;text-wrap:balance}
.ix-entrar__d{margin:0;color:var(--gris);font-size:.92rem}
.ix-google{min-height:44px;margin:.4rem 0}
.ix-msg{margin:0;font-size:.86rem;color:var(--naranja-osc);min-height:1.2em}
.ix-app{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}
.ix-lateral{background:var(--oscuro);color:var(--blanco);display:flex;flex-direction:column;padding:22px 14px;position:sticky;top:0;height:100vh;box-sizing:border-box}
.ix-lateral__marca img{height:30px;width:auto;display:block;margin:0 8px 28px}
.ix-lateral__rot{font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.5);margin:0 8px .6rem;font-weight:700}
.ix-modulos{display:grid;gap:4px}
.ix-modulo{display:flex;align-items:center;gap:.7rem;padding:.65rem .75rem;border-radius:10px;color:rgba(255,255,255,.82);text-decoration:none;font-size:.9rem;font-weight:600}
.ix-modulo svg{width:18px;height:18px;flex:none}
.ix-modulo:hover{background:rgba(255,255,255,.07);color:var(--blanco)}
.ix-modulo.activo{background:var(--grad);color:var(--blanco)}
.ix-modulo:focus-visible,.ix-salir:focus-visible,.ix-seg button:focus-visible,.ix-btn:focus-visible{outline:2px solid var(--naranja);outline-offset:2px}
.ix-lateral__pie{margin-top:auto;border-top:1px solid rgba(255,255,255,.12);padding:14px 8px 0;display:grid;gap:.55rem}
.ix-yo{margin:0;font-size:.78rem;color:rgba(255,255,255,.7);word-break:break-all}
.ix-salir{justify-self:start;background:none;border:1px solid rgba(255,255,255,.25);color:var(--blanco);border-radius:100px;padding:.4rem .9rem;font:inherit;font-size:.8rem;cursor:pointer}
.ix-salir:hover{border-color:var(--blanco)}
.ix-principal{display:flex;flex-direction:column;min-width:0;height:100vh}
.ix-cab{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 20px;padding:18px clamp(16px,2.4vw,28px);border-bottom:1px solid var(--linea);background:var(--blanco)}
.ix-cab .rotulo{margin:0 0 .2rem}
.ix-cab__t{margin:0;font-size:1.3rem;font-weight:700}
.ix-herr{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.ix-seg{display:inline-flex;border:1px solid var(--linea-fuerte);border-radius:100px;overflow:hidden}
.ix-seg button{background:var(--blanco);border:0;padding:.45rem .85rem;font:inherit;font-size:.8rem;font-weight:600;color:var(--tinta-2);cursor:pointer}
.ix-seg button + button{border-left:1px solid var(--linea-fuerte)}
.ix-seg button.activo{background:var(--tinta);color:var(--blanco)}
.ix-btn{background:var(--blanco);border:1px solid var(--linea-fuerte);border-radius:100px;padding:.45rem .85rem;font:inherit;font-size:.8rem;font-weight:600;color:var(--tinta);cursor:pointer;text-decoration:none}
.ix-btn:hover{border-color:var(--naranja)}
/* Dispositivos como el modo de Chrome (F12): la pantalla del teléfono se carga en px reales y se escala. */
.ix-marco{flex:1;min-height:0;background:var(--tarjeta);display:flex;flex-direction:column;align-items:center;overflow:auto;padding:16px}
.ix-telefono{flex:none;background:var(--oscuro-2);padding:12px;border-radius:34px;box-shadow:0 18px 40px rgba(35,42,55,.22)}
.ix-telefono__pantalla{overflow:hidden;border-radius:22px;background:var(--blanco)}
.ix-telefono__pantalla iframe{display:block;border:0;transform-origin:0 0;background:var(--blanco)}
.ix-medida{margin:.65rem 0 0;font-size:.75rem;color:var(--gris);font-variant-numeric:tabular-nums;text-align:center}
.ix-marco--escritorio{align-items:stretch;padding:clamp(0px,1.2vw,14px)}
.ix-marco--escritorio .ix-telefono{flex:1;min-height:0;display:flex;background:none;padding:0;border-radius:0;box-shadow:none}
.ix-marco--escritorio .ix-telefono__pantalla{flex:1;border-radius:12px;box-shadow:0 6px 24px rgba(35,42,55,.08)}
.ix-marco--escritorio .ix-telefono__pantalla iframe{width:100%;height:100%}
.ix-marco--escritorio .ix-medida{display:none}
.ix-sel select{background:var(--blanco);border:1px solid var(--linea-fuerte);border-radius:100px;padding:.45rem .85rem;font:inherit;font-size:.8rem;font-weight:600;color:var(--tinta);cursor:pointer;max-width:290px}
.ix-sel select:focus-visible,.ix-custom input:focus-visible{outline:2px solid var(--naranja);outline-offset:2px}
.ix-btn:disabled,.ix-sel select:disabled{opacity:.45;cursor:default}
.ix-custom{display:inline-flex;align-items:center;gap:4px;font-size:.8rem;color:var(--gris)}
.ix-custom[hidden]{display:none}
.ix-custom input{width:66px;border:1px solid var(--linea-fuerte);border-radius:8px;padding:.35rem .45rem;font:inherit;font-size:.8rem;color:var(--tinta);background:var(--blanco)}
@media (max-width:760px){
  .ix-app{grid-template-columns:minmax(0,1fr)}
  .ix-lateral{position:static;height:auto;flex-direction:row;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 12px}
  .ix-lateral__marca img{margin:0;height:24px}
  .ix-lateral__rot,.ix-yo{display:none}
  .ix-modulos{display:flex;gap:4px;flex:1}
  .ix-lateral__pie{margin:0;border:0;padding:0;display:flex;align-items:center}
  .ix-principal{height:auto;min-height:calc(100vh - 56px)}
  .ix-marco{min-height:72vh}
}

/* ============================================================
   CELULARES Y TABLETS (revisión responsive 2026-10-31)
   ============================================================ */
@media (max-width:1160px){
  /* Con letra menor a 16 px el iPhone agranda la página al tocar un campo. */
  input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{font-size:16px!important}
  /* Áreas de toque de al menos 32 px de alto. */
  .migas a{display:inline-block;padding:.45rem 0}
  .pie__nav a,.pie__dato{display:inline-block;padding:.4rem 0}
  .pie__intranet{display:inline-block;padding:.55rem .25rem}
  .cx-supuestos summary{padding:.55rem 0}
}
/* Safari en iPhone: los campos de fecha traen su propio ancho mínimo y se salían de su caja. */
@supports (-webkit-touch-callout:none){
  input[type=date],input[type=time]{-webkit-appearance:none;appearance:none;display:block;min-width:0;max-width:100%;min-height:2.9rem;text-align:left}
  input[type=date]::-webkit-date-and-time-value,input[type=time]::-webkit-date-and-time-value{text-align:left;margin:0}
}
/* Intranet en el celular: el teléfono ya es el dispositivo, así que se muestra la web a lo ancho. */
@media (max-width:760px){
  .ix-sel,.ix-custom,#ix-girar{display:none!important}
  .ix-cab{padding:12px 14px;gap:8px}
  .ix-cab__t{font-size:1.1rem}
  .ix-herr{gap:6px}
}

/* ---------- Revisión responsive, segunda vuelta (informes de los agentes, 2026-10-31) ---------- */
/* Palabras largas (dominios, correos) se parten en vez de ensanchar la página. */
body{overflow-wrap:break-word}
@media (max-width:1160px){
  /* El submenú medía 330 px fijos y se salía en pantallas de 320. */
  .desp{min-width:0}
  /* Áreas de toque de al menos 32 px. */
  .enlace{display:inline-block;padding:.5rem 0}
  .art-faq__item summary{padding:.45rem 0}
  .ix-lateral__marca{display:inline-block;padding:.35rem 0}
}
/* Menú abierto en pantallas angostas: los dos botones uno sobre otro (lado a lado no cabían en 360 px). */
@media (max-width:420px){
  .nav.abierta .nav__acciones{flex-direction:column}
  .nav.abierta .nav__menu{padding-bottom:9rem}
  .socio-card{flex-direction:column;gap:.8rem}
}
/* Tablet: con dos columnas, la última tarjeta sola queda centrada y no pegada a la izquierda. */
@media (min-width:600px) and (max-width:999px){
  .svc-grid > :last-child:nth-child(odd),
  .planes > :last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:calc(50% - .5rem)}
  .proceso{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* Calculadoras: 5 tarjetas en una fila, 3 + 2, o 2 + 2 + 1 centrada; nunca 4 + 1 suelta. */
@media (min-width:1000px) and (max-width:1439px){ .calc-grid{grid-template-columns:repeat(3,minmax(0,1fr))} }
@media (min-width:600px) and (max-width:999px){
  .calc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .calc-grid > :last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:calc(50% - .5rem)}
}
/* Asistente del Mercado: los 8 pasos bajan a una segunda línea en vez de esconderse a la derecha. */
@media (max-width:600px){
  .wz__pasos{flex-wrap:wrap;overflow:visible;row-gap:.3rem}
}
/* El botón fijo "Ver mi página" del asistente no tapa el pie. */
body:has(.wz__ver) .pie{padding-bottom:5.5rem}
/* Intranet en 320 px: el módulo en una sola línea. */
.ix-modulo span{white-space:nowrap}

/* ---------- Calculadoras: botón Calcular, empresa y correo, usos ---------- */
.cx-acciones{margin-top:.4rem}
.cx-acciones .btn{width:100%}
.cx-id{display:grid;gap:.85rem}
.cx-id__t{margin:0;color:var(--tinta-2);font-size:.92rem;line-height:1.6}
.cx-id__ok{font-size:.84rem;line-height:1.5;align-items:flex-start;padding:.2rem 0}
.cx-id__ok input{margin-top:.15rem;flex:none}
.cx-id__error{margin:0;color:#B42318;font-size:.86rem}
.cx-id__trampa{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.cx-usos{margin:1rem 0 0;padding-top:.8rem;border-top:1px solid var(--linea);font-size:.8rem;color:var(--gris)}
.cx-usos__cambiar{background:none;border:0;padding:.4rem 0;font:inherit;font-size:.8rem;color:var(--naranja);font-weight:600;cursor:pointer;text-decoration:underline}
/* Asistente del Mercado: los dos enlaces chicos con área de toque suficiente. */
@media (max-width:1160px){
  .wz__extra .enlace,.wz__ayuda summary{display:inline-block;padding:.55rem 0}
}

/* ---------- Intranet: módulo Usos de calculadoras ---------- */
.ix-mod{flex:1;min-height:0;overflow:auto;padding:18px clamp(16px,2.4vw,28px) 28px;display:grid;gap:16px;align-content:start}
.ix-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.ix-kpi{background:var(--blanco);border:1px solid var(--linea);border-radius:12px;padding:12px 14px;display:grid;gap:2px}
.ix-kpi b{font-size:1.5rem;font-weight:700;color:var(--tinta);font-variant-numeric:tabular-nums}
.ix-kpi span{font-size:.75rem;color:var(--gris);text-transform:uppercase;letter-spacing:.06em;font-weight:600}
.ix-busca input{background:var(--blanco);border:1px solid var(--linea-fuerte);border-radius:100px;padding:.45rem .9rem;font:inherit;font-size:.85rem;min-width:220px;color:var(--tinta)}
.ix-busca input:focus-visible{outline:2px solid var(--naranja);outline-offset:2px}
.ix-tabla-env{overflow-x:auto;background:var(--blanco);border:1px solid var(--linea);border-radius:12px}
.ix-tabla{width:100%;border-collapse:collapse;font-size:.86rem;min-width:620px}
.ix-tabla th{text-align:left;border-bottom:1px solid var(--linea);background:var(--fondo);position:sticky;top:0}
.ix-tabla th button{all:unset;cursor:pointer;display:block;padding:.65rem .9rem;font-size:.72rem;letter-spacing:.07em;text-transform:uppercase;font-weight:700;color:var(--gris)}
.ix-tabla th button:focus-visible{outline:2px solid var(--naranja);outline-offset:-2px}
.ix-tabla th[aria-sort=ascending] button::after{content:" ▲";color:var(--naranja)}
.ix-tabla th[aria-sort=descending] button::after{content:" ▼";color:var(--naranja)}
.ix-tabla td{padding:.6rem .9rem;border-bottom:1px solid var(--linea);color:var(--tinta-2);vertical-align:top}
.ix-tabla tr:last-child td{border-bottom:0}
.ix-tabla a{color:var(--naranja);text-decoration:none}
.ix-tabla__num{font-variant-numeric:tabular-nums;white-space:nowrap}
.ix-tabla__vacio{text-align:center;color:var(--gris);padding:1.6rem .9rem!important}
@media (max-width:760px){ .ix-busca input{min-width:0;width:100%} .ix-busca{flex:1} }

/* ---------- Intranet: CRM ---------- */
.ix-cuerpo{--crm-nuevo:#2F6FDE;--crm-contactado:#8A5A00;--crm-reunion:var(--naranja-osc);--crm-propuesta:#6B4FBB;--crm-ganado:#1F7A4D;--crm-perdido:var(--gris)}
.ix-crm td small{display:block;color:var(--gris);font-size:.76rem;margin-top:.15rem}
.ix-crm__fila{cursor:pointer}
.ix-crm__fila:hover td{background:var(--fondo)}
.ix-crm__fila:focus-visible{outline:2px solid var(--naranja);outline-offset:-2px}
.ix-chip{display:inline-block;font-size:.7rem;font-weight:700;border-radius:100px;padding:.2rem .55rem;margin:0 .25rem .2rem 0;background:var(--tarjeta);border:1px solid var(--linea-fuerte);color:var(--tinta-2);white-space:nowrap}
.ix-chip--agenda{border-color:var(--naranja-borde);color:var(--naranja-osc)}
.ix-estado{display:inline-block;font-size:.72rem;font-weight:700;border-radius:100px;padding:.25rem .65rem;white-space:nowrap;color:var(--blanco);background:var(--gris)}
.ix-estado--nuevo{background:var(--crm-nuevo)}.ix-estado--contactado{background:var(--crm-contactado)}.ix-estado--reunion{background:var(--crm-reunion)}
.ix-estado--propuesta{background:var(--crm-propuesta)}.ix-estado--ganado{background:var(--crm-ganado)}.ix-estado--perdido{background:var(--crm-perdido)}
.ix-gris{color:var(--gris)}
.ix-vencida{color:#B42318;font-weight:700}
.ix-kpi--alerta b{color:#B42318}
.ix-ficha-fondo{position:fixed;inset:0;background:rgba(35,42,55,.35);z-index:40}
.ix-ficha{position:fixed;top:0;right:0;bottom:0;width:min(520px,100%);background:var(--blanco);z-index:41;overflow-y:auto;padding:22px 24px 40px;box-shadow:-18px 0 40px rgba(35,42,55,.18);display:grid;gap:16px;align-content:start}
.ix-ficha__cab{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.ix-ficha__cab h2{margin:.15rem 0 .3rem;font-size:1.25rem;line-height:1.25}
.ix-ficha__dato{margin:0;font-size:.86rem;color:var(--gris);line-height:1.6}
.ix-ficha__dato a{color:var(--naranja);text-decoration:none}
.ix-ficha__x{background:none;border:1px solid var(--linea-fuerte);border-radius:50%;width:38px;height:38px;font-size:1.3rem;line-height:1;cursor:pointer;color:var(--tinta);flex:none}
.ix-ficha__form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;background:var(--fondo);border:1px solid var(--linea);border-radius:12px;padding:14px}
.ix-ficha__form label{display:grid;gap:4px;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;font-weight:700;color:var(--gris)}
.ix-ficha__form select,.ix-ficha__form input,.ix-ficha__form textarea{font:inherit;font-size:.9rem;letter-spacing:0;text-transform:none;font-weight:500;color:var(--tinta);background:var(--blanco);border:1px solid var(--linea-fuerte);border-radius:8px;padding:.5rem .6rem;min-width:0;width:100%}
.ix-ficha__form textarea{resize:vertical}
.ix-ficha__ancho{grid-column:1/-1}
.ix-ficha__aviso{grid-column:1/-1;margin:0;font-size:.85rem;color:var(--naranja-osc);font-weight:600}
.ix-ficha__h{margin:.4rem 0 0;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gris)}
.ix-ficha__hist{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ix-ficha__hist li{border-left:2px solid var(--linea-fuerte);padding:.1rem 0 .1rem .8rem;font-size:.86rem;line-height:1.55}
.ix-ficha__hist time{display:block;font-size:.72rem;color:var(--gris);font-variant-numeric:tabular-nums}
.ix-ficha__hist p{margin:.25rem 0 0;color:var(--tinta-2);white-space:pre-wrap}
@media (max-width:760px){
  .ix-ficha{padding:16px 16px 32px}
  .ix-ficha__form{grid-template-columns:minmax(0,1fr)}
}

/* Código de 6 dígitos para usar las calculadoras. */
.cx-cod__n{font-size:1.6rem!important;letter-spacing:.5em;text-align:center;font-variant-numeric:tabular-nums;font-weight:700}
.cx-cod__acc{margin:0;font-size:.8rem;color:var(--gris)}
.cx-cod__acc button:disabled{color:var(--gris);text-decoration:none;cursor:default}

/* Intranet en celular: con varios módulos, la fila de módulos se desliza en vez de salirse de la pantalla. */
@media (max-width:760px){
  .ix-lateral{flex-wrap:wrap}
  .ix-modulos{flex:1 1 100%;order:3;overflow-x:auto;scrollbar-width:none}
  .ix-modulos::-webkit-scrollbar{display:none}
  .ix-modulo{flex:none}
}

/* ---------- Banner "Asesoría para pymes" de la portada (todo el banner es el botón de la agenda) ---------- */
.banner-portada{background:var(--blanco);line-height:0}
.banner-portada__btn{all:unset;display:block;width:100%;cursor:pointer;line-height:0;-webkit-tap-highlight-color:transparent}
.banner-portada__img{display:block;width:100%;max-width:1920px;height:auto;margin:0 auto;transition:filter .2s ease}
.banner-portada__btn:focus-visible{outline:3px solid var(--naranja);outline-offset:-3px}
@media (hover:hover){ .banner-portada__btn:hover .banner-portada__img{filter:brightness(1.03) saturate(1.04)} }

/* ---------- Aviso de cookies (lo abre app.js; queda bajo la agenda y se esconde con el menú de celular abierto) ---------- */
.cookies{position:fixed;right:16px;bottom:16px;left:16px;z-index:700;max-width:520px;margin-left:auto;background:var(--blanco);border:1px solid var(--linea);border-radius:16px;box-shadow:var(--sombra-alta);padding:16px 18px;display:grid;gap:12px}
.cookies[hidden]{display:none}
.cookies__txt{margin:0;font-size:.86rem;line-height:1.5;color:var(--tinta-2)}
.cookies__acc{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}
body.sin-scroll .cookies{display:none}
/* Mientras el aviso está abierto, el pie tiene espacio extra abajo: el final de la página no queda tapado. */
body:has(#cookies:not([hidden])) .pie{padding-bottom:var(--alto-aviso,12rem)}
.pie__cookies{all:unset;cursor:pointer;color:inherit}
.pie__cookies:hover{color:var(--blanco)}
.pie__cookies:focus-visible{outline:2px solid var(--naranja);outline-offset:2px}
@media (max-width:1160px){ .pie__cookies{display:inline-block;padding:.55rem .25rem} }
@media (max-width:600px){
  .cookies{right:12px;bottom:12px;left:12px;padding:14px}
  .cookies__acc .btn{flex:1;justify-content:center}
}
