@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Montserrat:wght@500;600;700;800&display=swap');
:root{--navy:#081b35;--navy2:#102e52;--blue:#1475c5;--cyan:#22b6d8;--ink:#15243a;--muted:#64748b;--bg:#f3f7fb;--border:#e4ebf2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.7 'DM Sans',Arial,sans-serif;background:#fff}h1,h2,h3{font-family:Montserrat,Arial,sans-serif;line-height:1.2;letter-spacing:-.025em}h1{font-size:clamp(38px,5vw,70px);margin:20px 0 24px;font-weight:800}h2{font-size:clamp(29px,3.2vw,43px);margin:12px 0 22px}h3{font-size:20px;margin:12px 0}p{margin:0 0 16px}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}.shell{width:min(1160px,calc(100% - 48px));margin:auto}.header{background:var(--navy);position:sticky;top:0;z-index:20;box-shadow:0 4px 18px #06132920}.head-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{width:220px;flex-shrink:0}.brand img{max-height:65px;object-fit:contain;object-position:left}.header nav{display:flex;align-items:center;gap:24px}.header nav a{color:#eaf5ff;font-size:14px;font-weight:700;white-space:nowrap}.header nav a:hover{color:#5cddfa}.nav-cta{background:var(--cyan);padding:10px 16px;border-radius:6px;color:#04233b!important}.hamb{display:none}.hero{background:linear-gradient(120deg,#081b35 0%,#11345b 75%,#125e85 100%);color:white;overflow:hidden}.hero-grid{min-height:510px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:60px;padding:75px 0}.hero-grid:has(>div:only-child){grid-template-columns:1fr;min-height:340px}.hero p{font-size:19px;max-width:580px;color:#dcecf8}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.18em;color:var(--cyan);text-transform:uppercase}.hero-art{display:flex;justify-content:center;align-items:center}.hero-art img{width:100%;max-height:420px;object-fit:contain;filter:drop-shadow(0 20px 30px #00172b33)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:47px;padding:12px 24px;border-radius:6px;background:var(--cyan);color:#06243b;font-weight:800;font-size:14px;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px);background:#67d6ef}.btn.ghost{background:transparent;border:1px solid #8bb4d0;color:white}.btn.outline{background:white;border:1px solid var(--blue);color:var(--blue)}.section{padding:88px 0}.section.tint{background:var(--bg)}.section-head{text-align:center;max-width:760px;margin:0 auto 45px}.section-head p{color:var(--muted)}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:65px}.split.reverse .split-copy{order:2}.split.reverse .split-image{order:1}.split-copy p{color:#536276}.split-image{min-height:280px;display:flex;align-items:center;justify-content:center}.split-image img{max-height:480px;width:100%;object-fit:contain;border-radius:14px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card{background:white;border:1px solid var(--border);border-radius:16px;padding:30px;box-shadow:0 12px 35px #102e520a;min-width:0}.card h3{color:var(--navy2)}.card p{color:var(--muted);font-size:15px}.card a{color:var(--blue);font-weight:700}.card-icon{width:74px;height:74px;display:grid;place-items:center;margin-bottom:16px;background:#edf7fc;border-radius:15px}.card-icon img{max-width:55px;max-height:55px;object-fit:contain}.card-photo{height:145px;display:grid;place-items:center;margin:-8px -8px 20px;background:#f4f8fb;border-radius:10px}.card-photo img{max-height:135px;max-width:95%;object-fit:contain}.profiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.profile{overflow:hidden;border:1px solid var(--border);border-radius:14px;background:white;text-align:center}.profile img{width:100%;height:190px;object-fit:contain;background:#f5f9fc;padding:12px}.profile strong{display:block;padding:15px}.tech-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px}.tech-grid div{background:white;min-height:110px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:12px;padding:18px}.tech-grid img{max-width:100%;max-height:75px;object-fit:contain}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.step{padding:24px;border:1px solid var(--border);border-radius:12px;background:#fff}.step span{font-size:29px;font-weight:800;color:var(--cyan);font-family:Montserrat}.step p{font-weight:700;margin:10px 0 0}.advantages{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.advantages>div{text-align:center;background:white;border-radius:14px;padding:22px;border:1px solid var(--border)}.advantages img{height:130px;width:100%;object-fit:contain}.advantages h3{font-size:17px}.clients{display:flex;justify-content:center;align-items:center;gap:60px;flex-wrap:wrap}.clients img{max-width:180px;max-height:90px;object-fit:contain}.contact{background:var(--navy);border-radius:22px;padding:55px;display:grid;grid-template-columns:1fr .7fr;gap:30px;align-items:center;color:white}.contact p{color:#c6d9eb}.contact img{max-height:310px;margin:auto}.cta-center{text-align:center;display:flex;justify-content:center;gap:15px;flex-wrap:wrap}.center{text-align:center}footer{background:#061629;color:#cad7e7;padding:60px 0 24px}.foot{display:flex;justify-content:space-between;gap:40px}.foot img{max-width:220px;margin-bottom:18px}.foot strong{color:white}.foot a:hover{color:var(--cyan)}.copyright{border-top:1px solid #ffffff20;padding-top:20px;margin-top:40px;font-size:13px;color:#879bb1}@media(max-width:950px){.head-inner{min-height:75px}.hamb{display:block;background:transparent;border:1px solid #7792a8;color:white;padding:6px 12px;border-radius:6px;font-size:23px}.header nav{display:none;position:absolute;left:0;right:0;top:75px;background:var(--navy);padding:22px 6%;flex-direction:column;align-items:stretch;gap:15px}.menu-open .header nav{display:flex}.hero-grid{gap:24px}.split{gap:30px}.cards{grid-template-columns:repeat(2,1fr)}.tech-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:680px){.shell{width:min(100% - 32px,1160px)}.brand{width:170px}.hero-grid{grid-template-columns:1fr;padding:55px 0;min-height:0}.hero-art img{max-height:250px}.section{padding:60px 0}.split,.contact{grid-template-columns:1fr;gap:25px}.split.reverse .split-copy,.split.reverse .split-image{order:initial}.split-image{min-height:0}.cards,.profiles,.process,.advantages{grid-template-columns:1fr}.tech-grid{grid-template-columns:repeat(2,1fr)}.contact{padding:30px}.foot{flex-direction:column}.profile img{height:220px}}

/* Quantum: seccion perfiles fiel a iconografia original */
.profiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.profile{border:1px solid #e5edf2;box-shadow:0 6px 18px #0c274008}.profile img{height:205px;width:100%;object-fit:contain;padding:20px 32px;background:#fff}.profile strong{font-size:17px}.hero-network{position:relative;isolation:isolate;background:linear-gradient(115deg,#061b34 0%,#08334c 52%,#0e6379 100%)}.hero-network #network-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:.65}.hero-network:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#061b34bb 0%,#071d3666 55%,transparent 100%);z-index:-1;pointer-events:none}.hero-network .hero-grid{position:relative;z-index:1}@media(max-width:680px){.profiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.profile img{height:130px;padding:12px}.profile strong{font-size:13px;padding:12px 6px}.hero-network #network-canvas{opacity:.45}}@media(prefers-reduced-motion:reduce){.hero-network #network-canvas{opacity:.18}}

/* Servicios: layout fiel a referencia, texto justificado y botones de detalle */
body:has(.service-more) .hero{background:#f4f8fb;color:#15243a}
body:has(.service-more) .hero-grid{min-height:185px;padding:45px 0}
body:has(.service-more) .hero h1{font-size:clamp(32px,4vw,48px);margin:10px 0}
body:has(.service-more) .hero p{color:#536276}
body:has(.service-more) .section{padding:74px 0}
body:has(.service-more) .split{gap:42px}
body:has(.service-more) .split-copy h2{font-size:clamp(25px,2.6vw,34px);text-transform:uppercase;color:#21b6d5;letter-spacing:0;line-height:1.18}
body:has(.service-more) .split-copy p,.service-detail .detail-copy p{text-align:justify;text-justify:inter-word;hyphens:auto;line-height:1.9;color:#273549}
body:has(.service-more) .split-image img{border-radius:0;max-height:420px}
.service-more{display:flex;align-items:center;justify-content:center;margin:27px auto 0;max-width:310px;min-height:48px;padding:10px 24px;background:#505052;color:white;border-radius:30px;font-size:14px;font-weight:800;text-transform:uppercase;transition:background .2s}
.service-more:hover{background:#1db5d5;color:#08223b}
.service-detail{min-height:65vh}.detail-copy{max-width:900px;margin:20px auto}.detail-copy h1{font-size:clamp(30px,4vw,50px);color:#21b6d5;text-transform:uppercase}.back-service{color:#127d9e;font-weight:700}
@media(max-width:680px){body:has(.service-more) .hero-grid{min-height:0;padding:32px 0}body:has(.service-more) .section{padding:48px 0}body:has(.service-more) .split{gap:18px}}

/* Full service details: independent layout, preserving source content and images */
.detail-hero{padding:65px 0 75px;background:linear-gradient(125deg,#f4f9fc,#fff)}
.detail-back{display:inline-block;margin-bottom:36px;color:#119fbe;font-weight:750;text-decoration:none}
.detail-hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:58px}
.detail-hero h1{font-size:clamp(34px,4.1vw,54px);line-height:1.1;color:#20b8d4;text-transform:uppercase;margin:14px 0 24px}
.detail-hero p,.detail-panel p{font-size:16px;line-height:1.85;text-align:justify;hyphens:auto;color:#3e4d61}
.detail-banner{width:100%;height:auto;object-fit:contain;max-height:400px}
.detail-section{padding:76px 0}.detail-tint{background:#f2f8fb}
.detail-heading{text-align:center;margin-bottom:36px}.detail-heading h2{font-size:clamp(28px,3vw,40px);color:#15243a;margin:12px 0}
.detail-process{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.detail-step{display:grid;grid-template-columns:130px minmax(0,1fr);align-items:center;gap:20px;border:1px solid #e1ebf1;background:#fff;padding:22px;border-radius:16px;box-shadow:0 8px 24px rgba(12,38,65,.045)}
.detail-step img{width:130px;height:125px;object-fit:contain}.detail-step h3{font-size:21px;color:#15243a;margin:0 0 8px}.detail-step p{font-size:15px;line-height:1.65;color:#546278;margin:0;text-align:justify}
.detail-tech{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.detail-tech>div{display:flex;align-items:center;justify-content:center;background:#fff;border-radius:12px;min-height:120px;padding:16px;border:1px solid #e0ebf1}.detail-tech img{width:100%;max-width:120px;max-height:95px;object-fit:contain}
.detail-panel{max-width:950px;margin:auto}.detail-panel p{margin-bottom:20px}
.detail-contact{display:grid;grid-template-columns:1.3fr 1fr;gap:36px;align-items:center}.detail-contact img{width:100%;max-height:330px;object-fit:contain}.detail-contact h2{font-size:clamp(30px,3.5vw,44px);color:#15243a}.detail-contact p{font-size:17px;line-height:1.7;color:#52637a}
.detail-cta{display:inline-block;margin-top:16px;padding:14px 30px;border-radius:28px;background:#22b8d5;color:#09243a;font-weight:800}
@media(max-width:800px){.detail-hero-grid,.detail-contact{grid-template-columns:1fr}.detail-hero{padding:38px 0 45px}.detail-section{padding:48px 0}.detail-process{grid-template-columns:1fr}.detail-tech{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:520px){.detail-step{grid-template-columns:85px minmax(0,1fr);padding:14px;gap:12px}.detail-step img{width:85px;height:90px}.detail-step h3{font-size:17px}.detail-tech{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Reclutamiento TI: tabla original reconstruida */
.rh-comparison{background:#fff}.rh-comparison .detail-heading{text-align:center}.rh-comparison h2{text-transform:uppercase;color:#20b9d2}.rh-table-scroll{overflow-x:auto}.rh-table{width:100%;border-collapse:collapse;min-width:690px;table-layout:fixed;background:#fff}.rh-table th,.rh-table td{border:1px solid #dce3e8;padding:18px 16px;vertical-align:middle}.rh-table th{background:#f3f8fa;color:#12223c;font-size:16px;text-align:center}.rh-table th:first-child,.rh-table td:first-child{text-align:left;width:42%}.rh-table td:not(:first-child){text-align:center;width:29%}.rh-table tbody tr:nth-child(odd){background:#f6f8fa}.rh-check{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#25b8d0;color:white;font-size:24px;font-weight:800;line-height:1}.rh-table td:first-child{line-height:1.65}

/* Tecnologia cloud anadida */
.detail-tech .tech-cloud {display:flex;align-items:center;justify-content:center;overflow:hidden;}
.detail-tech .tech-cloud img {display:block;width:100%;max-width:260px;height:auto;object-fit:contain;border-radius:2px;}

/* Icono cloud sin dependencia de rutas del servidor */
.detail-tech .tech-cloud img{display:block;max-width:100%;width:150px;height:auto;object-fit:contain;margin:auto}

/* Servicios legales: pestanas interactivas como en el sitio original */
.legal-integrated{padding-top:45px}.legal-integrated .detail-heading h2{text-transform:uppercase;color:#27bbd2;font-size:clamp(30px,3.6vw,44px)}.legal-integrated .detail-panel{max-width:1100px}.legal-tabs{display:flex;align-items:flex-end;gap:0}.legal-tab{border:1px solid transparent;background:transparent;color:#747474;font:inherit;font-size:16px;font-weight:800;text-transform:uppercase;padding:19px 25px;cursor:pointer}.legal-tab.active{border-color:#24bcd6;border-bottom:1px solid #fff;color:#23b9d3;background:#fff;position:relative;z-index:1;margin-bottom:-1px}.legal-tabpanel{border:1px solid #24bcd6;padding:26px 24px 35px;background:white;color:#222;line-height:1.85}.legal-tabpanel[hidden]{display:none!important}.legal-tabpanel p{color:#222;line-height:1.8;text-align:justify;margin:0 0 25px}.legal-tabpanel ul{margin:0;padding-left:30px}.legal-tabpanel li{padding:1px 0}.legal-integrated .detail-heading{margin-bottom:26px}@media(max-width:600px){.legal-tab{font-size:12px;padding:14px 10px}.legal-tabpanel{padding:20px 15px}.legal-tabpanel ul{padding-left:20px}}

/* Ajustes de banners y estadisticas Quantum */
.hero.hero-clean .hero-grid{display:block;max-width:1050px;text-align:center}
.hero.hero-clean .hero-grid>div:first-child{max-width:100%}
.hero.hero-clean .hero-actions,.hero.hero-clean .hero-art{display:none!important}
.hero.hero-clean{padding:78px 0 85px}
.hero.hero-clean h1{font-size:clamp(38px,5vw,65px);margin:12px 0 16px}
.hero.hero-clean p{max-width:760px;margin:0 auto}
.rh-stats-section{background:#fff;padding:64px 0 54px}
.rh-stats-section h2{text-align:center;color:#24b9d2;text-transform:uppercase;font-size:clamp(28px,3.5vw,44px);line-height:1.2;margin:0 0 28px}
.rh-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#22b8d0;overflow:hidden}
.rh-stat{min-height:270px;padding:38px 25px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:white;background:linear-gradient(125deg,#2ab9d2,#16849a)}
.rh-stat:nth-child(2){background:linear-gradient(125deg,#25bfd9,#1c9ab3)}
.rh-stat strong{font-size:clamp(36px,4vw,56px);line-height:1.15;color:white}
.rh-stat span{font-size:clamp(16px,1.4vw,21px);line-height:1.35;max-width:290px;margin-top:8px;color:white}
@media(max-width:650px){.rh-stats-grid{grid-template-columns:1fr}.rh-stat{min-height:175px}.hero.hero-clean{padding:48px 0}}

/* Titulos en mayusculas de la seccion Nosotros */
body:has(.rh-stats-section) main h1, body:has(.rh-stats-section) main h2, body:has(.rh-stats-section) main h3 {text-transform:uppercase;}

/* Banner SOBRE NOSOTROS: misma identidad y escala que QUIENES SOMOS */
.nosotros-banner-azul{background:linear-gradient(120deg,#081b35 0%,#11345b 75%,#125e85 100%)!important;color:#fff;padding:88px 0;}
.nosotros-banner-azul .split-copy h2{font-size:clamp(38px,5vw,65px);color:#fff;line-height:1.1;margin:12px 0 24px;font-weight:800;}
.nosotros-banner-azul .split-copy p{color:#dcecf8;font-size:18px;line-height:1.75;}
.nosotros-banner-azul .eyebrow{color:#24bddb;}
@media(max-width:767px){.nosotros-banner-azul{padding:58px 0}.nosotros-banner-azul .split-copy h2{font-size:clamp(36px,8vw,48px)}.nosotros-banner-azul .split-copy p{font-size:16px}}

/* Sobre Nosotros: fondo blanco y escala tipografica identica al modulo Quantum IT Recruitment */
.nosotros-bloque-claro{background:#fff!important;color:#17243d!important;}
.nosotros-bloque-claro .split-copy h2{font-size:clamp(28px,3.1vw,44px)!important;line-height:1.18!important;font-weight:800;color:#17243d!important;margin:12px 0 24px!important;}
.nosotros-bloque-claro .split-copy p{font-size:inherit!important;line-height:inherit!important;color:#536276!important;}
.nosotros-bloque-claro .eyebrow{color:#1fb6d4!important;}


/* Talento: banner centrado, cuatro beneficios, testimonios y vacantes */
.talent-hero .hero-grid,.vacancies-hero .hero-grid{min-height:440px;display:flex;align-items:center;justify-content:center;text-align:center;padding:85px 0}
.talent-hero .hero-grid>div,.vacancies-hero .hero-grid>div{width:100%;max-width:900px;margin:auto}
.talent-hero h1,.vacancies-hero h1{text-transform:uppercase}
.talent-hero p,.vacancies-hero p{max-width:none}
.talent-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.talent-benefits .card{min-width:0}
.talent-benefits .card-photo{height:155px}
.talent-benefits .card-photo img{height:100%;width:100%;object-fit:contain}
.testimonials-section{text-align:center}
.testimonials-frame{max-width:1000px;margin:0 auto}
.testimonial-slide{display:none}
.testimonial-slide.active{display:block}
.testimonial-slide blockquote{background:#e9edf1;padding:28px 36px;font-size:clamp(17px,2vw,22px);font-style:italic;line-height:1.65;border:0;margin:0 auto 22px;position:relative}
.testimonial-slide blockquote:after{content:"";position:absolute;bottom:-13px;left:calc(50% - 14px);border-width:14px 14px 0;border-style:solid;border-color:#e9edf1 transparent transparent}
.testimonial-author{display:flex;flex-direction:column;gap:2px;margin:20px auto 22px}
.testimonial-author strong{font-size:16px}
.testimonial-author span{font-size:14px;color:#536276}
.testimonial-controls{display:flex;justify-content:center;align-items:center;gap:22px}
.testimonial-prev,.testimonial-next{background:transparent;border:0;color:#536276;font-size:32px;cursor:pointer;padding:0 12px}
.testimonial-dots{display:flex;gap:10px}
.testimonial-dot{width:9px;height:9px;border-radius:50%;border:0;background:#d3d8de;padding:0;cursor:pointer}
.testimonial-dot.active{background:var(--navy)}
.vacancy-section{background:#fff}
.vacancy-intro{text-align:center;margin:0 auto 40px}
.vacancy-intro>a{color:#159dbf;font-weight:700}
.vacancy-list{max-width:1000px;margin:0 auto;display:grid;gap:15px}
.vacancy-item{border:1px solid #dfe8ef;border-radius:10px;overflow:hidden;background:#fff}
.vacancy-item summary{padding:20px 26px;background:#f4f8fb;font-weight:800;font-size:19px;color:#102e52;cursor:pointer}
.vacancy-item[open] summary{background:#e8f6fa}
.vacancy-description{padding:25px 30px;color:#46576c;line-height:1.8;overflow-wrap:anywhere}
.vacancy-description ul{padding-left:25px}
.vacancy-description a.btn{margin-top:20px}
.vacancy-contact{max-width:1000px;margin:60px auto 0;padding:36px;border-radius:12px;background:#f3f7fb;text-align:center}
@media(max-width:1000px){.talent-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.talent-benefits{grid-template-columns:1fr}.talent-hero .hero-grid,.vacancies-hero .hero-grid{min-height:300px;padding:65px 0}.testimonial-slide blockquote{padding:22px 18px}.vacancy-description{padding:20px}.vacancy-contact{padding:25px 18px}}

/* Formularios de vacantes */
.vacancy-apply{max-width:1050px;margin:58px auto 0;padding:35px;border:1px solid #dbe6ef;border-radius:14px;background:#fff;box-shadow:0 12px 30px rgba(10,33,60,.04)}
.vacancy-apply h2{margin:0 0 12px;text-align:center;color:#122943}
.vacancy-apply>p{text-align:center;color:#526479;margin:0 0 30px}
.application-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.application-field{display:flex;flex-direction:column;gap:8px;min-width:0}
.application-field.wide{grid-column:1/-1}
.application-field label,.application-field legend{font-weight:700;color:#17304e;font-size:15px}
.application-field input:not([type=checkbox]),.application-field select,.application-field textarea{width:100%;box-sizing:border-box;min-height:46px;border:1px solid #cbd8e5;border-radius:7px;background:#fff;padding:11px 12px;color:#193047;font:inherit}
.application-field textarea{min-height:120px;resize:vertical}
.application-field input:focus,.application-field select:focus,.application-field textarea:focus{outline:2px solid #23b9d3;outline-offset:1px}
.application-checks{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:5px}
.application-checks label{font-weight:400;display:inline-flex;align-items:center;gap:7px}
.application-field fieldset{border:0;padding:0;margin:0}
.application-submit{margin-top:25px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.application-submit button{border:0;border-radius:7px;background:#23b9d3;color:#07253b;font:inherit;font-weight:800;padding:14px 32px;cursor:pointer}
.application-note{font-size:13px;color:#58677b;line-height:1.5}
@media(max-width:800px){.application-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:550px){.application-grid{grid-template-columns:1fr}.vacancy-apply{padding:24px 16px}}

/* Estandarizar banners de Blog y Servicios con Quienes somos */
.hero.standard-section-hero {
  background:linear-gradient(120deg,#081b35 0%,#11345b 75%,#125e85 100%) !important;
  color:#fff !important;
  padding:0 !important;
}
.hero.standard-section-hero .hero-grid {
  display:flex !important;
  min-height:440px !important;
  padding:85px 0 !important;
  justify-content:center !important;
  align-items:center !important;
  text-align:center !important;
  grid-template-columns:1fr !important;
}
.hero.standard-section-hero .hero-grid>div {
  width:100% !important;
  max-width:900px !important;
  margin:0 auto !important;
}
.hero.standard-section-hero h1 {
  font-size:clamp(38px,5vw,65px) !important;
  line-height:1.1;
  color:#fff !important;
  text-transform:uppercase !important;
  margin:14px 0 18px !important;
}
.hero.standard-section-hero p {
  max-width:780px !important;
  margin:0 auto !important;
  color:#dcecf8 !important;
}
.hero.standard-section-hero .hero-actions,
.hero.standard-section-hero .hero-art {display:none !important}
@media(max-width:600px) {
  .hero.standard-section-hero .hero-grid {min-height:310px !important;padding:65px 0 !important}
}

/* Contacto general y accesos rapidos de menu */
.header .head-inner nav{display:flex;align-items:center;gap:22px}
.nav-quick-links{display:flex;align-items:center;gap:10px;margin-left:3px}
.nav-quick-links a{display:inline-flex!important;align-items:center;justify-content:center;width:38px;height:38px;min-width:38px;border-radius:50%;background:#1bb5d4;color:#fff!important;transition:background .2s,transform .2s}
.nav-quick-links a:hover{background:#0d91b2;transform:translateY(-2px)}
.nav-quick-links svg{width:20px;height:20px;fill:currentColor}
.contact-section .section-head{text-align:center;max-width:780px;margin:0 auto 42px}
.contact-grid{display:grid;grid-template-columns:minmax(0,0.85fr) minmax(0,1.15fr);gap:32px;align-items:start}
.contact-details,.contact-form-panel{border:1px solid #dce8f0;border-radius:14px;background:#fff;padding:32px;box-shadow:0 10px 25px rgba(8,29,56,.04)}
.contact-details h3,.contact-form-panel h3,.contact-map h3{margin:0 0 25px;color:#142c4b;font-size:24px}
.contact-info-item{padding:16px 0;border-bottom:1px solid #e6edf3;display:flex;flex-direction:column;gap:7px}
.contact-info-item strong{color:#142c4b}
.contact-info-item a{color:#187f9e;text-decoration:none;overflow-wrap:anywhere}
.general-contact-form{display:grid;gap:18px}
.general-contact-form label{display:grid;gap:8px;font-weight:650;color:#243e59}
.general-contact-form input:not([type=checkbox]),.general-contact-form select,.general-contact-form textarea{width:100%;padding:13px 14px;border:1px solid #cbdbe7;border-radius:7px;font:inherit;background:#fff;color:#182e47;box-sizing:border-box}
.general-contact-form textarea{resize:vertical;min-height:120px}
.general-contact-form .contact-consent{display:flex;align-items:flex-start;gap:10px;font-size:14px;font-weight:400}
.contact-consent input{margin-top:4px}
.contact-form-note{font-size:13px;color:#6a7b8e;margin:0}
.general-contact-form button[disabled]{opacity:.55;cursor:not-allowed}
.contact-map{margin-top:44px}
.contact-map iframe{width:100%;height:400px;border:0;border-radius:12px;display:block;margin-bottom:15px}
.contact-map>a{color:#1188ab;font-weight:700}
@media(max-width:1150px){.header .head-inner nav{gap:12px}.nav-quick-links{gap:5px}.nav-quick-links a{width:33px;height:33px;min-width:33px}}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr}.header .head-inner nav{gap:12px}}
@media(max-width:600px){.contact-details,.contact-form-panel{padding:22px}.contact-map iframe{height:300px}}

/* Footer global: navegación vertical y datos de contacto */
.foot-columns{display:grid;grid-template-columns:1.2fr .75fr 1fr;gap:clamp(28px,5vw,85px);align-items:start;padding-top:58px;padding-bottom:38px}.foot-columns>div{min-width:0}.foot-nav nav{display:flex;flex-direction:column;align-items:flex-start;gap:11px;margin-top:22px}.foot-columns strong{display:block;color:#fff;font-size:17px;margin-bottom:18px}.foot-columns a{color:#d5e4f0;text-decoration:none;line-height:1.6}.foot-columns a:hover{color:#27b9d4}.foot-contact>a{display:block;margin:0 0 16px;overflow-wrap:anywhere}.foot-social{display:flex;gap:12px;margin-top:22px}.foot-social a{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:#23bad3;color:#fff}.foot-social svg{width:23px;height:23px}.foot-brand img{max-width:240px;width:100%;height:auto}.foot-brand p{max-width:260px;color:#d5e4f0}@media(max-width:780px){.foot-columns{grid-template-columns:1fr 1fr;gap:35px}.foot-brand{grid-column:1/-1}}@media(max-width:520px){.foot-columns{grid-template-columns:1fr}.foot-brand{grid-column:auto}}

/* Photo parallax section banners: preserves the site's navy/cyan branding */
section.hero.parallax-section-hero {
  position:relative; isolation:isolate; overflow:hidden;
  background-image:linear-gradient(110deg,rgba(5,22,45,.84),rgba(9,64,104,.72)),var(--hero-image) !important;
  background-position:center,center !important;
  background-repeat:no-repeat !important;
  background-size:cover !important;
  background-attachment:scroll,fixed !important;
  color:#fff !important;
}
section.hero.parallax-section-hero h1,section.hero.parallax-section-hero .eyebrow {color:#fff !important}
section.hero.parallax-section-hero p {color:#e5f2fb !important}
section.hero.parallax-section-hero .hero-grid {position:relative;z-index:1}
@media (max-width:900px), (prefers-reduced-motion:reduce) {
 section.hero.parallax-section-hero {background-attachment:scroll,scroll !important}
}

/* Consistent photographic hero heights across all inner pages */
section.hero.parallax-section-hero,
section.hero.parallax-section-hero.standard-section-hero,
section.hero.parallax-section-hero.vacancies-hero,
section.hero.parallax-section-hero.talent-hero {
  height:430px !important; min-height:430px !important; max-height:430px !important;
  display:flex !important; align-items:center !important;
  background-position:center,center 38% !important;
}
section.hero.parallax-section-hero .shell,
section.hero.parallax-section-hero .hero-grid {
  width:100%; min-height:0 !important; height:auto !important;
}
section.hero.parallax-section-hero .hero-grid {padding:36px 0 !important}
section.hero.parallax-section-hero .hero-grid>div {max-width:900px;margin-left:auto;margin-right:auto}
section.hero.parallax-section-hero h1 {font-size:clamp(36px,4.5vw,62px) !important}
.foot-social {display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.foot-social a {width:44px;height:44px;flex:0 0 44px}
.foot-social svg {width:23px;height:23px}
@media(max-width:700px) {
 section.hero.parallax-section-hero,section.hero.parallax-section-hero.standard-section-hero,
 section.hero.parallax-section-hero.vacancies-hero,section.hero.parallax-section-hero.talent-hero {
 height:320px !important;min-height:320px !important;max-height:320px !important;
 }
 section.hero.parallax-section-hero .hero-grid {padding:25px 0 !important}
}

/* Footer: logo centered vertically, legal link on copyright baseline */
.foot-columns .foot-brand{display:flex;flex-direction:column;justify-content:center;align-items:center;align-self:stretch;text-align:center}
.foot-columns .foot-brand img{display:block;max-width:260px;width:100%;height:auto}
footer .copyright{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
footer .copyright .footer-privacy{color:inherit;text-decoration:none}
footer .copyright .footer-privacy:hover{text-decoration:underline;color:#23bad3}
/* Floating WhatsApp shortcut */
.quantum-whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:9999;display:flex;align-items:center;justify-content:center;width:62px;height:62px;border-radius:50%;background:#25d366;color:white;box-shadow:0 6px 22px rgba(0,0,0,.27);transition:transform .2s ease,box-shadow .2s ease}
.quantum-whatsapp-float:hover{transform:translateY(-3px);box-shadow:0 10px 25px rgba(0,0,0,.3)}
.quantum-whatsapp-float svg{height:36px;width:36px;fill:currentColor}
@media(max-width:600px){.quantum-whatsapp-float{right:15px;bottom:15px;width:55px;height:55px}.quantum-whatsapp-float svg{width:32px;height:32px}}

/* High-resolution people imagery: fixed focal area and uniform header height */
section.hero.parallax-section-hero {background-position:center center !important;background-size:cover !important;}
@media(max-width:700px){section.hero.parallax-section-hero {background-position:center center !important;}}

/* Full-bleed photographic banners: use the entire image without side cropping. */
section.hero.parallax-section-hero{width:100% !important;max-width:none !important;background-size:cover,100% 100% !important;background-position:center center,center center !important;}
@media(max-width:700px){section.hero.parallax-section-hero{background-size:cover,cover !important;background-position:center,center !important;}}

/* Quantum motion system: subtle, accessible and consistent */
:root {--motion-ease:cubic-bezier(.22,1,.36,1)}
@keyframes qHeroEnter {from {opacity:0;transform:translateY(26px)} to {opacity:1;transform:translateY(0)}}
@keyframes qPop {from {opacity:0;transform:scale(.95)} to {opacity:1;transform:scale(1)}}
@keyframes qFloat {0%,100%{transform:translateY(0)} 50%{transform:translateY(-5px)}}
@keyframes qSheen {from{transform:translateX(-160%) skewX(-20deg)} to{transform:translateX(260%) skewX(-20deg)}}
@media (prefers-reduced-motion:no-preference) {
  .hero h1,.hero .eyebrow,.hero .kicker,.hero p,.hero .hero-actions {animation:qHeroEnter .78s var(--motion-ease) both}
  .hero h1{animation-delay:.09s}.hero p{animation-delay:.19s}.hero .hero-actions{animation-delay:.3s}
  .q-reveal {opacity:0;transform:translate3d(0,25px,0);transition:opacity .7s var(--motion-ease),transform .7s var(--motion-ease);transition-delay:var(--q-delay,0ms)}
  .q-reveal.q-visible {opacity:1;transform:translate3d(0,0,0)}
  .q-reveal.q-from-left{transform:translate3d(-28px,0,0)}
  .q-reveal.q-from-right{transform:translate3d(28px,0,0)}
  .q-reveal.q-visible.q-from-left,.q-reveal.q-visible.q-from-right{transform:translate3d(0,0,0)}
  .card,.talent-benefits .card,.foot-social a,.header a,.btn,button,a[class*="button"],.social-icons a,.q-whatsapp-float {transition:transform .28s var(--motion-ease),box-shadow .28s ease,background-color .25s ease,color .25s ease,border-color .25s ease}
  .card:hover,.talent-benefits .card:hover{transform:translateY(-5px);box-shadow:0 16px 38px rgba(3,23,47,.12)}
  .foot-social a:hover,.social-icons a:hover{transform:translateY(-4px) scale(1.07)}
  .btn:hover,button:hover,a[class*="button"]:hover{transform:translateY(-2px)}
  .q-whatsapp-float:hover{transform:scale(1.08)}
  img {transition:filter .35s ease}
  details[open] > *:not(summary){animation:qHeroEnter .35s var(--motion-ease) both}
  .q-reveal:focus-within{opacity:1;transform:none}
}
@media(prefers-reduced-motion:reduce){
  .q-reveal{opacity:1!important;transform:none!important;transition:none!important}
  .hero h1,.hero .eyebrow,.hero .kicker,.hero p,.hero .hero-actions{animation:none!important}
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* Full-width banners: full image visible, no side clipping or stretching. */
section.hero.parallax-section-hero {
 width:100% !important;max-width:none !important;
 background-image:linear-gradient(105deg,rgba(3,19,40,.78),rgba(5,37,68,.56)),var(--hero-image) !important;
 background-size:cover,100% 100% !important;
 background-position:center center,center center !important;
 background-repeat:no-repeat !important;
 background-attachment:scroll,scroll !important;
}
@media(min-width:901px) and (prefers-reduced-motion:no-preference){
 section.hero.parallax-section-hero {background-attachment:scroll,fixed !important;}
}
@media(prefers-reduced-motion:no-preference) {
 .q-reveal-item {
  opacity:0;transform:translate3d(0,22px,0);
  transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);
  transition-delay:var(--q-delay,0ms);
 }
 .q-reveal-item.q-visible {opacity:1;transform:translate3d(0,0,0)}
 main section:not(.hero) img:hover {filter:brightness(1.05);transition:filter .3s ease}
}
@media(prefers-reduced-motion:reduce){.q-reveal-item{opacity:1!important;transform:none!important}}

/* FINAL FIX: edge-to-edge headers; no contained photo or blurred side panels */
html body section.hero.parallax-section-hero {
 background-image:linear-gradient(105deg,rgba(4,20,40,.76),rgba(7,32,58,.57)),var(--hero-image) !important;
 background-size:cover,cover !important;
 background-position:center center,center center !important;
 background-repeat:no-repeat,no-repeat !important;
 background-attachment:scroll,scroll !important;
 width:100% !important;
}
@media(min-width:901px) and (prefers-reduced-motion:no-preference) {
 html body section.hero.parallax-section-hero {background-attachment:scroll,scroll !important}
}

/* Final structural banner fix: actual full-width image layer, not background-size tricks */
html body section.hero.q-fullbleed-hero {
 position:relative !important;
 isolation:isolate !important;
 width:100% !important;
 max-width:100% !important;
 background:#10233c !important;
 background-image:none !important;
 overflow:hidden !important;
}
html body section.hero.q-fullbleed-hero > img.q-fullbleed-image {
 display:block !important;
 position:absolute !important;
 inset:0 !important;
 width:100% !important;
 height:100% !important;
 max-width:none !important;
 max-height:none !important;
 min-width:100% !important;
 object-fit:cover !important;
 object-position:center center !important;
 z-index:-2 !important;
 border:0 !important;
 margin:0 !important;
 padding:0 !important;
 transform:none !important;
 opacity:1 !important;
}
html body section.hero.q-fullbleed-hero::before {
 content:"" !important;
 position:absolute !important;
 inset:0 !important;
 display:block !important;
 background:linear-gradient(110deg,rgba(5,22,45,.75),rgba(9,42,70,.59)) !important;
 z-index:-1 !important;
 pointer-events:none !important;
}
html body section.hero.q-fullbleed-hero > .hero-grid {
 position:relative !important;
 z-index:1 !important;
}

/* Twitter icon: centered and fully visible */
.foot-social a[aria-label="Twitter"] {display:inline-flex!important;align-items:center!important;justify-content:center!important;overflow:visible!important}
.foot-social a[aria-label="Twitter"] svg {width:22px!important;height:22px!important;display:block!important;overflow:visible!important;flex-shrink:0!important}

.privacy-section .shell{max-width:920px;text-align:center}.privacy-section p{max-width:760px;margin:20px auto 30px;line-height:1.85}

/* Legible, consistent long-form legal page */
.privacy-section{padding:76px 0 90px!important;background:#fff}
.privacy-section .privacy-content{max-width:980px!important;text-align:left!important}
.privacy-content .privacy-intro{font-size:1.13rem;line-height:1.85;color:#34465e;margin:0 0 34px}
.privacy-article{padding:24px 0;border-bottom:1px solid #e3eaf1}
.privacy-article h2{font-size:clamp(20px,2.1vw,26px);color:#10233e;margin:0 0 12px}
.privacy-article p{max-width:none!important;text-align:left;line-height:1.85;color:#42536b;margin:0!important}
.privacy-article strong{font-weight:650;color:#17395b}
.privacy-editorial-note{font-size:.9rem;color:#68798c;line-height:1.6;margin:28px 0 0!important;text-align:left!important}

/* Privacy page: legal content must never be hidden by reveal animations */
html body .privacy-always-visible,html body .privacy-always-visible *,
html body .privacy-always-visible .q-reveal,html body .privacy-always-visible .q-reveal-item {
 opacity:1!important;visibility:visible!important;transform:none!important;
 animation:none!important;transition-delay:0ms!important;
}
html body .privacy-always-visible{display:block!important;min-height:700px!important}
html body .privacy-always-visible .privacy-article{display:block!important}
