/*
Theme Name: Portal de Reclamos
Theme URI: https://portaldereclamos.pe/
Author: Portal de Reclamos
Author URI: https://portaldereclamos.pe/
Description: Tema personalizado para Portal de Reclamos — Libro de Reclamaciones Virtual para empresas en Perú. Convertido desde el sitio HTML estático original.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: portal-de-reclamos
*/

/* ============================================================
   SISTEMA CORPORATIVO — PORTAL DE RECLAMOS
   Navy institucional + azul primario + acento dorado
   ============================================================ */
:root{
  --navy:#0B2540;
  --navy-2:#0E3050;
  --navy-3:#143A5F;
  --blue:#1A56A0;
  --blue-h:#123F78;
  --blue-soft:#EDF3FB;
  --blue-line:#C6D8EE;
  --gold:#C79A3B;
  --gold-soft:#F7EFD9;
  --ink:#0B2540;
  --text:#3D4E63;
  --muted:#5A6A7E;
  --line:#E3E9F1;
  --line-2:#D3DCE7;
  --bg:#FFFFFF;
  --bg-soft:#F5F7FA;
  --green:#0E7C5B;
  --green-soft:#E7F4EF;
  --amber:#B07514;
  --amber-soft:#FBF3E1;
  --red:#B4382E;
  --red-soft:#FBECEA;
  --sans:'IBM Plex Sans',-apple-system,sans-serif;
  --mono:'IBM Plex Mono',monospace;
  --serif:Georgia,'Times New Roman',serif;
  --shadow-1:0 1px 2px rgba(11,37,64,.06),0 4px 14px rgba(11,37,64,.07);
  --shadow-2:0 2px 6px rgba(11,37,64,.08),0 18px 44px -12px rgba(11,37,64,.18);
  --shadow-3:0 4px 10px rgba(11,37,64,.10),0 32px 70px -18px rgba(11,37,64,.28);
  --r:8px;
  --ancho:1200px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{background:var(--bg);color:var(--text);font:400 16px/1.65 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;color-scheme:light}
::selection{background:var(--blue);color:#fff}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:3px}
img{max-width:100%;display:block}
button{font-family:inherit;cursor:pointer;background:none;border:none;color:inherit}
a{color:inherit;text-decoration:none}
.skip-link{position:fixed;left:1rem;top:1rem;z-index:999;transform:translateY(-180%);background:var(--navy);color:#fff;padding:.7rem 1rem;border-radius:7px;box-shadow:var(--shadow-2);font-weight:600}
.skip-link:focus{transform:none}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.cont{max-width:var(--ancho);margin:0 auto;padding:0 clamp(20px,4vw,44px)}
i[data-lucide]{width:1em;height:1em;flex:none}
.mono{font-family:var(--mono)}

/* ---------- Reveal ---------- */
[data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.6,.2,1),transform .7s cubic-bezier(.2,.6,.2,1)}
[data-reveal].in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  [data-reveal]{opacity:1;transform:none;transition:none}
  *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* ---------- Encabezados de sección ---------- */
.sec{padding:clamp(72px,9vw,116px) 0}
.sec.soft{background:var(--bg-soft)}
.sec-head{max-width:760px;margin-bottom:clamp(40px,5vw,60px)}
.kicker{display:inline-flex;align-items:center;gap:.6rem;font:600 11.5px/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--blue);margin-bottom:1.1rem}
.kicker::before{content:"";width:26px;height:2px;background:var(--gold)}
.kicker.on-dark{color:#8FB4E0}
.kicker.on-dark::before{background:var(--gold)}
h1,h2,h3{color:var(--ink)}
h2.t{font:600 clamp(1.8rem,3.4vw,2.6rem)/1.15 var(--sans);letter-spacing:-.02em}
.sec-head p{margin-top:1rem;font-size:1.05rem;max-width:60ch}
.sec-head.center{margin-left:auto;margin-right:auto;text-align:center}
.sec-head.center p{margin-left:auto;margin-right:auto}

/* ---------- Botones ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;font:600 14.5px/1 var(--sans);padding:.95rem 1.5rem;border-radius:6px;border:1px solid transparent;transition:background .2s,border-color .2s,color .2s,box-shadow .2s,transform .12s;white-space:nowrap}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--blue);color:#fff;box-shadow:var(--shadow-1)}
.btn-primary:hover{background:var(--blue-h)}
.btn-navy{background:var(--navy);color:#fff}
.btn-navy:hover{background:var(--navy-3)}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line-2)}
.btn-ghost:hover{border-color:var(--navy);background:#fff;box-shadow:var(--shadow-1)}
.btn-white{background:#fff;color:var(--navy)}
.btn-white:hover{background:var(--blue-soft)}
.btn-outline-w{background:transparent;color:#fff;border-color:rgba(255,255,255,.4)}
.btn-outline-w:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.btn-lg{padding:1.1rem 1.8rem;font-size:15.5px}
.btn[disabled]{opacity:.55;cursor:wait}
.btn:focus-visible,.hamb:focus-visible,.copy-btn:focus-visible,.prod-tab:focus-visible,.calc-btn:focus-visible{outline:3px solid rgba(26,86,160,.24);outline-offset:2px}
.link-arrow{display:inline-flex;align-items:center;gap:.45rem;font:600 14.5px/1 var(--sans);color:var(--blue);transition:gap .2s}
.link-arrow:hover{gap:.7rem}

/* ============================================================
   BARRA SUPERIOR + NAV
   ============================================================ */
.topbar{background:var(--navy);color:rgba(255,255,255,.85);font:500 11.5px/1 var(--mono);letter-spacing:.06em}
.topbar-in{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;height:38px}
.topbar .tb-left{display:flex;align-items:center;gap:.55rem;min-width:0}
.topbar .tb-left i{width:13px;height:13px;color:var(--gold)}
.topbar .tb-left span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.topbar .tb-right{display:flex;gap:1.6rem;align-items:center;flex:none}
.topbar a,.topbar button{display:inline-flex;align-items:center;gap:.45rem;color:rgba(255,255,255,.75);transition:color .2s;font:inherit;letter-spacing:inherit}
.topbar a:hover,.topbar button:hover{color:#fff}
.topbar i{width:13px;height:13px}
@media(max-width:760px){.topbar .tb-right{display:none}}

header.nav{position:sticky;top:0;z-index:60;background:rgba(255,255,255,0);border-bottom:1px solid transparent;transition:background .25s,border-color .25s,box-shadow .25s}
header.nav.scrolled{background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-color:var(--line);box-shadow:0 4px 20px rgba(11,37,64,.05)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:104px;gap:1.5rem}
.logo{display:block;width:224px;max-width:100%;flex:none}
.logo-img{width:100%;height:auto;object-fit:contain}
nav.links{display:flex;gap:1.25rem;align-items:center}
nav.links a{font:500 14.5px/1 var(--sans);color:var(--text);padding:.5rem 0;position:relative;transition:color .2s}
nav.links a::after{content:"";position:absolute;left:0;bottom:2px;width:100%;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .22s}
nav.links a:hover,nav.links a.act{color:var(--ink)}
nav.links a:hover::after,nav.links a.act::after{transform:scaleX(1)}
.nav-cta{display:flex;gap:.8rem;align-items:center;flex:none}
.nav-cta .ingresar{font:600 14px/1 var(--sans);color:var(--text);padding:.7rem .8rem;border-radius:6px;display:inline-flex;align-items:center;gap:.45rem}
.nav-cta .ingresar:hover{color:var(--blue);background:var(--blue-soft)}
.hamb{display:none;width:44px;height:44px;flex:none;place-items:center;border:1px solid var(--line-2);border-radius:6px}
.hamb i{width:20px;height:20px}
@media(max-width:1180px){nav.links,.nav-cta .ingresar,.nav-cta .btn{display:none}.hamb{display:grid}}
@media(max-width:560px){.nav-in{height:92px;gap:1rem}.nav .logo,.mpanel .logo{width:196px;max-width:calc(100vw - 112px)}}

.mpanel{position:fixed;inset:0;background:#fff;z-index:80;padding:1.2rem clamp(20px,5vw,40px) 2.5rem;display:none;flex-direction:column;overflow-y:auto}
.mpanel.abierto{display:flex}
.mpanel .cab{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:104px;flex:none;margin-bottom:1rem}
.mpanel a.ml{font:600 1.35rem/1.2 var(--sans);color:var(--ink);padding:1.05rem 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}
.mpanel a.ml i{width:18px;height:18px;color:var(--muted)}
.mpanel .mcta{margin-top:auto;padding-top:2rem;display:grid;gap:.8rem}

/* ============================================================
   HERO
   ============================================================ */
.hero{position:relative;overflow:hidden;background:#fff}
.hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:56px 56px;opacity:.35;mask-image:radial-gradient(ellipse 90% 80% at 50% 0%,#000 30%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse 90% 80% at 50% 0%,#000 30%,transparent 75%);pointer-events:none}
.hero-grid{position:relative;display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(2.5rem,5vw,4.5rem);align-items:center;padding:clamp(56px,7vw,92px) clamp(20px,4vw,44px) clamp(64px,7vw,96px)}
.hero-grid>*{min-width:0}
.badge-norma{display:inline-flex;align-items:center;gap:.6rem;background:#fff;border:1px solid var(--line-2);border-radius:100px;padding:.5rem .95rem .5rem .6rem;font:600 11.5px/1 var(--mono);letter-spacing:.08em;color:var(--navy);box-shadow:var(--shadow-1);margin-bottom:1.6rem}
.badge-norma .b-ico{width:22px;height:22px;border-radius:50%;background:var(--green-soft);color:var(--green);display:grid;place-items:center}
.badge-norma .b-ico i{width:12px;height:12px}
h1{font:700 clamp(2.35rem,4.7vw,3.6rem)/1.08 var(--sans);letter-spacing:-.028em}
h1 .hl{color:var(--blue);position:relative;white-space:nowrap}
h1 .hl::after{content:"";position:absolute;left:0;right:0;bottom:.04em;height:.14em;background:var(--gold-soft);z-index:-1}
.hero p.sub{margin:1.4rem 0 2rem;font-size:clamp(1rem,1.35vw,1.14rem);max-width:52ch}
.hero p.sub b{color:var(--ink);font-weight:600}
.hero-ctas{display:flex;gap:.9rem;flex-wrap:wrap}
.hero-meta{display:flex;gap:1.5rem;flex-wrap:wrap;margin-top:1.7rem;padding-top:1.5rem;border-top:1px solid var(--line)}
.hero-meta span{display:inline-flex;align-items:center;gap:.5rem;font:500 12.5px/1 var(--mono);color:var(--muted)}
.hero-meta i{width:14px;height:14px;color:var(--green)}

/* ---------- Mockup de producto ---------- */
.mock-zone{position:relative;justify-self:end;width:min(560px,100%)}
.browser{background:#fff;border:1px solid var(--line-2);border-radius:12px;box-shadow:var(--shadow-3);overflow:hidden}
.browser-bar{display:flex;align-items:center;gap:1rem;padding:.7rem .95rem;border-bottom:1px solid var(--line);background:var(--bg-soft)}
.browser-bar .dots{display:flex;gap:6px}
.browser-bar .dots span{width:10px;height:10px;border-radius:50%;background:var(--line-2)}
.url-pill{flex:1;min-width:0;display:flex;align-items:center;gap:.5rem;background:#fff;border:1px solid var(--line);border-radius:6px;padding:.4rem .75rem;font:500 12px/1 var(--mono);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.url-pill i{width:12px;height:12px;color:var(--green)}
.browser-cuerpo{display:grid;grid-template-columns:150px 1fr;min-height:400px}
.mock-side{background:var(--navy);color:rgba(255,255,255,.75);padding:1.1rem .8rem;display:flex;flex-direction:column;gap:.2rem}
.mock-side .ms-logo{display:block;background:#fff;border-radius:5px;padding:4px;margin-bottom:.8rem}
.mock-side .ms-logo img{width:100%;height:auto}
.mock-side .ms-item{display:flex;align-items:center;gap:.55rem;font:500 12.5px/1 var(--sans);padding:.55rem .6rem;border-radius:5px}
.mock-side .ms-item i{width:14px;height:14px;opacity:.7}
.mock-side .ms-item.act{background:rgba(255,255,255,.12);color:#fff}
.mock-side .ms-item.act i{color:var(--gold);opacity:1}
.mock-main{padding:1.1rem 1.2rem;background:#fff}
.mock-tit{display:flex;justify-content:space-between;align-items:center;margin-bottom:.9rem}
.mock-tit h4{font:600 1.05rem/1 var(--sans);color:var(--ink)}
.mock-tit .msearch{display:flex;align-items:center;gap:.45rem;border:1px solid var(--line);border-radius:6px;padding:.42rem .7rem;font:400 11.5px/1 var(--mono);color:var(--muted);min-width:130px}
.mock-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-bottom:1rem}
.mock-kpi{border:1px solid var(--line);border-radius:8px;padding:.7rem .8rem}
.mock-kpi .k{font:500 9.5px/1 var(--mono);letter-spacing:.1em;color:var(--muted);display:block;margin-bottom:.4rem}
.mock-kpi .v{font:600 1.35rem/1 var(--sans);color:var(--ink);letter-spacing:-.02em}
.mock-kpi .v small{font:500 .68rem var(--mono);color:var(--green)}
.mock-kpi.warn .v{color:var(--amber)}
.tabla{width:100%;border-collapse:collapse}
.tabla th{font:600 9.5px/1 var(--mono);letter-spacing:.1em;color:var(--muted);text-align:left;padding:.5rem .45rem;border-bottom:1px solid var(--line-2)}
.tabla td{padding:.62rem .45rem;border-bottom:1px solid var(--line);font:500 12px/1.3 var(--mono);color:var(--text);vertical-align:middle}
.tabla td.nombre{font:500 12.5px/1.3 var(--sans);color:var(--ink)}
.pill{display:inline-flex;align-items:center;gap:.35rem;font:600 9.5px/1 var(--mono);letter-spacing:.06em;padding:.34rem .55rem;border-radius:100px;border:1px solid}
.pill::before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}
.pill.g{color:var(--green);background:var(--green-soft);border-color:transparent}
.pill.a{color:var(--amber);background:var(--amber-soft);border-color:transparent}
.pill.b{color:var(--blue);background:var(--blue-soft);border-color:transparent}
.pill.r{color:var(--red);background:var(--red-soft);border-color:transparent}
.plazo-bar{width:74px;height:5px;background:var(--line);border-radius:3px;overflow:hidden;margin-top:4px}
.plazo-bar span{display:block;height:100%;background:var(--blue);border-radius:3px}
.plazo-bar span.alerta{background:var(--amber)}

/* notificación flotante viva */
.mock-notif{position:absolute;left:-18px;bottom:26px;display:flex;gap:.8rem;align-items:center;background:#fff;border:1px solid var(--line-2);border-radius:10px;box-shadow:var(--shadow-2);padding:.85rem 1.05rem;opacity:0;transform:translateY(14px);transition:opacity .45s,transform .45s;max-width:290px}
.mock-notif.ver{opacity:1;transform:none}
.mock-notif .ico{width:34px;height:34px;border-radius:8px;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center;flex:none}
.mock-notif .ico i{width:16px;height:16px}
.mock-notif .tt{font:600 12.5px/1.3 var(--sans);color:var(--ink)}
.mock-notif .ts{font:400 10.5px/1.4 var(--mono);color:var(--muted)}
.mock-chip{position:absolute;top:-16px;right:14px;display:flex;align-items:center;gap:.5rem;background:var(--navy);color:#fff;border-radius:8px;padding:.6rem .9rem;font:600 11px/1 var(--mono);letter-spacing:.06em;box-shadow:var(--shadow-2)}
.mock-chip i{width:14px;height:14px;color:var(--gold)}

@media(max-width:1100px){
  .hero-grid{grid-template-columns:1fr}
  .mock-zone{justify-self:center;width:min(560px,100%)}
  .mock-notif{left:8px}
}
@media(max-width:560px){
  .hero-grid{padding-top:44px;padding-bottom:56px}
  h1{font-size:clamp(2rem,9vw,2.35rem)}
  h1 .hl{white-space:normal}
  .badge-norma{max-width:100%;font-size:10.5px;line-height:1.35;white-space:normal}
  .hero-ctas{display:grid;grid-template-columns:1fr}
  .hero-ctas .btn{width:100%}
  .hero-meta{display:grid;grid-template-columns:1fr;gap:.9rem}
  .browser-cuerpo{grid-template-columns:1fr}
  .mock-side{display:none}
  .mock-kpis{grid-template-columns:1fr 1fr}
  .mock-notif{position:static;opacity:1;transform:none;margin-top:.9rem;max-width:none}
  .mock-chip{display:none}
}

/* ---------- Banda de cumplimiento ---------- */
.cumple{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg-soft)}
.cumple-in{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:0}
.cumple-item{display:flex;align-items:center;justify-content:center;gap:.65rem;min-width:0;padding:1.1rem .8rem;font:600 11.5px/1.35 var(--mono);letter-spacing:.045em;color:var(--navy);border-left:1px solid var(--line-2)}
.cumple-item:first-child{border-left:none}
.cumple-item i{width:17px;height:17px;color:var(--blue);flex:none}
.cumple-item span{min-width:0}
.cumple-item small{display:block;font:400 9.5px/1.35 var(--mono);color:var(--muted);letter-spacing:.045em;margin-top:.12rem}
@media(max-width:760px){.cumple-in{grid-template-columns:1fr 1fr}.cumple-item{justify-content:flex-start;border-left:none;border-top:1px solid var(--line-2);padding:.85rem 1rem}.cumple-item:nth-child(-n+2){border-top:none}.cumple-item:nth-child(even){border-left:1px solid var(--line-2)}}
@media(max-width:480px){.cumple-in{grid-template-columns:1fr}.cumple-item:nth-child(n){border-left:none;border-top:1px solid var(--line-2)}.cumple-item:first-child{border-top:none}}

/* ============================================================
   MÉTRICAS
   ============================================================ */
.metricas{border-bottom:1px solid var(--line)}
.metricas-in{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border-left:1px solid var(--line);border-right:1px solid var(--line)}
.metrica{background:#fff;padding:2rem 1.8rem;text-align:center}
.metrica .num{font:600 clamp(2rem,3.4vw,2.7rem)/1 var(--sans);color:var(--navy);letter-spacing:-.03em;display:flex;align-items:baseline;justify-content:center;gap:.1rem}
.metrica .num .suf{font:600 1.1rem var(--sans);color:var(--blue)}
.metrica .lab{margin-top:.55rem;font:500 11.5px/1.5 var(--mono);letter-spacing:.1em;color:var(--muted);text-transform:uppercase}
@media(max-width:860px){.metricas-in{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.metricas-in{grid-template-columns:1fr}}

/* ============================================================
   CUMPLIMIENTO + CALCULADORA (sección navy)
   ============================================================ */
.norma-sec{background:var(--navy);border-top:4px solid var(--gold);color:#fff}
.norma-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2.5rem,5vw,5rem);align-items:start}
.norma-sec .t{color:#fff}
.norma-quote{margin:1.6rem 0 1.2rem;font:italic 500 clamp(1.15rem,1.9vw,1.45rem)/1.5 var(--serif);color:rgba(255,255,255,.92);border-left:3px solid var(--gold);padding-left:1.3rem}
.norma-firma{font:500 11.5px/1.7 var(--mono);letter-spacing:.1em;color:rgba(255,255,255,.75);margin-bottom:1.8rem}
.norma-firma b{color:#fff;font-weight:600}
.norma-puntos{display:grid;gap:1rem}
.norma-punto{display:flex;gap:.9rem;align-items:flex-start}
.norma-punto i{width:18px;height:18px;color:var(--gold);flex:none;margin-top:.25rem}
.norma-punto p{font-size:.94rem;color:rgba(255,255,255,.75)}
.norma-punto p b{color:#fff}
.calc-card{background:#fff;border-radius:12px;box-shadow:var(--shadow-3);overflow:hidden;color:var(--text)}
.calc-cab{background:var(--navy-2);padding:1.2rem 1.6rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}
.calc-cab h3{color:#fff;font:600 1.1rem/1.3 var(--sans);display:flex;align-items:center;gap:.6rem}
.calc-cab h3 i{width:18px;height:18px;color:var(--gold)}
.calc-cab span{font:500 10.5px/1 var(--mono);letter-spacing:.12em;color:rgba(255,255,255,.78)}
.calc-cuerpo{padding:1.6rem}
.calc-label{font:600 11px/1 var(--mono);letter-spacing:.14em;color:var(--muted);display:block;margin-bottom:.7rem}
.calc-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--line-2);border-radius:8px;overflow:hidden;margin-bottom:1.4rem}
.calc-seg button{font:600 13px/1.2 var(--sans);color:var(--text);padding:.85rem .4rem;background:#fff;border-left:1px solid var(--line-2);transition:background .2s,color .2s}
.calc-seg button:first-child{border-left:none}
.calc-seg button small{display:block;font:500 9.5px/1 var(--mono);color:var(--muted);margin-top:.3rem;letter-spacing:.06em}
.calc-seg button.sel{background:var(--navy);color:#fff}
.calc-seg button.sel small{color:var(--gold)}
.calc-out{border:1px solid var(--line);border-radius:10px;padding:1.3rem 1.4rem;background:var(--bg-soft)}
.calc-out .k{font:600 10.5px/1 var(--mono);letter-spacing:.14em;color:var(--muted);display:block;margin-bottom:.5rem}
.calc-uit{font:600 clamp(2rem,3.4vw,2.6rem)/1 var(--sans);color:var(--navy);letter-spacing:-.03em;display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap}
.calc-uit .uit{font:600 1rem var(--mono);color:var(--blue)}
.calc-soles{margin-top:.4rem;font:500 13px/1.5 var(--mono);color:var(--text)}
.calc-bar{height:6px;background:var(--line);border-radius:3px;margin-top:1rem;overflow:hidden}
.calc-bar span{display:block;height:100%;width:100%;background:var(--gold);border-radius:3px;transform:scaleX(0);transform-origin:left;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.calc-nota{margin-top:1.1rem;font:400 11.5px/1.7 var(--mono);color:var(--muted);border-top:1px dashed var(--line-2);padding-top:.9rem}
@media(max-width:1024px){.norma-grid{grid-template-columns:1fr}}
@media(max-width:520px){.calc-seg{grid-template-columns:1fr}.calc-seg button{border-left:none!important;border-top:1px solid var(--line-2)}.calc-seg button:first-child{border-top:none}}

/* ============================================================
   PASOS
   ============================================================ */
.pasos-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem;counter-reset:paso}
.paso{position:relative;padding:1.7rem 1.5rem;border:1px solid var(--line);border-radius:10px;background:#fff;transition:border-color .25s,box-shadow .25s}
.paso:hover{border-color:var(--blue-line);box-shadow:var(--shadow-1)}
.paso .p-num{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:9px;background:var(--navy);color:#fff;font:600 15px/1 var(--mono);margin-bottom:1.1rem;position:relative}
.paso .p-num::after{content:"";position:absolute;top:50%;left:100%;width:calc(1.4rem + 2 * 1.5rem);height:1px;background:var(--line-2)}
.paso:last-child .p-num::after{display:none}
.paso .p-ico{position:absolute;top:1.4rem;right:1.3rem;color:var(--blue);width:20px;height:20px}
.paso h3{font:600 1.05rem/1.3 var(--sans);margin-bottom:.45rem}
.paso p{font-size:.9rem;color:var(--text)}
@media(max-width:1024px){.pasos-grid{grid-template-columns:1fr 1fr}.paso .p-num::after{display:none}}
@media(max-width:560px){.pasos-grid{grid-template-columns:1fr}}

/* ============================================================
   SHOWCASE DE PRODUCTO (pestañas)
   ============================================================ */
.prod-tabs{display:inline-flex;gap:.4rem;background:#fff;border:1px solid var(--line-2);border-radius:10px;padding:.4rem;margin-bottom:2.2rem;box-shadow:var(--shadow-1);flex-wrap:wrap}
.prod-tabs button{display:inline-flex;align-items:center;gap:.55rem;font:600 13.5px/1 var(--sans);color:var(--text);padding:.75rem 1.15rem;border-radius:7px;transition:background .2s,color .2s}
.prod-tabs button i{width:15px;height:15px}
.prod-tabs button.sel{background:var(--navy);color:#fff}
.prod-tabs button.sel i{color:var(--gold)}
.prod-view{display:none}
.prod-view.act{display:block;animation:vistaIn .4s cubic-bezier(.2,.7,.2,1)}
@keyframes vistaIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.prod-marco{background:#fff;border:1px solid var(--line-2);border-radius:14px;box-shadow:var(--shadow-2);overflow:hidden}
.prod-cab{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.3rem;background:var(--navy);color:#fff}
.prod-cab .pc-l{display:flex;align-items:center;gap:.6rem;font:600 12px/1 var(--mono);letter-spacing:.1em}
.prod-cab .pc-l i{width:15px;height:15px;color:var(--gold)}
.prod-cab .pc-r{font:400 11px/1 var(--mono);color:rgba(255,255,255,.75);letter-spacing:.06em}
.prod-cuerpo{padding:clamp(1.3rem,3vw,2.2rem)}
.prod-pie{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;border-top:1px solid var(--line);padding:1.05rem 1.3rem;background:var(--bg-soft)}
.prod-pie span{font:500 11px/1.5 var(--mono);letter-spacing:.08em;color:var(--muted);display:inline-flex;align-items:center;gap:.5rem}
.prod-pie i{width:13px;height:13px;color:var(--green)}

/* vista 1: formulario público */
.v1-grid{display:grid;grid-template-columns:250px 1fr;gap:clamp(1.5rem,3vw,2.5rem)}
.qr-card{border:1px solid var(--line);border-radius:10px;padding:1.3rem;text-align:center;background:var(--bg-soft)}
.qr-card .qr-box{width:132px;height:132px;margin:0 auto 1rem;background:#fff;border:1px solid var(--line-2);border-radius:8px;padding:8px}
.qr-card .qr-box svg{width:100%;height:100%}
.qr-card h5{font:600 .92rem/1.35 var(--sans);color:var(--ink);margin-bottom:.3rem}
.qr-card p{font:400 11px/1.6 var(--mono);color:var(--muted)}
.v1-url{display:flex;align-items:center;gap:.7rem;border:1px solid var(--line-2);background:#fff;border-radius:8px;padding:.7rem .95rem;margin-bottom:1.2rem;font:500 12.5px/1 var(--mono)}
.v1-url i{width:14px;height:14px;color:var(--green)}
.v1-url .u{flex:1;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.copy-btn{display:inline-flex;align-items:center;gap:.4rem;font:600 10.5px/1 var(--mono);letter-spacing:.06em;color:var(--blue);border:1px solid var(--blue-line);border-radius:6px;padding:.5rem .7rem;transition:background .2s,color .2s}
.copy-btn:hover{background:var(--blue);border-color:var(--blue);color:#fff}
.copy-btn i{width:12px;height:12px}
.mini-form .mf-lab{font:600 10px/1 var(--mono);letter-spacing:.12em;color:var(--muted);display:block;margin:.95rem 0 .4rem}
.mini-form .mf-lab:first-child{margin-top:0}
.mini-form .mf-input{border:1px solid var(--line-2);border-radius:7px;padding:.7rem .85rem;font:500 13.5px/1 var(--sans);color:var(--ink);background:#fff}
.mini-form .mf-input.ph{color:var(--muted);font-weight:400}
.mf-seg{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.mf-seg .opt{border:1px solid var(--line-2);border-radius:7px;padding:.7rem .85rem;font:500 12.5px/1.3 var(--sans);color:var(--text)}
.mf-seg .opt.sel{border-color:var(--blue);background:var(--blue-soft);color:var(--blue);font-weight:600}
.mf-btn{width:100%;margin-top:1.2rem;background:var(--navy);color:#fff;border-radius:7px;padding:.85rem;font:600 13.5px/1 var(--sans);display:flex;align-items:center;justify-content:center;gap:.5rem}
.mf-btn i{width:14px;height:14px}
@media(max-width:860px){.v1-grid{grid-template-columns:1fr}.qr-card{display:flex;gap:1.2rem;text-align:left;align-items:center}.qr-card .qr-box{margin:0;flex:none}}

/* vista 2: panel */
.v2-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin-bottom:1.2rem}
.v2-kpi{border:1px solid var(--line);border-radius:9px;padding:.9rem 1rem}
.v2-kpi .k{font:500 9.5px/1 var(--mono);letter-spacing:.1em;color:var(--muted);display:block;margin-bottom:.45rem}
.v2-kpi .v{font:600 1.5rem/1 var(--sans);color:var(--ink)}
.v2-kpi i{float:right;width:15px;height:15px;color:var(--blue)}
.v2-filtros{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}
.v2-filtros .f{font:600 11px/1 var(--mono);letter-spacing:.04em;border:1px solid var(--line-2);border-radius:100px;padding:.5rem .85rem;color:var(--text)}
.v2-filtros .f.sel{background:var(--navy);border-color:var(--navy);color:#fff}
.v2-filtros .f b{color:inherit;opacity:.65;font-weight:600}
@media(max-width:760px){.v2-kpis{grid-template-columns:1fr 1fr}}

/* vista 3: comprobante */
.v3-wrap{display:flex;justify-content:center}
.cert{width:min(520px,100%);border:1px solid var(--line-2);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-1)}
.cert-cab{background:var(--navy);color:#fff;padding:1rem 1.4rem;display:flex;justify-content:space-between;align-items:center}
.cert-cab .cl{font:700 1.05rem/1 var(--sans)}
.cert-cab .cr{font:500 9.5px/1.5 var(--mono);letter-spacing:.12em;color:rgba(255,255,255,.78);text-align:right}
.cert-titulo{text-align:center;font:600 10px/1 var(--mono);letter-spacing:.26em;color:var(--muted);padding:1.2rem 0 .5rem}
.cert-folio{text-align:center;font:600 1.65rem/1 var(--mono);letter-spacing:.04em;color:var(--blue);padding-bottom:1.1rem}
.cert-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem 1.4rem;border-top:1px solid var(--line);padding:1.1rem 1.4rem}
.cert-campo .k{font:500 9px/1 var(--mono);letter-spacing:.12em;color:var(--muted);display:block;margin-bottom:.3rem}
.cert-campo .v{font:600 12.5px/1.4 var(--sans);color:var(--ink)}
.cert-bajo{display:flex;gap:1.3rem;align-items:center;border-top:1px solid var(--line);padding:1.1rem 1.4rem}
.cert-qr{width:86px;height:86px;background:#fff;border:1px solid var(--line-2);border-radius:8px;padding:5px;flex:none}
.cert-qr svg{width:100%;height:100%}
.cert-plazo{flex:1;font:500 10px/1.8 var(--mono);letter-spacing:.08em;color:var(--muted);text-align:center}
.cert-pie{background:var(--bg-soft);border-top:1px solid var(--line);padding:.7rem 1.4rem;display:flex;justify-content:space-between;font:400 9.5px/1 var(--mono);letter-spacing:.1em;color:var(--muted)}

/* ============================================================
   CARACTERÍSTICAS (filas, no tarjetas)
   ============================================================ */
.caracts-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2.5rem,5vw,5rem);align-items:start}
.caracts-izq{position:sticky;top:120px}
.caracts-lista{display:grid}
.caract{display:grid;grid-template-columns:auto 1fr;gap:1.3rem;padding:1.5rem .4rem;border-top:1px solid var(--line);transition:background .2s}
.caract:last-child{border-bottom:1px solid var(--line)}
.caract:hover{background:var(--bg-soft)}
.caract .c-ico{width:42px;height:42px;border-radius:9px;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center;flex:none}
.caract .c-ico i{width:19px;height:19px}
.caract h3{font:600 1.02rem/1.35 var(--sans);margin-bottom:.3rem;display:flex;align-items:baseline;gap:.7rem}
.caract h3 .n{font:500 11px/1 var(--mono);color:var(--muted);letter-spacing:.08em}
.caract p{font-size:.92rem;color:var(--text)}
@media(max-width:1024px){.caracts-grid{grid-template-columns:1fr}.caracts-izq{position:static}}

.f-grupo{margin-bottom:1.1rem}
.f-grupo label{display:block;font:600 11px/1 var(--mono);letter-spacing:.12em;color:var(--text);margin-bottom:.5rem;text-transform:uppercase}
.f-grupo label .req{color:var(--red)}
.f-grupo input,.f-grupo select,.f-grupo textarea{width:100%;border:1px solid var(--line-2);border-radius:7px;background:#fff;padding:.85rem .95rem;font:500 14px/1.4 var(--sans);color:var(--ink);transition:border-color .2s,box-shadow .2s;appearance:none;border-radius:7px}
.f-grupo textarea{resize:vertical;min-height:100px}
.f-grupo select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236B7B90' stroke-width='2.4'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .9rem center}
.f-grupo input:focus,.f-grupo select:focus,.f-grupo textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(26,86,160,.14)}
.f-grupo input.err,.f-grupo select.err,.f-grupo textarea.err{border-color:var(--red);box-shadow:0 0 0 3px rgba(180,56,46,.12)}
.f-error{font:400 11.5px/1.4 var(--mono);color:var(--red);margin-top:.4rem;display:none}
.f-error.ver{display:block}
.f-fila{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media(max-width:560px){.f-fila{grid-template-columns:1fr}}

/* ============================================================
   TESTIMONIOS — CARRUSEL
   ============================================================ */
.quote-sec{background:var(--bg-soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}
.quote-in{max-width:980px;margin:0 auto}
.testi-head{text-align:center;max-width:720px;margin:0 auto 2rem}
.testi-head .q-mark{width:44px;height:44px;border-radius:10px;background:var(--navy);color:var(--gold);display:grid;place-items:center;margin:0 auto 1.2rem}
.testi-head .q-mark i{width:20px;height:20px}
.testi-head h2{font:600 clamp(1.7rem,3vw,2.35rem)/1.18 var(--sans);letter-spacing:-.02em}
.testi-head p{margin-top:.7rem;color:var(--muted);font-size:.95rem}
.testi-note{display:inline-flex;align-items:center;gap:.45rem;margin-top:.8rem;padding:.42rem .7rem;border:1px solid var(--line-2);border-radius:999px;background:#fff;font:500 10.5px/1 var(--mono);letter-spacing:.07em;color:var(--muted)}
.testi-note i{width:12px;height:12px;color:var(--blue)}
.testi-carousel{position:relative;background:#fff;border:1px solid var(--line-2);border-radius:16px;box-shadow:var(--shadow-2);overflow:hidden}
.testi-track{display:flex;transition:transform .55s cubic-bezier(.2,.7,.2,1);will-change:transform}
.testi-slide{min-width:100%;padding:clamp(2rem,5vw,3.6rem) clamp(1.5rem,6vw,4.8rem);text-align:center}
.quote-case{font:600 clamp(1.2rem,2.2vw,1.55rem)/1.3 var(--sans);color:var(--ink);margin-bottom:1rem}
.quote-txt{font:400 clamp(1rem,1.7vw,1.18rem)/1.7 var(--sans);color:var(--text);max-width:760px;margin:0 auto}
.quote-txt b{color:var(--blue);font-weight:500}
.quote-autor{margin-top:1.7rem;display:flex;align-items:center;justify-content:center;gap:.9rem}
.quote-autor .qa-av{width:46px;height:46px;border-radius:50%;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center;font:600 13px/1 var(--sans);flex:none}
.quote-autor .qa-n{font:600 14px/1.4 var(--sans);color:var(--ink);text-align:left}
.quote-autor .qa-c{font:400 11px/1.55 var(--mono);color:var(--muted);text-align:left;letter-spacing:.03em}
.testi-nav{display:flex;justify-content:center;align-items:center;gap:.8rem;padding:0 1.2rem 1.3rem}
.testi-arrow{width:44px;height:44px;border:1px solid var(--line-2);border-radius:8px;background:#fff;display:grid;place-items:center;color:var(--navy);transition:background .2s,border-color .2s,transform .15s}
.testi-arrow:hover{background:var(--blue-soft);border-color:var(--blue-line)}
.testi-arrow:active{transform:translateY(1px)}
.testi-arrow i{width:17px;height:17px}
.testi-dots{display:flex;align-items:center;justify-content:center;gap:.1rem}
.testi-dot{width:32px;height:32px;display:grid;place-items:center;background:transparent;border-radius:999px}
.testi-dot::after{content:"";width:22px;height:8px;border-radius:999px;background:var(--line-2);transform:scaleX(.364);transform-origin:center;transition:transform .25s,background .25s}
.testi-dot.act::after{transform:scaleX(1);background:var(--blue)}
@media(max-width:600px){
  .testi-slide{padding:2rem 1.25rem}
  .quote-autor{align-items:flex-start}
  .quote-autor .qa-c{font-size:10px}
}
@media(prefers-reduced-motion:reduce){.testi-track{transition:none}}

/* ============================================================
   TARIFAS
   ============================================================ */
.tarifa-cab{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;flex-wrap:wrap;margin-bottom:clamp(1.5rem,3vw,2rem)}
.planes{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:1rem;align-items:start}
.plan{border:1px solid var(--line-2);border-radius:12px;background:#fff;padding:1.5rem 1.4rem;display:flex;flex-direction:column;position:relative;transition:box-shadow .25s,border-color .25s,transform .25s}
.plan:hover{box-shadow:var(--shadow-2)}
.plan h3{font:600 1.15rem/1.2 var(--sans)}
.plan .para{font-size:.84rem;color:var(--muted);margin-top:.35rem;line-height:1.45;min-height:2.7em}
.plan .precio{display:flex;align-items:baseline;gap:.3rem;margin:1rem 0 .25rem}
.plan .precio.pop{animation:pop .35s}
@keyframes pop{0%{transform:scale(.95);opacity:.4}100%{transform:scale(1);opacity:1}}
.plan .precio .s{font:500 .92rem var(--mono);color:var(--muted)}
.plan .precio .num{font:600 2.35rem/1 var(--sans);color:var(--ink);letter-spacing:-.03em}
.plan .precio .per{font:400 11px/1 var(--mono);color:var(--muted)}
.plan .nota-periodo{font:400 10.5px/1.5 var(--mono);color:var(--muted)}
.plan ul{list-style:none;margin:1rem 0 1.2rem;display:grid;gap:.48rem;border-top:1px solid var(--line);padding-top:1rem}
.plan ul li{display:flex;gap:.55rem;font-size:.84rem;line-height:1.4;color:var(--text);align-items:flex-start}
.plan ul li i{width:14px;height:14px;color:var(--green);flex:none;margin-top:.16rem}
.plan ul li strong{color:var(--ink);font-weight:600}
.plan .btn{width:100%;padding:.82rem 1rem;font-size:14px}
.plan.destacado{border:2px solid var(--navy);background:linear-gradient(180deg,var(--blue-soft) 0,#fff 21%);box-shadow:var(--shadow-2);padding-top:1.8rem;transform:translateY(-5px)}
.plan.destacado:hover{box-shadow:var(--shadow-3);transform:translateY(-7px)}
.plan .tag{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:var(--gold);color:var(--navy);font:600 9.8px/1 var(--mono);letter-spacing:.13em;padding:.38rem .7rem;border-radius:100px;white-space:nowrap}
.plan.destacado .precio .num{color:var(--navy)}
.incluido-planes{margin-top:1.1rem;padding:.75rem .95rem;border:1px solid var(--blue-line);border-radius:9px;background:var(--blue-soft);text-align:center;color:var(--navy);font-size:.82rem;line-height:1.55}
.incluido-planes strong{font-weight:600}
.tarifa-nota{margin-top:.75rem;text-align:center;font:400 10.5px/1.6 var(--mono);color:var(--muted);letter-spacing:.035em}
@media(max-width:1024px){.planes{grid-template-columns:1fr;max-width:480px;margin:0 auto;gap:1.2rem}.plan.destacado,.plan.destacado:hover{transform:none}.plan .para{min-height:0}}

/* ============================================================
   FAQ
   ============================================================ */
.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2.5rem,5vw,5rem);align-items:start}
.faq-izq{position:sticky;top:120px}
.faq-intro{margin-top:1rem}
.faq-planes{margin-top:1.25rem}
.faq-lista details{border-bottom:1px solid var(--line)}
.faq-lista details:first-child{border-top:1px solid var(--line)}
.faq-lista summary{list-style:none;display:block;padding:1.3rem .3rem;cursor:pointer;font:600 1.02rem/1.4 var(--sans);color:var(--ink);transition:color .2s}
.faq-lista summary h3{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;font:inherit;color:inherit}
.faq-lista summary:hover{color:var(--blue)}
.faq-lista summary::-webkit-details-marker{display:none}
.faq-lista summary .plus{position:relative;width:18px;height:18px;flex:none}
.faq-lista summary .plus::before,.faq-lista summary .plus::after{content:"";position:absolute;background:var(--blue);transition:transform .3s}
.faq-lista summary .plus::before{left:0;top:8px;width:18px;height:2px}
.faq-lista summary .plus::after{left:8px;top:0;width:2px;height:18px}
.faq-lista details[open] summary .plus::after{transform:rotate(90deg)}
.faq-lista details p{padding:0 3rem 1.4rem .3rem;color:var(--text);font-size:.94rem;max-width:64ch}
.faq-lista details p strong{color:var(--ink)}
.faq-lista p a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.faq-lista p a:hover{color:var(--blue-h)}
.faq-fuentes{margin-top:1.4rem;font-size:.82rem;color:var(--muted);line-height:1.6}
@media(max-width:560px){.faq-lista summary h3{gap:1rem}.faq-lista details p{padding-right:.3rem}}
@media(max-width:1024px){.faq-grid{grid-template-columns:1fr}.faq-izq{position:static}}

/* ============================================================
   CTA FINAL + FOOTER
   ============================================================ */
.cta-final{background:var(--navy);border-top:4px solid var(--gold);color:#fff}
.cta-in{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(2rem,5vw,4rem);align-items:center;padding:clamp(64px,8vw,100px) 0}
.cta-final h2{color:#fff;font:700 clamp(1.9rem,3.8vw,2.9rem)/1.15 var(--sans);letter-spacing:-.025em}
.cta-final h2 em{font-style:normal;color:var(--gold)}
.cta-final p{margin-top:1rem;color:rgba(255,255,255,.7);max-width:52ch}
.cta-acciones{display:flex;gap:.9rem;flex-wrap:wrap;align-items:center}
.cta-micro{margin-top:1.4rem;font:500 11.5px/1.8 var(--mono);letter-spacing:.08em;color:rgba(255,255,255,.75)}
.cta-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:1.6rem}
.cta-card .cc-t{font:600 11px/1 var(--mono);letter-spacing:.16em;color:var(--gold);margin-bottom:1rem}
.cta-card ul{list-style:none;display:grid;gap:.75rem}
.cta-card li{display:flex;gap:.7rem;align-items:flex-start;font-size:.92rem;color:rgba(255,255,255,.8)}
.cta-card li i{width:15px;height:15px;color:var(--gold);margin-top:.2rem}
@media(max-width:900px){.cta-in{grid-template-columns:1fr}}

footer{background:var(--navy-2);color:rgba(255,255,255,.75);border-top:1px solid rgba(255,255,255,.12);padding:3.5rem 0 2rem}
footer .logo{width:260px;padding:10px;background:#fff;border-radius:8px}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:2.5rem}
.foot-grid .desc{margin-top:1.1rem;font-size:.88rem;max-width:32ch;color:rgba(255,255,255,.72)}
.foot-grid h2{font:600 10.5px/1 var(--mono);letter-spacing:.18em;color:var(--gold);margin-bottom:1.1rem;text-transform:uppercase}
.foot-grid ul{list-style:none;display:grid;gap:.6rem}
.foot-grid ul a,.foot-grid ul span{font-size:.9rem;color:rgba(255,255,255,.7);display:inline-flex;align-items:center;gap:.5rem;transition:color .2s}
.foot-grid ul a:hover{color:#fff}
.foot-grid ul i{width:13px;height:13px;opacity:.5}
.foot-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:3rem;padding-top:1.6rem;display:flex;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;font:400 10.5px/1.8 var(--mono);color:rgba(255,255,255,.68);letter-spacing:.04em}
.foot-bottom .max{max-width:66ch}
@media(max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.foot-grid{grid-template-columns:1fr}}

/* ============================================================
   MODALES
   ============================================================ */
.modal-root{position:fixed;inset:0;z-index:100}
.modal-root[aria-hidden="true"]{display:none}
.modal-root.oculto{display:none}
.modal-overlay{position:absolute;inset:0;background:rgba(8,22,38,.62);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:1.2rem;overflow-y:auto}
.modal-caja{position:relative;background:#fff;border-radius:14px;width:min(480px,100%);padding:2rem;box-shadow:var(--shadow-3);animation:modalIn .35s cubic-bezier(.2,1.1,.3,1);margin:auto;max-height:calc(100vh - 2.4rem);overflow-y:auto}
@keyframes modalIn{from{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:none}}
.modal-x{position:absolute;top:.9rem;right:.9rem;width:36px;height:36px;display:grid;place-items:center;border-radius:7px;color:var(--muted);transition:background .2s,color .2s}
.modal-x:hover{background:var(--bg-soft);color:var(--ink)}
.modal-x i{width:18px;height:18px}
.modal-caja h3{font:600 1.45rem/1.2 var(--sans);margin-bottom:.4rem}
.modal-caja .sub{font-size:.92rem;color:var(--muted);margin-bottom:1.5rem}

/* toasts */
#toasts{position:fixed;bottom:1.4rem;right:1.4rem;z-index:200;display:flex;flex-direction:column;gap:.7rem;max-width:min(370px,calc(100vw - 2.8rem))}
.toast{background:var(--navy);color:#fff;border-radius:10px;padding:1rem 1.2rem;font:500 13.5px/1.5 var(--sans);box-shadow:var(--shadow-3);animation:toastIn .35s cubic-bezier(.2,1.1,.3,1);display:flex;gap:.75rem;align-items:flex-start;border-left:3px solid var(--green)}
.toast i{width:17px;height:17px;flex:none;margin-top:.15rem;color:#6FCFA9}
.toast.info{border-left-color:var(--gold)}
.toast.info i{color:var(--gold)}
.toast.saliendo{animation:toastOut .3s forwards}
@keyframes toastIn{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:none}}
@keyframes toastOut{to{opacity:0;transform:translateY(10px)}}


/* ---------- Contenido SEO / guía ---------- */
.seo-guide{background:#fff;border-top:1px solid var(--line)}
.seo-guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.seo-guide-item{border-top:3px solid var(--gold);background:var(--bg-soft);padding:1.45rem 1.35rem;border-radius:0 0 10px 10px}
.seo-guide-item h3{font:600 1.03rem/1.35 var(--sans);margin-bottom:.55rem}
.seo-guide-item p{font-size:.92rem;color:var(--text)}
.seo-reviewed{display:flex;align-items:center;gap:.55rem;margin-top:1rem;font:500 11px/1.5 var(--mono);letter-spacing:.04em;color:var(--muted)}
.seo-reviewed i{width:14px;height:14px;color:var(--green)}
.seo-guide-cta{margin-top:1.4rem;padding:1.2rem 1.35rem;border:1px solid var(--blue-line);background:var(--blue-soft);border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:1.2rem}
.seo-guide-cta p{font-size:.94rem}.seo-guide-cta strong{color:var(--ink)}.seo-guide-cta a:not(.btn){color:var(--blue);font-weight:600}
@media(max-width:900px){.seo-guide-grid{grid-template-columns:1fr}.seo-guide-cta{align-items:flex-start;flex-direction:column}}

/* ============================================================
   WORDPRESS — utilidades básicas (comentarios, galerías, alineación)
   ============================================================ */
.alignleft{float:left;margin:0 1.5rem 1rem 0}
.alignright{float:right;margin:0 0 1rem 1.5rem}
.aligncenter{display:block;margin:0 auto 1rem}
.wp-caption{max-width:100%}
.screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}


/* ============================================================
   FIX: alineación de acordeón FAQ (compatibilidad con anclas
   inyectadas por el plugin Easy Table of Contents dentro de los
   h3, que rompían el flex y centraban el texto)
============================================================ */
.faq-lista summary{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:1.5rem}
.faq-lista summary h3{display:block!important;text-align:left!important;flex:1 1 auto;min-width:0}

/* =========================================================
   LANDINGS ELEMENTOR - capa de diseno (body.pdr-landing)
   ========================================================= */
.pdr-landing .elementor{display:flex;flex-direction:column;font-family:var(--sans);color:var(--text);font-size:16px;line-height:1.65}
.pdr-landing .elementor > section{order:3}
.pdr-landing .elementor > section:first-of-type{order:1}
.pdr-landing .pdr-expo-wrap{order:2}
.pdr-landing .pdr-cumplimiento{order:4}
.pdr-landing .elementor > section:has(.elementor-widget-accordion){order:6}
.pdr-landing .elementor > section:has(.elementor-widget-button):not(:first-of-type){order:7}

.pdr-landing .elementor > section{padding-block:72px!important;background:var(--bg)}
.pdr-landing .elementor > section > .elementor-container,
.pdr-landing .pdr-cont{width:100%;max-width:var(--ancho);margin-inline:auto;padding-inline:20px}
.pdr-landing .elementor p{margin:0 0 16px}
.pdr-landing .elementor p:last-child{margin-bottom:0}
.pdr-landing .elementor h2.elementor-heading-title,
.pdr-landing .pdr-h2{color:var(--ink)!important;font-family:var(--sans)!important;font-size:clamp(24px,3vw,32px)!important;line-height:1.2!important;letter-spacing:-.015em;font-weight:600!important;text-wrap:balance;margin:0}

/* ---- botones ---- */
.pdr-landing .elementor .elementor-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:var(--r)!important;font-family:var(--sans)!important;font-size:16px!important;font-weight:600!important;padding:14px 26px!important;line-height:1.2!important;background:var(--blue)!important;color:#fff!important;transition:background .15s}
.pdr-landing .elementor .elementor-button:hover{background:var(--blue-h)!important}
.pdr-landing .elementor .elementor-button-text{font-weight:600!important}
.pdr-landing .elementor > section:first-of-type .elementor-button,
.pdr-landing .elementor > section:has(.elementor-widget-button):not(:first-of-type) .elementor-button{background:var(--gold)!important;color:#2A1D05!important}
.pdr-landing .elementor > section:first-of-type .elementor-button:hover,
.pdr-landing .elementor > section:has(.elementor-widget-button):not(:first-of-type) .elementor-button:hover{background:#B3862C!important}

/* ---- hero ---- */
.pdr-landing .elementor > section:first-of-type{background:var(--navy)!important;position:relative;overflow:hidden;padding-block:84px 96px!important}
.pdr-landing .elementor > section:first-of-type::after{content:"";position:absolute;inset:0;background:radial-gradient(900px 400px at 78% -12%,rgba(26,86,160,.45),transparent 70%);pointer-events:none}
.pdr-landing .elementor > section:first-of-type > .elementor-container{position:relative;z-index:1;max-width:840px}
.pdr-landing .elementor > section:first-of-type .elementor-widget-wrap{text-align:center}
.pdr-landing .elementor > section:first-of-type .elementor-widget-text-editor:first-child p{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)!important;margin:0 0 16px}
.pdr-landing .elementor > section:first-of-type h1.elementor-heading-title{color:#fff!important;font-family:var(--sans)!important;font-size:clamp(32px,4.4vw,50px)!important;line-height:1.14!important;letter-spacing:-.02em;font-weight:600!important;text-wrap:balance}
.pdr-landing .elementor > section:first-of-type .elementor-widget-text-editor:nth-child(3) p{color:#AEC3D8!important;font-size:18px;margin:18px auto 0;max-width:42em}
.pdr-landing .elementor > section:first-of-type .elementor-widget-button{margin-top:30px}

/* ---- tarjeta de expediente ---- */
.pdr-landing .pdr-expo-wrap{background:var(--bg-soft);border-bottom:1px solid var(--line);padding-bottom:64px}
.pdr-landing .pdr-expo-wrap .pdr-cont{display:grid;grid-template-columns:minmax(0,400px) minmax(0,1fr);gap:44px;align-items:center}
.pdr-landing .pdr-expo{position:relative;z-index:2;margin-top:-64px;background:#fff;border-radius:12px;box-shadow:var(--shadow-2)}
.pdr-landing .pdr-expo-top{background:var(--bg-soft);border-bottom:1px solid var(--line);border-radius:12px 12px 0 0;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.pdr-landing .pdr-expo-id{font-family:var(--mono);font-size:12.5px;font-weight:600;color:var(--ink);letter-spacing:.03em}
.pdr-landing .pdr-pill{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:4px 9px;border-radius:99px;background:var(--green-soft);color:var(--green)}
.pdr-landing .pdr-expo-body{padding:6px 18px}
.pdr-landing .pdr-expo dl{margin:0}
.pdr-landing .pdr-fila{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13.5px}
.pdr-landing .pdr-fila:last-child{border-bottom:0}
.pdr-landing .pdr-fila dt{color:var(--muted);margin:0}
.pdr-landing .pdr-fila dd{margin:0;color:var(--ink);font-weight:500;text-align:right}
.pdr-landing .pdr-mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
.pdr-landing .pdr-expo-plazo{background:var(--blue-soft);border-top:1px solid var(--blue-line);border-radius:0 0 12px 12px;padding:13px 18px;font-size:13px;color:var(--navy)}
.pdr-landing .pdr-expo-plazo b{font-family:var(--mono);font-weight:600}
.pdr-landing .pdr-expo-pie{color:var(--muted);font-size:17px;line-height:1.6;max-width:42ch;margin:0}

/* ---- prosa ---- */
.pdr-landing .elementor > section:nth-of-type(2) .elementor-widget-wrap,
.pdr-landing .elementor > section:has(.elementor-widget-text-editor):not(:has(.elementor-widget-heading)):not(:has(.elementor-widget-icon-box)):not(:has(.elementor-widget-button)):not(:has(.elementor-widget-icon-list)) .elementor-widget-wrap,
.pdr-landing .elementor > section:has(.elementor-widget-text-editor):not(:has(.elementor-widget-heading)):not(:has(.elementor-widget-icon-box)):not(:has(.elementor-widget-button)):not(:has(.elementor-widget-icon-list)) .elementor-widget-wrap{max-width:70ch;margin-inline:auto}
.pdr-landing .elementor > section:nth-of-type(2) p:first-child{font-size:19px;line-height:1.6;color:var(--ink)}
.pdr-landing .elementor > section:has(.elementor-widget-text-editor):not(:has(.elementor-widget-heading)):not(:has(.elementor-widget-icon-box)):not(:has(.elementor-widget-button)):not(:has(.elementor-widget-icon-list)),
.pdr-landing .elementor > section:has(.elementor-widget-text-editor):not(:has(.elementor-widget-heading)):not(:has(.elementor-widget-icon-box)):not(:has(.elementor-widget-button)):not(:has(.elementor-widget-icon-list)){padding-block:0 40px!important}
.pdr-landing .elementor > section:has(.elementor-widget-text-editor):not(:has(.elementor-widget-heading)):not(:has(.elementor-widget-icon-box)):not(:has(.elementor-widget-button)):not(:has(.elementor-widget-icon-list)){padding-top:64px!important}

/* ---- banda de pasos (3+4) ---- */
.pdr-landing .elementor > section:has(+ section .elementor-col-33 .elementor-widget-icon-box){background:var(--bg-soft)!important;border-top:1px solid var(--line);padding-block:72px 0!important;text-align:center}
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box){background:var(--bg-soft)!important;border-bottom:1px solid var(--line);padding-block:0 72px!important}
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) > .elementor-container{margin-top:40px;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;padding-inline:0}
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-column{border-right:1px solid var(--line)}
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-column:last-child{border-right:0}
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-widget-wrap{padding:34px 28px 32px!important;position:relative;text-align:left}
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-widget-wrap::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gold)}
.pdr-landing .pdr-paso-n{display:block;font-family:var(--mono);font-style:normal;font-size:11.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--gold);margin-bottom:9px}

/* ---- banda de beneficios (5+6) ---- */
.pdr-landing .elementor > section:has(+ section .elementor-col-25 .elementor-widget-icon-box){padding-block:76px 0!important;text-align:center}
.pdr-landing .elementor > section:has(.elementor-col-25 .elementor-widget-icon-box){padding-block:0 76px!important}
.pdr-landing .elementor > section:has(.elementor-col-25 .elementor-widget-icon-box) > .elementor-container{margin-top:42px;align-items:stretch}
.pdr-landing .elementor > section:has(.elementor-col-25 .elementor-widget-icon-box) .elementor-column:not(:last-child) .elementor-widget-wrap{padding-right:28px}
.pdr-landing .elementor > section:has(.elementor-col-25 .elementor-widget-icon-box) .elementor-widget-icon-box{border-top:2px solid var(--navy);padding-top:18px;text-align:left}

/* ---- icon-box comun ---- */
.pdr-landing .elementor-icon-box-wrapper{text-align:left}
.pdr-landing .elementor-icon-box-icon{margin:0 0 13px!important;text-align:left}
.pdr-landing .elementor-icon-box-icon .elementor-icon{color:var(--blue)!important;font-size:22px!important}
.pdr-landing .elementor-icon-box-icon svg{width:22px!important;height:22px!important;fill:var(--blue)!important}
.pdr-landing .elementor-icon-box-title{margin:0 0 8px!important}
.pdr-landing .elementor-icon-box-title span{display:block;color:var(--ink)!important;font-family:var(--sans)!important;font-size:17px!important;font-weight:600!important;line-height:1.28!important}
.pdr-landing .elementor-icon-box-description{color:var(--muted)!important;font-size:14.5px!important;line-height:1.6!important;margin:0!important}

/* ---- cumplimiento ---- */
.pdr-landing .pdr-cumplimiento{background:var(--bg-soft);border-block:1px solid var(--line);padding-block:76px}
.pdr-landing .pdr-eyebrow{font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin:0 0 14px}
.pdr-landing .pdr-plazos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:38px}
.pdr-landing .pdr-plazo{background:#fff;border:1px solid var(--line);border-left:3px solid var(--blue);border-radius:var(--r);padding:22px 24px}
.pdr-landing .pdr-n{font-family:var(--mono);font-size:30px;font-weight:600;color:var(--ink);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.pdr-landing .pdr-u{font-family:var(--mono);font-size:12px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-left:6px}
.pdr-landing .pdr-plazo p{font-size:14.5px;color:var(--muted);margin:8px 0 0}
.pdr-landing .pdr-nota{font-size:13px;color:var(--muted);margin:24px 0 0}
.pdr-landing .pdr-nota code{font-family:var(--mono);font-size:12.5px;color:var(--navy);background:#fff;border:1px solid var(--line);padding:2px 6px;border-radius:4px}

/* ---- faq ---- */
.pdr-landing .elementor > section:has(.elementor-widget-accordion){padding-block:76px!important}
.pdr-landing .elementor .elementor-accordion{margin-top:38px;border-top:1px solid var(--line)}
.pdr-landing .elementor .elementor-accordion-item{border:0!important;border-bottom:1px solid var(--line)!important;background:transparent!important}
.pdr-landing .elementor .elementor-tab-title{padding:20px 46px 20px 0!important;background:transparent!important;border:0!important;position:relative}
.pdr-landing .elementor .elementor-accordion-title{color:var(--ink)!important;font-family:var(--sans)!important;font-size:16.5px!important;font-weight:600!important;line-height:1.4!important}
.pdr-landing .elementor .elementor-tab-content{padding:0 46px 22px 0!important;border:0!important;background:transparent!important;color:var(--muted)!important;font-size:15px!important;line-height:1.65!important}
.pdr-landing .elementor .elementor-accordion-icon{position:absolute;right:8px;top:21px;width:auto!important;color:var(--blue)!important}

/* ---- cta final ---- */
.pdr-landing .elementor > section:has(.elementor-widget-button):not(:first-of-type){background:var(--navy-2)!important;padding-block:66px!important;position:relative;overflow:hidden;text-align:center}
.pdr-landing .elementor > section:has(.elementor-widget-button):not(:first-of-type)::after{content:"";position:absolute;inset:0;background:radial-gradient(700px 320px at 20% 115%,rgba(199,154,59,.20),transparent 70%);pointer-events:none}
.pdr-landing .elementor > section:has(.elementor-widget-button):not(:first-of-type) > .elementor-container{position:relative;z-index:1}
.pdr-landing .elementor > section:has(.elementor-widget-button):not(:first-of-type) h2.elementor-heading-title{color:#fff!important}
.pdr-landing .elementor > section:has(.elementor-widget-button):not(:first-of-type) p{color:#A6BDD4!important;font-size:16.5px}

/* ---- responsive ---- */
@media (max-width:980px){
  .pdr-landing .pdr-expo-wrap .pdr-cont{grid-template-columns:1fr;gap:26px}
  .pdr-landing .pdr-expo-pie{max-width:none}
  .pdr-landing .pdr-plazos{grid-template-columns:1fr}
  .pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-column{border-right:0;border-bottom:1px solid var(--line)}
  .pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-column:last-child{border-bottom:0}
  .pdr-landing .elementor > section:has(.elementor-col-25 .elementor-widget-icon-box) .elementor-column:not(:last-child) .elementor-widget-wrap{padding-right:0}
  .pdr-landing .elementor > section:has(.elementor-col-25 .elementor-widget-icon-box) .elementor-column .elementor-widget-wrap{padding-bottom:26px}
}
@media (max-width:560px){
  .pdr-landing .elementor > section{padding-block:52px!important}
  .pdr-landing .elementor > section:first-of-type{padding-block:64px 80px!important}
  .pdr-landing .elementor .elementor-button{width:100%}
}
@media (prefers-reduced-motion:reduce){.pdr-landing *{transition:none!important;animation:none!important}}

/* ---- LANDINGS: ajustes finos ---- */
.pdr-landing .elementor-icon-box-wrapper,
.pdr-landing .elementor-icon-box-content,
.pdr-landing .elementor-icon-box-title,
.pdr-landing .elementor-icon-box-title span,
.pdr-landing .elementor-icon-box-description{text-align:left!important}
.pdr-landing .elementor-icon-box-icon{text-align:left!important;margin-inline:0!important}
.pdr-landing .elementor .elementor-widget-text-editor:first-child:has(+ .elementor-widget-heading) p{font-family:var(--mono)!important;font-size:12px!important;font-weight:500!important;letter-spacing:.14em!important;text-transform:uppercase;color:var(--gold)!important;margin:0 0 14px!important;line-height:1.5!important}
.pdr-landing .elementor .elementor-accordion-icon,
.pdr-landing .elementor .elementor-accordion-icon i,
.pdr-landing .elementor .elementor-accordion-icon svg{color:var(--blue)!important;fill:var(--blue)!important}
.pdr-landing .elementor .elementor-accordion-icon svg{width:13px!important;height:13px!important}
.pdr-landing .pdr-cumplimiento .pdr-h2{max-width:24ch}


/* ---- LANDINGS: anclas bajo cabecera fija ---- */
.pdr-landing [id="pasos"],
.pdr-landing [id="producto"],
.pdr-landing [id="cumplimiento"],
.pdr-landing [id="faq"]{scroll-margin-top:96px}
@media (prefers-reduced-motion:no-preference){.pdr-landing{scroll-behavior:smooth}}


/* ---- LANDINGS: tarifas ---- */
.pdr-landing .pdr-tarifas{order:5;background:var(--bg);border-top:1px solid var(--line);padding-block:76px;scroll-margin-top:96px}
.pdr-landing .pdr-tar-sub{color:var(--muted);font-size:17px;margin:12px 0 0}
.pdr-landing .pdr-planes{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px;align-items:stretch}
.pdr-landing .pdr-plan{background:#fff;border:1px solid var(--line);border-radius:10px;padding:28px 26px;display:flex;flex-direction:column}
.pdr-landing .pdr-plan-dest{border-color:var(--navy);box-shadow:var(--shadow-2)}
.pdr-landing .pdr-plan h3{font-family:var(--mono);font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin:0}
.pdr-landing .pdr-precio{display:flex;align-items:baseline;gap:2px;margin:14px 0 0;color:var(--ink)}
.pdr-landing .pdr-moneda{font-size:19px;font-weight:600}
.pdr-landing .pdr-cifra{font-size:40px;font-weight:600;letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums}
.pdr-landing .pdr-periodo{font-family:var(--mono);font-size:12.5px;color:var(--muted);margin-left:6px}
.pdr-landing .pdr-plan ul{list-style:none;margin:22px 0 26px;padding:0;display:flex;flex-direction:column;gap:10px;flex:1}
.pdr-landing .pdr-plan li{position:relative;padding-left:24px;font-size:14.5px;color:var(--text);line-height:1.5}
.pdr-landing .pdr-plan li::before{content:"";position:absolute;left:2px;top:6px;width:11px;height:6px;border-left:2px solid var(--blue);border-bottom:2px solid var(--blue);transform:rotate(-45deg)}
.pdr-landing .pdr-btn{display:block;text-align:center;border-radius:var(--r);font-size:15.5px;font-weight:600;padding:13px 20px;text-decoration:none;transition:background .15s,border-color .15s}
.pdr-landing .pdr-btn-navy{background:var(--navy);color:#fff;border:1px solid var(--navy)}
.pdr-landing .pdr-btn-navy:hover{background:var(--navy-3);color:#fff}
.pdr-landing .pdr-btn-line{background:#fff;color:var(--navy);border:1px solid var(--line-2)}
.pdr-landing .pdr-btn-line:hover{border-color:var(--navy);background:var(--bg-soft);color:var(--navy)}
.pdr-landing .pdr-tar-nota{font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:26px 0 0;text-align:center}
@media (max-width:980px){.pdr-landing .pdr-planes{grid-template-columns:1fr}}

/* ======== LANDINGS: rediseno de beneficios y prosa ======== */

/* -- banda de beneficios en tarjetas -- */
.pdr-landing .elementor > section:has(+ section .elementor-col-25 .elementor-widget-icon-box){background:var(--bg)!important;border-top:1px solid var(--line);padding-block:78px 0!important}
.pdr-landing .elementor > section:has(.elementor-col-25 .elementor-widget-icon-box){background:var(--bg)!important;border-bottom:0;padding-block:0 78px!important}
.pdr-landing .elementor > section:has(.elementor-col-25 .elementor-widget-icon-box) > .elementor-container{margin-top:44px;align-items:stretch;flex-wrap:wrap}
.pdr-landing .elementor > section:has(.elementor-col-25 .elementor-widget-icon-box) .elementor-column{padding:0 11px;display:flex}
.pdr-landing .elementor > section:has(.elementor-col-25 .elementor-widget-icon-box) .elementor-column:not(:last-child) .elementor-widget-wrap{padding-right:26px}
.pdr-landing .elementor > section:has(.elementor-col-25 .elementor-widget-icon-box) .elementor-widget-wrap{flex:1;background:#fff!important;border:1px solid var(--line);border-radius:12px;padding:26px 24px 28px!important;align-content:flex-start;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.pdr-landing .elementor > section:has(.elementor-col-25 .elementor-widget-icon-box) .elementor-widget-wrap:hover{transform:translateY(-4px);box-shadow:var(--shadow-2);border-color:var(--blue-line)}
.pdr-landing .elementor > section:has(.elementor-col-25 .elementor-widget-icon-box) .elementor-widget-icon-box{border-top:0!important;padding-top:0!important}
.pdr-landing .elementor > section:has(.elementor-col-25 .elementor-widget-icon-box) .elementor-icon-box-icon{width:46px!important;height:46px;border-radius:11px;background:var(--blue-soft);display:flex!important;align-items:center;justify-content:center;margin:0 0 16px!important;transition:background .2s ease}
.pdr-landing .elementor > section:has(.elementor-col-25 .elementor-widget-icon-box) .elementor-widget-wrap:hover .elementor-icon-box-icon{background:var(--navy)}
.pdr-landing .elementor > section:has(.elementor-col-25 .elementor-widget-icon-box) .elementor-icon-box-icon svg{width:21px!important;height:21px!important;transition:fill .2s ease}
.pdr-landing .elementor > section:has(.elementor-col-25 .elementor-widget-icon-box) .elementor-widget-wrap:hover .elementor-icon-box-icon svg{fill:var(--gold)!important}
.pdr-landing .elementor > section:has(.elementor-col-25 .elementor-widget-icon-box) .elementor-icon-box-title span{font-size:16.5px!important;line-height:1.3!important}
.pdr-landing .elementor > section:has(.elementor-col-25 .elementor-widget-icon-box) .elementor-icon-box-description{font-size:15px!important;line-height:1.62!important}
.pdr-landing .elementor > section:has(+ section .elementor-col-25 .elementor-widget-icon-box) h2.elementor-heading-title{max-width:30ch;margin-inline:auto}

/* -- prosa: color de la paleta y ritmo editorial -- */
.pdr-landing .elementor > section:has(.elementor-widget-text-editor):not(:has(.elementor-widget-heading)):not(:has(.elementor-widget-icon-box)):not(:has(.elementor-widget-button)):not(:has(.elementor-widget-icon-list)) p{color:var(--text)!important;font-size:17px!important;line-height:1.75!important}
.pdr-landing .elementor > section:nth-of-type(2) p:first-child{color:var(--ink)!important;font-size:20px!important;line-height:1.6!important}
.pdr-landing .elementor > section:has(.elementor-widget-text-editor):not(:has(.elementor-widget-heading)):not(:has(.elementor-widget-icon-box)):not(:has(.elementor-widget-button)):not(:has(.elementor-widget-icon-list)):not(:nth-of-type(2)){padding-block:0 34px!important}
.pdr-landing .elementor > section:has(.elementor-widget-text-editor):not(:has(.elementor-widget-heading)):not(:has(.elementor-widget-icon-box)):not(:has(.elementor-widget-button)):not(:has(.elementor-widget-icon-list)):not(:nth-of-type(2)):first-of-type{padding-top:8px!important}
.pdr-landing .elementor > section:has(.elementor-widget-text-editor):not(:has(.elementor-widget-heading)):not(:has(.elementor-widget-icon-box)):not(:has(.elementor-widget-button)):not(:has(.elementor-widget-icon-list)):not(:nth-of-type(2)) .elementor-widget-wrap{max-width:1020px}
@media (min-width:981px){
  .pdr-landing .elementor > section:has(.elementor-widget-text-editor):not(:has(.elementor-widget-heading)):not(:has(.elementor-widget-icon-box)):not(:has(.elementor-widget-button)):not(:has(.elementor-widget-icon-list)):not(:nth-of-type(2)) .elementor-widget-text-editor{columns:2;column-gap:54px}
  .pdr-landing .elementor > section:has(.elementor-widget-text-editor):not(:has(.elementor-widget-heading)):not(:has(.elementor-widget-icon-box)):not(:has(.elementor-widget-button)):not(:has(.elementor-widget-icon-list)):not(:nth-of-type(2)) p{break-inside:avoid;margin:0 0 17px}
}

/* ======== LANDINGS: prosa con rotulo lateral ======== */
.pdr-landing .elementor > section[data-pdr="prosa"]{background:var(--bg)!important;padding-block:48px 0!important;border:0}
.pdr-landing .elementor > section[data-pdr="prosa"] > .elementor-container{max-width:1080px}
.pdr-landing .elementor > section[data-pdr="prosa"] .elementor-widget-wrap{display:grid!important;grid-template-columns:215px minmax(0,1fr);column-gap:52px;align-content:start;max-width:none!important;margin-inline:0!important;padding:0!important}
.pdr-landing .pdr-rotulo{grid-column:1;align-self:start;margin:7px 0 0;padding-top:12px;border-top:2px solid var(--gold);font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);line-height:1.45;text-wrap:balance}
.pdr-landing .elementor > section[data-pdr="prosa"] .elementor-widget-text-editor{grid-column:2;columns:auto!important;max-width:68ch}
.pdr-landing .elementor > section[data-pdr="prosa"] p{color:var(--text)!important;font-size:17px!important;line-height:1.72!important;margin:0 0 18px!important;break-inside:auto}
.pdr-landing .elementor > section[data-pdr="prosa"] p:last-child{margin-bottom:0!important}
@media (max-width:900px){
  .pdr-landing .elementor > section[data-pdr="prosa"] .elementor-widget-wrap{grid-template-columns:minmax(0,1fr);row-gap:14px}
  .pdr-landing .pdr-rotulo{grid-column:1;margin-top:0}
  .pdr-landing .elementor > section[data-pdr="prosa"] .elementor-widget-text-editor{grid-column:1}
}

/* ---- prosa de entrada ---- */
.pdr-landing .elementor > section[data-pdr="prosa-lead"]{background:var(--bg)!important;padding-block:62px 0!important;border:0}
.pdr-landing .elementor > section[data-pdr="prosa-lead"] > .elementor-container{max-width:1080px}
.pdr-landing .elementor > section[data-pdr="prosa-lead"] .elementor-widget-wrap{display:grid!important;grid-template-columns:215px minmax(0,1fr);column-gap:52px;align-content:start;max-width:none!important;margin-inline:0!important;padding:0!important}
.pdr-landing section[data-pdr="prosa-lead"] .elementor-widget-text-editor{grid-column:2;columns:auto!important;max-width:68ch}
.pdr-landing section[data-pdr="prosa-lead"] p{color:var(--text)!important;font-size:17px!important;line-height:1.72!important;margin:0 0 18px!important}
.pdr-landing section[data-pdr="prosa-lead"] p:last-child{margin-bottom:0!important}
.pdr-landing section[data-pdr="prosa-lead"] .elementor-widget-text-editor p:first-child{color:var(--ink)!important;font-size:20px!important;line-height:1.62!important}

/* ---- texto junto a la tarjeta de expediente ---- */
.pdr-landing .pdr-expo-pie{font-size:18px;line-height:1.62;color:var(--muted);max-width:40ch;margin:0;padding-top:16px;border-top:2px solid var(--gold)}

@media (max-width:900px){
  .pdr-landing .elementor > section[data-pdr="prosa-lead"] .elementor-widget-wrap{grid-template-columns:minmax(0,1fr);row-gap:14px}
  .pdr-landing section[data-pdr="prosa-lead"] .elementor-widget-text-editor{grid-column:1}
}

/* ======== LANDINGS: pasos como secuencia ======== */
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) > .elementor-container{margin-top:44px;background:transparent!important;border:0!important;border-radius:0!important;overflow:visible!important;padding-inline:20px!important;counter-reset:pdrpaso;align-items:stretch;flex-wrap:wrap}
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-column{border-right:0!important;padding:0 11px;display:flex;counter-increment:pdrpaso}
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-widget-wrap{flex:1;background:#fff!important;border:1px solid var(--line);border-radius:12px;padding:26px 24px 28px!important;position:relative;overflow:hidden;align-content:flex-start;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-widget-wrap:hover{transform:translateY(-4px);box-shadow:var(--shadow-2);border-color:var(--blue-line)}
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-widget-wrap::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gold)}
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-widget-wrap::after{content:counter(pdrpaso,decimal-leading-zero);position:absolute;top:16px;right:20px;font-family:var(--mono);font-size:38px;font-weight:600;line-height:1;letter-spacing:-.02em;color:var(--blue-line);pointer-events:none}
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-icon-box-icon{width:46px!important;height:46px;border-radius:11px;background:var(--blue-soft);display:flex!important;align-items:center;justify-content:center;margin:0 0 16px!important;transition:background .2s ease}
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-widget-wrap:hover .elementor-icon-box-icon{background:var(--navy)}
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-icon-box-icon svg{width:21px!important;height:21px!important;transition:fill .2s ease}
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-widget-wrap:hover .elementor-icon-box-icon svg{fill:var(--gold)!important}
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-icon-box-title span{font-size:17px!important;line-height:1.3!important}
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-icon-box-description{font-size:15px!important;line-height:1.62!important}
@media (max-width:980px){
  .pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-column{border-bottom:0!important;padding:0 0 16px}
  .pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-column:last-child{padding-bottom:0}
}

/* numeral de paso como texto real */
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .elementor-widget-wrap::after{content:none!important}
.pdr-landing .elementor > section:has(.elementor-col-33 .elementor-widget-icon-box) .pdr-paso-n{position:absolute;top:14px;right:20px;margin:0!important;display:block;font-family:var(--mono);font-style:normal;font-size:38px;font-weight:600;line-height:1;letter-spacing:-.02em;color:var(--blue-line);text-transform:none}

/* ---- CTA final identico al de la home ---- */
.pdr-landing .pdr-cta{order:8}
.pdr-landing .pdr-cta .cta-final{padding-block:0}

/* ==========================================================
   LANDINGS SEO v2 (lp-*) — 2026-09-30
   ========================================================== */
.lp{font-family:var(--sans);color:var(--text);line-height:1.65;font-size:17px}
.lp *{box-sizing:border-box}
.lp h1,.lp h2,.lp h3{color:var(--ink);line-height:1.18;letter-spacing:-.015em;margin:0 0 .5em}
.lp h1{font-size:clamp(34px,5vw,56px);font-weight:700}
.lp h2{font-size:clamp(26px,3.2vw,38px);font-weight:700}
.lp h3{font-size:19px;font-weight:600}
.lp p{margin:0 0 1em}
.lp a:not(.btn){color:var(--blue)}
.lp-sec{padding:clamp(56px,8vw,96px) 0}
.lp-soft{background:var(--bg-soft)}
.lp-blue{background:var(--blue-soft)}
.lp-dark{background:var(--navy);color:#C9D6E6}
.lp-dark h1,.lp-dark h2,.lp-dark h3{color:#fff}
.lp-dark a:not(.btn){color:#fff}
.lp-hero.dark .lp-eye,.lp-hero.gold .lp-eye{color:var(--gold)}
.lp-hero.dark .lp-crumb,.lp-hero.gold .lp-crumb,.lp-hero.dark .lp-crumb a,.lp-hero.gold .lp-crumb a{color:#9FB3CB}
.lp-hero.dark .lp-lead,.lp-hero.gold .lp-lead{color:#C2D0E1}
.lp-final:not(.g) a:not(.btn){color:#fff}
.lp-eye{display:inline-block;font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin-bottom:14px}
.lp-dark .lp-eye{color:var(--gold)}
.lp-lead{font-size:clamp(17px,1.6vw,20px);color:var(--muted);max-width:720px}
.lp-dark .lp-lead{color:#B8C7DA}
.lp-head{max-width:760px;margin:0 0 40px}
.lp-head.c{margin:0 auto 44px;text-align:center}
.lp-head.c .lp-lead{margin:0 auto}
.lp-cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.lp-head.c .lp-cta-row,.lp-hero.c .lp-cta-row{justify-content:center}
.lp-crumb{font-size:13px;color:var(--muted);margin-bottom:18px;font-family:var(--mono)}
.lp-crumb a{color:inherit;text-decoration:none}
.lp-crumb a:hover{color:var(--blue)}
.lp-dark .lp-crumb{color:#8FA3BC}
.lp-hero{padding:clamp(56px,8vw,104px) 0 clamp(48px,7vw,88px);position:relative;overflow:hidden}
.lp-hero.c{text-align:center}
.lp-hero.c .lp-lead{margin:0 auto}
.lp-hero.dark{background:radial-gradient(1200px 500px at 50% -10%,#1B4A80 0%,var(--navy) 60%);color:#C9D6E6}
.lp-hero.dark h1{color:#fff}
.lp-hero.soft{background:linear-gradient(180deg,var(--blue-soft),#fff)}
.lp-hero.gold{background:var(--navy);color:#C9D6E6;border-bottom:4px solid var(--gold)}
.lp-hero.gold h1{color:#fff}
.lp-hero.gold h1 em,.lp-hero.soft h1 em,.lp-hero.dark h1 em{font-style:normal;color:var(--gold)}
.lp-hero.soft h1 em{color:var(--blue)}
.lp-badges{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:26px;font-family:var(--mono);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase}
.lp-hero.c .lp-badges{justify-content:center}
.lp-badges span:before{content:"✓ ";color:var(--gold)}
.lp-split{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(32px,5vw,64px);align-items:center}
.lp-split.rev{grid-template-columns:.9fr 1.1fr}
.lp-grid{display:grid;gap:20px}
.lp-g2{grid-template-columns:repeat(2,1fr)}
.lp-g3{grid-template-columns:repeat(3,1fr)}
.lp-g4{grid-template-columns:repeat(4,1fr)}
.lp-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:26px;box-shadow:var(--shadow-1)}
.lp-card h3{margin-bottom:8px}
.lp-card p:last-child{margin:0}
.lp-card .lp-tag{margin-bottom:12px}
.lp-dark .lp-card{background:var(--navy-2);border-color:var(--navy-3);box-shadow:none;color:#B8C7DA}
.lp-tag{display:inline-block;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:4px 9px;border-radius:99px;background:var(--blue-soft);color:var(--blue)}
.lp-tag.q{background:var(--amber-soft);color:var(--amber)}
.lp-tag.ok{background:var(--green-soft);color:var(--green)}
.lp-num{font-family:var(--mono);font-size:13px;color:var(--gold);font-weight:600;display:block;margin-bottom:10px}
.lp-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-top:-40px;position:relative;z-index:2;box-shadow:var(--shadow-2)}
.lp-stats div{background:#fff;padding:22px 20px;text-align:center}
.lp-stats b{display:block;font-size:26px;color:var(--ink);font-weight:700}
.lp-stats small{font-size:13px;color:var(--muted)}
.lp-steps{counter-reset:s;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.lp-steps li{list-style:none;position:relative;padding-top:52px}
.lp-steps li:before{counter-increment:s;content:"0" counter(s);position:absolute;top:0;left:0;width:40px;height:40px;border-radius:10px;background:var(--navy);color:#fff;font-family:var(--mono);font-size:14px;display:grid;place-items:center}
.lp-steps li:after{content:"";position:absolute;top:20px;left:52px;right:-10px;height:1px;background:var(--line-2)}
.lp-steps li:last-child:after{display:none}
.lp-steps,.lp-vsteps{padding:0;margin:0}
.lp-vsteps li{list-style:none;display:grid;grid-template-columns:48px 1fr;gap:18px;padding:20px 0;border-bottom:1px solid var(--line)}
.lp-vsteps li:last-child{border:0}
.lp-vsteps .n{width:48px;height:48px;border-radius:50%;border:2px solid var(--gold);color:var(--ink);font-family:var(--mono);font-weight:600;display:grid;place-items:center}
.lp-vsteps h3{margin:4px 0 4px}
.lp-vsteps p{margin:0}
.lp-list{list-style:none;padding:0;margin:0 0 1em}
.lp-list li{position:relative;padding:8px 0 8px 30px;border-bottom:1px dashed var(--line)}
.lp-list li:before{content:"";position:absolute;left:4px;top:15px;width:12px;height:7px;border-left:2px solid var(--green);border-bottom:2px solid var(--green);transform:rotate(-45deg)}
.lp-dark .lp-list li{border-color:var(--navy-3)}
.lp-dark .lp-vsteps li{border-color:var(--navy-3)}
.lp-dark .lp-vsteps .n{color:#fff}
.lp-chk{display:grid;grid-template-columns:repeat(2,1fr);gap:0 32px}
.lp-callout{border-left:4px solid var(--gold);background:var(--gold-soft);padding:20px 24px;border-radius:0 10px 10px 0;margin:24px 0;color:var(--ink)}
.lp-callout.b{border-color:var(--blue);background:var(--blue-soft)}
.lp-callout p:last-child{margin:0}
.lp-callout strong{color:var(--ink)}
.lp-table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:var(--shadow-1);font-size:15.5px}
.lp-table th{background:var(--navy);color:#fff;text-align:left;padding:14px 16px;font-weight:600;font-size:14px}
.lp-table td{padding:14px 16px;border-top:1px solid var(--line);vertical-align:top}
.lp-table tr:nth-child(even) td{background:var(--bg-soft)}
.lp-tw{overflow-x:auto;-webkit-overflow-scrolling:touch}
.lp-expo{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-3);overflow:hidden;font-size:14.5px;text-align:left;color:var(--text)}
.lp-expo-top{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:13px;color:var(--ink)}
.lp-expo dl{margin:0;padding:6px 18px 14px}
.lp-expo dl div{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid var(--line)}
.lp-expo dl div:last-child{border:0}
.lp-expo dt{color:var(--muted)}
.lp-expo dd{margin:0;color:var(--ink);font-weight:500;text-align:right}
.lp-expo-bar{height:6px;background:var(--line);margin:0 18px 18px;border-radius:9px;overflow:hidden}
.lp-expo-bar i{display:block;height:100%;width:40%;background:var(--gold)}
.lp-big{font-size:clamp(64px,9vw,120px);font-weight:700;line-height:1;color:var(--gold);letter-spacing:-.04em}
.lp-bento{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}
.lp-bento>*{grid-column:span 2}
.lp-bento .w3{grid-column:span 3}
.lp-bento .w4{grid-column:span 4}
.lp-bento .hl{background:var(--navy);color:#C9D6E6;border-color:var(--navy)}
.lp-bento .hl h3{color:#fff}
.lp-bento .gd{background:var(--gold-soft);border-color:#EBDDB5}
.lp-faq details{border:1px solid var(--line);border-radius:10px;background:#fff;margin-bottom:12px;padding:0 22px}
.lp-faq summary{cursor:pointer;list-style:none;padding:18px 30px 18px 0;font-weight:600;color:var(--ink);position:relative}
.lp-faq summary::-webkit-details-marker{display:none}
.lp-faq summary:after{content:"+";position:absolute;right:0;top:14px;font-size:22px;color:var(--blue);font-weight:400}
.lp-faq details[open] summary:after{content:"–"}
.lp-faq details p{padding:0 0 18px;margin:0}
.lp-faq.two{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;align-items:start}
.lp-rel{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.lp-rel a{display:block;background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px;text-decoration:none;color:var(--ink);font-weight:600;transition:.2s}
.lp-rel a small{display:block;font-weight:400;color:var(--muted);font-size:13.5px;margin-top:4px}
.lp-rel a:hover{border-color:var(--blue);box-shadow:var(--shadow-1);transform:translateY(-2px)}
.lp-chips{display:flex;flex-wrap:wrap;gap:10px}
.lp-chips a{padding:9px 16px;border-radius:99px;border:1px solid var(--line-2);background:#fff;text-decoration:none;color:var(--ink);font-size:15px}
.lp-chips a:hover{border-color:var(--blue);color:var(--blue)}
.lp-price{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.lp-price .lp-card{text-align:center}
.lp-price .p{font-size:34px;font-weight:700;color:var(--ink);margin:6px 0}
.lp-price .p small{font-size:14px;font-weight:400;color:var(--muted)}
.lp-price .top{border:2px solid var(--blue)}
.lp-final{background:linear-gradient(135deg,var(--navy),#16406E);border-radius:18px;padding:clamp(36px,5vw,60px);color:#C9D6E6;display:grid;grid-template-columns:1.4fr .6fr;gap:28px;align-items:center}
.lp-final h2{color:#fff;margin-bottom:10px}
.lp-final .lp-cta-row{margin:0;justify-content:flex-end}
.lp-final.g{background:#fff;border:2px solid var(--gold);color:var(--text)}
.lp-final.g h2{color:var(--ink)}
.lp-doc{display:grid;grid-template-columns:260px 1fr;gap:clamp(32px,5vw,64px);align-items:start}
.lp-toc{position:sticky;top:110px;font-size:14.5px;border-left:2px solid var(--line);padding-left:18px}
.lp-toc b{display:block;font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.lp-toc a:not(.btn){display:block;padding:6px 0;color:var(--text);text-decoration:none}
.lp-toc a:not(.btn):hover{color:var(--blue)}
.lp-toc .btn{margin-top:18px;width:100%;justify-content:center}
.lp-art h2{margin-top:1.6em;scroll-margin-top:110px}
.lp-art h2:first-child{margin-top:0}
.lp-art h3{margin-top:1.3em}
.lp-art ul{padding-left:1.2em}
.lp-art li{margin-bottom:.4em}
.lp-meta{font-family:var(--mono);font-size:12.5px;color:var(--muted);margin-top:18px}
.lp-quote{font-size:clamp(20px,2.3vw,26px);line-height:1.45;color:var(--ink);font-weight:500;max-width:880px;margin:0 auto;text-align:center}
.lp-quote:before{content:"“";display:block;font-size:64px;line-height:.6;color:var(--gold);margin-bottom:10px}
.lp-sc{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.lp-sc .lp-card{display:grid;grid-template-rows:auto 1fr auto;gap:10px}
.lp-sc .res{border-top:1px solid var(--line);padding-top:12px;font-size:15px;color:var(--green)}
@media (max-width:980px){
 .lp-g4,.lp-rel,.lp-steps{grid-template-columns:repeat(2,1fr)}
 .lp-steps li:after{display:none}
 .lp-g3,.lp-price{grid-template-columns:1fr 1fr}
 .lp-doc{grid-template-columns:1fr}
 .lp-toc{position:static;border:1px solid var(--line);border-radius:10px;padding:18px}
 .lp-bento>*,.lp-bento .w3,.lp-bento .w4{grid-column:span 3}
}
@media (max-width:720px){
 .lp{font-size:16px}
 .lp-split,.lp-split.rev,.lp-g2,.lp-g3,.lp-g4,.lp-price,.lp-sc,.lp-chk,.lp-faq.two,.lp-final{grid-template-columns:1fr}
 .lp-rel,.lp-steps{grid-template-columns:1fr}
 .lp-stats{grid-template-columns:1fr 1fr;margin-top:-24px}
 .lp-bento>*,.lp-bento .w3,.lp-bento .w4{grid-column:span 6}
 .lp-final .lp-cta-row{justify-content:flex-start}
 .lp-table{font-size:14.5px}
}

/* footer 6 col */
.foot-grid{grid-template-columns:1.4fr repeat(5,1fr);gap:2rem}
@media(max-width:1100px){.foot-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.foot-grid{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.foot-grid{grid-template-columns:1fr}}

/* nav nowrap */
.nav .links a{white-space:nowrap}
@media(max-width:1280px){.nav .links{gap:1.1rem}.nav .links a{font-size:14px}}

.lp-doc>*,.lp-split>*,.lp-grid>*{min-width:0}
.lp-tw .lp-table{min-width:560px}

/* === CTA cabecera intermitente (Prueba 7 días gratis) === */
@keyframes ctaPulse{0%{box-shadow:0 0 0 0 rgba(26,86,160,.55)}70%{box-shadow:0 0 0 14px rgba(26,86,160,0)}100%{box-shadow:0 0 0 0 rgba(26,86,160,0)}}
@keyframes ctaGlow{0%,100%{background-color:var(--blue,#1A56A0)}50%{background-color:var(--blue-h,#123F78)}}
.nav-cta .btn-primary{animation:ctaPulse 1.8s ease-out infinite,ctaGlow 1.8s ease-in-out infinite}
.nav-cta .btn-primary:hover,.nav-cta .btn-primary:focus-visible{animation:none}
@media (prefers-reduced-motion:reduce){.nav-cta .btn-primary{animation:none}}
