:root{--navy:#0c1b2a;--navy2:#173247;--blue:#20a9dc;--blue-soft:#e8f7fc;--lime:#cccc33;--lime-soft:#f7f8dc;--paper:#f4f7fa;--white:#fff;--text:#142634;--muted:#607481;--line:#d8e3e8;--radius:24px;--shadow:0 18px 50px rgba(12,27,42,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--text);background:var(--paper);line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.wrap{width:min(1160px,92vw);margin:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(244,247,250,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:154px;height:54px;object-fit:contain}.links{display:flex;align-items:center;gap:22px;font-weight:750;font-size:.92rem}.links a:hover,.links a.active{color:#087ca8}.menu{display:none;border:0;background:none;font-size:1.7rem}.hero{padding:62px 0 34px;background:radial-gradient(circle at 82% 10%,rgba(32,169,220,.13),transparent 32%),radial-gradient(circle at 88% 82%,rgba(204,204,51,.16),transparent 28%)}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:42px;align-items:center}.kicker{display:inline-block;color:#087ca8;font-size:.78rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase;margin-bottom:12px}.kicker.comex{color:#747410}.hero h1{font-size:clamp(2.4rem,5.5vw,5rem);line-height:.96;letter-spacing:-.055em;margin:0 0 20px}.hero p{font-size:1.16rem;color:var(--muted);max-width:680px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.btn{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:0 21px;border-radius:999px;font-weight:850;border:1px solid var(--line);background:var(--white)}.btn.primary{background:var(--navy);border-color:var(--navy);color:#fff}.visual-slot{min-height:280px;border:3px dashed #a9bbc5;border-radius:var(--radius);background:rgba(255,255,255,.75);display:grid;place-items:center;padding:26px;text-align:center;color:var(--muted)}.visual-slot strong{display:block;color:var(--navy);font-size:1.05rem;margin-bottom:7px}.visual-slot span{display:inline-block;margin-top:10px;background:var(--navy);color:#fff;border-radius:999px;padding:6px 11px;font-size:.75rem;font-weight:900}.compact-slot{min-height:130px}.section{padding:48px 0}.section.white{background:var(--white)}.section.dark{background:var(--navy);color:#fff}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:24px}.section-head h2{font-size:clamp(1.8rem,3.5vw,3rem);line-height:1;margin:0;letter-spacing:-.035em}.section-head p{color:var(--muted);max-width:540px;margin:0}.dark .section-head p{color:#b7cad6}.grid{display:grid;gap:18px}.cols-2{grid-template-columns:repeat(2,1fr)}.cols-3{grid-template-columns:repeat(3,1fr)}.cols-4{grid-template-columns:repeat(4,1fr)}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:0 7px 25px rgba(12,27,42,.05)}.card h3{margin:10px 0 8px}.card p{margin:0;color:var(--muted)}.number{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:13px;background:var(--blue-soft);color:#087ca8;font-weight:900}.comex-page .number{background:var(--lime-soft);color:#686810}.icon{font-size:1.6rem}.division{min-height:310px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative}.division.tech{background:linear-gradient(145deg,var(--white),var(--blue-soft))}.division.comex{background:linear-gradient(145deg,var(--white),var(--lime-soft))}.division h2{font-size:2rem;line-height:1.05;margin:16px 0 10px}.division-logo{width:max-content;border-radius:999px;background:rgba(255,255,255,.9);padding:8px 13px;font-weight:900}.mini-list{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.mini-list span{background:rgba(255,255,255,.8);border:1px solid var(--line);padding:6px 10px;border-radius:999px;font-size:.82rem}.pain{min-height:150px}.pain strong{display:block;margin:10px 0 6px}.service{min-height:160px}.service ul{padding-left:18px;margin:9px 0 0;color:var(--muted)}.feature{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center}.feature h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1;margin:0 0 16px}.feature p{color:var(--muted)}.dark .feature p{color:#bed0db}.statement{font-size:1.4rem;font-weight:900}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.step{border-top:4px solid var(--blue);padding:16px 5px}.comex-page .step{border-color:var(--lime)}.step small{color:var(--muted);font-weight:900}.step h3{margin:7px 0}.step p{color:var(--muted);margin:0}.audiences .card{min-height:210px}.details{display:grid;gap:10px}.details details{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:16px 18px}.details summary{cursor:pointer;font-weight:850}.details p,.details ul{color:var(--muted)}.tech-strip{display:flex;flex-wrap:wrap;gap:9px}.tech-strip span{background:var(--white);border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-weight:750}.designer-band{border:3px dashed #8399a5;background:#eef3f5;padding:20px;border-radius:20px}.designer-band strong{color:var(--navy)}.designer-code{display:inline-block;background:var(--navy);color:#fff;border-radius:999px;padding:5px 10px;font-weight:900;font-size:.78rem;margin-right:8px}.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:30px}.form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form label{font-weight:750;font-size:.88rem}.form input,.form select,.form textarea{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--white)}.full{grid-column:1/-1}.footer{background:#06111a;color:#fff;padding:28px 0}.footer-grid{display:flex;justify-content:space-between;gap:24px;align-items:center}.footer p{color:#afc1cc;margin:4px 0}.brief-table{width:100%;border-collapse:collapse;background:var(--white)}.brief-table th,.brief-table td{text-align:left;vertical-align:top;padding:14px;border-bottom:1px solid var(--line)}.brief-table th{background:var(--navy);color:#fff}.brief-table td:first-child{font-weight:900;white-space:nowrap}.brief-alert{padding:20px;border-left:6px solid var(--lime);background:var(--white);margin:20px 0}.do-dont{display:grid;grid-template-columns:1fr 1fr;gap:18px}.do-dont ul{margin:8px 0;padding-left:20px}.checklist{list-style:none;padding:0;display:grid;gap:8px}.checklist li:before{content:"✓";color:#6d7900;font-weight:900;margin-right:9px}
@media(max-width:900px){.hero-grid,.feature,.contact{grid-template-columns:1fr}.cols-4{grid-template-columns:repeat(2,1fr)}.cols-3{grid-template-columns:1fr 1fr}.process{grid-template-columns:1fr 1fr}.links{display:none}.menu{display:block}.section-head{align-items:start;flex-direction:column}.visual-slot{min-height:220px}}
@media(max-width:600px){.brand img{width:128px}.hero{padding-top:38px}.section{padding:38px 0}.cols-2,.cols-3,.cols-4,.process,.do-dont,.form{grid-template-columns:1fr}.full{grid-column:auto}.division{min-height:260px}.footer-grid{align-items:start;flex-direction:column}.brief-table{font-size:.86rem}.brief-table th:nth-child(3),.brief-table td:nth-child(3){display:none}.visual-slot{min-height:180px}}

/* ACTUALIZACIÓN VISUAL: conserva íntegro el contenido de las páginas internas. */
body{background:#f3f7f9}.hero{padding:52px 0 38px}.hero h1{font-size:clamp(2.65rem,5vw,5.2rem);line-height:.94}.section{padding:44px 0}.card{border-radius:20px;box-shadow:0 10px 35px rgba(12,27,42,.07)}.section-head{margin-bottom:21px}.service{border-top:4px solid var(--blue)}.comex-page .service{border-top-color:var(--lime)}.pain{border-left:4px solid var(--blue)}.details details{box-shadow:0 5px 18px rgba(12,27,42,.04)}
.home-hero{padding:54px 0 32px}.home-hero h1{font-size:clamp(3rem,6vw,5.8rem);max-width:720px}.home-slogan{font-size:1.3rem!important;max-width:650px!important}.home-master{min-height:300px}.home-divisions{padding-top:24px}.home-divisions .division{min-height:300px;padding:30px}.home-divisions .division.tech{border-top:7px solid var(--blue)}.home-divisions .division.comex{border-top:7px solid var(--lime)}.home-divisions .division h2{font-size:clamp(2rem,3.4vw,3.25rem);line-height:.96}.home-divisions .division .kicker{margin:18px 0 8px}.home-values .card{padding:21px}.home-process .section-head h2{color:#fff}.home-process-line .step{position:relative;border-top-color:var(--blue)}.home-process-line .step:not(:last-child):after{content:"→";position:absolute;right:-13px;top:23px;color:var(--blue);font-size:1.5rem;font-weight:900}.home-process-line .step h3{color:#fff}.home-process-line .step small{color:#b9cad4}.dark-designer{border-color:#8ba2ae;background:rgba(255,255,255,.08);color:#d4e0e6}.dark-designer strong{color:#fff}
@media(max-width:900px){.links.open{position:absolute;top:76px;left:0;right:0;display:flex!important;flex-direction:column;padding:20px;background:#f4f7fa;border-bottom:1px solid var(--line)}.home-master{min-height:220px}}
@media(max-width:600px){.home-hero h1{font-size:2.85rem}.home-divisions .division{min-height:250px}.home-process-line .step:not(:last-child):after{content:"↓";right:auto;left:4px;top:auto;bottom:-22px}}

/* IMÁGENES RECIBIDAS: D01 A D07 */
.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}.image-frame{overflow:hidden;border-radius:var(--radius);background:#fff}.image-frame img{display:block;width:100%;height:100%;object-fit:contain}.home-master{aspect-ratio:16/9;min-height:0}.home-master img{object-fit:cover}.division-mark{display:block;width:min(100%,360px);height:92px;object-fit:contain;object-position:left center}.home-divisions .division>div{margin-top:14px}.value-icon{display:block;width:72px;height:72px;object-fit:contain;margin-bottom:13px}.process-art{display:block;width:min(100%,760px);max-height:145px;object-fit:contain;margin:4px auto 18px}.home-process-labels{margin-top:2px}.home-process-labels .step{border-top:0;text-align:center;padding-top:6px}.home-process-labels .step h3{margin-top:4px}.home-process-labels .step small{color:#b9cad4}.division-hero-art{aspect-ratio:16/9}.pain-icon{display:block;width:54px;height:54px;object-fit:contain;margin-bottom:10px}.brand img{width:160px;height:60px}.nav{height:78px}
@media(max-width:900px){.links.open{top:78px}.division-hero-art{max-height:420px}.home-master img{object-fit:contain}}
@media(max-width:600px){.brand img{width:128px;height:54px}.nav{height:70px}.links.open{top:70px}.division-mark{height:78px}.value-icon{width:64px;height:64px}.process-art{margin-bottom:8px}.home-process-labels{grid-template-columns:repeat(4,1fr)}.home-process-labels .step h3{font-size:.88rem}.home-process-labels .step small{font-size:.7rem}.pain-icon{width:50px;height:50px}}

/* IMÁGENES RECIBIDAS: D08 A D14 */
.service{position:relative}.service-icon{display:block;width:58px;height:58px;object-fit:contain;margin-bottom:12px}.diagram-art{display:block;width:min(100%,520px);max-height:180px;object-fit:contain;margin:auto}.diagram-art.on-dark{padding:22px;border-radius:20px;background:#fff}.wide-art{overflow:hidden;margin:0 0 20px;border-radius:22px;background:#fff}.wide-art img{display:block;width:100%;aspect-ratio:16/7;object-fit:cover}.process-diagram{display:block;width:min(100%,760px);max-height:150px;object-fit:contain;margin:0 auto 18px}.metric-icon{display:block;width:54px;height:54px;object-fit:contain;margin-bottom:10px}.metric-icon+.number{margin-top:0}
@media(max-width:900px){.wide-art img{aspect-ratio:16/9}.diagram-art{max-height:150px}}
@media(max-width:600px){.service-icon{width:52px;height:52px}.wide-art img{aspect-ratio:4/3;object-position:center}.diagram-art{max-height:120px}.process-diagram{max-height:110px}.metric-icon{width:50px;height:50px}}

/* IMÁGENES FINALES: D16 A D18 Y UNIDADES VINCULADAS */
.network-art{display:grid;place-items:center;width:min(100%,280px);margin:auto;padding:22px;border-radius:22px;background:#fff}.network-art img{display:block;width:100%;height:auto}.linked-units{max-width:820px;margin:auto}.linked-card{display:flex;min-height:190px;flex-direction:column;align-items:center;justify-content:center;text-align:center}.linked-card img{display:block;width:min(100%,310px);height:92px;object-fit:contain;margin:0 auto 18px}.linked-card p{font-size:1.02rem}
@media(max-width:600px){.network-art{width:min(100%,230px)}.linked-card{min-height:170px}.linked-card img{height:78px}}

/* AJUSTES DE LEGIBILIDAD Y PROPORCIÓN — versión de revisión */
.hero-grid{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:30px}
.hero h1{font-size:clamp(2.5rem,4.35vw,4.45rem);line-height:.96}
.home-hero h1{font-size:clamp(2.8rem,4.8vw,4.85rem);max-width:620px}
.home-slogan{font-size:1.18rem!important}
.home-master,.division-hero-art{aspect-ratio:16/8.2;border-radius:18px;background:rgba(255,255,255,.58)}
.home-master img,.division-hero-art img{object-fit:contain;transform:none}

.value-icon,.pain-icon,.service-icon,.metric-icon{width:82px;height:82px}
.service-icon,.metric-icon{display:inline-block;vertical-align:middle;margin:0 12px 13px 0}
.service-icon+.number,.metric-icon+.number{display:inline-grid;vertical-align:middle;margin:0 0 13px}

.process-art{width:min(100%,920px);max-height:none;padding:24px 34px;margin:8px auto 8px;border-radius:20px;background:#fff}
.home-process-labels{width:min(100%,920px);margin:0 auto}
.home-process-labels .step{position:relative}
.home-process-labels .step:not(:last-child):after{content:"→";position:absolute;right:-12px;top:20px;color:var(--blue);font-size:1.45rem;font-weight:900}

.feature{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:34px}
.feature h2{font-size:clamp(2rem,3.4vw,3.15rem)}
.diagram-block{width:100%;max-width:760px;margin:auto}
.diagram-art{width:100%;max-height:none}
.diagram-art.on-dark{padding:24px 28px 10px;border-radius:20px 20px 0 0}
.diagram-captions{display:grid;align-items:start;gap:8px;padding:10px 10px 0;color:var(--navy);font-size:.9rem;font-weight:850;text-align:center}
.diagram-captions.four{grid-template-columns:repeat(4,1fr)}
.diagram-captions.five{grid-template-columns:repeat(5,1fr)}
.light-diagram{padding-bottom:16px;border-radius:20px;background:#fff}
.light-diagram .diagram-captions{padding:8px 22px 0}
.process-diagram{width:min(100%,940px);max-height:none;margin-bottom:10px}
.process{width:min(100%,940px);margin-inline:auto}

@media(max-width:900px){
  .hero-grid,.feature{grid-template-columns:1fr}
  .hero h1,.home-hero h1{font-size:clamp(2.55rem,8vw,4.1rem);max-width:760px}
  .home-master,.division-hero-art{aspect-ratio:16/9;max-height:none}
  .home-master img,.division-hero-art img{object-fit:contain;transform:none}
  .diagram-block{max-width:820px}
  .diagram-art{max-height:none}
}
@media(max-width:600px){
  .hero h1,.home-hero h1{font-size:2.55rem;line-height:.98}
  .home-master,.division-hero-art{aspect-ratio:3/4;background:transparent}
  .home-master img,.division-hero-art img{object-fit:contain;transform:none}
  .value-icon,.pain-icon,.service-icon,.metric-icon{width:74px;height:74px}
  .process-art{padding:16px 12px}
  .home-process-labels .step:not(:last-child):after{display:none}
  .diagram-captions{font-size:.72rem;gap:3px;padding-inline:0}
  .light-diagram .diagram-captions{padding-inline:8px}
  .process-diagram{margin-bottom:4px}
}

/* VERSIÓN 1.15 — imágenes móviles, perfil humano, formularios y pie institucional. */
picture{display:block;width:100%;height:100%}.process-picture{height:auto}.process-picture img{height:auto}.wide-art picture{height:auto}.wide-art picture img{height:auto}
.human-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:42px;align-items:center}.human-grid h2,.career-card h2{font-size:clamp(2rem,3.5vw,3.25rem);line-height:1.04;margin:0 0 18px}.human-grid p{color:var(--muted)}.bio-card{padding:28px;border-radius:24px;background:var(--navy);color:#fff;box-shadow:var(--shadow)}.bio-card span{display:block;color:var(--lime);font-size:1.15rem;font-weight:900}.bio-card p{margin:3px 0 22px;color:#d5e2e9}.bio-card p:last-child{margin-bottom:0}.career{background:linear-gradient(120deg,var(--blue-soft),var(--lime-soft))}.career-card{display:flex;align-items:center;justify-content:space-between;gap:36px;padding:36px;border:1px solid rgba(12,27,42,.08);border-radius:28px;background:rgba(255,255,255,.78)}.career-card p{max-width:760px;margin-bottom:0;color:var(--muted)}.career-card .btn{flex:0 0 auto}
.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important}.recaptcha-wrap{min-height:78px;display:flex;align-items:center}.form-status{display:none;padding:12px 14px;border-radius:12px;font-weight:750}.form-status.show{display:block}.form-status.success{background:#e8f6ea;color:#24642d}.form-status.error{background:#fdecec;color:#8a2424}.form button:disabled{opacity:.65;cursor:wait}
.whatsapp{position:fixed;right:22px;bottom:22px;z-index:30;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#25d366;color:#fff;box-shadow:0 10px 28px rgba(0,0,0,.25);transition:transform .2s ease}.whatsapp:hover{transform:translateY(-3px)}.whatsapp svg{width:31px;height:31px;fill:currentColor}.footer-info{display:grid;grid-template-columns:.85fr 1.15fr;gap:42px}.footer-info>div:last-child{border-left:1px solid rgba(255,255,255,.18);padding-left:32px}.footer a:hover{text-decoration:underline}
@media(max-width:900px){.human-grid{grid-template-columns:1fr}.career-card{align-items:flex-start;flex-direction:column}.footer-info{grid-template-columns:1fr}.footer-info>div:last-child{border-left:0;border-top:1px solid rgba(255,255,255,.18);padding:20px 0 0}}
@media(max-width:600px){.wide-art img{aspect-ratio:3/4;object-fit:contain}.process-picture+.process{margin-top:18px}.recaptcha-wrap{max-width:100%;overflow-x:auto}.career-card{padding:25px}.whatsapp{right:16px;bottom:16px;width:54px;height:54px}}

/* VERSIÓN 1.16 — subtítulos, PyMEs, perfil y nueva área de Infraestructura. */
.section-head{flex-direction:column;align-items:flex-start;gap:9px}.section-head p{max-width:720px;font-size:1rem}.pyme-section .section-head h2{max-width:820px}.pyme-section .section-head p{font-size:1.12rem}.pyme-grid .card{border-top:4px solid var(--navy)}.pyme-grid strong{display:block;margin-bottom:8px;font-size:1.12rem}
.profile-section{padding-block:58px}.profile-heading{margin-bottom:30px}.profile-layout{display:grid;grid-template-columns:minmax(240px,.62fr) minmax(0,1.38fr);gap:42px;align-items:start}.profile-photo{position:sticky;top:106px;aspect-ratio:4/5;margin:0;overflow:hidden;border:1px solid var(--line);border-radius:24px;background:#eef4f7;box-shadow:0 16px 36px rgba(0,24,45,.12)}.profile-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}.profile-copy{max-width:760px}.profile-copy h3{margin:0;font-size:clamp(2rem,3.2vw,3rem);line-height:1}.profile-copy p{color:var(--muted)}.profile-copy .profile-role{margin:12px 0 24px;padding-bottom:18px;border-bottom:3px solid var(--blue);color:#087ca8;font-weight:850}.profile-copy blockquote{margin:24px 0;padding:18px 22px;border-left:5px solid var(--lime);background:var(--lime-soft);font-size:1.18rem;font-weight:850}.service-grid{grid-template-columns:repeat(3,1fr)}.infrastructure-service{background:linear-gradient(145deg,#fff,var(--blue-soft))}
@media(max-width:900px){.profile-layout{grid-template-columns:minmax(210px,.55fr) minmax(0,1.45fr);gap:28px}.service-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.profile-layout{grid-template-columns:1fr}.profile-photo{position:static;width:min(100%,340px);margin:0 auto}.service-grid{grid-template-columns:1fr}.pyme-grid{grid-template-columns:1fr}.section-head p{max-width:none}}

/* VERSIÓN 1.17 — los destinos internos quedan visibles debajo del encabezado fijo. */
html{scroll-padding-top:100px}section[id]{scroll-margin-top:100px}.captcha-preview{display:flex;min-height:74px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#f7f9fa;color:var(--muted);font-size:.88rem}
@media(max-width:600px){html{scroll-padding-top:84px}section[id]{scroll-margin-top:84px}}
.profile-copy h3.profile-philosophy{font-size:1.5rem;line-height:1.25;margin:28px 0 14px}
.skip-link{position:fixed;top:8px;left:8px;z-index:1000;padding:12px 18px;background:#fff;color:#0c1b2a;border:2px solid #087ca8;border-radius:8px;transform:translateY(-180%)}
.skip-link:focus{transform:none}
:focus-visible{outline:3px solid #087ca8;outline-offset:4px}
.dark :focus-visible,.footer :focus-visible{outline-color:#cccc33}
img{max-width:100%;height:auto}
@media(max-width:600px){.diagram-captions{font-size:.875rem;line-height:1.4;overflow-wrap:anywhere}.nav{gap:12px}.menu{min-width:44px;min-height:44px}.wrap{max-width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}
/* D12/D17: vertical process artwork must never expand to the viewport width. */
@media(max-width:600px){
  .process-picture{width:100%;height:auto;margin:16px auto;display:flex;justify-content:center}
  .process-picture img.process-diagram{width:80px;max-width:24vw;height:auto;max-height:480px;object-fit:contain;margin:0 auto}
  .process-picture+.process{margin-top:20px}
}
