/* TAX AS · sitio de varias páginas (13-oct-2026; identidad azul, 20-oct-2026)
   Tokens: ruta A de la identidad (azul profundo, azul firma). Títulos: Source Serif 4. Texto y etiquetas: Inter Tight.
   Los nombres de variable --black, --gold* y --accent se conservan; sus valores ya son azules.
   Mega menú: patrón de CasPro Water (hover y focus-within, panel con vista previa).
   Bloques: línea editorial de demarketing-ui (líneas finas, numeración, sin tarjetas genéricas). */

:root{
  --black:#0B2E5E; --ink:#0A1A33; --text:#24324A; --muted:#5B6573; --muted-2:#7B8596;
  --line:#DCE2EA; --line-2:#C9D2DF; --bg:#FFFFFF; --bg-2:#F3F5F8; --bg-3:#E6EEFB;
  --gold:#2F6BD8; --gold-2:#5B8DE6; --gold-3:#6E9EF2; --accent:#2559B8; --accent-d:#123A70; --accent-soft:#E6EEFB;
  --head:'Source Serif 4',Georgia,serif; --body:'Inter Tight',system-ui,sans-serif;
  --wrap:1200px; --pad:clamp(20px,4vw,40px); --hdr:76px; --r:4px; --r-lg:8px;
  --ease:cubic-bezier(.22,1,.36,1);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font:400 17px/1.65 var(--body);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
h1,h2,h3,h4{font-family:var(--head);color:var(--black);font-weight:600;line-height:1.14;letter-spacing:-.005em}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.skip{position:absolute;left:-9999px;top:0;background:var(--black);color:#fff;padding:10px 16px;z-index:100}
.skip:focus{left:12px;top:12px}

/* Avance y pendientes */
.avance{background:#0A1A33;color:var(--gold-3);font:600 12.5px/1.4 var(--body);text-align:center;padding:8px 16px;letter-spacing:.02em}
.pend{display:block;border:1.5px dashed #2F6BD8;background:#EEF3FC;color:#1E4C9E;border-radius:var(--r);padding:10px 14px;font:600 13.5px/1.45 var(--body);margin-top:16px}
.pend::before{content:"PENDIENTE · ";font-weight:800;letter-spacing:.04em}
html[lang=en] .pend::before{content:"PENDING · "}
.on-dark .pend,.sec--dark .pend,.ftr .pend{background:rgba(110,158,242,.1);color:var(--gold-3);border-color:rgba(110,158,242,.6)}

/* Botones */
.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:var(--r);font:700 14px/1 var(--body);letter-spacing:.06em;text-transform:uppercase;border:1px solid transparent;transition:background-color .15s,color .15s,border-color .15s;cursor:pointer;white-space:nowrap}
.btn svg{width:16px;height:16px;transition:transform .2s var(--ease)}
.btn:hover svg{transform:translateX(3px)}
.btn--p{background:var(--black);color:#fff}
.btn--p:hover{background:var(--accent-d)}
.btn--g{background:var(--gold);color:#fff}
.btn--g:hover{background:var(--accent)}
.btn--o{border-color:var(--line-2);color:var(--black);background:#fff}
.btn--o:hover{border-color:var(--black)}
.btn--ol{border-color:rgba(255,255,255,.28);color:#fff}
.btn--ol:hover{border-color:var(--gold-3);color:var(--gold-3)}
.btn--sm{padding:11px 16px;font-size:12.5px}
.lnk{display:inline-flex;align-items:center;gap:8px;font:700 13px/1 var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);border-bottom:1px solid currentColor;padding-bottom:6px;transition:gap .2s var(--ease),color .15s}
.lnk:hover{gap:12px;color:var(--black)}
.lnk svg{width:14px;height:14px}

/* Eyebrow y encabezados de sección */
.eyebrow{display:inline-flex;align-items:center;gap:12px;font:700 12px/1 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}
.eyebrow::before{content:"";width:28px;height:1.5px;background:currentColor}
.sec--dark .eyebrow,.on-dark .eyebrow{color:var(--gold-3)}
.sec{padding:96px 0}
.sec--alt{background:var(--bg-2)}
.sec--dark{background:var(--black);color:#D3DEF0}
.sec--dark h2,.sec--dark h3{color:#fff}
.sec--tight{padding:72px 0}
.shead{max-width:720px;margin-bottom:52px}
.shead h2{font-size:clamp(30px,3.4vw,44px);margin-top:16px}
.shead p{margin-top:16px;color:var(--muted);font-size:18px}
.sec--dark .shead p{color:#C9D6EA}
.shead--split{max-width:none;display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap}
.shead--split>div{max-width:720px}

/* ===== Encabezado y mega menú (patrón CasPro) ===== */
.hdr{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid transparent;transition:box-shadow .3s}
.hdr.is-scrolled{border-bottom-color:var(--line);background:rgba(255,255,255,.96);box-shadow:0 6px 24px -14px rgba(10,26,51,.35);backdrop-filter:blur(8px)}
.bar{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;height:var(--hdr)}
.logo img{height:52px;width:auto}
.nav{display:flex;align-items:stretch;align-self:stretch;gap:4px}
.nav>a,.grp>a{display:flex;align-items:center;gap:6px;padding:8px 12px;font:600 15px/1 var(--body);letter-spacing:.04em;color:var(--text);transition:color .15s}
.nav>a:hover,.grp>a:hover,.nav a[aria-current=page],.grp.is-current>a{color:var(--accent)}
.grp{position:relative;display:flex;align-items:center}
.grp .chev{width:14px;height:14px;opacity:.6;transition:transform .2s}
.grp:hover .chev,.grp:focus-within .chev{transform:rotate(180deg)}
.mega{position:absolute;left:0;top:100%;z-index:50;width:max-content;max-width:min(1100px,calc(100vw - 32px));visibility:hidden;opacity:0;transition:opacity .15s,visibility .15s}
.grp:hover .mega,.grp:focus-within .mega{visibility:visible;opacity:1}
.mega-card{overflow:hidden;background:#fff;border:1px solid var(--line);border-top:0;border-radius:0 0 12px 12px;box-shadow:0 24px 60px -20px rgba(10,26,51,.35)}
.mega-body{display:flex}
.mega-grid{display:grid;grid-template-columns:repeat(4,minmax(196px,1fr));column-gap:28px;row-gap:22px;padding:28px}
.mega-col-h{display:block;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--line);font:700 11px/1.3 var(--body);letter-spacing:.12em;white-space:nowrap;text-transform:uppercase;color:var(--muted-2)}
.mega-col-h:hover{color:var(--accent)}
.mega-col li+li{margin-top:2px}
.mlink{display:block;margin:0 -8px;padding:8px;border-radius:6px;font-size:14.5px;line-height:1.35;color:var(--text);transition:color .15s,background-color .15s}
.mlink:hover,.mlink:focus-visible{background:var(--bg-2);color:var(--accent)}
.mega-pv{width:280px;flex-shrink:0;border-left:1px solid var(--line);background:var(--bg-2);padding:22px;display:flex;flex-direction:column}
.pv-box{background:var(--black);border-radius:8px;height:128px;display:flex;align-items:flex-end;justify-content:space-between;padding:16px;position:relative;overflow:hidden}
.pv-box::after{content:"";position:absolute;right:-40px;top:-40px;width:150px;height:150px;border-radius:50%;border:1px solid rgba(110,158,242,.3);box-shadow:0 0 0 22px rgba(110,158,242,.05)}
.pv-box img{height:56px;width:auto;position:relative;z-index:1}
.pv-g{font:700 10.5px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--gold-3);position:relative;z-index:1}
.pv-t{margin-top:16px;font:600 17px/1.3 var(--head);color:var(--black)}
.pv-d{margin-top:6px;font-size:14.5px;line-height:1.55;color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.mega-foot{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 28px;border-top:1px solid var(--line);background:var(--bg-2)}
.mega-foot p{font-size:13.5px;color:var(--muted)}
.mega-foot a{display:inline-flex;align-items:center;gap:6px;font:700 12.5px/1 var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);white-space:nowrap}
.mega-foot a svg{width:14px;height:14px}
.acts{display:flex;align-items:center;gap:12px}
.lang{display:flex;gap:2px;border:1px solid var(--line);border-radius:999px;padding:3px}
.lang a{font:600 12px/1 var(--body);padding:7px 10px;border-radius:999px;color:var(--muted)}
.lang a[aria-current]{background:var(--black);color:var(--gold-3)}
.burger{display:none;background:none;border:0;padding:8px;cursor:pointer;color:var(--black)}
.burger svg{width:26px;height:26px}
.burger .i-x{display:none}
.burger[aria-expanded=true] .i-m{display:none}
.burger[aria-expanded=true] .i-x{display:block}

/* Menú móvil: hermano del header, no hijo (trampa del backdrop-filter, ver CasPro) */
.mob{position:fixed;left:0;right:0;bottom:0;top:var(--hdr);z-index:40;overflow-y:auto;background:#fff;display:none}
.mob.is-open{display:block}
.mob-nav{padding:20px var(--pad) 40px}
.mob-list>li{padding:4px 0}
.mob-list>li+li{border-top:1px solid var(--line)}
.mob-row{display:flex;align-items:center;justify-content:space-between}
.mob-g{flex:1;padding:12px 0;font:600 17px/1.2 var(--body);color:var(--black)}
.mob-tg{background:none;border:0;padding:12px;color:var(--muted-2);cursor:pointer}
.mob-tg svg{width:20px;height:20px;transition:transform .15s}
.mob-tg[aria-expanded=true] svg{transform:rotate(180deg)}
.mob-sub{padding:0 0 16px 4px}
.mob-sub[hidden]{display:none}
.mob-sub>div+div{margin-top:18px}
.mob-h{margin-bottom:6px;font:700 10.5px/1.2 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}
.mob-sub a{display:block;padding:6px 0;font-size:15px;color:var(--text)}
.mob-cta{margin-top:28px;display:flex;justify-content:center;width:100%}
.mob .lang{display:inline-flex;margin-top:20px}

/* ===== Hero de inicio ===== */
.hero{padding:72px 0 88px;border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:64px;align-items:end}
.hero h1{font-size:clamp(38px,5vw,62px);line-height:1.04;margin-top:22px;max-width:17ch}
.hero .lead{font-size:19px;color:var(--muted);margin-top:24px;max-width:58ch}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.datos{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:56px}
.datos div{border-top:1px solid var(--black);padding-top:16px}
.datos dt{font:600 22px/1.15 var(--head);color:var(--black)}
.datos dd{font-size:14px;color:var(--muted);margin-top:6px;line-height:1.4}
.indice{background:var(--black);color:#D3DEF0;border-radius:var(--r-lg);padding:30px 30px 18px;position:relative;overflow:hidden}
.indice::after{content:"";position:absolute;right:-90px;top:-90px;width:260px;height:260px;border-radius:50%;border:1px solid rgba(110,158,242,.22);box-shadow:0 0 0 44px rgba(110,158,242,.04),0 0 0 88px rgba(110,158,242,.025)}
.indice>*{position:relative;z-index:1}
.indice h2{font:700 12px/1 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-3)}
.indice ol{margin-top:14px}
.indice li a{display:grid;grid-template-columns:40px 1fr 18px;gap:8px;align-items:baseline;padding:16px 0;border-top:1px solid rgba(255,255,255,.12);transition:color .15s}
.indice li:first-child a{border-top:0}
.indice .n{font:600 13px/1 var(--head);color:var(--gold-2)}
.indice .t{font:600 19px/1.25 var(--head);color:#fff}
.indice .d{display:block;font:400 13.5px/1.45 var(--body);color:#A9BCD9;margin-top:4px}
.indice svg{width:16px;height:16px;color:var(--gold-3);align-self:center;transition:transform .2s var(--ease)}
.indice li a:hover svg{transform:translateX(4px)}
.indice li a:hover .t{color:var(--gold-3)}

/* Áreas en inicio y en servicios */
.areas{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.area{border-top:2px solid var(--black);padding-top:20px}
.area .n{font:600 13px/1 var(--head);color:var(--gold)}
.area h3{font-size:22px;margin-top:10px}
.area>p{color:var(--muted);font-size:15px;margin-top:8px;line-height:1.55}
.area ul{margin-top:16px}
.area li a{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line);font-size:15px;color:var(--text);transition:color .15s}
.area li a svg{width:14px;height:14px;flex-shrink:0;color:var(--gold);transition:transform .2s var(--ease)}
.area li a:hover{color:var(--accent)}
.area li a:hover svg{transform:translateX(3px)}

/* Bloques divididos */
.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.split h2{font-size:clamp(28px,3.2vw,42px);margin-top:16px}
.split>div>p{margin-top:16px;color:var(--muted);font-size:18px}
.sec--dark .split>div>p{color:#C9D6EA}
.split .ctas{margin-top:28px}
.lst{display:grid;gap:12px}
.lst li{display:grid;grid-template-columns:28px 1fr;gap:14px;align-items:start;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:18px 20px}
.lst li b{display:block;font:600 16px/1.3 var(--head);color:var(--black);margin-bottom:3px}
.lst li span{font-size:15px;color:var(--muted);line-height:1.5}
.lst .k{font:600 13px/1.6 var(--head);color:var(--gold)}

/* Pasos numerados */
.pasos{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 48px}
.pasos.c4{grid-template-columns:repeat(4,1fr)}
.paso{display:flex;gap:20px}
.paso .n{font:600 48px/1 var(--head);color:var(--gold);opacity:.55;flex-shrink:0}
.sec--dark .paso .n{color:var(--gold-3);opacity:.35}
.paso>div{border-left:1px solid var(--line);padding-left:20px}
.sec--dark .paso>div{border-left-color:rgba(255,255,255,.12)}
.paso h3{font-size:19px}
.paso p{margin-top:8px;font-size:15px;color:var(--muted);line-height:1.55}
.sec--dark .paso p{color:#A9BCD9}

/* A quién atendemos */
.quien{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line-2);border-left:1px solid var(--line-2)}
.quien div{border-right:1px solid var(--line-2);border-bottom:1px solid var(--line-2);padding:26px 26px 28px;background:#fff}
.quien h3{font-size:18px}
.quien p{margin-top:6px;font-size:15px;color:var(--muted);line-height:1.5}

/* Blog */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.post{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:26px;display:flex;flex-direction:column;gap:10px}
.post .k{font:700 11px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.post h3{font-size:20px;line-height:1.25}
.post p{font-size:15px;color:var(--muted);line-height:1.5}
.post .pend{margin-top:auto}

/* Banda de cierre */
.banda{background:var(--black);color:#D3DEF0;padding:80px 0;position:relative;overflow:hidden}
.banda::after{content:"";position:absolute;left:50%;bottom:-260px;width:520px;height:520px;margin-left:-260px;border-radius:50%;border:1px solid rgba(110,158,242,.18);box-shadow:0 0 0 70px rgba(110,158,242,.035)}
.banda .wrap{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:40px;flex-wrap:wrap}
.banda h2{color:#fff;font-size:clamp(28px,3.2vw,42px)}
.banda p{margin-top:12px;color:#C9D6EA;font-size:17px}

/* ===== Encabezado de página interna ===== */
.phero{background:var(--bg-2);padding:56px 0 64px;border-bottom:1px solid var(--line)}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:13.5px;color:var(--muted-2);margin-bottom:28px}
.crumbs a:hover{color:var(--accent)}
.crumbs span[aria-hidden]{opacity:.6}
.phero h1{font-size:clamp(34px,4.2vw,54px);line-height:1.06;margin-top:18px;max-width:22ch}
.phero .lead{font-size:19px;color:var(--muted);margin-top:20px;max-width:62ch}
.phero .ctas{margin-top:28px}

/* ===== Página de servicio ===== */
.doc{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:64px;align-items:start}
.prose>section+section{margin-top:56px}
.prose h2{font-size:clamp(24px,2.4vw,30px)}
.prose h2+*{margin-top:20px}
.checks{display:grid;gap:12px}
.checks li{display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:start;font-size:17px;line-height:1.5}
.checks svg{width:20px;height:20px;color:var(--gold);margin-top:3px}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips li{border:1px solid var(--line-2);border-radius:999px;padding:8px 16px;font-size:15px;background:#fff}
.nota{border-left:3px solid var(--gold);background:var(--accent-soft);padding:14px 18px;font-size:15px;color:var(--accent-d);border-radius:0 var(--r) var(--r) 0}
.zona{display:flex;gap:10px;align-items:flex-start;font-size:15px;color:var(--muted)}
.zona svg{width:18px;height:18px;color:var(--gold);flex-shrink:0;margin-top:3px}
.qs{counter-reset:q;display:grid;gap:10px}
.qs li{counter-increment:q;position:relative;padding:14px 18px 14px 58px;background:var(--bg-2);border-radius:var(--r-lg);font-size:16.5px}
.qs li::before{content:counter(q,decimal-leading-zero);position:absolute;left:18px;top:14px;font:600 14px/1.6 var(--head);color:var(--gold)}
.rail{position:sticky;top:calc(var(--hdr) + 24px);display:grid;gap:18px}
.rail-box{border:1px solid var(--line);border-radius:var(--r-lg);padding:20px}
.rail-box .rail-h{font:700 11px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);margin-bottom:10px}
.rail-box a{display:block;padding:9px 0;border-top:1px solid var(--line);font-size:15px;color:var(--text)}
.rail-box a:first-of-type{border-top:0}
.rail-box a:hover{color:var(--accent)}
.rail-box a[aria-current=page]{color:var(--accent);font-weight:600}
.rail-box a[aria-current=page]::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--gold);margin-right:8px;vertical-align:2px}
.rail-cta{background:var(--black);color:#D3DEF0;border-radius:var(--r-lg);padding:24px}
.rail-cta .rail-h{color:#fff;font-size:19px}
.rail-cta p{font-size:14.5px;margin-top:8px;color:#C9D6EA;line-height:1.5}
.rail-cta .btn{margin-top:16px;width:100%;justify-content:center}
.rail-cta .tel{display:block;margin-top:12px;text-align:center;font-size:14px;color:var(--gold-3)}

/* FAQ */
.faq{display:grid;grid-template-columns:4fr 8fr;gap:48px}
.faq-list{border-top:1px solid var(--line-2)}
.faq-list details{border-bottom:1px solid var(--line-2)}
.faq-list summary{list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:center;padding:20px 0;cursor:pointer;font:600 18px/1.35 var(--head);color:var(--black)}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary .ic{width:22px;height:22px;flex-shrink:0;position:relative}
.faq-list summary .ic::before,.faq-list summary .ic::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:1.5px;background:var(--gold);transform:translate(-50%,-50%);transition:transform .2s var(--ease)}
.faq-list summary .ic::after{transform:translate(-50%,-50%) rotate(90deg)}
.faq-list details[open] summary .ic::after{transform:translate(-50%,-50%) rotate(0)}
.faq-list details p{padding:0 40px 22px 0;color:var(--muted);font-size:16px}

/* Relacionados */
.rel{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.rel a{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;transition:border-color .15s,transform .2s var(--ease)}
.rel a:hover{border-color:var(--black);transform:translateY(-2px)}
.rel .g{font:700 11px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.rel h3{font-size:19px}
.rel p{font-size:15px;color:var(--muted);line-height:1.5}

/* Índice de servicios */
.grupo+.grupo{margin-top:72px}
.grupo-h{display:grid;grid-template-columns:80px 1fr;gap:24px;align-items:baseline;border-top:2px solid var(--black);padding-top:22px;margin-bottom:28px}
.grupo-h .n{font:600 40px/1 var(--head);color:var(--gold)}
.grupo-h h2{font-size:clamp(26px,2.8vw,36px)}
.grupo-h p{margin-top:8px;color:var(--muted)}
.svcs{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-left:104px}
.svcs a{display:flex;flex-direction:column;gap:8px;border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;background:#fff;transition:border-color .15s}
.svcs a:hover{border-color:var(--black)}
.svcs h3{font-size:18px;line-height:1.3}
.svcs p{font-size:14.5px;color:var(--muted);line-height:1.5}
.svcs .lnk{margin-top:auto;align-self:flex-start;font-size:11.5px}

/* Nosotros */
.tres{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.tres div{border-top:2px solid var(--black);padding-top:20px}
.tres h3{font-size:21px}
.tres p{margin-top:12px;color:var(--muted);font-size:16px}
.team{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.team article{border:1px solid var(--line);border-radius:var(--r-lg);padding:20px;background:#fff}
.team .ph-old{aspect-ratio:4/5;border-radius:6px;background:var(--bg-2);border:1.5px dashed #2F6BD8;display:grid;place-items:center;color:var(--muted-2);font:700 11px/1 var(--body);letter-spacing:.16em;text-transform:uppercase}
.team h3{font-size:19px;margin-top:16px}
.team p{font-size:14.5px;color:var(--muted);margin-top:4px}

/* Contacto */
.contacto{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start}
.canales{display:grid;gap:4px}
.canal{display:grid;grid-template-columns:44px 1fr;gap:16px;align-items:start;padding:18px 0;border-top:1px solid var(--line)}
.canal:first-child{border-top:0}
.canal .ic{width:44px;height:44px;border-radius:8px;background:var(--accent-soft);display:grid;place-items:center}
.canal .ic svg{width:20px;height:20px;color:var(--accent)}
.canal dt{font:700 11px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2)}
.canal dd{margin-top:6px;font-size:16.5px;color:var(--black)}
.canal dd a:hover{color:var(--accent)}
.form{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:32px;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.f{display:grid;gap:7px}
.f.full{grid-column:1/-1}
.f label{font:700 11px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--text)}
.f input,.f select,.f textarea{width:100%;border:1px solid var(--line-2);border-radius:var(--r);padding:12px 14px;font-size:16px;background:#fff;transition:border-color .15s}
.f textarea{min-height:120px;resize:vertical}
.f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:var(--black)}
.chk{grid-column:1/-1;display:flex;gap:12px;align-items:flex-start;font-size:14.5px;color:var(--muted)}
.chk input{width:18px;height:18px;margin-top:2px;accent-color:var(--gold);flex-shrink:0}
.chk a{color:var(--accent);text-decoration:underline}
.form .btn{justify-self:start}
.form-err{grid-column:1/-1;color:#9B2C1F;font-size:14px;display:none}
.form-err.show{display:block}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Gracias */
.gracias{min-height:60vh;display:grid;place-items:center;text-align:center;padding:96px 0}
.gracias h1{font-size:clamp(32px,4vw,48px);margin-top:18px;max-width:20ch;margin-inline:auto}
.gracias p{margin:18px auto 0;color:var(--muted);font-size:18px;max-width:52ch}
.gracias .ctas{justify-content:center}

/* Pie */
.ftr{background:var(--ink);color:#A9BCD9;padding:72px 0 32px}
.ftr-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.12)}
.ftr .logo img{height:64px}
.ftr-grid>div>p{margin-top:18px;font-size:14.5px;line-height:1.6;max-width:32ch}
.ftr .ftr-h{font:700 11px/1 var(--body);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-3);margin-bottom:16px}
.ftr li+li{margin-top:9px}
.ftr li a,.ftr address{font-size:14.5px;font-style:normal;line-height:1.6}
.ftr li a:hover{color:#fff}
.ftr-bot{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:24px;font-size:13px}
.ftr-bot a:hover{color:#fff}

/* WhatsApp flotante */
.wa-float{position:fixed;right:22px;bottom:22px;z-index:45;width:56px;height:56px;border-radius:50%;background:var(--black);border:1px solid rgba(110,158,242,.5);display:grid;place-items:center;box-shadow:0 12px 28px -10px rgba(10,26,51,.6);transition:transform .2s var(--ease)}
.wa-float:hover{transform:translateY(-2px)}
.wa-float svg{width:26px;height:26px;color:var(--gold-3)}

/* Aparición al hacer scroll */
.rv{opacity:0;transform:translateY(16px);transition:opacity .5s var(--ease),transform .5s var(--ease);transition-delay:calc(var(--i,0)*70ms)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;scroll-behavior:auto!important}.rv{opacity:1;transform:none}}

/* ===== Responsivo ===== */
@media (max-width:1024px){
  .nav,.acts .btn,.acts .lang{display:none}
  .burger{display:inline-flex}
  .hero-grid,.split,.doc,.contacto,.faq{grid-template-columns:1fr}
  .hero-grid{gap:40px}
  .datos{grid-template-columns:repeat(2,1fr)}
  .areas{grid-template-columns:repeat(2,1fr)}
  .pasos,.pasos.c4{grid-template-columns:1fr 1fr}
  .quien,.posts,.rel,.team,.tres{grid-template-columns:1fr 1fr}
  .svcs{grid-template-columns:1fr 1fr;margin-left:0}
  .rail{position:static}
  .ftr-grid{grid-template-columns:1fr 1fr}
  .ftr-grid>div:first-child{grid-column:1/-1}
}
@media (max-width:640px){
  body{font-size:16px}
  :root{--hdr:68px}
  .logo img{height:44px}
  .sec{padding:64px 0}
  .hero{padding:44px 0 56px}
  .datos,.areas,.pasos,.pasos.c4,.quien,.posts,.rel,.team,.tres,.svcs,.form{grid-template-columns:1fr}
  .grupo-h{grid-template-columns:1fr;gap:8px}
  .ctas .btn{width:100%;justify-content:center}
  .banda .wrap{flex-direction:column;align-items:flex-start}
  .ftr-grid{grid-template-columns:1fr}
  .form{padding:22px}
  .form .btn{width:100%;justify-content:center}
}

/* Bandas de foto: foto de fondo, velo azul y las tres barras (identidad, 20-oct-2026) */
.fb{position:relative;height:clamp(200px,26vw,360px);overflow:hidden;background:var(--black)}
.fb-img{position:absolute;inset:0;background-size:cover;background-position:center}
.fb::after{content:"";position:absolute;inset:0;background:linear-gradient(165deg,rgba(11,46,94,.28) 0%,rgba(11,46,94,.52) 55%,rgba(11,46,94,.84) 100%)}
.fb-wrap{position:relative;z-index:2;height:100%}
.fb-bars{position:absolute;right:var(--pad);bottom:28px;display:flex;gap:7px;align-items:flex-end}
.fb-bars i{display:block;width:8px;background:var(--gold-3)}
.fb-bars i:nth-child(1){height:52px}.fb-bars i:nth-child(2){height:72px}.fb-bars i:nth-child(3){height:92px}
.indice{background:linear-gradient(180deg,rgba(11,46,94,.90),rgba(11,46,94,.96)),url('/assets/fotos/indice.jpg') center/cover}

/* Áreas de toque de 24px mínimo (WCAG 2.5.8) en listas de enlaces */
.ftr li a,.rail-box li a{display:inline-block;padding:3px 0}
.lnk{padding-top:4px}

/* Versión final (20-oct-2026): equipo sin fotos, artículos y casos típicos */
.team .ini{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--accent-soft);color:var(--black);font:600 19px/1 var(--head);letter-spacing:.02em}
.post h3 a{color:inherit}
.post h3 a::after{content:"";position:absolute;inset:0}
.post{position:relative;transition:border-color .15s}
.post:hover{border-color:var(--gold)}
.post-f{margin-top:auto;font-size:13px;color:var(--muted-2)}
.art-f{margin-top:18px;font-size:14px;color:var(--muted-2)}
.art section+section{margin-top:36px}
.art p+p{margin-top:12px}
.art .checks{margin-top:14px}
.art .nota{margin-top:40px;padding-top:18px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}
.casos{display:grid;gap:14px;margin-top:16px}
.casos li{border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:var(--r);padding:16px 18px;background:#fff}
.casos b{display:block;font:600 17px/1.3 var(--head);color:var(--black)}
.casos span{display:block;margin-top:6px;font-size:15.5px;color:var(--muted);line-height:1.55}

/* Generador de firmas (/firma/) */
.firma{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start}
.firma-form{grid-template-columns:1fr 1fr}
.firma-form .full{grid-column:1/-1}
.firma-t{font:700 11px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2)}
.firma-vista{margin-top:12px;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px 26px;overflow-x:auto}
.firma-der .ctas{margin-top:18px;flex-wrap:wrap}
.firma-estado{min-height:22px;margin-top:10px;font-size:14px;color:var(--muted)}
.firma-estado[data-ok=true]{color:#1E7A4C}
.firma-estado[data-ok=false]{color:#9B2C1F}
.firma-pasos{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.firma-pasos h2{font-size:22px}
.firma-pasos h3{font-size:16px;margin-top:18px}
.firma-pasos p{font-size:15px;color:var(--muted);margin-top:6px;line-height:1.55}
.firma-pasos .nota{margin-top:18px;font-size:14px}
@media (max-width:900px){.firma{grid-template-columns:1fr}}
