/* ═══════════════════════════════════════════════════════════════
   SISTEMA DE DISEÑO — ZÖLID BROKERS
   Paleta extraída del logo oficial (Pantone 199 C / Cool Gray 11)
   Tipografía: Outfit — escala oficial de marca
   Movimiento: solo reveal de texto y color de fondo en hover
   ═══════════════════════════════════════════════════════════════ */
:root{
  --rojo:#D50032; --rojo-osc:#A80028; --rojo-luz:#FBEAEE;
  --rojo-cl:#FF6B85;      /* variante para fondos oscuros: 4.95:1 sobre --tinta */
  --gris:#575756; --tinta:#2E2E2D; --texto:#4A4948; --suave:#6E6D6B;
  --hueso:#F7F4F0; --papel:#FCFAF8; --arena:#E9E1D6; --linea:#DFD8CF; --linea-cl:#EDE7E0;
  --f:Outfit,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --display:clamp(2.6rem,5.4vw,4rem);   /* escalón Display: 64px máx, un nivel sobre el H1 */
  --sec:clamp(72px,9vw,128px);
  --ease:cubic-bezier(.22,.61,.36,1);
  --z-nav:40; --z-flot:50;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--papel);color:var(--texto);
  font-family:var(--f);font-weight:400;font-size:17px;line-height:1.6;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;display:block}
a{color:inherit}                       /* evita el azul por defecto del navegador */
.wrap{max-width:1200px;margin:0 auto;padding:0 clamp(20px,4vw,40px)}

/* ── tipografía ── escala oficial de marca
   H1 600/48/-2%/1.05 · H2 600/36/-1.5%/1.15 · H3 600/28/-1%/1.25
   H4 500/22/0/1.35 · H5 500/18/0/1.4 · H6 600 MAY/14/+6%/1.4
   P 400/17/0/1.6 · P destacado 300/22/-1%/1.4 · Botón 500/16/0/1
   Display 600/64/-2.5%/1.0 — solo el titular de portada, fuera de la escala oficial
   Los clamp respetan el tamaño oficial como máximo y bajan en móvil. */
h1,h2,h3,h4,h5,h6{color:var(--tinta);margin:0}
h1{font-weight:600;font-size:clamp(2.05rem,4.6vw,3rem);letter-spacing:-.02em;line-height:1.05}
h2{font-weight:600;font-size:clamp(1.65rem,3.4vw,2.25rem);letter-spacing:-.015em;line-height:1.15}
h3{font-weight:600;font-size:clamp(1.3rem,2.4vw,1.75rem);letter-spacing:-.01em;line-height:1.25}
h4{font-weight:500;font-size:1.375rem;line-height:1.35}
h5{font-weight:500;font-size:1.125rem;line-height:1.4}
h6{font-weight:600;font-size:.875rem;letter-spacing:.06em;text-transform:uppercase;line-height:1.4}

/* Outfit no tiene cursiva real: el acento va por color y peso ligero,
   no por font-style (el navegador lo falsificaría inclinando las letras). */
h1 em,h2 em,h3 em{font-style:normal;font-weight:300;color:var(--rojo)}

p{margin:0 0 1.15em}
.lead{font-weight:300;font-size:clamp(1.15rem,2vw,1.375rem);letter-spacing:-.01em;
  line-height:1.4;color:var(--suave);max-width:58ch}

/* etiqueta numerada = H6 del sistema */
.tag{display:flex;align-items:center;gap:12px;font-weight:600;font-size:.875rem;
  letter-spacing:.06em;text-transform:uppercase;color:var(--rojo);margin:0 0 22px}
.tag::before{content:"";width:26px;height:1px;background:var(--rojo);flex:none}
.num{font-weight:400;font-size:.875rem;color:var(--suave);letter-spacing:.06em}

/* ── botones ── */
.btn{display:inline-flex;align-items:center;gap:9px;padding:15px 28px;border-radius:2px;
  border:1px solid transparent;font-size:1rem;font-weight:500;letter-spacing:0;
  text-decoration:none;cursor:pointer;line-height:1;min-height:48px;
  transition:background-color .35s var(--ease),color .35s var(--ease),border-color .35s var(--ease)}
