.logo-image{width:200px;height:68px;overflow:hidden;display:block;position:relative;background:#fff;flex:0 0 auto}
.logo-image img{position:absolute;height:auto;max-width:none;left:50%;display:block;transform:translateX(-50%)}
.logo-image .logo-light{width:300px;top:-60px}
.logo-image .logo-dark{width:220px;top:-106px}
.logo-image .logo-dark{display:none}
body.dark .logo-image{background:#071321}
body.dark .logo-image .logo-light{display:none}
body.dark .logo-image .logo-dark{display:block}
body.dark .nav nav a{color:#b4c3d5}
body.dark .nav nav a:hover,body.dark .nav nav a:focus-visible{color:#fff}
body.dark .actions button{border-color:#58708d;background:#0c2038}
@media(max-width:600px){
  .logo-image{width:150px;height:58px}
  .logo-image .logo-light{width:250px;top:-50px}
  .logo-image .logo-dark{width:190px;top:-92px}
}

/* Mejoras de legibilidad */
.nav nav a{font-size:15px;font-weight:600;color:#4d5d70}
.eyebrow,.label{font-size:12px;font-weight:800;letter-spacing:.16em}
.checks{font-size:13px;font-weight:500;gap:24px}
.band .wrap{min-height:96px}
.band span{font-size:12px;font-weight:700;color:#a9bad0}
.band b{font-size:15px;font-weight:700;letter-spacing:.04em}
.band i{font-size:15px}

@media(max-width:600px){
  .nav nav a{font-size:16px}
  .eyebrow,.label{font-size:11px}
  .checks{font-size:13px;gap:10px}
  .band span{font-size:11px}
  .band b{font-size:14px}
}

/* Escala tipográfica accesible en todo el portal */
body{font-size:16px}
.lead{font-size:20px}
.btn{font-size:15px}
.brand small{font-size:11px}
.about article span,.card>small{font-size:12px;font-weight:700}
.about article p,.section-head>p,.card>p,details p{font-size:16px;line-height:1.75}
.about-main small{font-size:15px;line-height:1.35}
.card li,.card a{font-size:14px;line-height:1.55}
.vek-head>div:last-child p,.contact-grid>div>p{font-size:17px}
.dash-head{font-size:12px}
.dash-title small,.console-title small{font-size:11px}
.dash-title button,.console button{font-size:11px}
.metrics small,.console-metrics small{font-size:10px}
.metrics em,.console-metrics em{font-size:10px}
.chart,.ai span,.big-chart{font-size:11px}
.console>aside{font-size:11px}
.console>aside>b{font-size:15px}
.modules span{font-size:14px}
.modules small{font-size:11px}
.benefits article small{font-size:13px}
.benefits h3{font-size:20px}
.timeline small{font-size:11px}
.timeline b{font-size:15px;line-height:1.4}
.technologies p{font-size:12px}
.technologies span{font-size:14px}
summary{font-size:16px}
.contact-data b{font-size:14px}
.contact-data small{font-size:12px}
.contact form>p{font-size:14px}
.contact label{font-size:12px}
.contact input,.contact select,.contact textarea{font-size:15px}
.footer-grid a:not(.brand),.footer-grid p{font-size:14px;line-height:1.6}
.footer-grid>div>b{font-size:14px}
.copyright{font-size:12px}
.wa{font-size:14px}

@media(max-width:600px){
  body{font-size:16px}
  .lead{font-size:18px}
  .about-main p{font-size:18px}
  .about article p,.section-head>p,.card>p,details p{font-size:16px}
  .card li,.card a{font-size:15px}
  .footer-grid a:not(.brand),.footer-grid p{font-size:14px}
  .copyright{font-size:11px;gap:16px;line-height:1.5}
}

/* Fotografía editorial */
.editorial{margin:0;position:relative;overflow:hidden;background:var(--navy)}
.editorial img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.editorial:hover img{transform:scale(1.025)}
.editorial-wide{height:430px;margin:-25px 0 64px;border-radius:10px}
.editorial-wide:after,.editorial-method:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,26,50,.58),transparent 58%)}
.editorial figcaption{position:absolute;z-index:2;color:#fff}
.editorial-wide figcaption{left:36px;bottom:30px;max-width:430px;font-size:17px;line-height:1.5}
.editorial-split{height:390px;margin:58px 0 34px;border-radius:10px;display:grid;grid-template-columns:1.65fr .75fr}
.editorial-split img{grid-column:1}
.editorial-split figcaption{position:static;padding:38px;background:var(--navy);display:flex;flex-direction:column;justify-content:end;gap:12px}
.editorial-split figcaption b{font-size:24px;line-height:1.15}
.editorial-split figcaption span{font-size:15px;line-height:1.65;color:#b7c5d8}
.editorial-method{height:420px;margin:58px 0 0;border-radius:10px}
.editorial-method figcaption{left:36px;bottom:30px;max-width:470px;font-size:17px;line-height:1.5}

@media(max-width:900px){
  .editorial-wide,.editorial-method{height:360px}
  .editorial-split{height:auto;grid-template-columns:1fr}
  .editorial-split img{grid-column:auto;height:330px}
}

@media(max-width:600px){
  .editorial-wide,.editorial-method{height:300px;margin-top:0}
  .editorial-wide figcaption,.editorial-method figcaption{left:20px;right:20px;bottom:20px;font-size:15px}
  .editorial-split{margin-top:40px}
  .editorial-split img{height:260px}
  .editorial-split figcaption{padding:24px}
  .editorial-split figcaption b{font-size:21px}
}

/* Módulos interactivos de Vektara */
.modules a{min-height:112px;padding:20px 15px;border-right:1px solid #29405d;border-bottom:1px solid #29405d;color:#fff;text-decoration:none;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:background .25s ease,border-color .25s ease,transform .25s ease}
.modules a:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#176bff,#0d4fc7);opacity:0;transition:opacity .25s ease}
.modules a>*{position:relative;z-index:1}
.modules a small{display:block;color:#6d87a7;margin-bottom:17px;font-size:11px;transition:color .25s ease}
.modules a b{font-size:14px;line-height:1.35}
.modules a i{margin-top:auto;padding-top:12px;font-size:11px;font-style:normal;color:#fff;opacity:0;transform:translateY(6px);transition:.25s ease}
.modules a:hover,.modules a:focus-visible{border-color:#4f8cff;transform:translateY(-3px);outline:none}
.modules a:hover:before,.modules a:focus-visible:before{opacity:1}
.modules a:hover small,.modules a:focus-visible small{color:#cfe0ff}
.modules a:hover i,.modules a:focus-visible i{opacity:1;transform:none}

/* Página de detalle de módulo */
.module-detail{background:#fff;color:#0c1a2b}
.module-nav{height:82px;background:#071321;border-bottom:1px solid #203650;position:sticky;top:0;z-index:50}
.module-nav .wrap{height:100%;display:flex;align-items:center;gap:28px}
.module-nav a{color:#b8c6d8;text-decoration:none;font-size:14px}
.module-nav .btn{margin-left:auto;color:#fff}
.module-logo{width:164px;height:54px;display:block;position:relative;overflow:hidden;margin-right:auto;flex:0 0 auto}
.module-logo img{position:absolute;height:auto;max-width:none;left:50%;transform:translateX(-50%)}
.module-logo .module-logo-dark{width:190px;top:-92px}
.module-logo .module-logo-light{width:250px;top:-50px}
.module-logo span{color:#fff;font-weight:700;letter-spacing:.08em}
.module-hero{background:#071a32;color:#fff;position:relative;overflow:hidden}
.module-hero-grid{min-height:690px;display:grid;grid-template-columns:.83fr 1.17fr;align-items:center;gap:60px;position:relative}
.module-hero h1{font-size:clamp(48px,5.4vw,76px);line-height:1.02;letter-spacing:-.055em;margin:24px 0}
.module-lead{font-size:19px;line-height:1.7;color:#b5c2d3;max-width:610px}
.module-actions{display:flex;gap:12px;margin-top:32px}
.module-ghost{background:transparent;border:1px solid #3a5372;box-shadow:none}
.module-hero figure{margin:0;border-radius:12px;overflow:hidden;box-shadow:0 35px 80px rgba(0,0,0,.36);transform:perspective(1000px) rotateY(-3deg)}
.module-hero figure img{display:block;width:100%;aspect-ratio:1.5;object-fit:cover}
.module-outcomes{background:#0b2342;color:#fff}
.module-outcomes .wrap{display:grid;grid-template-columns:repeat(3,1fr)}
.module-outcomes article{padding:28px;border-right:1px solid #29415f;display:flex;align-items:center;gap:18px}
.module-outcomes small{color:#6d8bad;font-size:11px}
.module-outcomes b{font-size:18px}
.module-section{padding:120px 0}
.module-section-head{display:flex;align-items:end;justify-content:space-between;gap:70px}
.module-section-head h2{font-size:clamp(43px,5vw,68px);letter-spacing:-.05em;line-height:1.03;margin:24px 0 0}
.module-section-head h2 em{font-style:normal;color:#176bff}
.module-section-head>p{max-width:360px;font-size:17px;line-height:1.65;color:#637286}
.module-features{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid #dfe5ec;border-top:1px solid #dfe5ec;margin-top:70px}
.module-features article{padding:34px;border-right:1px solid #dfe5ec;border-bottom:1px solid #dfe5ec;min-height:210px;transition:.25s ease}
.module-features article:hover{background:#f4f7fb;transform:translateY(-4px)}
.module-features span{font-size:11px;color:#176bff}
.module-features h3{font-size:21px;margin-top:38px}
.module-features p{font-size:15px;line-height:1.65;color:#637286}
.module-proof{background:#f4f7fb;padding:110px 0}
.module-proof .wrap{display:grid;grid-template-columns:1.08fr .92fr;gap:75px;align-items:center}
.module-proof figure{margin:0;border-radius:11px;overflow:hidden;box-shadow:0 25px 60px rgba(7,26,50,.15)}
.module-proof img{display:block;width:100%;aspect-ratio:1.55;object-fit:cover}
.module-proof h2{font-size:43px;line-height:1.08;letter-spacing:-.04em;margin:25px 0}
.module-proof p,.module-proof li{font-size:16px;line-height:1.7;color:#637286}
.module-proof ul{padding-left:19px}
.module-cta{background:#071a32;color:#fff;text-align:center;padding:110px 0}
.module-cta h2{font-size:clamp(40px,5vw,65px);line-height:1.05;letter-spacing:-.05em;margin:25px auto;max-width:900px}

@media(max-width:900px){
  .module-hero-grid,.module-proof .wrap{grid-template-columns:1fr;padding:75px 0}
  .module-hero figure{transform:none}
  .module-features{grid-template-columns:1fr 1fr}
}

@media(max-width:600px){
  .modules a{min-height:105px}
  .modules a i{opacity:.8;transform:none}
  .module-nav .wrap{gap:12px}
  .module-nav .wrap>a:nth-child(2){display:none}
  .module-logo{width:124px;height:50px}
  .module-logo .module-logo-dark{width:170px;top:-82px}
  .module-logo .module-logo-light{width:215px;top:-43px}
  .module-hero-grid{min-height:auto;gap:40px}
  .module-hero h1{font-size:44px}
  .module-lead{font-size:17px}
  .module-actions{flex-direction:column}
  .module-outcomes .wrap{grid-template-columns:1fr}
  .module-outcomes article{border-bottom:1px solid #29415f}
  .module-section{padding:80px 0}
  .module-section-head{display:block}
  .module-features{grid-template-columns:1fr;margin-top:45px}
  .module-proof{padding:75px 0}
  .module-proof h2{font-size:36px}
  .module-cta{padding:80px 0}
}

/* Accesos principales a servicios */
.band a{color:#fff;text-decoration:none;font-size:15px;font-weight:700;letter-spacing:.04em;position:relative;padding:10px 3px}
.band a:after{content:"";position:absolute;left:3px;right:3px;bottom:4px;height:2px;background:#2f7cff;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.band a:hover,.band a:focus-visible{color:#8db7ff;outline:none}
.band a:hover:after,.band a:focus-visible:after{transform:scaleX(1)}
.card>a{display:inline-flex;align-items:center;min-height:38px}

/* Páginas comerciales de servicios */
.service-detail{background:#fff;color:#0c1a2b}
.service-nav{background:#fff;border-color:#dfe5ec}
.service-nav a{color:#526276}
.service-nav .module-logo{background:#fff}
.service-hero{background:linear-gradient(135deg,#071a32 0%,#0a2341 60%,#0e315c 100%);color:#fff;overflow:hidden}
.service-hero-grid{min-height:680px;display:grid;grid-template-columns:.84fr 1.16fr;gap:65px;align-items:center}
.service-hero h1{font-size:clamp(48px,5.4vw,76px);line-height:1.01;letter-spacing:-.055em;margin:25px 0}
.service-hero p:not(.label){font-size:19px;line-height:1.7;color:#b6c5d8;max-width:620px}
.service-hero figure{margin:0;border-radius:12px;overflow:hidden;box-shadow:0 35px 80px rgba(0,0,0,.35)}
.service-hero img{display:block;width:100%;aspect-ratio:1.45;object-fit:cover}
.service-results{background:#f4f7fb;border-bottom:1px solid #dfe5ec}
.service-results .wrap{display:grid;grid-template-columns:repeat(3,1fr)}
.service-results article{padding:30px;border-right:1px solid #dfe5ec;display:flex;align-items:center;gap:20px}
.service-results small{font-size:11px;color:#176bff}
.service-results b{font-size:18px}
.service-section{padding:120px 0}
.service-intro{display:flex;align-items:end;justify-content:space-between;gap:70px}
.service-intro h2{font-size:clamp(43px,5vw,68px);line-height:1.03;letter-spacing:-.05em;margin:25px 0 0}
.service-intro h2 em{font-style:normal;color:#176bff}
.service-intro>p{max-width:370px;font-size:17px;line-height:1.7;color:#637286}
.service-list{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid #dfe5ec;border-top:1px solid #dfe5ec;margin-top:70px}
.service-list article{padding:30px;border-right:1px solid #dfe5ec;border-bottom:1px solid #dfe5ec;min-height:230px;transition:.25s ease}
.service-list article:hover{background:#f4f7fb;transform:translateY(-4px)}
.service-list span{font-size:11px;color:#176bff}
.service-list h3{font-size:19px;line-height:1.3;margin:34px 0 12px}
.service-list p{font-size:14px;line-height:1.65;color:#637286}
.service-process{background:#071a32;color:#fff;padding:110px 0}
.service-process .wrap{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}
.service-process h2{font-size:45px;line-height:1.05;letter-spacing:-.04em}
.service-process p{font-size:16px;line-height:1.7;color:#aebacf}
.service-process ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;border-left:1px solid #29415f;border-top:1px solid #29415f}
.service-process li{min-height:110px;padding:24px;border-right:1px solid #29415f;border-bottom:1px solid #29415f;display:flex;flex-direction:column;gap:18px}
.service-process li small{color:#6581a1;font-size:11px}
.service-process li b{font-size:16px}
.service-proof{padding:110px 0;background:#f4f7fb}
.service-proof .wrap{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:75px}
.service-proof figure{margin:0;border-radius:11px;overflow:hidden;box-shadow:0 25px 60px rgba(7,26,50,.15)}
.service-proof img{display:block;width:100%;aspect-ratio:1.55;object-fit:cover}
.service-proof h2{font-size:43px;line-height:1.07;letter-spacing:-.04em;margin:25px 0}
.service-proof p,.service-proof li{font-size:16px;line-height:1.7;color:#637286}
.service-proof ul{padding-left:20px}

@media(max-width:900px){
  .service-hero-grid,.service-proof .wrap,.service-process .wrap{grid-template-columns:1fr;padding:75px 0}
  .service-list{grid-template-columns:1fr 1fr}
}

@media(max-width:600px){
  .band a{font-size:14px}
  .service-hero-grid{min-height:auto;gap:40px}
  .service-hero h1{font-size:44px}
  .service-hero p:not(.label){font-size:17px}
  .service-results .wrap{grid-template-columns:1fr}
  .service-results article{border-bottom:1px solid #dfe5ec}
  .service-section{padding:80px 0}
  .service-intro{display:block}
  .service-list{grid-template-columns:1fr;margin-top:45px}
  .service-process{padding:75px 0}
  .service-process .wrap{gap:45px}
  .service-process ol{grid-template-columns:1fr}
  .service-proof{padding:75px 0}
  .service-proof h2{font-size:36px}
}
