:root{--navy:#0d2d56;--blue:#164a82;--orange:#f36f3d;--cream:#f7f4ee;--ink:#172033;--muted:#64748b;--line:#e4e8ee;--white:#fff;--shadow:0 20px 50px rgba(13,45,86,.13);--radius:24px;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{width:min(calc(100% - 36px),var(--max));margin:auto}.eyebrow{display:inline-flex;align-items:center;gap:.55rem;color:var(--orange);font-size:.78rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.eyebrow:before{content:"";width:30px;height:2px;background:currentColor}.section{padding:92px 0}.section.soft{background:var(--cream)}.section-head{max-width:740px;margin-bottom:38px}.section-head h2{font-size:clamp(2rem,4vw,3.35rem);line-height:1.08;margin:.55rem 0 1rem;color:var(--navy)}.section-head p{color:var(--muted);font-size:1.05rem}.topbar{background:var(--navy);color:#dce9f7;font-size:.82rem}.topbar .container{display:flex;justify-content:space-between;gap:20px;padding:8px 0}.topbar-links{display:flex;gap:18px;flex-wrap:wrap}.navbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(228,232,238,.85)}.nav-inner{height:82px;display:flex;align-items:center;justify-content:space-between}.brand img{width:238px}.nav-links{display:flex;align-items:center;gap:28px;font-size:.94rem;font-weight:700;color:#334155}.nav-links a{position:relative}.nav-links a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--orange);transition:.25s}.nav-links a:hover:after,.nav-links a.active:after{right:0}.nav-cta{background:var(--orange);color:#fff!important;padding:12px 18px;border-radius:999px;box-shadow:0 10px 24px rgba(243,111,61,.25)}.menu-toggle{display:none;border:0;background:transparent;font-size:1.7rem;color:var(--navy)}
.hero{position:relative;overflow:hidden;background:#071c35;color:#fff}.slides{position:relative;min-height:660px}.slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .9s ease}.slide.active{opacity:1;visibility:visible}.slide:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,24,47,.94) 0%,rgba(6,24,47,.78) 45%,rgba(6,24,47,.22) 100%),linear-gradient(0deg,rgba(6,24,47,.5),transparent 55%);z-index:1}.slide-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.slide-content{position:relative;z-index:2;display:flex;align-items:center;min-height:660px}.hero-copy{max-width:720px;padding:75px 0}.hero-copy .eyebrow{color:#ff9b73}.hero h1{font-size:clamp(3rem,6.8vw,5.7rem);line-height:.98;letter-spacing:-.045em;margin:18px 0 22px;max-width:800px}.hero p{font-size:clamp(1rem,2vw,1.25rem);max-width:610px;color:#d8e4f2}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 21px;border-radius:999px;font-weight:800;transition:.25s;border:1px solid transparent}.btn-primary{background:var(--orange);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(243,111,61,.34)}.btn-ghost{border-color:rgba(255,255,255,.42);color:#fff;background:rgba(255,255,255,.06)}.slide-dots{position:absolute;left:50%;bottom:28px;z-index:3;display:flex;gap:10px;transform:translateX(-50%)}.slide-dot{width:42px;height:4px;border:0;border-radius:10px;background:rgba(255,255,255,.35);cursor:pointer}.slide-dot.active{background:var(--orange)}.slide-arrow{position:absolute;top:50%;z-index:4;width:52px;height:52px;border:1px solid rgba(255,255,255,.45);border-radius:50%;transform:translateY(-50%);background:rgba(7,28,53,.45);backdrop-filter:blur(8px);color:#fff;font-size:1.65rem;line-height:1;display:grid;place-items:center;cursor:pointer;transition:.25s}.slide-arrow:hover,.slide-arrow:focus-visible{background:var(--orange);border-color:var(--orange);transform:translateY(-50%) scale(1.06);outline:none}.slide-prev{left:28px}.slide-next{right:28px}
.trust-strip{position:relative;z-index:5;margin-top:-46px}.trust-card{background:#fff;border-radius:22px;box-shadow:var(--shadow);display:grid;grid-template-columns:1.25fr repeat(3,1fr);overflow:hidden}.trust-intro{background:var(--orange);color:#fff;padding:28px}.trust-intro strong{display:block;font-size:1.35rem}.trust-stat{padding:25px;border-right:1px solid var(--line)}.trust-stat b{display:block;color:var(--navy);font-size:1.45rem}.trust-stat span{font-size:.9rem;color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:29px;transition:.3s;position:relative;overflow:hidden}.service-card:before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:linear-gradient(90deg,var(--orange),var(--blue));transform:scaleX(0);transform-origin:left;transition:.3s}.service-card:hover{transform:translateY(-7px);box-shadow:var(--shadow);border-color:transparent}.service-card:hover:before{transform:scaleX(1)}.icon{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:#eef4fb;color:var(--blue);font-size:1.5rem}.service-card h3{color:var(--navy);margin:18px 0 8px;font-size:1.28rem}.service-card p{color:var(--muted);font-size:.95rem}.service-card a{color:var(--orange);font-weight:800;font-size:.9rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.media-stack{position:relative;min-height:520px}.media-main{height:470px;width:86%;object-fit:cover;border-radius:30px;box-shadow:var(--shadow)}.media-small{position:absolute;right:0;bottom:0;width:48%;height:220px;object-fit:cover;border:10px solid #fff;border-radius:28px}.badge-float{position:absolute;left:-20px;bottom:32px;background:var(--navy);color:#fff;border-radius:18px;padding:20px 22px;box-shadow:var(--shadow)}.badge-float b{font-size:2rem;display:block}.check-list{display:grid;gap:14px;margin:26px 0}.check{display:flex;gap:12px;align-items:flex-start}.check i{font-style:normal;color:var(--orange);font-weight:900}.feature-band{background:var(--navy);color:#fff;border-radius:32px;padding:50px;display:grid;grid-template-columns:1.1fr repeat(3,1fr);gap:30px;align-items:center}.feature-band h2{font-size:2.35rem;line-height:1.1;margin:0}.feature-item{border-left:1px solid rgba(255,255,255,.18);padding-left:25px}.feature-item b{display:block;font-size:1.1rem;margin-bottom:6px}.feature-item span{color:#b9cbe0;font-size:.9rem}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.step{padding:28px 22px;border-radius:20px;background:#fff;border:1px solid var(--line)}.step-num{color:var(--orange);font-size:.82rem;font-weight:900;letter-spacing:.14em}.step h3{color:var(--navy)}
.logo-carousel{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.logo-track{display:flex;width:max-content;gap:20px;animation:marquee 28s linear infinite}.logo-track:hover{animation-play-state:paused}.logo-chip{width:190px;height:92px;border:1px solid var(--line);border-radius:18px;background:#fff;display:grid;place-items:center;padding:18px;color:#62748b;font-weight:900;text-align:center;box-shadow:0 8px 22px rgba(13,45,86,.06)}@keyframes marquee{to{transform:translateX(-50%)}}
.cta{background:linear-gradient(120deg,#0b2a50,#174e89);border-radius:34px;padding:55px;color:#fff;display:flex;justify-content:space-between;gap:30px;align-items:center;overflow:hidden;position:relative}.cta:after{content:"";position:absolute;width:350px;height:350px;border-radius:50%;background:rgba(255,255,255,.05);right:-120px;top:-180px}.cta h2{margin:0 0 10px;font-size:clamp(2rem,4vw,3.25rem);line-height:1.05}.cta p{margin:0;color:#c8d9ea}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px}.contact-panel,.contact-form{background:#fff;border:1px solid var(--line);border-radius:26px;padding:34px}.contact-panel{background:var(--navy);color:#fff}.contact-row{display:flex;gap:14px;margin:24px 0}.contact-row small{display:block;color:#9fb8d2}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:.85rem;font-weight:800;color:#334155}.field input,.field select,.field textarea{width:100%;padding:14px 15px;border:1px solid #dbe1e8;border-radius:13px;font:inherit;background:#fbfcfe}.field textarea{min-height:130px;resize:vertical}.footer{background:#071c35;color:#d4e0ec;padding:60px 0 22px}.footer-grid{display:grid;grid-template-columns:1.3fr .7fr .8fr 1fr;gap:34px}.footer h4{color:#fff;margin-top:0}.footer a{display:block;color:#b9c9d9;margin:8px 0;font-size:.92rem}.footer-brand img{filter:brightness(0) invert(1);width:230px}.footer-bottom{border-top:1px solid rgba(255,255,255,.11);margin-top:38px;padding-top:20px;display:flex;justify-content:space-between;font-size:.82rem;color:#91a7bd}.floating-contact{position:fixed;right:20px;bottom:20px;z-index:60;display:grid;gap:10px}.float-btn{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:1.25rem;box-shadow:0 10px 30px rgba(0,0,0,.2)}.wa{background:#25d366}.phone{background:var(--orange)}.page-hero{padding:105px 0 85px;background:linear-gradient(105deg,#071c35,#164a82);color:#fff}.page-hero h1{font-size:clamp(3rem,6vw,5rem);line-height:1;margin:.5rem 0 1rem}.page-hero p{max-width:700px;color:#d5e4f1;font-size:1.12rem}
@media(max-width:900px){.topbar{display:none}.nav-links{position:fixed;inset:82px 0 auto 0;background:#fff;padding:25px;display:none;flex-direction:column;align-items:flex-start;box-shadow:var(--shadow)}.nav-links.open{display:flex}.menu-toggle{display:block}.slides,.slide-content{min-height:610px}.trust-card{grid-template-columns:1fr 1fr}.trust-intro{grid-column:1/-1}.cards,.steps{grid-template-columns:1fr 1fr}.split,.contact-grid{grid-template-columns:1fr}.feature-band{grid-template-columns:1fr 1fr}.feature-band h2{grid-column:1/-1}.footer-grid{grid-template-columns:1fr 1fr}.media-stack{min-height:470px}}@media(max-width:620px){.brand img{width:195px}.section{padding:68px 0}.hero h1{font-size:3.3rem}.hero-copy{padding:55px 0}.cards,.steps,.trust-card,.feature-band,.footer-grid,.form-grid{grid-template-columns:1fr}.trust-intro{grid-column:auto}.trust-stat{border-right:0;border-bottom:1px solid var(--line)}.feature-band{padding:34px}.feature-band h2{grid-column:auto}.feature-item{border-left:0;border-top:1px solid rgba(255,255,255,.18);padding:20px 0 0}.cta{padding:38px 28px;display:block}.cta .btn{margin-top:22px}.media-stack{min-height:390px}.media-main{height:350px;width:92%}.media-small{height:160px}.badge-float{left:10px;bottom:12px}.footer-bottom{display:block}.floating-contact{right:14px;bottom:14px}}

@media(max-width:620px){.slide-arrow{width:42px;height:42px;font-size:1.25rem}.slide-prev{left:12px}.slide-next{right:12px}.slide-dots{bottom:20px}.slide-dot{width:28px}}

/* Identidad corporativa AE y logotipos de compañías */
.brand{display:flex;align-items:center;min-width:190px}
.brand img{width:190px;height:72px;object-fit:contain;object-position:left center}
.footer-brand img{filter:none;width:190px;height:auto;background:#fff;border-radius:14px;padding:8px}
.logo-chip img{width:100%;height:58px;object-fit:contain}
@media(max-width:620px){.brand img{width:160px;height:62px}.nav-inner{height:76px}.nav-links{inset:76px 0 auto 0}.logo-chip{width:165px;height:82px;padding:12px}.logo-chip img{height:52px}}

/* Componentes de contenido institucional */
.definition-list{display:grid;gap:14px;margin:24px 0 30px}.definition{display:grid;grid-template-columns:145px 1fr;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}.definition b{color:var(--navy)}.definition span{color:var(--muted)}.value-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.value-item{padding:24px;border:1px solid var(--line);border-radius:20px;background:#fff}.value-item b{display:block;color:var(--navy);font-size:1.12rem;margin-bottom:6px}.value-item span{color:var(--muted);font-size:.92rem}.contact-note{margin-top:26px;padding:16px;border-radius:14px;background:rgba(255,255,255,.08);color:#c7d8e9;font-size:.84rem}.contact-note code{color:#fff}@media(max-width:900px){.value-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.definition{grid-template-columns:1fr;gap:4px}.value-grid{grid-template-columns:1fr}}


/* Acciones uniformes de cotización y requisitos */
.service-card{display:flex;flex-direction:column}
.service-card>p{flex:1}
.card-actions{margin-top:1.15rem;display:flex;flex-direction:column;gap:.8rem}
.service-quote-link,.service-card>a{font-weight:800;color:var(--blue);text-decoration:none}
.service-quote-link:hover,.service-card>a:hover{text-decoration:underline}
.requirement-links{display:grid;grid-template-columns:1fr;gap:.45rem;padding-top:.8rem;border-top:1px solid rgba(19,45,72,.12)}
.requirement-links a{display:inline-flex;align-items:center;gap:.35rem;font-size:.83rem;line-height:1.35;font-weight:700;color:var(--muted);text-decoration:none}
.requirement-links a:before{content:'PDF';font-size:.62rem;letter-spacing:.04em;color:#fff;background:var(--orange);border-radius:4px;padding:.17rem .28rem}
.requirement-links a:hover{color:var(--blue)}
#cotizacion{scroll-margin-top:110px}


/* V6: detalle de productos, iconografía y experiencia visual */
.service-icon-img{width:62px;height:62px;object-fit:contain;transition:transform .3s ease}.service-card:hover .service-icon-img{transform:scale(1.08) rotate(-2deg)}
.service-card .icon.image-icon{width:72px;height:72px;background:#f6f9fd;border:1px solid #e4ebf4;padding:8px}
.requirement-title{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--navy);font-weight:900;margin-bottom:.1rem}.requirement-links.requirements-professional{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;border-top:0;padding-top:.35rem}.requirements-professional a{justify-content:center;padding:.65rem .7rem;border:1px solid #e2e8f0;border-radius:10px;background:#fbfdff}.requirements-professional a:hover{background:#eef5fc;border-color:#b9cce1;text-decoration:none}
.card-detail-link{display:inline-flex;margin-top:.65rem;color:var(--navy)!important;font-weight:900!important}.card-detail-link:hover{color:var(--orange)!important}
.detail-hero{padding:34px 0 0;background:linear-gradient(180deg,#f7faff,#fff)}.detail-slider{position:relative;min-height:520px;border-radius:34px;overflow:hidden;box-shadow:var(--shadow);background:#edf3fb}.detail-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .65s ease}.detail-slide.active{opacity:1;visibility:visible}.detail-slide img{width:100%;height:520px;object-fit:cover}.detail-slider:after{content:"";position:absolute;inset:auto 0 0;height:40%;background:linear-gradient(transparent,rgba(8,30,58,.25));pointer-events:none}.detail-arrow{position:absolute;z-index:4;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.9);background:rgba(13,45,86,.72);color:#fff;font-size:1.4rem;cursor:pointer;transition:.25s}.detail-arrow:hover{background:var(--orange);transform:translateY(-50%) scale(1.07)}.detail-prev{left:20px}.detail-next{right:20px}.detail-dots{position:absolute;z-index:4;left:50%;bottom:18px;transform:translateX(-50%);display:flex;gap:9px}.detail-dot{width:34px;height:4px;border:0;border-radius:99px;background:rgba(255,255,255,.5);cursor:pointer}.detail-dot.active{background:var(--orange)}
.detail-copy{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.7fr);gap:54px;align-items:start}.detail-copy h1{font-size:clamp(2.45rem,5vw,4.5rem);line-height:1.02;color:var(--navy);margin:.45rem 0 1rem}.detail-copy h2{color:var(--navy);margin-top:2.1rem}.detail-copy h3{color:var(--navy);margin-top:1.45rem}.detail-copy p,.detail-copy li{color:#526173}.detail-copy ul,.detail-copy ol{padding-left:1.3rem}.detail-aside{position:sticky;top:110px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:0 16px 40px rgba(13,45,86,.08)}.detail-aside h3{margin-top:0}.detail-aside .btn{width:100%;margin:.35rem 0}.detail-aside .requirements-professional{margin-top:1rem}.detail-lead{font-size:1.15rem;color:#40546a!important}.detail-note{padding:18px 20px;border-left:4px solid var(--orange);background:#fff7f2;border-radius:10px;color:#6b4a3d}.detail-list{display:grid;gap:12px;margin:22px 0}.detail-list>div{padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.detail-list b{display:block;color:var(--navy);margin-bottom:4px}.company-section{border-top:1px solid var(--line)}
.home-strategy .trust-card{grid-template-columns:repeat(4,1fr)}.home-strategy .trust-stat{padding:28px}.home-strategy .trust-stat b{font-size:1.05rem}.home-strategy .trust-stat span{display:block;margin-top:.35rem}
@media(max-width:900px){.detail-copy{grid-template-columns:1fr}.detail-aside{position:static}.detail-slider,.detail-slide img{min-height:410px;height:410px}.home-strategy .trust-card{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.detail-slider,.detail-slide img{min-height:300px;height:300px;border-radius:22px}.detail-arrow{width:40px;height:40px}.detail-prev{left:10px}.detail-next{right:10px}.requirement-links.requirements-professional{grid-template-columns:1fr}.home-strategy .trust-card{grid-template-columns:1fr}}

/* ===== V8: ajustes puntuales sobre la apariencia V6 ===== */
.solution-card-image{width:100%;height:155px;object-fit:cover;border-radius:14px;margin:18px 0 14px;display:block}

/* Microinteracciones tomadas del lenguaje de las landings, sin alterar layout base */
.btn,.nav-cta,.service-card a,.requirement-links a,.logo-chip{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,background-color .22s ease,color .22s ease}
.btn:hover,.nav-cta:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(10,49,88,.18)}
.btn-primary{position:relative;overflow:hidden}
.btn-primary:after{content:"";position:absolute;top:-55%;left:-35%;width:28%;height:210%;background:rgba(255,255,255,.22);transform:rotate(25deg) translateX(-220%);transition:transform .55s ease;pointer-events:none}
.btn-primary:hover:after{transform:rotate(25deg) translateX(620%)}
.service-card{transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.service-card:hover{transform:translateY(-6px);box-shadow:0 18px 38px rgba(10,49,88,.12);border-color:rgba(238,109,32,.55)}
.service-card a:hover{transform:translateX(4px)}

/* Slider de detalle: mostrar mejor la composición vertical de las imágenes */
.detail-slider{background:#eef3f8;border-radius:20px;overflow:hidden}
.detail-slide{height:clamp(360px,52vw,610px)}
.detail-slide img{width:100%;height:100%;object-fit:contain;background:#eef3f8}

/* Formulario directo y requisitos */
.detail-aside{position:sticky;top:110px}
.detail-quote-form{display:grid;gap:13px;margin:18px 0 22px}
.detail-quote-form .field{display:grid;gap:6px}
.detail-quote-form label{font-size:.86rem;font-weight:800;color:#0c3158}
.detail-quote-form input,.detail-quote-form textarea{width:100%;border:1px solid #dbe3ec;border-radius:11px;padding:12px 13px;font:inherit;background:#fff;outline:none;transition:border-color .2s ease,box-shadow .2s ease}
.detail-quote-form textarea{min-height:105px;resize:vertical}
.detail-quote-form input:focus,.detail-quote-form textarea:focus{border-color:#1c67b3;box-shadow:0 0 0 3px rgba(28,103,179,.1)}
.form-status{min-height:20px;font-size:.88rem;margin:0}
.detail-requirements{margin:22px 0;padding:20px;border:1px solid #e3e9ef;border-radius:16px;background:#f9fbfd}
.requirement-title{display:block;font-size:1.05rem;font-weight:900;color:#0c3158;margin-bottom:4px;text-transform:uppercase;letter-spacing:.06em}
.requirement-links.requirements-professional{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.requirement-links.requirements-professional a{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #dfe6ee;border-radius:12px;background:white;color:#0c3158;text-decoration:none;font-weight:800}
.requirement-links.requirements-professional a:hover{transform:translateY(-2px);border-color:#ee6d20;box-shadow:0 10px 22px rgba(10,49,88,.09)}
.req-pdf-icon{display:grid;place-items:center;min-width:40px;height:40px;border-radius:9px;background:#fff2e9;color:#e86617;font-size:.68rem;font-weight:900}

/* Nosotros: contenido nuevo usando el mismo lenguaje V6 */
.national-grid{display:grid;grid-template-columns:repeat(3,1fr) 1.7fr;gap:18px;align-items:stretch}
.national-grid>article,.national-map,.purpose-grid>article,.values-row>article{background:#fff;border:1px solid #e5eaf0;border-radius:18px;padding:24px;box-shadow:0 10px 28px rgba(10,49,88,.06)}
.national-icon,.purpose-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#edf5fd;color:#1265b8;font-size:1.65rem;font-weight:900;margin-bottom:15px}
.national-map{min-height:270px;position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 45%,#eaf4ff,#fff 66%)}
.mexico-shape{font-size:5rem;font-weight:950;letter-spacing:-.08em;color:#0d3c69;opacity:.95;transform:rotate(-7deg)}
.map-badge{position:absolute;right:20px;top:20px;padding:12px 15px;background:#fff;border-radius:12px;box-shadow:0 10px 25px rgba(10,49,88,.12);display:grid}
.map-badge strong{font-size:1.35rem;color:#0c3158}.map-badge span{font-size:.82rem;color:#6b7785}
.purpose-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.purpose-grid>article{text-align:center}.purpose-grid span{font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#ee6d20}.purpose-grid .purpose-icon{margin:0 auto 14px}.centered-values{text-align:center;margin-top:42px}.values-row{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.values-row>article{text-align:center;padding:20px 14px}.values-row b{display:block;color:#0c3158;font-size:1.05rem;margin-bottom:8px}.values-row p{font-size:.9rem;margin:0;color:#5c6876}

@media(max-width:900px){.national-grid{grid-template-columns:1fr 1fr}.national-map{grid-column:1/-1}.purpose-grid{grid-template-columns:1fr}.values-row{grid-template-columns:1fr 1fr}.detail-aside{position:static}.requirement-links.requirements-professional{grid-template-columns:1fr}}
@media(max-width:620px){.national-grid,.values-row{grid-template-columns:1fr}.detail-slide{height:360px}.solution-card-image{height:190px}}

/* V9: ajustes conservando la identidad visual de V8 */
.logo-chip img{display:block;max-width:150px;width:auto;height:58px;max-height:58px;object-fit:contain;margin:auto}
.logo-chip{overflow:hidden}
.home-solutions .service-card:hover .service-icon-img{transform:none!important}
.home-solutions .service-card a{display:inline-flex;align-items:center;gap:.35rem;transition:color .2s ease,transform .2s ease}
.home-solutions .service-card a:hover{color:var(--navy);transform:translateX(5px);text-decoration:none}
.hero-actions .btn-ghost:hover{background:#fff;color:var(--navy);border-color:#fff;box-shadow:0 12px 26px rgba(0,0,0,.18)}
.coverage-reference{margin:0;border-radius:28px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:#fff}
.coverage-reference img{width:100%;height:auto;display:block}.coverage-reference figcaption{font-size:.85rem;color:var(--muted);padding:12px 18px;text-align:center;background:#fff}
.purpose-reference>article{background:#fff}.purpose-reference img{width:150px;height:150px;object-fit:cover;border-radius:50%;margin:0 auto 10px}
.values-reference>article{border:0;box-shadow:none;background:transparent}.values-reference img{width:115px;height:115px;object-fit:cover;border-radius:50%;margin:0 auto 12px}.values-reference b{font-size:1.08rem}.about-values{padding-top:70px}.centered-values h2{margin-top:.5rem;color:var(--navy)}
@media(max-width:620px){.purpose-reference img{width:120px;height:120px}.values-reference img{width:100px;height:100px}.logo-chip img{height:48px;max-height:48px;max-width:135px}}


/* V10 - refinamientos solicitados sobre la apariencia existente */

/* Hero: copy left + imagery right, ensuring text/CTAs never sit on top of the photo. */
.hero .slides{min-height:610px}
.hero .slide{background:linear-gradient(120deg,#061a33 0%,#0a315c 47%,#0a315c 47%,#071c35 100%)}
.hero .slide:before{background:linear-gradient(90deg,rgba(5,24,47,.98) 0%,rgba(5,24,47,.94) 41%,rgba(5,24,47,.44) 57%,rgba(5,24,47,.08) 100%)}
.hero .slide-bg{left:auto;right:0;width:62%;height:100%;object-fit:cover;object-position:center;clip-path:polygon(12% 0,100% 0,100% 100%,0 100%)}
.hero .slide-content{min-height:610px}
.hero .hero-copy{width:min(47%,680px);max-width:none;padding:58px 0 64px}
.hero h1{font-size:clamp(2.8rem,5.4vw,5rem);line-height:1.01;max-width:690px}
.hero p{max-width:590px}
.hero-actions{position:relative;z-index:6}

/* Match the landing-page button interaction: horizontal sheen, no diagonal side sweep. */
.btn.landing-effect{position:relative;overflow:hidden;transition:transform .24s cubic-bezier(.2,.8,.2,1),box-shadow .24s cubic-bezier(.2,.8,.2,1),background-color .24s ease,border-color .24s ease,color .24s ease}
.btn.landing-effect:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 20%,rgba(255,255,255,.28) 48%,transparent 75%);transform:translateX(-130%);transition:transform .55s cubic-bezier(.2,.8,.2,1);pointer-events:none;width:auto;height:auto;top:0;left:0}
.btn.landing-effect:hover{transform:translateY(-2px)}
.btn.landing-effect:hover:after{transform:translateX(130%)}
.btn-primary.landing-effect:hover{background:#e94b12;box-shadow:0 12px 26px rgba(255,90,31,.28)}
.btn-ghost.landing-effect:hover{background:#fff;color:var(--navy);border-color:#fff;box-shadow:0 14px 30px rgba(0,0,0,.17)}

/* Advisory strip gets its own breathing room and outline, never overlapping the hero. */
.home-strategy.trust-strip{margin-top:26px;z-index:5}
.home-strategy .trust-card{border:1px solid rgba(238,109,32,.5);box-shadow:0 18px 46px rgba(10,49,88,.12);overflow:visible}
.home-strategy .trust-stat{position:relative;display:grid;grid-template-columns:58px 1fr;grid-template-rows:auto auto;column-gap:15px;align-items:center;padding:24px 22px}
.home-strategy .strategy-icon{grid-row:1/3;width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:#f6f9fd;border:1px solid #e1eaf4;color:var(--blue)}
.home-strategy .strategy-icon svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.home-strategy .trust-stat b{font-size:1.02rem;line-height:1.2}
.home-strategy .trust-stat span{font-size:.84rem;line-height:1.4;margin-top:4px}

/* Exact solution icon tiles from the user-provided reference. */
.home-solutions .solution-uploaded-icon{width:66px;height:66px;padding:0;border:0;background:transparent;border-radius:16px;overflow:hidden}
.home-solutions .solution-uploaded-icon img{width:100%;height:100%;object-fit:cover;display:block;transform:none!important}
.home-solutions .service-card:hover .solution-uploaded-icon img{transform:none!important}
.home-solutions .service-card>a{transition:color .22s ease,transform .22s ease}
.home-solutions .service-card>a:hover{color:#0c3158!important;transform:translateX(5px)}

/* Strategy visual details. */
.approach-check-icon{width:38px;height:38px;border-radius:12px;background:#f3f7fc;border:1px solid #e2eaf3;color:var(--blue);display:grid;place-items:center;flex:0 0 38px}
.approach-check-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.check{align-items:center}
.media-stack{border-radius:30px;background:linear-gradient(145deg,#f6f9fd,#fff);padding:15px}

/* Four-step process gets the icon-led structure from the approved reference. */
.steps{gap:0;border:1px solid var(--line);border-radius:24px;background:#fff;overflow:hidden;box-shadow:0 12px 34px rgba(10,49,88,.07)}
.step{border:0;border-right:1px solid var(--line);border-radius:0;text-align:center;padding:30px 24px 32px}
.step:last-child{border-right:0}
.step-icon{width:84px;height:84px;margin:5px auto 18px;border:2px solid #0c3158;border-radius:50%;display:grid;place-items:center;background:#fff;color:#0c3158;box-shadow:inset 0 0 0 6px #f7faff}
.step-icon svg{width:48px;height:48px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.step:nth-child(3) .step-icon svg,.step:nth-child(4) .step-icon svg{stroke:#0c3158}
.step-num{display:block;color:var(--orange);margin-bottom:8px}
.step h3{font-size:1.25rem;margin:8px 0 10px}

@media(max-width:900px){
 .hero .slide-bg{width:100%;clip-path:none;opacity:.46}
 .hero .slide:before{background:linear-gradient(90deg,rgba(5,24,47,.96),rgba(5,24,47,.75))}
 .hero .hero-copy{width:100%;max-width:690px}
 .home-strategy.trust-strip{margin-top:20px}
 .steps{grid-template-columns:1fr 1fr}
 .step:nth-child(2){border-right:0}.step:nth-child(-n+2){border-bottom:1px solid var(--line)}
}
@media(max-width:620px){
 .hero .slides,.hero .slide-content{min-height:650px}
 .hero .hero-copy{padding:54px 22px 80px 22px}
 .hero h1{font-size:2.75rem}
 .home-strategy .trust-stat{grid-template-columns:52px 1fr}
 .steps{grid-template-columns:1fr}.step{border-right:0!important;border-bottom:1px solid var(--line)!important}.step:last-child{border-bottom:0!important}
}

/* V11: separación clara entre Inicio y Nosotros */
.nosotros-first{padding-top:72px;}
@media(max-width:800px){.nosotros-first{padding-top:48px;}}


/* V12 - ajustes solicitados sin alterar la identidad visual aprobada */
.banner-hero{background:#071c35;overflow:hidden}
.banner-hero .slides{min-height:0;height:auto;position:relative}
.banner-hero .banner-slide{position:relative;inset:auto;display:none;opacity:1;visibility:visible;transition:none;background:#071c35}
.banner-hero .banner-slide.active{display:block}
.banner-hero .banner-slide:before{display:none}
.banner-full-image{width:100%;height:auto;display:block;object-fit:contain;background:#071c35}
.banner-action-bar{background:#071c35;border-top:1px solid rgba(255,255,255,.12);padding:14px 0 16px}
.banner-action-inner{display:flex;justify-content:flex-start;gap:12px;align-items:center}
.banner-action-inner .btn{min-width:178px}
.banner-hero .slide-arrow{top:45%}
.banner-hero .banner-dots{bottom:88px}
/* Enlaces de tarjetas: solo cambio de color, sin desplazamiento */
.home-solutions .service-card>a{transform:none!important;transition:color .22s ease,background-color .22s ease!important}
.home-solutions .service-card>a:hover{transform:none!important;color:var(--navy)!important;text-decoration:none}
.home-solutions .solution-uploaded-icon{width:66px;height:66px;border-radius:16px;overflow:hidden;background:transparent}
.home-solutions .solution-uploaded-icon img{width:100%;height:100%;object-fit:contain!important;transform:none!important}
.home-solutions .service-card:hover .solution-uploaded-icon img{transform:none!important}
.vision-360-image{width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;border-radius:26px;box-shadow:var(--shadow)}
.process-reference-image{width:100%;height:auto;display:block;border-radius:24px;border:1px solid var(--line);box-shadow:0 12px 34px rgba(10,49,88,.07);background:#fff}
/* Contacto: iconografía limpia */
.contact-icon-svg{width:44px;height:44px;min-width:44px;border-radius:13px;background:rgba(255,255,255,.1);display:grid;place-items:center;color:#ff7a32}
.contact-icon-svg svg{width:24px;height:24px}
.footer-contact-link{position:relative;padding-left:26px}
.footer-contact-link:before{position:absolute;left:0;top:.05em;color:#ff7a32;font-weight:700}
.footer-contact-link[data-phone-link]:before{content:'☎'}
.footer-contact-link[data-email]:before{content:'✉'}
.footer-contact-link[data-whatsapp]:before{content:'◉'}
/* logo HQ */
.brand img{height:62px;width:auto;max-width:250px;object-fit:contain}
.footer-brand img{width:220px;height:auto;object-fit:contain;background:transparent;padding:0}
@media(max-width:900px){
  .banner-hero .slide-arrow{top:39%}
  .banner-hero .banner-dots{bottom:84px}
  .banner-action-inner{justify-content:center}
}
@media(max-width:620px){
  .banner-action-inner{display:grid;grid-template-columns:1fr;gap:9px}
  .banner-action-inner .btn{width:100%}
  .banner-hero .slide-arrow{width:40px;height:40px;top:31%}.banner-hero .slide-prev{left:8px}.banner-hero .slide-next{right:8px}
  .banner-hero .banner-dots{bottom:142px}
  .brand img{height:52px;max-width:205px}
}

/* V13 - Iconografia de servicios reutilizada de las landings.
   La interaccion enfatiza la tarjeta, nunca desplaza, rota ni agranda el icono. */
.service-card .icon.image-icon{
  transition:background-color .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.service-icon-img,
.service-card:hover .service-icon-img,
.service-card:focus-within .service-icon-img{
  transform:none!important;
  scale:1!important;
  transition:filter .22s ease,opacity .22s ease!important;
}
.service-card:hover .icon.image-icon,
.service-card:focus-within .icon.image-icon{
  background:#fff;
  border-color:rgba(238,109,32,.42);
  box-shadow:0 8px 20px rgba(10,49,88,.08);
}
.service-card{
  transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s cubic-bezier(.2,.8,.2,1),border-color .22s ease;
}
.service-card:hover,
.service-card:focus-within{
  transform:translateY(-4px);
  box-shadow:0 16px 34px rgba(10,49,88,.11);
  border-color:rgba(238,109,32,.48);
}
.service-card a,
.service-card a:hover,
.service-card a:focus{
  transform:none!important;
}
.service-card .card-detail-link,
.service-card .service-quote-link,
.service-card .card-actions>a{
  transition:color .2s ease,background-color .2s ease,border-color .2s ease,text-decoration-color .2s ease!important;
}
.service-card .card-detail-link:hover,
.service-card .card-detail-link:focus{
  color:var(--orange)!important;
  text-decoration:none;
}
.service-card .service-quote-link:hover,
.service-card .service-quote-link:focus,
.service-card .card-actions>a:not(.card-detail-link):hover,
.service-card .card-actions>a:not(.card-detail-link):focus{
  color:var(--navy)!important;
  text-decoration:none;
}
@media (prefers-reduced-motion:reduce){
  .service-card,.service-card .icon.image-icon,.service-icon-img,.service-card a{transition:none!important}
  .service-card:hover,.service-card:focus-within{transform:none}
}

/* V14: refinamientos sin alterar identidad visual */
.document-detail-content{max-width:860px;margin:32px 0;padding:28px;background:#fff;border:1px solid #e6ebf3;border-radius:18px;line-height:1.75}.document-detail-content h3{color:#07254a;margin:22px 0 8px}.document-detail-content p{margin:0 0 13px}.full-detail-form{height:auto!important;max-height:none!important;overflow:visible!important}.detail-quote-form .field{min-width:0}.detail-quote-form input,.detail-quote-form textarea{width:100%;max-width:100%;box-sizing:border-box}.quote-after-requirements{margin-top:18px;display:inline-flex}.quote-modal{width:min(94vw,540px);max-height:90vh;overflow-y:auto;border:0;border-radius:20px;padding:28px;box-shadow:0 24px 90px #001b35aa;color:#082349}.quote-modal::backdrop{background:#00162dbb}.quote-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.quote-modal-head h2{margin:0}.quote-close{border:0;background:#f0f3f8;border-radius:50%;font-size:28px;width:40px;height:40px;cursor:pointer}.quote-popup-form{display:grid;gap:12px}.quote-popup-form label{display:grid;gap:5px;font-weight:600}.quote-popup-form input:not([type=checkbox]),.quote-popup-form textarea{width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:9px;padding:11px;font:inherit}.quote-popup-form .privacy-check{display:flex;align-items:flex-start;font-size:13px}.spam-trap{position:absolute!important;left:-9999px!important;opacity:0!important}.service-quote-link,.card-detail-link{transform:none!important;transition:color .2s ease,background-color .2s ease!important}.service-quote-link:hover,.card-detail-link:hover{transform:none!important;color:#ef690b!important}.cta{align-items:center;flex-wrap:wrap;gap:20px}.cta .btn{white-space:normal;min-height:48px}.hero .slide-bg{object-fit:cover}.hero-copy{position:relative;z-index:2}@media(max-width:720px){.document-detail-content{padding:18px}.quote-modal{padding:20px}.full-detail-form{width:100%!important}}

/* V15: sin recuadro duplicado, formularios completos y modales accesibles */
.process-reference-image{display:block;width:100%;height:auto;object-fit:contain;border:0;box-shadow:none;background:transparent}
.detail-copy{grid-template-columns:minmax(0,1.55fr) minmax(330px,.85fr);gap:30px}
.detail-aside,.full-detail-form{min-width:0;max-height:none!important;overflow:visible!important}
.detail-aside input,.detail-aside textarea,.detail-aside select{box-sizing:border-box;max-width:100%;width:100%}
.detail-aside .requirement-links.requirements-professional{grid-template-columns:1fr;gap:10px}
.quote-popup-form select{width:100%;min-width:0;box-sizing:border-box;padding:11px;border:1px solid #cbd5e1;border-radius:9px;font:inherit;background:#fff}
.requirement-doc-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.requirements-modal{width:min(94vw,540px)}
@media(max-width:900px){.detail-copy{grid-template-columns:minmax(0,1fr)}.detail-aside{position:static}}

/* V16 refinamientos visuales */
.brand img{image-rendering:auto;object-fit:contain;max-width:100%;height:auto}.footer-brand img{filter:none!important;image-rendering:auto;object-fit:contain}.float-btn.wa svg{display:block;width:27px;height:27px;flex:none}.card-actions{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.card-actions .service-quote-link{order:10}.detail-aside,.detail-quote-form{height:auto!important;max-height:none!important;overflow:visible!important}.detail-quote-form *{box-sizing:border-box}.detail-quote-form input,.detail-quote-form select,.detail-quote-form textarea{max-width:100%;min-width:0}.quote-modal select{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:9px}.quote-modal .quote-popup-form{max-height:none}

/* V17: fixed identity, unified banners, full quote forms, contact map */
.navbar .brand{display:flex;align-items:center;flex:0 0 auto;max-width:215px}.navbar .brand img{display:block;width:190px!important;height:58px!important;max-width:100%!important;object-fit:contain!important}.footer-brand img{display:block;width:220px!important;max-width:100%!important;height:auto!important;background:transparent!important}.detail-quote-form{display:grid;gap:11px;margin-top:18px}.detail-quote-form label{display:grid;gap:5px;font-size:14px;font-weight:600}.detail-quote-form input:not([type=checkbox]),.detail-quote-form textarea{width:100%;min-width:0;border:1px solid #cbd5e1;border-radius:9px;padding:11px;font:inherit}.detail-quote-form .privacy-check{display:flex;align-items:flex-start;font-size:12px}.detail-quote-form .privacy-check input{width:auto}.ae-map{border-radius:20px;overflow:hidden;margin:22px 0;box-shadow:0 12px 30px #001d3820}.ae-map iframe{display:block;width:100%;height:400px;border:0}@media(max-width:620px){.navbar .brand img{width:150px!important;height:48px!important}.ae-map iframe{height:300px}}

/* V18: galerías de seguros, proporción homogénea sin recortes */
.detail-hero .detail-slider{position:relative;width:100%;height:clamp(230px,36vw,500px);min-height:0!important;overflow:hidden;border-radius:18px;background:#f5f8ff}
.detail-hero .detail-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .45s ease}
.detail-hero .detail-slide.active{opacity:1;visibility:visible}
.detail-hero .detail-slide img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;display:block}
.detail-hero .detail-prev,.detail-hero .detail-next{position:absolute;top:50%;transform:translateY(-50%);z-index:3;border:0;border-radius:50%;background:#ffffffdc;color:#06418b;width:42px;height:42px;cursor:pointer;font-size:30px}
.detail-hero .detail-prev{left:12px}.detail-hero .detail-next{right:12px}
.detail-hero .detail-dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:3}
.detail-hero .detail-dot{width:10px;height:10px;border-radius:50%;border:1px solid #0753b3;background:#fff;cursor:pointer;padding:0}
.detail-hero .detail-dot.active{background:#0753b3}
.detail-copy article p{line-height:1.75}.detail-copy article h2{margin-top:24px}
@media(max-width:650px){.detail-hero .detail-slider{height:clamp(180px,55vw,290px)}.detail-hero .detail-prev,.detail-hero .detail-next{width:32px;height:32px;font-size:23px}}

/* V19: imágenes a sangre sin franja superior, galería consistente */
.detail-hero .detail-slider{height:clamp(260px,42vw,530px)!important;background:#eef3f8!important}
.detail-hero .detail-slide{height:100%!important;min-height:0!important;inset:0!important}
.detail-hero .detail-slide img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;background:transparent!important}
.detail-hero .detail-slider::after{height:20%;opacity:.5}
.detail-quote-form select{width:100%;min-width:0;border:1px solid #cbd5e1;border-radius:9px;padding:11px;background:#fff;font:inherit}
.spam-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}
.logo-chip img{width:100%!important;max-width:150px!important;height:60px!important;object-fit:contain!important}
@media(max-width:650px){.detail-hero .detail-slider{height:clamp(210px,60vw,330px)!important}}

/* V21: navigation below form and Turnstile */
.detail-return{margin-top:18px;display:flex;justify-content:flex-start}.ae-captcha{margin:16px 0}.ae-captcha-notice{font-size:12px;color:#875b15;line-height:1.5}.ae-captcha .cf-turnstile{min-height:65px}

/* V28: respuesta de formularios */
.ae-send-status{margin-top:14px;padding:16px;border-radius:12px;background:#eff5fc;color:#153d70;line-height:1.55}.ae-send-status.success{border:1px solid #92c8ac;background:#effaf3;color:#155b36}.ae-send-status.error{border:1px solid #e6aaa6;background:#fff1ef;color:#9a2525}.ae-send-status p{margin:6px 0 0}