.btn svg{width:15px;height:15px;flex:none}
.btn-p{background:var(--rojo);color:#fff}
.btn-p:hover{background:var(--rojo-osc)}
.btn-s{background:transparent;color:var(--tinta);border-color:var(--linea)}
.btn-s:hover{background:var(--tinta);color:#fff;border-color:var(--tinta)}
.btn-g{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
.btn-g:hover{background:#fff;color:var(--tinta)}
a,button{cursor:pointer}
:focus-visible{outline:2px solid var(--rojo);outline-offset:3px;border-radius:2px}

/* ── barra utilitaria ── */
.util{background:var(--tinta);color:#B9B6B2;font-size:.875rem}
.util .in{max-width:1200px;margin:0 auto;padding:0 clamp(20px,4vw,40px);
  display:flex;gap:24px;align-items:center;justify-content:flex-end;min-height:44px;padding-top:12px;padding-bottom:12px}
.util a{text-decoration:none;display:inline-flex;align-items:center;gap:7px;
  transition:color .35s var(--ease)}
.util a:hover{color:#fff}
.util svg{width:14px;height:14px;flex:none;opacity:.85}
.util .sos{color:#fff;font-weight:500}
.util .sos svg{color:var(--rojo-cl);opacity:1}

/* ── navegación ── */
header{position:sticky;top:0;z-index:var(--z-nav);background:rgba(252,250,248,.93);
  backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--linea-cl)}
header .wrap{display:flex;align-items:center;gap:40px;height:80px}
.marca{display:flex;align-items:center;gap:11px;text-decoration:none;flex:none}
.marca img{height:40px;width:auto}
.marca .txt{font-size:1.34rem;color:var(--gris);
  letter-spacing:-.01em;line-height:1;white-space:nowrap}
.marca .um{color:var(--rojo)}
nav{display:flex;gap:32px;margin-left:auto}
nav a{text-decoration:none;font-size:1rem;font-weight:500;color:var(--texto);
  padding:8px 0;position:relative;transition:color .35s var(--ease)}
nav a::after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1.5px;
  background:var(--rojo);transition:right .35s var(--ease)}
nav a:hover{color:var(--tinta)}
nav a:hover::after{right:0}

/* ── hero ── */
.hero{padding:clamp(60px,8vw,104px) 0 var(--sec);overflow:hidden}
.hero-g{display:grid;grid-template-columns:1.22fr .78fr;gap:clamp(36px,5vw,72px);align-items:end}
.hero h1{font-size:var(--display);letter-spacing:-.025em;line-height:1;margin-bottom:30px}
.hero .lead{margin-bottom:36px}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap}
.hero-fig{position:relative;aspect-ratio:4/5;background:var(--arena);overflow:hidden}
.hero-fig .ph{position:absolute;inset:0;display:flex;flex-direction:column;
  align-items:center;justify-content:center;text-align:center;padding:34px;
  color:#655C50;font-size:.875rem;line-height:1.6;letter-spacing:.02em}
.hero-fig .ph b{font-size:1.05rem;color:#5C5348;
  display:block;margin-bottom:10px;letter-spacing:.08em}

/* ── franja de verificación ── */
.verif{border-top:1px solid var(--linea);border-bottom:1px solid var(--linea);background:var(--hueso)}
.verif .wrap{display:grid;grid-template-columns:repeat(3,1fr)}
.vi{padding:38px 34px;border-left:1px solid var(--linea)}
.vi:first-child{border-left:0;padding-left:0}
.vi .k{font-weight:600;font-size:1.375rem;color:var(--tinta);display:block;
  margin-bottom:7px;line-height:1.2}
.vi .d{font-size:1rem;color:var(--suave);margin:0;line-height:1.55}
.vi .lnk{color:var(--rojo);text-decoration:none;font-weight:500;
  border-bottom:1px solid rgba(213,0,50,.35);transition:border-color .35s var(--ease)}
.vi .lnk:hover{border-color:var(--rojo)}

/* ── secciones ── */
section{padding:var(--sec) 0}
.cab{max-width:62ch;margin-bottom:clamp(40px,5vw,62px)}
.cab .lead{margin-top:18px}

/* ── dos puertas ── */
.puertas{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,2vw,26px)}
.puerta{background:var(--hueso);border:1px solid var(--linea-cl);padding:clamp(30px,3.4vw,46px);
  text-decoration:none;display:flex;flex-direction:column;
  transition:background-color .45s var(--ease),border-color .45s var(--ease)}
.puerta:hover{background:#fff;border-color:var(--linea)}
.puerta .ico{width:34px;height:34px;color:var(--rojo);margin-bottom:22px}
.puerta h3{margin-bottom:11px}
.puerta>p{color:var(--suave);font-size:1rem;flex:1;margin-bottom:22px}
.puerta ul{list-style:none;padding:0;margin:0 0 26px;font-size:1rem;color:var(--suave)}
.puerta li{padding:9px 0;border-top:1px solid var(--linea-cl);display:flex;gap:10px;align-items:baseline}
.puerta li::before{content:"";width:4px;height:4px;border-radius:50%;background:var(--rojo);flex:none;transform:translateY(-3px)}
.puerta .go{color:var(--rojo);font-weight:500;font-size:1rem;display:inline-flex;
  gap:9px;align-items:center;font-family:var(--f)}
.puerta .go svg{width:15px;height:15px;transition:transform .45s var(--ease)}
.puerta:hover .go svg{transform:translateX(4px)}

/* ── sectores: índice editorial, no tarjetas ── */
.sectores{background:var(--hueso);border-top:1px solid var(--linea);border-bottom:1px solid var(--linea)}
.idx{border-top:1px solid var(--linea)}
/* el desplazamiento va por transform, no por padding: no provoca reflujo (INP) */
.sec-row{display:grid;grid-template-columns:64px 1.1fr 1.6fr 40px;gap:24px;align-items:center;
  padding:30px 14px;border-bottom:1px solid var(--linea);text-decoration:none;
  transition:background-color .45s var(--ease)}
.sec-row>*{transition:transform .45s var(--ease)}
.sec-row:hover{background:#fff}
.sec-row:hover>*{transform:translateX(12px)}
.sec-row:hover .a{transform:none}
.sec-row .n{font-size:.875rem;color:var(--suave);letter-spacing:.08em}
.sec-row .t{font-size:clamp(1.2rem,2vw,1.55rem);color:var(--tinta);line-height:1.2}
.sec-row .d{font-size:1rem;color:var(--suave);margin:0;line-height:1.5}
.sec-row .a{color:var(--rojo);justify-self:end;display:flex;opacity:0;transition:opacity .45s var(--ease)}
.sec-row:hover .a{opacity:1}
.sec-row .a svg{width:19px;height:19px}

/* ── siniestros ── */
.sin{background:var(--tinta);color:#C6C3BF}
.sin h2{color:#fff}
.sin h2 em{color:var(--rojo-cl)}   /* el rojo de marca no pasa contraste sobre --tinta */
.sin .tag{color:var(--rojo-cl)}
.sin .tag::before{background:var(--rojo-cl)}
.sin-g{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(40px,5vw,80px);align-items:start}
.pasos{list-style:none;padding:0;margin:38px 0 0;counter-reset:p}
.pasos li{counter-increment:p;padding:24px 0 24px 62px;position:relative;
  border-top:1px solid var(--linea)}
.pasos li::before{content:counter(p,decimal-leading-zero);position:absolute;left:0;top:26px;
  font-size:1rem;color:var(--rojo);letter-spacing:.08em}
.pasos strong{display:block;color:var(--tinta);font-weight:500;
  font-size:1.24rem;margin-bottom:6px;letter-spacing:-.01em}
.pasos span{font-size:1rem;color:var(--suave);line-height:1.6}
/* variante sobre fondo oscuro — .pasos por defecto es para fondo claro */
.sin .pasos li{border-top-color:rgba(255,255,255,.13)}
.sin .pasos li::before{color:var(--rojo-cl)}
.sin .pasos strong{color:#fff}
.sin .pasos span{color:#A5A29E}
.tarj{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.15);padding:36px}
.tarj .l{font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:#A9A5A1;margin:0 0 14px}
.tarj .t{font-size:clamp(1.6rem,2.6vw,2.05rem);color:#fff;
  text-decoration:none;display:inline-flex;align-items:center;gap:12px;letter-spacing:-.01em;
  transition:color .35s var(--ease)}
.tarj .t:hover{color:var(--rojo-cl)}
.tarj .t svg{width:22px;height:22px;color:var(--rojo-cl)}
.tarj .h{font-size:1rem;color:#A5A29E;margin:14px 0 26px;line-height:1.6}

/* ── equipo ── */
.eq{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:clamp(18px,2.4vw,30px)}
.per .foto{aspect-ratio:3/4;background:var(--arena);margin-bottom:16px;position:relative;
  display:flex;align-items:center;justify-content:center;color:#655C50;font-size:.875rem;
  text-align:center;padding:18px;letter-spacing:.04em;overflow:hidden}
/* barra por scaleX, no por width: se compone en GPU y no toca el layout */
.per .foto::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;
  background:var(--gris);transform:scaleX(0);transform-origin:left;
  transition:transform .5s var(--ease)}
.per:hover .foto::after{transform:scaleX(1)}
.per .nom{font-size:1.14rem;color:var(--tinta);display:block;line-height:1.3}
.per .car{font-size:.875rem;color:var(--suave);margin:5px 0 0;line-height:1.45}

/* ── aseguradoras ── */
.aseg{background:var(--hueso);border-top:1px solid var(--linea);padding:clamp(48px,6vw,70px) 0}
.aseg .lbl{text-align:center;font-size:.875rem;letter-spacing:.01em;
  color:var(--suave);margin:0 0 32px}
.aseg-row{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
.aseg-row .m{padding:18px 34px;border:1px solid var(--linea);background:var(--papel);
  color:#6E6862;font-size:.875rem;letter-spacing:.06em}

/* ── formulario ── */
.fw{background:var(--hueso);border-top:1px solid var(--linea)}
.f-g{display:grid;grid-template-columns:.88fr 1.12fr;gap:clamp(38px,5vw,76px);align-items:start}
.card{background:var(--papel);border:1px solid var(--linea);padding:clamp(28px,3.4vw,44px)}
.prog{display:flex;gap:6px;margin-bottom:10px}
.prog i{height:2px;flex:1;background:var(--linea);transition:background-color .45s var(--ease)}
.prog i.on{background:var(--rojo)}
.prog-t{font-size:.875rem;color:var(--suave);margin:0 0 28px;letter-spacing:.03em}
fieldset{border:0;padding:0;margin:0}
legend{font-weight:600;font-size:1.375rem;color:var(--tinta);margin-bottom:7px;padding:0;line-height:1.25}
.ayuda{font-size:.875rem;color:var(--suave);margin:0 0 22px;line-height:1.55}
.chips{display:flex;flex-wrap:wrap;gap:9px}
.chip{padding:12px 19px;border:1px solid var(--linea);background:var(--papel);border-radius:2px;
  font-size:1rem;color:var(--texto);min-height:46px;
  transition:background-color .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease)}
.chip:hover{border-color:var(--gris)}
.chip[aria-pressed="true"]{background:var(--tinta);border-color:var(--tinta);color:#fff}
.campo{margin-bottom:20px}
.campo label{display:block;font-size:.875rem;font-weight:500;color:var(--tinta);margin-bottom:8px}
.campo input,.campo select{width:100%;padding:14px 15px;border:1px solid var(--linea);border-radius:2px;
  font-size:1rem;color:var(--texto);background:var(--papel);min-height:48px;
  transition:border-color .3s var(--ease)}
.campo input:hover,.campo select:hover{border-color:var(--gris)}
.campo .fmt{font-size:.875rem;color:var(--suave);margin:7px 0 0}
.consent{display:flex;gap:11px;align-items:flex-start;margin-top:22px;
  padding-top:20px;border-top:1px solid var(--linea-cl)}
.consent input{width:17px;height:17px;flex:none;margin-top:3px;accent-color:var(--rojo)}
.consent label{font-size:.875rem;color:var(--suave);line-height:1.55;font-weight:400}
.acc{margin-top:28px;display:flex;gap:11px}
.oculto{display:none}
.aviso{font-size:1rem;color:var(--suave);margin-top:30px;padding-left:18px;
  border-left:2px solid var(--rojo);line-height:1.6}
.aviso strong{color:var(--tinta);font-weight:500}

/* ── pie ── */
footer{background:var(--tinta);color:#A5A29E;font-size:1rem;padding:clamp(52px,6vw,76px) 0 32px}
.pie{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:clamp(26px,3vw,44px);margin-bottom:48px}
footer .fh{font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;
  color:#fff;margin:0 0 18px;font-weight:600}
footer ul{list-style:none;padding:0;margin:0}
footer li{margin-bottom:10px}
footer a{text-decoration:none;transition:color .35s var(--ease)}
footer a:hover{color:#fff}
.pie-m{display:flex;align-items:center;gap:11px;margin-bottom:18px}
.pie-m img{height:42px;width:auto}
.pie-m .txt{font-weight:600;font-size:1.25rem;color:#fff}
.pie-m .um{color:var(--rojo-cl)}
.legal{border-top:1px solid rgba(255,255,255,.13);padding-top:28px;font-size:.875rem;
  line-height:1.75;color:#9C9894;max-width:88ch}
.legal strong{color:#C6C3BF;font-weight:500}
.legal a{color:#C6C3BF;border-bottom:1px solid rgba(255,255,255,.28)}

/* ── whatsapp flotante ── */
.wsp{position:fixed;right:20px;bottom:20px;z-index:var(--z-flot);background:var(--rojo);color:#fff;
  padding:14px 22px;border-radius:2px;text-decoration:none;font-weight:500;font-size:1rem;
  display:inline-flex;align-items:center;gap:9px;box-shadow:0 6px 24px rgba(46,46,45,.2);
  transition:background-color .35s var(--ease)}
.wsp:hover{background:var(--rojo-osc)}
.wsp svg{width:17px;height:17px}

/* ── reveal (único movimiento de entrada) ── */
.rv{opacity:0;transform:translateY(14px);
  transition:opacity .8s var(--ease),transform .8s var(--ease)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .rv{opacity:1;transform:none}
  html{scroll-behavior:auto}
}

/* ── responsive ── */
@media(max-width:940px){
  .hero-g,.sin-g,.f-g{grid-template-columns:1fr;gap:40px}
  .puertas{grid-template-columns:1fr}
  .verif .wrap{grid-template-columns:1fr}
  .vi{border-left:0;border-top:1px solid var(--linea);padding:26px 0}
  .vi:first-child{border-top:0}
  nav{display:none}
  .util .in{justify-content:space-between;gap:12px;font-size:.75rem}
  .util .oculto-m{display:none}
  .hero-fig{aspect-ratio:16/10}
  .sec-row{grid-template-columns:44px 1fr;gap:14px;padding:22px 10px}
  .sec-row .d,.sec-row .a{display:none}
  .sec-row:hover{padding-left:18px}
  .pie{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  body{font-size:16px}
  .pie{grid-template-columns:1fr}
  .wsp{right:12px;bottom:12px;padding:12px 18px;font-size:.875rem}
  .hero-cta .btn{width:100%;justify-content:center}
}

/* ═══════════════ PÁGINAS INTERIORES ═══════════════ */

/* migas */
.migas{font-size:.875rem;color:var(--suave);padding:22px 0 0}
.migas a{text-decoration:none;border-bottom:1px solid var(--linea);transition:border-color .35s var(--ease)}
.migas a:hover{border-color:var(--gris)}
.migas span{color:var(--tinta)}

/* cabecera de página interior */
.ph-head{padding:clamp(44px,6vw,76px) 0 clamp(48px,6vw,80px);
  border-bottom:1px solid var(--linea);background:var(--hueso)}
.ph-head h1{max-width:20ch;margin-bottom:24px}
.ph-head .lead{max-width:62ch}
.ph-g{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(32px,5vw,64px);align-items:end}
.ph-datos{display:flex;flex-direction:column;gap:18px}
.ph-dato .k{font-weight:600;font-size:1.25rem;color:var(--tinta);display:block;line-height:1.25}
.ph-dato .d{font-size:.875rem;color:var(--suave);margin:4px 0 0;line-height:1.5}

/* rejilla de productos */
.prods{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1px;
  background:var(--linea);border:1px solid var(--linea)}
.prod{background:var(--papel);padding:clamp(26px,3vw,38px);text-decoration:none;
  display:flex;flex-direction:column;transition:background-color .5s var(--ease)}
.prod:hover{background:var(--hueso)}
.prod .et{font-size:.8125rem;letter-spacing:.14em;text-transform:uppercase;color:var(--rojo);margin:0 0 14px}
.prod h3{margin-bottom:10px}
.prod p{font-size:1rem;color:var(--suave);margin:0 0 18px;flex:1;line-height:1.6}
.prod .ob{font-size:.875rem;color:var(--tinta);border-top:1px solid var(--linea-cl);
  padding-top:14px;margin:0;display:flex;gap:8px;align-items:baseline}
.prod .ob b{color:var(--rojo);font-weight:600}

/* franja de dos columnas texto+dato */
.dupla{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,5vw,72px);align-items:start}

/* lista de riesgos */
.riesgos{list-style:none;padding:0;margin:0;border-top:1px solid var(--linea)}
.riesgos li{padding:20px 0;border-bottom:1px solid var(--linea);display:grid;
  grid-template-columns:28px 1fr;gap:16px;align-items:baseline}
.riesgos li::before{content:"";width:7px;height:7px;background:var(--rojo);
  border-radius:50%;transform:translateY(-2px)}
.riesgos strong{font-weight:500;font-size:1.1rem;
  color:var(--tinta);display:block;margin-bottom:3px}
.riesgos span{font-size:1rem;color:var(--suave);line-height:1.55}

/* bloque de asesor */
.asesor{display:grid;grid-template-columns:120px 1fr;gap:26px;align-items:center;
  background:var(--hueso);border:1px solid var(--linea);padding:clamp(24px,3vw,34px)}
.asesor .f{aspect-ratio:1;background:var(--arena);display:flex;align-items:center;
  justify-content:center;color:#655C50;font-size:.75rem;text-align:center;padding:10px}
.asesor .n{font-size:1.3rem;color:var(--tinta);display:block}
.asesor .c{font-size:1rem;color:var(--suave);margin:4px 0 14px}

/* FAQ */
.faq{border-top:1px solid var(--linea)}
.faq details{border-bottom:1px solid var(--linea)}
.faq summary{padding:24px 0;font-size:1.15rem;color:var(--tinta);
  cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;align-items:baseline}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--rojo);font-size:1.3rem;flex:none;font-family:var(--f)}
.faq details[open] summary::after{content:"–"}
.faq .r{padding:0 0 24px;margin:0;font-size:1rem;color:var(--suave);max-width:70ch;line-height:1.65}

/* cta de cierre */
.cierre{background:var(--tinta);color:#C6C3BF;text-align:center}
.cierre h2{color:#fff;max-width:18ch;margin:0 auto 20px}
.cierre h2 em{color:var(--rojo-cl)}
.cierre p{max-width:52ch;margin:0 auto 32px;color:#A5A29E}
.cierre .b{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

@media(max-width:940px){
  .ph-g,.dupla{grid-template-columns:1fr;gap:34px}
  .asesor{grid-template-columns:90px 1fr;gap:18px}
}

/* ═══════════════════════════════════════════════════════════════
   MODO SIN FOTOGRAFÍA — bloque temporal
   Mientras no haya imágenes reales, los marcadores grises se ven
   como error, no como pendiente. Esto los oculta y deja las tarjetas
   con una forma que se lee intencional.
   ELIMINAR ESTE BLOQUE COMPLETO cuando lleguen las fotos.
   ═══════════════════════════════════════════════════════════════ */

/* equipo: YA TIENE FOTOS REALES — retratos B/N, encuadre DNI */

/* hero: YA TIENE IMAGEN REAL */

/* asesor de página de sector: sin retrato, solo el bloque de contacto */
.asesor{grid-template-columns:1fr}
.asesor .f{display:none}

/* aseguradoras: los marcadores vacíos restan más de lo que suman */
.aseg{display:none}

/* el botón de joinchat se movió a la izquierda: los dos conviven */

/* ── retratos del equipo ── B/N, encuadre DNI, 3:4 ── */
.per .foto{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;
  background:var(--arena);margin-bottom:16px;filter:grayscale(1) contrast(1.02)}
.per{border-top:0;padding-top:0}
.per .nom{font-size:1.15rem}

/* ═══════════════ BLOG ═══════════════ */
.entradas{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1px;
  background:var(--linea);border:1px solid var(--linea)}
.entrada{background:var(--papel);padding:clamp(26px,3vw,36px);text-decoration:none;
  display:flex;flex-direction:column;transition:background-color .5s var(--ease)}
.entrada:hover{background:var(--hueso)}
.entrada .fecha{font-size:.875rem;color:var(--suave);margin:0 0 12px;
  letter-spacing:.04em;text-transform:uppercase}
.entrada h2{font-size:1.375rem;line-height:1.3;margin-bottom:12px;letter-spacing:-.01em}
.entrada .resumen{font-size:1rem;color:var(--suave);line-height:1.6;margin:0 0 20px;flex:1}
.entrada .mas{color:var(--rojo);font-weight:500;font-size:1rem;display:inline-flex;gap:8px;align-items:center}
.entrada .miniatura{aspect-ratio:16/9;object-fit:cover;width:100%;margin:-1px -1px 22px;
  width:calc(100% + 2px);background:var(--arena)}

/* paginación */
.paginacion{display:flex;gap:8px;justify-content:center;margin-top:48px;flex-wrap:wrap}
.paginacion .page-numbers{padding:11px 17px;border:1px solid var(--linea);text-decoration:none;
  font-size:1rem;min-width:46px;text-align:center;
  transition:background-color .35s var(--ease),color .35s var(--ease)}
.paginacion .page-numbers:hover{background:var(--tinta);color:#fff;border-color:var(--tinta)}
.paginacion .current{background:var(--rojo);color:#fff;border-color:var(--rojo)}

/* ═══════════════ ARTÍCULO Y DOCUMENTO LEGAL ═══════════════ */
.doc{max-width:72ch;margin:0 auto}
.doc-cab{border-bottom:1px solid var(--linea);padding-bottom:clamp(28px,4vw,40px);
  margin-bottom:clamp(32px,4vw,48px)}
.doc-cab .fecha{font-size:.875rem;color:var(--suave);margin:0 0 16px}
.doc h2{font-size:1.5rem;margin:clamp(36px,4vw,52px) 0 14px;letter-spacing:-.01em}
.doc h3{font-size:1.2rem;margin:32px 0 10px}
.doc p{margin:0 0 1.2em;line-height:1.7}
.doc ul,.doc ol{margin:0 0 1.4em;padding-left:22px;line-height:1.7}
.doc li{margin-bottom:.5em}
.doc a{color:var(--rojo);text-decoration:none;border-bottom:1px solid rgba(213,0,50,.35)}
.doc a:hover{border-color:var(--rojo)}
.doc blockquote{margin:32px 0;padding:0 0 0 28px;color:var(--tinta);font-size:1.1rem;
  position:relative}
.doc blockquote::before{content:"";position:absolute;left:0;top:.55em;
  width:14px;height:1px;background:var(--rojo)}
.doc img{margin:32px 0}
.doc table{width:100%;border-collapse:collapse;margin:28px 0;font-size:1rem}
.doc th,.doc td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--linea)}
.doc th{font-weight:600;color:var(--tinta);border-bottom-color:var(--gris)}

/* marcador de contenido que falta completar */
.pendiente{background:var(--rojo-luz);padding:18px 22px;margin:22px 0;font-size:1rem;
  color:var(--tinta);border-radius:2px}
.pendiente strong{color:var(--rojo)}

/* ── imagen del hero ── PNG con alfa: sin caja, la gente flota sobre el fondo ── */
.hero-fig{position:relative;aspect-ratio:auto;background:none;overflow:visible;
  display:flex;align-items:flex-end;justify-content:center}
.hero-fig img{width:100%;height:auto;max-width:520px}
@media(max-width:940px){
  .hero-fig img{max-width:380px;margin:0 auto}
}

/* ── el menú de WordPress sale como lista: la aplanamos ── */
/* selector específico: Hello Elementor estiliza 'nav ul' y ganaba por especificidad */
header nav ul.zolid-menu{display:flex;gap:32px;list-style:none;margin:0;padding:0;
  align-items:center;flex-direction:row}
header nav ul.zolid-menu li{margin:0;padding:0;display:block}
header nav ul.zolid-menu li::before,header nav ul.zolid-menu li::marker{content:none;display:none}
header nav .current-menu-item>a{color:var(--tinta)}
header nav .current-menu-item>a::after{right:0}
