:root{--bg:#050c18;--surface:#0a1628;--surface2:#0d1e33;--blue:#187cfb;--cyan:#23c3ff;--line:rgba(120,162,217,.17);--text:#f3f7ff;--muted:#9caec8;--wrap:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 'Segoe UI',Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%}::selection{background:#156cd0;color:white}.wrap{width:min(var(--wrap),calc(100% - 70px));margin:auto}.section-pad{padding:95px 0}.skip-link{position:absolute;top:-100px;left:12px;padding:10px;background:#fff;color:#000;z-index:30}.skip-link:focus{top:10px}.site-header{position:sticky;top:0;z-index:25;background:rgba(4,11,23,.92);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.nav-bar{height:80px;display:flex;align-items:center;gap:36px}.brand{display:inline-flex;align-items:center;flex-shrink:0}.brand img{width:206px;height:auto;display:block}.desktop-nav{display:flex;align-items:center;gap:27px;flex:1;justify-content:center}.desktop-nav a,.footer-top nav a{font-size:13px;font-weight:600;color:#c2d0e2;transition:color .2s}.desktop-nav a:hover,.footer-top nav a:hover,.text-link:hover{color:var(--cyan)}.nav-contact{border:1px solid #2f8fff;border-radius:50px;padding:10px 23px;font-size:13px;font-weight:700}.nav-contact span{margin-left:12px;color:var(--cyan)}.menu-toggle,.mobile-nav{display:none}.hero{padding-top:95px;padding-bottom:96px;overflow:hidden;position:relative;background:radial-gradient(ellipse at 75% 45%,#0d2b4b 0,transparent 42%),linear-gradient(#060e1b,#060e1b)}.hero:after{content:"";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,#23548e,transparent)}.hero-layout{display:grid;grid-template-columns:1.07fr .93fr;align-items:center;gap:30px;min-height:480px}.eyebrow{color:#60b6ff;letter-spacing:.17em;font-size:11px;font-weight:800;margin:0 0 19px}.eyebrow-line{display:inline-block;width:22px;height:2px;background:var(--blue);vertical-align:middle;margin-right:9px}.hero h1{font-size:clamp(48px,5.3vw,76px);line-height:1.07;letter-spacing:-.055em;margin:0 0 28px;font-weight:800}.hero h1 span{color:#328dff}.hero-description{max-width:610px;color:#bfcee0;font-size:18px;line-height:1.65;margin:0 0 30px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-flex;justify-content:center;align-items:center;gap:14px;border-radius:999px;padding:14px 24px;min-height:50px;font-size:14px;font-weight:700;transition:transform .2s,background .2s,box-shadow .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:linear-gradient(110deg,#0755bb,#086cdb);box-shadow:0 7px 28px rgba(2,105,255,.22);color:white}.button-primary:hover{box-shadow:0 10px 34px rgba(2,105,255,.35)}.button-outline{border:1px solid #45647f;background:rgba(6,19,35,.5)}.button-outline:hover{background:rgba(25,95,170,.16)}.benefits{display:flex;gap:20px;flex-wrap:wrap;margin-top:39px;color:#b3c3d5;font-size:12px}.benefits span{display:inline-flex;align-items:center;gap:9px}.benefits i{color:#3296ff;font-size:23px;font-style:normal}.hero-visual{position:relative;height:430px;isolation:isolate;display:grid;place-items:center}.orb{position:absolute;border-radius:50%;filter:blur(3px);z-index:-1}.orb-one{width:340px;height:340px;background:radial-gradient(circle,rgba(10,89,191,.36),transparent 70%);right:4%;top:10%}.orb-two{width:290px;height:290px;border:1px solid rgba(50,149,255,.2);box-shadow:0 0 95px rgba(2,88,201,.14);transform:rotate(-17deg)}.visual-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(32,102,183,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(32,102,183,.09) 1px,transparent 1px);background-size:34px 34px;mask-image:radial-gradient(ellipse,black,transparent 75%);z-index:-1}.dashboard-art{width:min(100%,520px);border:1px solid #265286;transform:perspective(1000px) rotateY(-7deg) rotateX(3deg);background:linear-gradient(140deg,rgba(19,48,81,.92),#071322 72%);border-radius:21px;padding:20px 22px 26px;box-shadow:0 30px 90px rgba(0,0,0,.5),inset 0 1px rgba(160,212,255,.18);position:relative}.dashboard-top,.dashboard-bottom{display:flex;justify-content:space-between;gap:5px;align-items:center;font-size:10px;letter-spacing:.1em;color:#91abc8}.dashboard-top{border-bottom:1px solid var(--line);padding-bottom:16px}.status-dot,.live-dot{display:inline-block;background:#27d8a1;width:7px;height:7px;border-radius:50%;box-shadow:0 0 10px #27d8a1}.dashboard-top .status-dot{margin-right:-120px}.tiny-dots{letter-spacing:4px}.dashboard-heading{font-size:21px;font-weight:500;margin:35px 0 30px}.dashboard-heading strong{display:block;color:#58b8ff;font-size:24px}.flow{display:flex;align-items:center;justify-content:center;margin:0 0 38px}.flow-card{flex:1;min-width:0;border:1px solid #244f7d;background:#081c30;padding:16px 4px 13px;border-radius:12px;display:grid;justify-items:center;gap:9px;font-size:12px;color:#c6d6ed}.flow-card.active{background:linear-gradient(155deg,#0d56aa,#092449);box-shadow:0 0 35px rgba(4,125,255,.22);border-color:#288eff}.flow-icon{font-size:32px;color:#48adff;line-height:1}.flow-link{height:2px;width:32px;flex-shrink:0;background:linear-gradient(90deg,#246bcd,#22a4ff);position:relative}.dashboard-bottom{padding-top:14px;border-top:1px solid var(--line);font-size:9px}.dashboard-bottom span:first-child{display:flex;align-items:center;gap:8px}.floating-tag{position:absolute;bottom:6px;right:-12px;background:#0b2137;border:1px solid #24588e;color:#cfe3fc;padding:12px 19px;border-radius:10px;font-size:13px;box-shadow:0 16px 35px #0008}.problems{background:#081422}.section-heading{max-width:780px;margin-bottom:32px}.section-heading h2,.principle h2,.about h2,.contact h2{font-size:clamp(31px,3.3vw,46px);letter-spacing:-.037em;line-height:1.15;margin:0 0 16px}.section-heading p:not(.eyebrow),.about-copy>p:not(.eyebrow){color:var(--muted);max-width:700px;margin:0;font-size:16px}.problem-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.problem-card{position:relative;background:linear-gradient(145deg,#10253b,#091624);border:1px solid var(--line);border-radius:14px;min-height:240px;padding:25px 18px 20px;transition:transform .2s,border-color .2s}.problem-card:hover,.service-card:hover{transform:translateY(-4px);border-color:#237bd0}.problem-icon{font-size:30px;color:#50aaff;display:block;line-height:1;margin-bottom:30px}.problem-number{position:absolute;top:28px;right:16px;font-size:10px;color:#93b2d1}.problem-card h3{font-size:16px;line-height:1.3;margin:0 0 9px}.problem-card p{font-size:13px;color:#9db1c6;line-height:1.6;margin:0}.services{background:#060e1b}.services em{font-style:normal;color:#4ba5ff}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{position:relative;border:1px solid var(--line);background:linear-gradient(140deg,#10243a,#081522);border-radius:17px;min-height:315px;padding:32px;display:flex;flex-direction:column;transition:transform .2s,border-color .2s}.service-mark{border:1px solid #227ff2;border-radius:13px;color:#43a6ff;font-size:32px;width:58px;height:58px;display:grid;place-items:center;margin-bottom:26px}.service-index{position:absolute;right:27px;top:33px;color:#9ab5d2;font-size:14px}.service-card h3{font-size:23px;line-height:1.2;margin:0 0 14px;max-width:270px}.service-card p{color:#a9bdd3;font-size:14px;line-height:1.7;margin:0 0 27px}.service-card a,.text-link{color:#5fb5ff;font-size:13px;font-weight:700;margin-top:auto}.service-card a span,.text-link span{margin-left:8px}.principle{background:linear-gradient(110deg,#09274b,#071424 70%);border-top:1px solid #124071;border-bottom:1px solid #124071}.principle-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:90px;align-items:center}.principle h2{margin:0}.principle h2 span{color:#51a7ff}.principle-layout>p{font-size:16px;line-height:1.9;color:#bdcee2}.method{background:#070f1c}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}.step{border-top:1px solid #275386;padding-top:22px}.step span{display:grid;place-items:center;width:47px;height:47px;border-radius:50%;background:linear-gradient(140deg,#0755bb,#086cdb);font-size:16px;font-weight:800;margin:0 0 24px}.step h3{margin:0 0 8px;font-size:19px}.step p{margin:0;color:#a2b7d0;font-size:14px}.about{background:#0a1726}.about-layout{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:85px}.about-art{min-height:355px;overflow:hidden;border-radius:18px;position:relative;background:radial-gradient(circle at 46% 45%,#12529a,#071423 60%);display:flex;align-items:center;justify-content:center;border:1px solid #24527e}.about-art:before,.about-art:after{content:"";position:absolute;width:400px;height:170px;border:1px solid rgba(85,162,255,.25);border-radius:50%;transform:rotate(-28deg)}.about-art:after{transform:rotate(25deg)}.about-art img{width:225px;z-index:1;filter:drop-shadow(0 0 30px #148dff55)}.about-art-text{position:absolute;bottom:22px;left:25px;color:#89add6;font-size:10px;letter-spacing:.18em;line-height:1.6}.about-copy>p:not(.eyebrow){margin-bottom:17px}.about-copy .text-link{display:inline-block;margin-top:13px}.contact{padding-top:72px;padding-bottom:95px;background:#070f1c}.contact-panel{position:relative;overflow:hidden;border:1px solid #23619b;background:linear-gradient(115deg,#0b2648,#081729 74%);border-radius:22px;padding:54px;display:grid;grid-template-columns:1.1fr .9fr;gap:75px;align-items:center}.contact-glow{position:absolute;width:350px;height:350px;border-radius:50%;right:-190px;top:-190px;background:#187dff;filter:blur(90px);opacity:.25;pointer-events:none}.contact-copy,.contact-actions{position:relative}.contact h2{font-size:clamp(31px,3vw,42px)}.contact-copy>p:not(.eyebrow){color:#b4c9e0;margin:0 0 20px}.soon{font-size:12px;color:#9bbfe5;display:block}.soon-dot{width:7px;height:7px;display:inline-block;border-radius:50%;background:#5cafea;margin-right:7px}.contact-actions{display:flex;flex-direction:column;align-items:stretch;gap:16px}.contact-actions .button{font-size:16px;justify-content:center}.email-link{text-align:center;font-size:15px;color:#91caff}.contact-actions small{color:#86a5c1;font-size:12px;text-align:center}.site-footer{border-top:1px solid var(--line);background:#050b15;padding:30px 0}.footer-top{display:flex;align-items:center;gap:25px}.brand-footer img{width:165px}.footer-top p{color:#8fa5bb;font-size:12px;margin-right:auto}.footer-top nav{display:flex;gap:23px}.footer-bottom{border-top:1px solid var(--line);display:flex;gap:20px;justify-content:space-between;padding-top:22px;margin-top:25px;font-size:11px;color:#758da6}.legal-note{max-width:380px;text-align:right}.reveal{opacity:1;transform:none}@media (prefers-reduced-motion:no-preference){.js .reveal{opacity:0;transform:translateY(17px);transition:opacity .6s ease,transform .6s ease}.js .reveal.visible{opacity:1;transform:none}}
@media(max-width:1050px){.wrap{width:min(var(--wrap),calc(100% - 44px))}.desktop-nav{gap:15px}.desktop-nav a{font-size:12px}.brand img{width:167px}.hero h1{font-size:57px}.hero-layout{grid-template-columns:1fr .93fr}.problem-grid{grid-template-columns:repeat(3,1fr)}.problem-card{min-height:215px}.footer-top nav{gap:12px}}
@media(max-width:1050px){.wrap{width:calc(100% - 38px)}.section-pad{padding:65px 0}.nav-bar{height:69px}.brand img{width:150px}.desktop-nav,.nav-contact{display:none}.menu-toggle{margin-left:auto;display:flex;width:42px;height:42px;justify-content:center;flex-direction:column;gap:5px;align-items:center;background:transparent;border:1px solid #274569;border-radius:10px}.menu-toggle span{width:19px;height:2px;background:#dceaff}.mobile-nav:not([hidden]){display:flex;flex-direction:column;padding:6px 19px 16px;border-top:1px solid var(--line)}.mobile-nav a{padding:13px 4px;font-size:14px;border-bottom:1px solid var(--line)}.hero{padding-top:60px}.hero-layout{grid-template-columns:1fr;gap:10px}.hero h1{font-size:clamp(42px,10vw,62px)}.hero-description{font-size:16px}.hero-actions{flex-direction:column;align-items:stretch}.benefits{margin-top:25px;gap:12px}.benefits span{font-size:11px}.hero-visual{height:330px}.dashboard-art{max-width:470px}.floating-tag{right:1px;bottom:0}.problem-grid{grid-template-columns:repeat(2,1fr)}.service-grid,.principle-layout,.about-layout,.contact-panel{grid-template-columns:1fr}.principle-layout,.about-layout,.contact-panel{gap:24px}.steps{grid-template-columns:repeat(2,1fr)}.contact-panel{padding:28px}.footer-top{flex-wrap:wrap}.footer-top nav{width:100%;flex-wrap:wrap;gap:12px 22px}.footer-bottom{flex-wrap:wrap}.legal-note{text-align:left;max-width:none}}
@media(max-width:450px){.eyebrow{font-size:9px;letter-spacing:.12em}.hero h1{font-size:42px}.hero-visual{height:290px}.dashboard-art{padding:14px 12px}.dashboard-heading{margin:25px 0 22px;font-size:17px}.dashboard-heading strong{font-size:20px}.flow-card{padding:13px 3px;font-size:10px}.flow-link{width:20px}.flow-icon{font-size:24px}.dashboard-bottom{font-size:8px}.floating-tag{font-size:10px}.problem-grid{gap:10px}.problem-card{padding:18px 13px;min-height:222px}.problem-icon{margin-bottom:25px}.problem-card h3{font-size:14px}.problem-card p{font-size:12px}.problem-number{right:10px;top:21px}.service-card{padding:26px}.steps{gap:20px}.about-art{min-height:260px}.about-art img{width:160px}.contact-actions .button{font-size:14px;padding:13px 12px}}

:where(a,button):focus-visible{outline:3px solid #72cbff;outline-offset:4px}
@media(max-width:1050px){html{scroll-padding-top:80px}html:not(.js) .menu-toggle{display:none}html:not(.js) .mobile-nav{display:flex;flex-direction:column;padding:6px 19px 16px;border-top:1px solid var(--line)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.problem-card,.service-card{transition:none}}
.error-page{min-height:100vh;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:45px 0}.error-page img{width:205px;height:auto;margin-bottom:50px}.error-page h1{font-size:clamp(36px,6vw,66px);line-height:1.1;margin:0 0 15px}.error-page>p:not(.eyebrow){color:var(--muted);margin:0 0 28px}

/* Composición corporativa: conserva la base oscura, el logotipo y los controles originales. */
.section-pad{padding:82px 0}
.site-header{background:rgba(3,11,22,.96);box-shadow:0 12px 35px #02081148}
.nav-bar{gap:25px}
.desktop-nav{gap:20px}
.desktop-nav a{white-space:nowrap}
.nav-contact{white-space:nowrap;background:#071b30}
.hero{padding:83px 0 76px;background:radial-gradient(ellipse at 78% 52%,#12416c 0,#0a213b 24%,transparent 57%),linear-gradient(110deg,#020914,#061423 75%);isolation:isolate}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 47%,#3083c80d 47.3%,transparent 48.1%),linear-gradient(115deg,transparent 60%,#3083c80c 60.2%,transparent 61%);pointer-events:none;z-index:-1}
.hero-layout{grid-template-columns:1fr 1.04fr;gap:42px;min-height:520px}
.hero-copy{position:relative;z-index:2}
.hero h1{font-size:clamp(51px,5vw,72px);max-width:650px;margin-bottom:24px}
.hero h1 span{color:#3998ff}
.hero-description{max-width:570px;font-size:17px;color:#c2d2e4}
.hero-actions{gap:13px}
.benefits{border-top:1px solid #2d5b84;margin-top:38px;padding-top:20px;gap:22px}
.benefits span{color:#c1d3e5}
.benefits i{font-size:23px}
.hero-visual{height:510px}
.orb-one{width:490px;height:490px;right:0;top:0;background:radial-gradient(circle,#1379df45,transparent 68%)}
.orb-two{width:455px;height:455px;border-color:#409bfa2b}
.visual-grid{inset:-20px;background-size:29px 29px}
.visual-rail{position:absolute;border:1px solid #3188da40;border-radius:22px;transform:rotate(-12deg);pointer-events:none}
.rail-one{width:68%;height:72%;top:9%;right:6%}
.rail-two{width:76%;height:81%;top:4%;right:0;opacity:.45}
.dashboard-art{z-index:1;width:min(100%,565px);min-height:358px;padding:0;overflow:hidden;border-color:#3b7db5;border-radius:19px;transform:perspective(1100px) rotateY(-7deg) rotateX(3deg);box-shadow:0 35px 95px #0009,0 0 52px #1377df25,inset 0 1px #a0d4ff30}
.dashboard-top{padding:13px 19px;min-height:50px;background:#091c2d;border-bottom-color:#37608a;font-size:9px}
.dash-brand{font-size:16px;font-weight:800;letter-spacing:-.03em;color:#eef7ff;white-space:nowrap}
.dash-brand b{color:#2ea9ff}
.dashboard-top>span:nth-child(2){letter-spacing:.13em}
.dashboard-content{display:grid;grid-template-columns:43px 1fr;min-height:260px}
.dashboard-sidebar{border-right:1px solid #234f7c;background:#071a2b;display:flex;flex-direction:column;align-items:center;gap:23px;padding:20px 0}
.dashboard-sidebar span{width:17px;height:17px;border:1px solid #447ea9;border-radius:5px;background:linear-gradient(145deg,#0b3764,#071b2c)}
.dashboard-sidebar span:first-child{border-color:#40b5ff;box-shadow:0 0 12px #168bfa65}
.dashboard-main{padding:20px 23px 22px}
.dashboard-heading{font-size:16px;margin:0 0 27px;color:#d4e3f3}
.dashboard-heading strong{font-size:22px;line-height:1.2}
.flow{margin-bottom:26px}
.flow-card{min-height:91px;gap:6px;font-size:11px;background:linear-gradient(155deg,#0b2a45,#071a2d)}
.flow-card.active{background:linear-gradient(155deg,#0d5aa4,#0a315c)}
.flow-icon{font-size:27px}
.flow-link{width:26px}
.dashboard-lines{display:grid;gap:7px}
.dashboard-lines span{height:6px;border-radius:6px;background:linear-gradient(90deg,#1e6093,#133452)}
.dashboard-lines span:nth-child(2){width:68%}
.dashboard-lines span:nth-child(3){width:82%}
.dashboard-bottom{padding:10px 19px;border-top-color:#2f5a83;background:#081a2a;font-size:8px}
.visual-chip,.floating-tag{z-index:2;background:#0b2640e8;border:1px solid #3987c3;color:#dbeeff;box-shadow:0 14px 38px #0008}
.visual-chip{position:absolute;top:41px;right:-2px;padding:10px 16px;border-radius:11px;font-size:11px}
.visual-chip span{color:#65c6ff;margin-right:5px}
.floating-tag{right:0;bottom:15px;font-size:14px;font-weight:600}

.problems{background:linear-gradient(#081726,#071421)}
.section-heading{max-width:790px;margin-bottom:35px}
.section-heading h2,.examples h2{font-size:clamp(32px,3.4vw,46px);line-height:1.16;letter-spacing:-.04em;margin:0 0 15px}
.problem-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.problem-card{display:grid;grid-template-columns:42% 58%;min-height:226px;padding:0;overflow:hidden;border-color:#244869;border-radius:16px;background:#0a1b2c}
.problem-card:hover{transform:translateY(-3px)}
.problem-visual{min-height:225px;position:relative;overflow:hidden;display:grid;place-items:center;background:radial-gradient(circle at 48% 45%,#15558c,#0a223d 50%,#09192a 85%);border-right:1px solid #244d72}
.problem-visual:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#6ab6ff0b 1px,transparent 1px),linear-gradient(90deg,#6ab6ff0b 1px,transparent 1px);background-size:24px 24px}
.problem-content{position:relative;padding:33px 27px 26px;display:flex;flex-direction:column;justify-content:flex-end}
.problem-number{position:absolute;top:22px;right:25px;color:#9ec6ec;font-size:10px;letter-spacing:.12em}
.problem-card h3{font-size:20px;line-height:1.2;margin-bottom:11px}
.problem-card p{font-size:13px;color:#b6c9dd}
.problem-mail .problem-visual{background:radial-gradient(circle at 48% 45%,#1e5a84,#082138 55%,#09192a)}
.mail-back,.mail-front{position:absolute;display:grid;place-items:center;border:1px solid #4facf2;background:linear-gradient(150deg,#0c467d,#0a2747);box-shadow:0 18px 26px #0007}
.mail-back{width:106px;height:72px;border-radius:9px;transform:translate(17px,-17px) rotate(9deg);opacity:.5}
.mail-front{width:125px;height:83px;border-radius:11px;font-size:51px;color:#8bd1ff;transform:rotate(-7deg)}
.mail-pulse{position:absolute;right:18%;top:20%;padding:0 10px;background:#075caa;border:1px solid #43b0ff;border-radius:50px;color:#d4f1ff;letter-spacing:2px}
.problem-docs .problem-visual{background:radial-gradient(circle at 60% 30%,#204f7d,#0b223c 54%,#09192a)}
.paper{position:absolute;width:90px;height:114px;border:1px solid #6bbcf4;border-radius:5px;background:linear-gradient(145deg,#1c628f,#0c2f54);box-shadow:0 13px 23px #0007}
.paper-one{transform:translate(-31px,15px) rotate(-13deg);opacity:.45}
.paper-two{transform:translate(15px,8px) rotate(8deg);opacity:.7}
.paper-three{transform:translate(-4px,-3px) rotate(-3deg);display:flex;flex-direction:column;gap:10px;padding:26px 15px}
.paper-three i{height:5px;border-radius:5px;background:#77c4f0}
.paper-three i:nth-child(2){width:70%}.paper-three i:nth-child(3){width:85%}
.problem-queries .problem-visual{background:radial-gradient(circle at 45% 40%,#20527c,#102640 56%,#09192a)}
.bubble{position:absolute;padding:13px 19px;border:1px solid #64b8f1;border-radius:16px;background:#0d497a;color:#d5f1ff;font-weight:800;box-shadow:0 14px 24px #0008}
.bubble-one{font-size:26px;transform:translate(-28px,-24px)}
.bubble-two{font-size:25px;transform:translate(40px,39px);background:#0b2e50}
.problem-data .problem-visual{background:radial-gradient(circle at 50% 45%,#1b5879,#09283e 55%,#09192a)}
.data-node{position:relative;z-index:1;display:grid;place-items:center;width:50px;height:50px;border:1px solid #62bdf5;border-radius:13px;background:#0c4773;color:#e6f6ff;font-weight:800;box-shadow:0 0 20px #1f88de55}
.problem-data .problem-visual{display:flex;justify-content:center;gap:8px}
.data-path{height:2px;width:39px;background:#57b9f4;position:relative}

.services{background:linear-gradient(180deg,#06101d,#071624)}
.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.service-card{min-height:420px;padding:0 28px 27px;background:linear-gradient(160deg,#0f2740,#081724 72%);border-color:#24517a;overflow:hidden}
.service-card:nth-child(2){background:linear-gradient(160deg,#102944,#091825 72%)}
.service-card:nth-child(3){background:linear-gradient(160deg,#12243b,#081724 72%)}
.service-card h3{font-size:23px;max-width:none;min-height:55px;margin-bottom:11px}
.service-card p{font-size:14px;color:#b3c7dc;line-height:1.65}
.service-index{right:26px;top:173px;font-size:10px;letter-spacing:.12em}
.service-card a{font-size:14px}
.service-visual{height:150px;margin:0 -28px 30px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid #2a5275;background:radial-gradient(circle at center,#14548455,transparent 62%),linear-gradient(#0a233b,#0a1b2d)}
.service-visual:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#69baff0b 1px,transparent 1px),linear-gradient(90deg,#69baff0b 1px,transparent 1px);background-size:26px 26px}
.visual-node{z-index:1;width:52px;height:52px;display:grid;place-items:center;border:1px solid #4baeff;border-radius:13px;background:#0a355d;color:#b9e5ff;font-size:27px;box-shadow:0 9px 21px #0007}
.visual-node-main{width:61px;height:61px;background:#095ba2;box-shadow:0 0 25px #168bff66}
.visual-route{z-index:1;width:27px;height:2px;background:#57b7ff}
.visual-agents{background:radial-gradient(circle at center,#12476f,#0a1b2d 68%)}
.agent-ring{width:110px;height:110px;border:1px solid #438fd0;border-radius:50%;box-shadow:0 0 28px #1787e855}
.agent-core{position:absolute;display:grid;place-items:center;width:66px;height:66px;border-radius:18px;border:1px solid #67c5ff;background:#0b5793;color:#d7f3ff;font-size:37px;box-shadow:0 0 25px #1a8ce677}
.agent-satellite{position:absolute;width:15px;height:15px;border:1px solid #95dfff;border-radius:50%;background:#1468a8}.satellite-one{transform:translate(-70px,-42px)}.satellite-two{transform:translate(73px,-27px)}.satellite-three{transform:translate(21px,61px)}
.visual-software{background:radial-gradient(circle at center,#154465,#0b1c30 68%)}
.software-window{position:relative;display:block;width:166px;height:107px;border:1px solid #5baae4;border-radius:10px;background:linear-gradient(#0c3a61,#09263f);box-shadow:0 16px 35px #0009;transform:rotate(-6deg)}
.software-window i{position:absolute;top:10px;width:5px;height:5px;border-radius:50%;background:#72caff}.software-window i:nth-child(1){left:13px}.software-window i:nth-child(2){left:23px}.software-window i:nth-child(3){left:33px}
.software-window b{position:absolute;top:32px;left:18px;font-size:31px;color:#79cfff;font-weight:400}
.software-window em{position:absolute;top:46px;left:67px;width:77px;height:6px;border-radius:5px;background:#4b9dcc}.software-window em:last-child{top:64px;width:55px}

.examples{background:linear-gradient(145deg,#0a1c2d,#06111f 65%);border-block:1px solid #1a3d5c}
.examples-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:50px;align-items:end;margin-bottom:32px}
.examples-intro h2{max-width:650px}
.examples-intro>p{margin:0 0 7px;color:#adbfce;line-height:1.75}
.examples-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.example-card{position:relative;min-height:215px;padding:27px 30px;background:linear-gradient(135deg,#0f2942,#0a1c2e 70%);border:1px solid #29557c;border-radius:15px;overflow:hidden}
.example-card:after{content:"";position:absolute;width:190px;height:190px;border:1px solid #3478b755;border-radius:50%;right:-105px;top:-100px}
.example-index{position:absolute;right:25px;top:22px;color:#8fbbe1;font-size:11px;letter-spacing:.12em}
.example-card h3{font-size:20px;line-height:1.25;margin:0 0 9px;padding-right:35px}
.example-card p{color:#bbcede;font-size:13px;margin:0 0 26px;max-width:440px}
.example-flow{display:flex;align-items:center;gap:7px}
.example-flow span{position:relative;z-index:1;border:1px solid #3776a6;border-radius:7px;background:#0a3151;color:#e2f4ff;padding:6px 9px;font-size:11px;white-space:nowrap}
.example-flow span:last-child{border-color:#3da7e6;background:#0b4771}
.example-flow i{width:18px;height:2px;flex:0 0 18px;background:#52b5ed;position:relative}


.principle{background:radial-gradient(circle at 10% 50%,#0e3a68,#08213e 45%,#071524 80%);padding:72px 0}
.principle-layout{grid-template-columns:1.25fr .75fr;gap:70px}
.principle h2{font-size:clamp(34px,3.3vw,46px)}
.principle-layout>p{border-left:2px solid #3e9cf1;padding-left:28px;line-height:1.8}
.method{background:#06111e}
.steps{gap:0}
.step{border-top:1px dashed #366e9e;padding:25px 22px 0 0;margin-right:10px}
.step:last-child{margin-right:0}
.step span{width:52px;height:52px;box-shadow:0 0 0 5px #0d2d4c,0 0 23px #0b6fe55c}
.step h3{font-size:18px;line-height:1.3;max-width:195px}
.step p{max-width:230px;line-height:1.65}
.about{background:linear-gradient(145deg,#0a1e32,#071422)}
.about-art{min-height:385px;background:radial-gradient(circle at 50% 45%,#155ca1,#092e53 37%,#07192b 70%)}
.about-art img{width:210px}
.about-orbit{position:absolute;width:260px;height:260px;border:1px solid #72bfff55;border-radius:50%;box-shadow:0 0 70px #1276df33}
.about-art-text{color:#a6c9e6}
.about-copy>p:not(.eyebrow){line-height:1.75}
.contact{background:#06111e}
.contact-panel{padding:54px 58px;gap:55px;background:linear-gradient(115deg,#0b3159,#0a1d32 68%);box-shadow:0 25px 70px #0004}
.contact h2{font-size:clamp(35px,3.4vw,48px)}
.contact-copy>p:not(.eyebrow){font-size:17px;line-height:1.7}
.contact-actions{border:1px solid #3e789e;background:#061c30c9;border-radius:16px;padding:26px;gap:13px;box-shadow:0 20px 35px #0005}
.contact-card-heading{font-size:20px;font-weight:800;line-height:1.25}
.contact-actions p{margin:0 0 7px;color:#b1c8dd;font-size:13px;line-height:1.6}
.contact-actions .button{font-size:14px}
.contact-actions small{line-height:1.4}

@media(max-width:1050px){
  .hero-layout{grid-template-columns:1fr;gap:24px}
  .hero{padding-top:70px}
  .hero h1{max-width:760px}
  .hero-description{max-width:690px}
  .hero-visual{height:390px;max-width:690px;width:100%;margin:auto}
  .dashboard-art{max-width:550px}
  .visual-chip{right:4%}
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .service-card:last-child{grid-column:1/-1}
  .service-card{min-height:390px}
  .principle-layout{grid-template-columns:1fr;gap:25px}
  .contact-panel{padding:35px;gap:27px}
}
@media(max-width:700px){
  .section-pad{padding:62px 0}
  .hero{padding:59px 0 63px}
  .hero-layout{gap:25px}
  .hero h1{font-size:clamp(42px,8.7vw,59px)}
  .hero-description{font-size:16px}
  .benefits{gap:13px}
  .hero-visual{height:345px}
  .dashboard-art{max-width:480px}
  .visual-chip{top:12px}
  .problem-grid,.service-grid,.examples-grid{grid-template-columns:1fr}
  .service-card:last-child{grid-column:auto}
  .problem-card{grid-template-columns:40% 60%;min-height:205px}
  .problem-visual{min-height:205px}
  .problem-content{padding:29px 23px 23px}
  .problem-card h3{font-size:18px}
  .service-card{min-height:370px}
  .examples-intro{grid-template-columns:1fr;gap:5px}
  .examples-intro>p{max-width:640px}
  .steps{grid-template-columns:repeat(2,1fr);gap:22px}
  .principle{padding:60px 0}
  .principle-layout>p{margin:0}
  .about-art{min-height:310px}
  .contact-panel{padding:26px}
  .contact-actions{padding:23px}
}
@media(max-width:480px){
  .hero h1{font-size:42px}
  .hero-visual{height:300px}
  .dashboard-art{min-height:260px;transform:perspective(1000px) rotateY(-4deg) rotateX(2deg)}
  .dashboard-top{padding:10px 11px;min-height:39px}
  .dashboard-top>span:nth-child(2){display:none}
  .dashboard-content{grid-template-columns:32px 1fr;min-height:204px}
  .dashboard-sidebar{gap:17px;padding:15px 0}
  .dashboard-sidebar span{width:13px;height:13px}
  .dashboard-main{padding:15px 12px}
  .dashboard-heading{font-size:13px;margin-bottom:17px}
  .dashboard-heading strong{font-size:17px}
  .flow{margin-bottom:17px}
  .flow-card{min-height:70px;padding:8px 2px;font-size:9px;overflow-wrap:anywhere}
  .flow-icon{font-size:20px}
  .flow-link{width:11px}
  .dashboard-bottom{padding:7px 10px;font-size:7px}
  .visual-chip{font-size:9px;padding:7px 9px;top:3px;right:0}
  .floating-tag{font-size:10px;padding:8px 10px;bottom:0}
  .problem-card{grid-template-columns:34% 66%;min-height:190px}
  .problem-visual{min-height:190px}
  .problem-content{padding:28px 14px 17px}
  .problem-number{right:13px;top:12px;font-size:9px}
  .problem-card h3{font-size:16px}
  .problem-card p{font-size:12px;line-height:1.5}
  .mail-front{width:70px;height:54px;font-size:34px}
  .mail-back{width:65px;height:50px}
  .mail-pulse{right:8%;top:21%;font-size:9px}
  .paper{width:57px;height:77px}
  .paper-three{padding:20px 9px;gap:6px}
  .paper-three i{height:4px}
  .bubble{padding:8px 12px}
  .bubble-one{font-size:17px;transform:translate(-13px,-19px)}
  .bubble-two{font-size:18px;transform:translate(18px,26px)}
  .data-node{width:32px;height:32px;border-radius:9px;font-size:12px}
  .data-path{width:15px}
  .example-card{padding:23px 20px}
  .example-flow{gap:4px;flex-wrap:wrap}
  .example-flow span{font-size:10px;padding:5px 6px}
  .example-flow i{width:11px;flex-basis:11px}
  .steps{gap:16px}
  .step{padding-right:8px}
  .step h3{font-size:16px}
  .step p{font-size:12px}
  .contact h2{font-size:35px}
  .contact-actions{padding:18px}
  .contact-card-heading{font-size:18px}
}
@media(min-width:701px) and (max-width:1050px){.hero-actions{flex-direction:row;align-items:flex-start}}
@media(prefers-reduced-motion:reduce){.button:hover,.problem-card:hover,.service-card:hover{transform:none}}

/* Correcciones visuales: imágenes completas y jerarquía uniforme. */
.hero-layout{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(24px,4vw,50px)}
.hero-visual{display:block;width:100%;height:auto;aspect-ratio:900/730;overflow:hidden;border:1px solid #315676;border-radius:18px;background:#0a1a2c;box-shadow:0 18px 44px #0006}
.hero-photo{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;filter:saturate(.83) brightness(.84)}
.problem-grid{gap:18px}
.problem-card,.service-card,.example-card,.about-art{border-radius:16px}
.problem-card{grid-template-columns:minmax(0,46%) minmax(0,54%);min-height:230px}
.problem-visual{min-height:230px}
.problem-visual .problem-photo{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.82) brightness(.87)}
.problem-visual:before{z-index:1;background:linear-gradient(0deg,#06142355,transparent 58%)}
.problem-content{min-width:0;padding:36px 24px 24px;justify-content:center}
.problem-number{top:18px;right:20px}
.problem-card h3{font-size:19px}
.problem-card p{font-size:13px;line-height:1.55}
.service-card{min-height:400px;border-color:#254564}
.service-visual{height:155px;background:#08192b;border-bottom-color:#2c4d6b}
.service-visual:before{display:none}
.service-visual .service-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.7) brightness(.78)}
.service-card h3{font-size:22px}
.example-card{display:flex;flex-direction:column;min-height:0;padding:26px;border-color:#254564}
.example-card:after{display:none}
.example-card p{margin-bottom:18px}
.example-card .example-photo{display:block;width:100%;height:auto;aspect-ratio:900/506;object-fit:contain;border:1px solid #315a7c;border-radius:10px;margin:0 0 20px;filter:saturate(.78) brightness(.84)}
.example-flow{margin-top:auto}
.steps{gap:18px}
.step{position:relative;margin:0;padding:22px 18px 0 0;border-top:1px solid #315570}
.step:last-child{margin:0}
.step:after{content:"";position:absolute;top:-3px;right:0;width:5px;height:5px;border-radius:50%;background:#4b8bbc}
.step-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
.step .step-top span{width:44px;height:44px;margin:0;border:1px solid #3a85c5;background:#0d4e8e;box-shadow:none}
.step-icon{width:36px;height:36px;flex:none;color:#67b6ef}
.step h3{max-width:none}
.about-art{min-height:350px;background:radial-gradient(circle at 50% 42%,#15416b,#0a223c 50%,#071727 82%);border-color:#2b5274}
.about-art img{position:relative;inset:auto;width:min(52%,220px);opacity:1;filter:drop-shadow(0 14px 24px #0007)}
.about-orbit{width:275px;height:275px;opacity:.55;box-shadow:none}
.about-art:before,.about-art:after{opacity:.45}
.about-art-text{z-index:2}
.contact-panel{border-radius:18px;border-color:#315d80;background:linear-gradient(120deg,#0b2948,#091b2e 70%);box-shadow:0 18px 45px #0004;gap:clamp(28px,4vw,54px);padding:clamp(28px,4vw,50px)}
.contact-glow{opacity:.1}
.contact-actions{border-radius:14px;background:#071d31;box-shadow:none;border-color:#315f7f}
.contact-actions .button{width:100%;min-width:0;text-align:center;line-height:1.35}
.email-link{overflow-wrap:anywhere}
@media(max-width:1050px){.hero-layout{grid-template-columns:1fr}.hero-visual{max-width:690px}}
@media(min-width:901px) and (max-width:1050px){.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-card:last-child{grid-column:auto}}
@media(min-width:701px) and (max-width:900px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card:last-child{grid-column:1/-1;max-width:calc((100% - 17px)/2);width:100%;justify-self:center}}
@media(max-width:850px){.problem-grid{grid-template-columns:1fr}.problem-card{grid-template-columns:minmax(0,40%) minmax(0,60%)}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.service-card:last-child{grid-column:auto;max-width:none}}
@media(max-width:480px){.problem-card{grid-template-columns:1fr;min-height:0}.problem-visual{height:190px;min-height:0;border-right:0;border-bottom:1px solid #244d72}.problem-content{min-height:148px;padding:32px 20px 20px}.problem-card h3{font-size:17px}.example-card{padding:22px 20px}.steps{grid-template-columns:1fr;gap:24px}.step{padding:18px 0 0}.step-top{margin-bottom:12px}.about-art{min-height:270px}.about-art img{width:160px}.contact-panel{padding:22px}.contact-actions{padding:18px}.contact-actions .button{overflow-wrap:anywhere}}

/* CTA sobrias y contacto más fácil de leer. */
.button,.nav-contact{border-radius:11px}
.button-primary{box-shadow:0 4px 14px rgba(2,105,255,.16)}
.button-primary:hover{box-shadow:0 5px 17px rgba(2,105,255,.24)}
.service-card a,.text-link,.email-link{text-decoration:underline;text-decoration-color:#4d99cc;text-underline-offset:4px}
.contact-actions{gap:14px}
.contact-actions p{font-size:14px}
.contact-actions .button{min-height:54px}
.contact-actions small{color:#a9c1d8}

/* Encuadres: escenas completas sin cortar personas ni diagramas. */
.problem-visual .problem-photo{object-position:center top}
.service-visual .service-photo{object-fit:contain}

/* Composición aprobada: portada continua y tarjetas compactas. */
.site-header .wrap,.hero .wrap,.services .wrap{width:min(1260px,calc(100% - 70px))}
.problems .wrap{width:min(1360px,calc(100% - 70px))}
.nav-bar{height:70px}
.nav-contact{background:#0867e5;border-color:#237ff2;border-radius:999px;padding:10px 26px}
.button{border-radius:999px}
.hero{min-height:560px;padding:38px 0 26px;background:#06111f}
.hero:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#04101ff8 0%,#04101fe8 28%,#04101f9c 43%,#04101f24 67%,transparent 80%);pointer-events:none}
.hero-layout{display:flex;align-items:center;min-height:496px;gap:0}
.hero-copy{position:relative;z-index:2;width:min(49%,500px)}
.hero .eyebrow{margin-bottom:13px}
.hero h1{font-size:clamp(46px,4.1vw,62px);line-height:1.04;margin-bottom:18px}
.hero-description{max-width:505px;font-size:16px;line-height:1.52;margin-bottom:18px}
.hero-actions{gap:12px}
.benefits{border:0;margin-top:23px;padding:0;gap:17px}
.hero-visual{position:absolute;inset:0 0 0 auto;z-index:0;display:block;width:62%;height:100%;max-width:none;aspect-ratio:auto;border:0;border-radius:0;background:none;box-shadow:none;overflow:hidden}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 18%;filter:saturate(.83) brightness(.82)}
.problems{padding:50px 0 54px;background:linear-gradient(#071522,#071320)}
.problems .section-heading,.services .section-heading{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,.7fr);column-gap:48px;row-gap:8px;max-width:none;align-items:end;margin-bottom:24px}
.problems .section-heading .eyebrow,.services .section-heading .eyebrow{grid-column:1/-1;margin-bottom:0}
.problems .section-heading h2,.services .section-heading h2{grid-column:1;margin:0}
.problems .section-heading p:not(.eyebrow),.services .section-heading p:not(.eyebrow){grid-column:2;margin:0 0 3px;line-height:1.55}
.problems .section-heading p:not(.eyebrow){font-weight:500}
.problem-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.problem-card{display:flex;flex-direction:column;min-height:0;border-radius:13px}
.problem-visual{width:100%;height:128px;min-height:0;border-right:0;border-bottom:1px solid #244d72}
.problem-visual .problem-photo{object-fit:cover;object-position:center top}
.problem-content{min-height:119px;padding:17px 18px 18px;justify-content:flex-start}
.problem-number{position:static;display:block;margin-bottom:6px;font-size:9px}
.problem-card h3{font-size:17px;margin-bottom:6px}
.problem-card p{font-size:12px;line-height:1.45}
.services{padding:55px 0 72px}
.service-grid{gap:16px}
.service-card{min-height:0;padding:25px 25px 24px;border-radius:13px}
.service-visual{height:132px;margin:-25px -25px 24px}
.service-card h3{font-size:20px}
.service-card p{margin-bottom:18px}
@media(max-width:1100px){
  .site-header .wrap,.hero .wrap,.problems .wrap,.services .wrap{width:calc(100% - 38px)}
  .hero{padding:50px 0 0;min-height:0}
  .hero:before{display:none}
  .hero-layout{display:block;min-height:0}
  .hero-copy{width:100%;max-width:690px}
  .hero-visual{position:relative;inset:auto;width:calc(100% + 38px);height:auto;max-width:none;aspect-ratio:16/9;margin:30px -19px 0}
  .hero-photo{object-position:center top}
  .problem-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .problems .section-heading,.services .section-heading{display:block}
  .problems .section-heading .eyebrow,.services .section-heading .eyebrow{margin-bottom:11px}
  .problems .section-heading h2,.services .section-heading h2{margin-bottom:12px}
}
@media(max-width:700px){
  .hero{padding-top:42px}
  .hero h1{font-size:clamp(38px,9vw,52px)}
  .hero-visual{aspect-ratio:900/730;margin-top:25px}
  .problem-grid{grid-template-columns:1fr}
  .problem-visual{height:160px}
  .problem-content{min-height:0}
}

/* Ajustes de las referencias aprobadas: bordes de imagen fundidos con el azul marino. */
.benefit-chart{width:23px;height:23px;flex:none;color:#3296ff}
.hero:before{background:linear-gradient(90deg,#04101ff8 0%,#04101ff0 25%,#04101fc9 38%,#04101f42 61%,transparent 80%)}
.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#06111f 0%,transparent 21%),linear-gradient(0deg,#06111f 0%,transparent 16%);pointer-events:none}
.hero-photo{object-position:center 16%}
.problem-visual{border-bottom:0;background:#0b1d30}
.problem-visual:before{z-index:1;background:linear-gradient(0deg,#0b1d30 0%,#0b1d30c9 10%,transparent 56%)}
.problem-visual .problem-photo{filter:saturate(.86) brightness(.88)}
.problem-content{background:#0b1d30}
.service-visual{height:208px;border-bottom:0;background:radial-gradient(ellipse at 50% 30%,#103053,#091b2d 75%)}
.service-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0b1d30 0%,transparent 27%);pointer-events:none}
.service-visual .service-photo{width:100%;height:100%;object-fit:contain;filter:saturate(.78) brightness(.84);-webkit-mask-image:linear-gradient(90deg,transparent,#000 13%,#000 87%,transparent);mask-image:linear-gradient(90deg,transparent,#000 13%,#000 87%,transparent)}
.visual-software .service-photo-code{width:min(66%,230px);height:100%;object-fit:contain;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.principle{background:linear-gradient(100deg,#092746,#071724 74%);padding:38px 0}
.principle .wrap{width:min(1360px,calc(100% - 70px))}
.principle-layout{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:18px;align-items:center}
.principle-copy{position:relative;z-index:1;padding:24px 0}
.principle h2{font-size:clamp(35px,3.6vw,54px);line-height:1.1}
.principle h2 span{color:#269dff}
.principle-description{max-width:670px;margin:27px 0 0;border-left:3px solid #1da9f6;padding-left:22px;color:#c2d4e9;font-size:clamp(15px,1.2vw,18px);line-height:1.7}
.principle-visual{position:relative;width:100%;aspect-ratio:900/730;overflow:hidden;isolation:isolate}
.principle-visual img{display:block;width:100%;height:100%;object-fit:contain;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%),linear-gradient(0deg,transparent,#000 5%,#000 95%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent,#000 8%),linear-gradient(0deg,transparent,#000 5%,#000 95%,transparent);mask-composite:intersect}
.principle-node{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:1px solid #4a96cc;border-radius:14px;background:linear-gradient(150deg,#153b60,#09213c);box-shadow:0 10px 30px #001326bd,inset 0 1px #9ac7e13d;color:#eef8ff;font-size:clamp(9px,1vw,13px);font-weight:600;text-align:center;line-height:1.1}
.principle-node svg{width:clamp(18px,3vw,39px);height:clamp(18px,3vw,39px);color:#bce4ff;flex:none}
.principle-node-one{left:7%;top:29%;width:20%;height:27%}
.principle-node-two{left:33%;top:42%;width:20%;height:26%}
.principle-node-three{left:62%;top:52%;width:21%;height:28%}
.method{background:linear-gradient(#06111e,#071625)}
.method-scenes{display:block;width:100%;height:auto;aspect-ratio:1600/148;object-fit:cover;margin:2px 0 16px;-webkit-mask-image:linear-gradient(0deg,transparent,#000 24%);mask-image:linear-gradient(0deg,transparent,#000 24%)}
.steps{gap:18px}
.step{border-top:1px solid #285077}
.step:after{display:none}
.about{background:linear-gradient(110deg,#061423,#071724);padding:48px 0}
.about .wrap{width:min(1360px,calc(100% - 70px))}
.about-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:center}
.about-copy{padding:24px 0;position:relative;z-index:1}
.about h2{font-size:clamp(35px,3.5vw,52px);line-height:1.1}
.about h2 span{color:#269dff}
.about-copy>p:not(.eyebrow){max-width:630px}
.about-art{margin:0;min-height:0;aspect-ratio:848/768;border:0;border-radius:0;background:transparent;position:relative;overflow:hidden}
.about-art:before,.about-art:after{display:none}
.about-art img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:saturate(.85) brightness(.85);-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%),linear-gradient(0deg,transparent,#000 5%,#000 95%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent,#000 9%),linear-gradient(0deg,transparent,#000 5%,#000 95%,transparent);mask-composite:intersect}
.contact-panel{background:radial-gradient(ellipse 36% 80% at 51% 47%,#0e4b85aa,transparent 80%),linear-gradient(115deg,#092848,#081a2e 72%)}
.contact-panel:before{content:"";position:absolute;left:33%;top:-62%;width:52%;height:190%;border:1px solid #228cdb60;border-radius:45%;transform:rotate(-26deg);box-shadow:0 0 0 36px #0f6cb518,0 0 0 86px #146dc10d;pointer-events:none}
@media(min-width:701px) and (max-width:1100px){.problem-visual{height:175px}}
@media(max-width:1100px){
  .hero-visual:after{background:linear-gradient(0deg,#06111f 0%,transparent 18%),linear-gradient(180deg,#06111f 0%,transparent 12%)}
  .principle-layout{grid-template-columns:minmax(0,1fr) minmax(0,.9fr)}
}
@media(max-width:850px){
  .principle-layout{grid-template-columns:1fr}
  .about-layout{grid-template-columns:1fr;gap:18px}
}
@media(max-width:700px){
  .hero-visual{margin-top:18px}
  .principle,.about{padding:50px 0}
  .principle .wrap,.about .wrap{width:calc(100% - 38px)}
  .principle-layout{display:block}
  .principle-copy{padding:0}
  .principle-description{margin-top:23px}
  .principle-visual{margin-top:18px}
  .principle-node{border-radius:8px;gap:2px;font-size:9px}
  .principle-node svg{width:19px;height:19px}
  .method-scenes{display:none}
  .about-copy{padding:0}
  .about-art{margin-top:18px}
  .contact-panel:before{left:25%;width:100%;opacity:.45}
}

/* Ajustes finales sobre las referencias aprobadas. */
.visual-automation .service-photo{object-fit:cover;object-position:center 48%;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.visual-agents .service-photo{object-fit:cover;object-position:center 48%;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.visual-software .service-photo-code{width:100%;height:100%;object-fit:cover;object-position:center 20%;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.example-card .example-photo{width:calc(100% + 52px);max-width:none;height:auto;aspect-ratio:1200/676;object-fit:contain;margin:0 -26px 20px;border:0;border-radius:0;background:#0a1c2e;-webkit-mask-image:linear-gradient(0deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(0deg,transparent,#000 7%,#000 93%,transparent)}
.about-art{aspect-ratio:900/872}
.about-art img{object-fit:contain;filter:saturate(.87) brightness(.87);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 14%,#000 96%,transparent 100%),linear-gradient(0deg,transparent,#000 3%,#000 97%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent 0%,#000 14%,#000 96%,transparent 100%),linear-gradient(0deg,transparent,#000 3%,#000 97%,transparent);mask-composite:intersect}
.contact-panel{grid-template-columns:minmax(0,1.1fr) minmax(0,.95fr) minmax(120px,.38fr);gap:22px;background:linear-gradient(110deg,#0a2c50,#081b30 75%)}
.contact-copy,.contact-actions{position:relative;z-index:1}
.contact-copy{grid-column:1}
.contact-actions{grid-column:2;background:#061b30ed}
.contact-scene{position:absolute;z-index:0;inset:0 0 0 auto;width:34%;height:100%;object-fit:cover;object-position:center;opacity:.8;-webkit-mask-image:linear-gradient(90deg,transparent,#000 48%);mask-image:linear-gradient(90deg,transparent,#000 48%);pointer-events:none}
.contact-panel:before{opacity:.25}
@media(max-width:1050px){
  .contact-panel{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .contact-copy{grid-column:1}
  .contact-actions{grid-column:2}
  .contact-scene{width:40%;opacity:.3}
}
@media(max-width:700px){
  .example-card .example-photo{width:calc(100% + 40px);margin-inline:-20px}
  .contact-panel{grid-template-columns:1fr}
  .contact-copy,.contact-actions{grid-column:1}
  .contact-scene{width:55%;opacity:.17}
}

/* Páginas legales. */
.legal-note a,.contact-actions small a{color:#b9ddff;text-decoration:underline;text-underline-offset:3px}
.legal-note a+a{margin-left:18px}
.legal-page{min-height:100vh;display:flex;flex-direction:column}
.legal-main{flex:1;padding:74px 0 94px;background:linear-gradient(150deg,#081b2e,#050c18 65%)}
.legal-content{width:min(860px,calc(100% - 70px))}
.legal-content h1{font-size:clamp(38px,5vw,58px);letter-spacing:-.04em;line-height:1.12;margin:0 0 22px}
.legal-content h2{font-size:clamp(22px,2.5vw,29px);line-height:1.2;margin:0 0 15px}
.legal-content section{border-top:1px solid var(--line);padding:27px 0 8px}
.legal-content p,.legal-content dd{color:#bed0e4;line-height:1.7}
.legal-content p{margin:0 0 21px}
.legal-content a{color:#9cd2ff;text-decoration:underline;text-underline-offset:4px}
.legal-content strong{color:#e9f4ff;font-weight:600}
.legal-content .legal-pending{padding:17px 20px;border-left:3px solid #328dff;background:#0b2036;margin-bottom:34px}
.legal-data{display:grid;grid-template-columns:180px minmax(0,1fr);gap:10px 24px;margin:0 0 24px}
.legal-data dt{color:#e7f3ff;font-weight:700}
.legal-data dd{margin:0;overflow-wrap:anywhere}
.legal-return{margin-top:25px}
.legal-page .site-footer{padding:24px 0 35px}
.legal-page .footer-bottom{margin-top:0}
@media(max-width:700px){
  .legal-main{padding:50px 0 70px}
  .legal-content{width:calc(100% - 38px)}
  .legal-data{grid-template-columns:1fr;gap:3px}
  .legal-data dd{margin-bottom:13px}
  .legal-note a+a{margin-left:12px}
}
