/* Páginas internas sin mockup propio (Nosotros, Tecnología, blog, artículos, podcast, políticas).
   Mismos componentes y medidas del Home: cabecera oscura, títulos con degradado, tarjetas, CTA final.
   Lo propio de cada página va en su CSS, que se carga después de este. */

/* tipografía y secciones (igual al Home) */
section{padding:110px 0;position:relative}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--coral)}
h2{font-size:clamp(30px,3.8vw,48px);line-height:1.1;font-weight:800;letter-spacing:-.03em;margin:14px 0 18px;color:var(--navy)}
h2 em{font-style:normal;background:linear-gradient(90deg,var(--violet),var(--coral));-webkit-background-clip:text;background-clip:text;color:transparent}
.sec-head{max-width:780px;margin-bottom:56px}
.sec-head.c{text-align:center;margin-left:auto;margin-right:auto}
.sec-head p{font-size:17px;color:var(--mute)}
.soft{background:var(--bg)}
.dark{background:linear-gradient(170deg,var(--navy-2),var(--navy));color:#fff}
.dark h2{color:#fff}
.dark h2 em{background:linear-gradient(90deg,var(--violet-2),var(--coral-2));-webkit-background-clip:text;background-clip:text}
.dark .sec-head p,.dark p{color:#B9C8DA}
.btn-navy{background:var(--navy);color:#fff}
.btn-navy:hover{background:var(--navy-3)}

/* cabecera de página interior */
.page-hero{position:relative;overflow:hidden;color:#fff;padding:170px 0 100px;background:radial-gradient(1100px 560px at 82% 0%,rgba(108,99,255,.38),transparent 60%),radial-gradient(900px 480px at 0% 110%,rgba(255,101,84,.22),transparent 60%),linear-gradient(160deg,#000E1C,var(--navy-2) 40%,var(--navy))}
.page-hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse at 70% 30%,#000 15%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at 70% 30%,#000 15%,transparent 70%)}
.page-hero .wrap{position:relative;z-index:1}
.page-hero .eyebrow{color:var(--coral-2)}
.page-hero h1{font-size:clamp(38px,5.4vw,68px);line-height:1.04;font-weight:800;letter-spacing:-.035em;margin:18px 0 22px;max-width:980px}
.page-hero h1 .grad{background:linear-gradient(90deg,var(--violet-2),var(--coral-2) 60%,var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent}
.page-hero .lead{font-size:19px;color:#C4D2E3;max-width:700px;font-weight:300}
.page-hero .lead b{color:#fff;font-weight:600}
.page-hero .ctas{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap}
.crumbs{display:flex;gap:8px;flex-wrap:wrap;font-size:13px;color:#8FA3BB;margin-bottom:6px}
.crumbs a:hover{color:#fff}
.crumbs span[aria-hidden]{opacity:.5}

/* cifras bajo la cabecera */
.kpis-band{background:var(--navy-2);color:#fff;padding:0 0 80px;margin-top:-1px}
.kpis-row{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(255,255,255,.08);border-radius:22px;background:rgba(255,255,255,.03)}
.kpi-i{padding:30px 28px;border-right:1px solid rgba(255,255,255,.08)}
.kpi-i:last-child{border-right:0}
.kpi-i .n{font-size:42px;font-weight:800;letter-spacing:-.03em;line-height:1;background:linear-gradient(90deg,#fff,#C9D5E4);-webkit-background-clip:text;background-clip:text;color:transparent}
.kpi-i .n small{font-size:18px;font-weight:600}
.kpi-i .l{margin-top:10px;font-size:14px;color:#AFC0D6}

/* rejillas y tarjetas */
.g2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px;transition:transform .25s,box-shadow .25s,border-color .25s}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:transparent}
.card .ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;font-size:22px;margin-bottom:18px;background:var(--violet-soft);color:var(--violet)}
.card .ic.co{background:var(--coral-soft);color:var(--coral)}
.card .ic.nv{background:var(--navy);color:#fff}
.card h3{font-size:19px;font-weight:700;color:var(--navy);letter-spacing:-.01em;margin-bottom:8px;line-height:1.25}
.card p{font-size:14.5px;color:var(--mute)}
.dark .card{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.1)}
.dark .card h3{color:#fff}
.dark .card p{color:#B9C8DA}
.dark .card .ic{background:rgba(108,99,255,.22);color:#C7C4FF}

/* bloque de dos columnas: texto + visual */
.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.split p{color:var(--mute);font-size:16.5px;margin-bottom:14px}
.dark .split p{color:#B9C8DA}

/* línea de tiempo horizontal */
.tlh{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;position:relative;margin-top:10px}
.tlh::before{content:"";position:absolute;left:0;right:0;top:22px;height:2px;background:linear-gradient(90deg,var(--violet),var(--coral))}
.tlh .it{position:relative;padding-top:56px}
.tlh .it::before{content:"";position:absolute;left:0;top:14px;width:18px;height:18px;border-radius:50%;background:#fff;border:4px solid var(--violet)}
.tlh .it:last-child::before{border-color:var(--coral);background:var(--coral);box-shadow:0 0 0 7px rgba(255,101,84,.2)}
.tlh b{font-size:30px;font-weight:800;color:var(--navy);letter-spacing:-.03em}
.tlh h3{font-size:17px;font-weight:700;color:var(--navy);margin:4px 0 6px}
.tlh p{font-size:14px;color:var(--mute)}

/* sellos */
.certs{display:flex;gap:12px;flex-wrap:wrap}
.cert{display:flex;align-items:center;gap:12px;background:var(--navy);color:#fff;border-radius:16px;padding:14px 18px;font-size:13px}
.cert b{display:block;font-size:14.5px}
.cert small{color:#9FB3CB}
.cert svg{font-size:24px;color:var(--coral-2)}
.allies{display:flex;flex-wrap:wrap;justify-content:center;gap:18px 40px}
.allies span{font-size:18px;font-weight:700;color:#8C9AAE;letter-spacing:-.01em}

/* CTA final (igual al Home) */
.final{background:radial-gradient(900px 450px at 85% 0%,rgba(255,101,84,.35),transparent 60%),radial-gradient(900px 450px at 0% 100%,rgba(108,99,255,.45),transparent 60%),var(--navy-2);color:#fff;text-align:center;padding:120px 0}
.final .eyebrow{color:var(--coral-2)}
.final h2{color:#fff;max-width:880px;margin:14px auto 18px}
.final p{color:#C9D5E4;font-size:18px;max-width:640px;margin:0 auto}
.final .ctas{display:flex;gap:14px;justify-content:center;margin-top:36px;flex-wrap:wrap}
.contact{display:flex;justify-content:center;gap:34px;margin-top:44px;flex-wrap:wrap;font-size:14.5px;color:#C9D5E4}
.contact a{display:inline-flex;align-items:center;gap:9px}
.contact a:hover{color:#fff}
.contact svg{color:var(--coral-2);font-size:18px}

/* tarjetas de contenido (blog, artículos, podcast) */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.post{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;transition:transform .25s,box-shadow .25s}
.post:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.post .thumb{aspect-ratio:16/9;background:var(--navy);overflow:hidden}
.post .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.post:hover .thumb img{transform:scale(1.04)}
.post .body{padding:24px;display:flex;flex-direction:column;flex:1}
.post .meta{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--coral);margin-bottom:10px}
.post h3{font-size:18px;font-weight:700;color:var(--navy);line-height:1.3;margin-bottom:10px;letter-spacing:-.01em}
.post p{font-size:14px;color:var(--mute);margin-bottom:18px}
.post .more{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px;color:var(--navy)}
.post:hover .more{color:var(--coral)}
.post.feature{grid-column:span 2;display:grid;grid-template-columns:1.2fr 1fr}
.post.feature .thumb{aspect-ratio:auto}
.post.feature h3{font-size:24px}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:36px}
.filters a{padding:9px 18px;border-radius:99px;border:1.5px solid var(--line);font-size:14px;font-weight:600;color:var(--mute);background:#fff;transition:all .2s}
.filters a:hover{border-color:var(--navy);color:var(--navy)}
.filters a[aria-current="page"]{background:var(--navy);border-color:var(--navy);color:#fff}

/* texto largo (artículos y políticas) */
.prose{max-width:760px;margin:0 auto;font-size:17px;line-height:1.75;color:#2B3B50;overflow-wrap:anywhere}
.prose > * + *{margin-top:1.1em}
.prose h2{font-size:clamp(24px,2.6vw,30px);line-height:1.2;margin-top:2em;letter-spacing:-.02em}
.prose h3{font-size:20px;font-weight:700;color:var(--navy);margin-top:1.6em}
.prose ul,.prose ol{padding-left:1.3em}
.prose li + li{margin-top:.45em}
.prose li::marker{color:var(--coral)}
.prose a{color:var(--navy);text-decoration:underline;text-decoration-color:rgba(255,101,84,.6);text-underline-offset:3px}
.prose a:hover{color:var(--coral)}
.prose strong{color:var(--navy)}
.prose blockquote{border-left:4px solid var(--coral);background:var(--coral-soft);padding:18px 22px;border-radius:0 14px 14px 0;font-weight:600;color:var(--navy)}
.prose table{width:100%;border-collapse:collapse;font-size:15px}
.prose th,.prose td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}
.prose th{background:var(--bg);color:var(--navy)}
.toc{background:var(--bg);border-radius:18px;padding:22px 26px;font-size:15px}
.toc b{display:block;color:var(--navy);margin-bottom:8px}
.toc ol{padding-left:1.2em;columns:2;column-gap:32px}
.toc li{margin:.3em 0;break-inside:avoid}

@media (max-width:1080px){
  .g4{grid-template-columns:1fr 1fr}
  .g3,.posts{grid-template-columns:1fr 1fr}
  .split{grid-template-columns:1fr;gap:40px}
  .kpis-row{grid-template-columns:1fr 1fr}
  .kpi-i:nth-child(2){border-right:0}
  .kpi-i:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.08)}
  .tlh{grid-template-columns:1fr 1fr;row-gap:36px}
  .tlh::before{display:none}
  .post.feature{grid-column:span 2}
}
@media (max-width:720px){
  section{padding:80px 0}
  .page-hero{padding:130px 0 70px}
  .g2,.g3,.g4,.posts{grid-template-columns:1fr}
  .post.feature{grid-column:auto;grid-template-columns:1fr}
  .post.feature .thumb{aspect-ratio:16/9}
  .kpi-i .n{font-size:34px}
  .tlh{grid-template-columns:1fr}
  .toc ol{columns:1}
  .prose{font-size:16.5px}
}
