/* Estilos propios de Nosotros: sub-navegación pegajosa, timeline vertical, tarjetas densas, mapa de cobertura */
.subnav{position:sticky;top:var(--nav-h,120px);z-index:9;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-subtle)}
.subnav .wrap{display:flex;gap:4px;overflow-x:auto;padding-top:10px;padding-bottom:10px;scrollbar-width:none}
.subnav .wrap::-webkit-scrollbar{display:none}
.subnav a{white-space:nowrap;padding:8px 14px;border-radius:var(--radius-pill);font-size:var(--fs-body-s);font-weight:var(--fw-bold);color:var(--text-secondary)}
.subnav a:hover{background:var(--blue-tint);color:var(--blue-primary)}
.subnav a.on{background:var(--blue-primary);color:#fff}
.abhero{padding:32px 0 clamp(60px,7vw,90px)}
.abhero h1 em{font-style:normal;color:var(--amber-token)}
.abhero .lede{max-width:720px;font-size:clamp(18px,1.6vw,22px);line-height:1.5;color:var(--text-secondary);margin-top:24px}
.abhero .idbar{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:32px;font-size:var(--fs-body-s);color:var(--text-muted)}
.abhero .idbar b{color:var(--text-primary)}
.abhero .idbar span{display:inline-flex;gap:8px;align-items:center}
.abhero .idbar i{width:6px;height:6px;border-radius:50%;background:var(--blue-primary);font-style:normal}
/* números grandes tipo editorial */
.bignums{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:48px;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}
.bignums div{padding:24px 20px;border-right:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);min-width:0;box-sizing:border-box}
.bignums div:nth-child(3n){border-right:0}
.bignums div:nth-last-child(-n+3){border-bottom:0}
.bignums b{display:block;font-size:clamp(24px,2.6vw,36px);font-family:var(--font-mono);color:var(--blue-primary);line-height:1.15;letter-spacing:-.03em;white-space:nowrap}
.bignums span{display:block;margin-top:8px;font-size:var(--fs-caption);color:var(--text-secondary);line-height:1.35}
@media(min-width:1200px){
  .bignums{grid-template-columns:repeat(6,1fr)}
  .bignums div{padding:22px 10px;border-bottom:0}
  .bignums div:nth-child(3n){border-right:1px solid var(--border-subtle)}
  .bignums div:last-child{border-right:0}
  .bignums b{font-size:clamp(18px,1.5vw,23px);letter-spacing:-.035em}
}
@media(max-width:640px){
  .bignums{grid-template-columns:repeat(2,1fr)}
  .bignums div{padding:18px 14px;border-right:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}
  .bignums div:nth-child(3n){border-right:1px solid var(--border-subtle)}
  .bignums div:nth-child(2n){border-right:0}
  .bignums div:nth-last-child(-n+3){border-bottom:1px solid var(--border-subtle)}
  .bignums div:nth-last-child(-n+2){border-bottom:0}
  .bignums b{font-size:clamp(20px,4.5vw,26px)}
}
@media(max-width:380px){
  .bignums{grid-template-columns:1fr}
  .bignums div{border-right:0!important;border-bottom:1px solid var(--border-subtle)!important}
  .bignums div:last-child{border-bottom:0!important}
}
/* dos columnas de texto largo */
.longread{display:grid;grid-template-columns:220px minmax(0,1fr);gap:48px;align-items:start;margin-top:40px}
.longread aside{position:sticky;top:calc(var(--nav-h,120px) + 60px);font-size:var(--fs-body-s);color:var(--text-muted)}
.longread aside b{display:block;color:var(--text-primary);font-size:var(--fs-body);margin-bottom:6px}
.longread .body{max-width:720px;display:grid;gap:22px;font-size:var(--fs-body-l);line-height:1.6;color:var(--text-secondary)}
.longread .body p:first-letter{}
.longread .body strong{color:var(--text-primary);font-weight:var(--fw-bold)}
.longread .body blockquote{margin:8px 0;padding:20px 24px;border-left:3px solid var(--amber-token);background:var(--blue-tint);border-radius:0 var(--radius-m) var(--radius-m) 0;font-size:var(--fs-h3);line-height:1.35;color:var(--text-primary);font-weight:var(--fw-bold)}
.longread .body blockquote cite{display:block;margin-top:10px;font-size:var(--fs-body-s);font-weight:var(--fw-regular);color:var(--text-secondary);font-style:normal}
@media(max-width:800px){.longread{grid-template-columns:1fr}.longread aside{position:static}}
/* timeline */
.tline{margin-top:40px;position:relative;padding-left:32px}
.tline::before{content:"";position:absolute;left:8px;top:0;bottom:0;width:2px;background:var(--border-subtle)}
.tline .ev{position:relative;padding:0 0 32px}
.tline .ev::before{content:"";position:absolute;left:-30px;top:6px;width:18px;height:18px;border-radius:50%;background:#fff;border:3px solid var(--blue-primary)}
.tline .ev.hi::before{background:var(--amber-token);border-color:var(--amber-token)}
.tline .ev b{display:block;font-family:var(--font-mono);color:var(--blue-primary);font-size:var(--fs-body-s);margin-bottom:4px}
.tline .ev h3{font-size:var(--fs-h3);margin-bottom:6px}
.tline .ev p{color:var(--text-secondary);line-height:1.55;font-size:var(--fs-body)}
[data-theme=deep] .tline::before{background:rgba(153,201,255,.3)}
[data-theme=deep] .tline .ev::before{background:var(--blue-deep-2)}
[data-theme=deep] .tline .ev h3{color:#fff}
[data-theme=deep] .tline .ev p{color:var(--blue-light)}
[data-theme=deep] .tline .ev b{color:var(--amber-token)}
/* valores como tarjetas planas con número */
.vals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:40px;border:1px solid rgba(153,201,255,.28);border-radius:var(--radius-l);overflow:hidden}
.vals div{padding:28px;border-right:1px solid rgba(153,201,255,.28);border-bottom:1px solid rgba(153,201,255,.28)}
.vals div:nth-child(3n){border-right:0}
.vals div:nth-last-child(-n+3){border-bottom:0}
.vals i{font-style:normal;font-family:var(--font-mono);color:var(--amber-token);font-size:var(--fs-body-s)}
.vals b{display:block;font-size:var(--fs-h3);color:#fff;margin:8px 0 10px}
.vals p{color:var(--blue-light);line-height:1.55;font-size:var(--fs-body-s)}
@media(max-width:800px){.vals{grid-template-columns:1fr}.vals div{border-right:0;border-bottom:1px solid rgba(153,201,255,.28)!important}.vals div:last-child{border-bottom:0!important}}
/* qué hacemos */
.svcs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:40px}
.svcs .sv{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius-l);padding:24px;display:grid;gap:8px;align-content:start;transition:transform var(--dur-slow) var(--ease-standard),box-shadow var(--dur-slow)}
.svcs .sv:hover{transform:translateY(-4px);box-shadow:var(--shadow-card)}
.svcs .sv .tag{display:inline-block;font-size:10px;letter-spacing:.14em;font-weight:var(--fw-bold);color:var(--blue-primary);text-transform:uppercase;font-family:var(--font-mono)}
.svcs .sv b{font-size:var(--fs-h3)}
.svcs .sv p{font-size:var(--fs-body-s);color:var(--text-secondary);line-height:1.55}
.svcs .sv ul{margin:6px 0 0;padding:0;list-style:none;display:grid;gap:4px;font-size:var(--fs-caption);color:var(--text-muted)}
.svcs .sv ul li{padding-left:16px;position:relative}
.svcs .sv ul li::before{content:"→";position:absolute;left:0;color:var(--blue-primary)}
@media(max-width:900px){.svcs{grid-template-columns:1fr 1fr}}@media(max-width:600px){.svcs{grid-template-columns:1fr}}
/* mapa de cobertura */
.cover{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:40px;align-items:start}
.cover .list{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;font-size:var(--fs-body-s)}
.cover .list span{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid rgba(153,201,255,.16);color:#fff}
.cover .list span i{font-style:normal;font-family:var(--font-mono);color:var(--amber-token);font-size:12px;width:28px}
.cover .list span em{margin-left:auto;font-style:normal;font-size:var(--fs-caption);color:var(--blue-light)}
.cover .map{aspect-ratio:16/11;background:radial-gradient(ellipse at 30% 30%,rgba(153,201,255,.28),transparent 60%),radial-gradient(ellipse at 70% 70%,rgba(0,125,255,.22),transparent 60%);border:1px solid rgba(153,201,255,.28);border-radius:var(--radius-l);position:relative;overflow:hidden}
.cover .map svg{width:100%;height:100%;display:block}
.cover .map .dot{fill:var(--amber-token)}
.cover .map .line{stroke:rgba(153,201,255,.5);stroke-width:.4;fill:none}
@media(max-width:800px){.cover{grid-template-columns:1fr}.cover .list{grid-template-columns:1fr 1fr}}
/* plataformas y métodos */
.grid-tag{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.grid-tag span{padding:10px 16px;border:1px solid var(--border-subtle);border-radius:var(--radius-pill);font-size:var(--fs-body-s);font-weight:var(--fw-bold);color:var(--text-primary);background:#fff}
[data-theme=deep] .grid-tag span{background:rgba(255,255,255,.06);border-color:rgba(153,201,255,.35);color:#fff}
/* premios */
.awrd{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:40px}
.awrd .aw{background:linear-gradient(150deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid rgba(153,201,255,.28);border-radius:var(--radius-l);padding:24px;display:grid;gap:8px;color:#fff}
.awrd .aw svg{width:32px;height:32px;color:var(--amber-token)}
.awrd .aw b{display:block;font-size:var(--fs-body-l);margin-top:4px}
.awrd .aw span{color:var(--blue-light);font-size:var(--fs-body-s);line-height:1.5}
.awrd .aw i{font-style:normal;font-family:var(--font-mono);color:var(--amber-token);font-size:var(--fs-caption);letter-spacing:.1em}
@media(max-width:900px){.awrd{grid-template-columns:1fr 1fr}}@media(max-width:520px){.awrd{grid-template-columns:1fr}}
/* leadership rows */
.lead{margin-top:32px;display:grid;gap:0;border-top:1px solid var(--border-subtle)}
.lead .row{display:grid;grid-template-columns:60px minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:24px;padding:20px 0;border-bottom:1px solid var(--border-subtle);align-items:baseline}
.lead .n{font-family:var(--font-mono);color:var(--blue-primary);font-size:var(--fs-body-s)}
.lead b{font-size:var(--fs-h3);color:var(--text-primary)}
.lead .role{color:var(--text-primary);font-weight:var(--fw-bold);font-size:var(--fs-body)}
.lead p{color:var(--text-secondary);font-size:var(--fs-body-s);line-height:1.55}
@media(max-width:800px){.lead .row{grid-template-columns:40px 1fr;gap:12px}.lead .role,.lead p{grid-column:2}}
/* compliance grid */
.cmp{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:32px}
.cmp .c{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius-l);padding:22px}
.cmp .c b{display:block;font-size:var(--fs-body-l);margin-bottom:8px}
.cmp .c p{font-size:var(--fs-body-s);color:var(--text-secondary);line-height:1.55}
.cmp .c code{font-family:var(--font-mono);font-size:var(--fs-caption);color:var(--blue-primary);display:block;margin-top:10px}
@media(max-width:900px){.cmp{grid-template-columns:1fr 1fr}}
/* datos rápidos, formato ficha */
.ficha{display:grid;grid-template-columns:200px 1fr;gap:0;margin-top:32px;border-top:1px solid var(--border-subtle)}
.ficha dt,.ficha dd{padding:16px 0;border-bottom:1px solid var(--border-subtle);margin:0}
.ficha dt{color:var(--text-muted);font-size:var(--fs-body-s);text-transform:uppercase;letter-spacing:.08em;font-weight:var(--fw-bold)}
.ficha dd{color:var(--text-primary);font-size:var(--fs-body)}
.ficha dd b{color:var(--blue-primary);font-family:var(--font-mono)}
@media(max-width:600px){.ficha{grid-template-columns:1fr}.ficha dt{padding-bottom:0;border-bottom:0}.ficha dd{padding-top:4px}}
/* contacto pisos */
.offices{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:32px}
.offices .of{background:rgba(255,255,255,.06);border:1px solid rgba(153,201,255,.28);border-radius:var(--radius-l);padding:28px;color:#fff}
.offices .of h3{font-size:var(--fs-h2);margin-bottom:14px}
.offices .of p{color:var(--blue-light);line-height:1.6;font-size:var(--fs-body)}
.offices .of a{color:#fff;font-weight:var(--fw-bold);border-bottom:1px solid rgba(255,255,255,.35)}
.offices .of a:hover{color:var(--amber-token);border-color:var(--amber-token)}
@media(max-width:700px){.offices{grid-template-columns:1fr}}
/* AI hint */
.aihint{background:var(--blue-tint);border:1px dashed var(--blue-secondary);border-radius:var(--radius-m);padding:14px 18px;font-size:var(--fs-body-s);color:var(--blue-deep);margin-top:32px;display:flex;gap:12px;align-items:start}
.aihint svg{width:20px;height:20px;color:var(--blue-primary);flex:none;margin-top:2px}
