:root{
  --navy:#061525;--navy2:#0a2138;--blue:#087ff5;--cyan:#1fc8ff;--ink:#0b1b2d;--muted:#627287;
  --line:#e4ebf3;--soft:#f5f8fc;--white:#fff;--green:#16c784;--radius:20px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.55}a{text-decoration:none;color:inherit}.container{width:min(1180px,calc(100% - 40px));margin:auto}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(10,33,56,.08)}.nav{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;flex-direction:column;line-height:.85;min-width:145px}.brand-next{font-family:Manrope,sans-serif;font-weight:800;font-size:25px;letter-spacing:.02em;color:#0a2946}.brand-next:before{content:"";display:inline-block;width:18px;height:4px;background:var(--blue);transform:skew(-28deg);margin-right:2px;vertical-align:middle}.brand-sub{font-size:8px;letter-spacing:.28em;font-weight:700;color:#617286;margin-top:5px}.nav-links{display:flex;align-items:center;gap:27px;font-size:13px;font-weight:600;color:#40536a}.nav-links a:hover,.nav-links a.active{color:var(--blue)}.nav-cta{background:var(--blue);color:white!important;padding:12px 18px;border-radius:999px;box-shadow:0 10px 25px rgba(8,127,245,.2)}.menu-toggle{display:none;border:0;background:none}
.hero{position:relative;overflow:hidden;background:linear-gradient(112deg,#051321 0%,#08233b 52%,#0b304c 100%);color:#fff;min-height:640px}.hero-grid{position:absolute;inset:0;opacity:.13;background-image:linear-gradient(rgba(255,255,255,.25) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.25) 1px,transparent 1px);background-size:60px 60px;mask-image:linear-gradient(to right,#000,transparent 85%)}.hero-content{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1.05fr;align-items:center;min-height:640px;gap:40px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.19em;color:#b9c9d9;margin:0 0 16px}.eyebrow.blue{color:var(--blue)}.hero h1{font-family:Manrope,sans-serif;font-size:clamp(42px,5vw,68px);line-height:1.02;letter-spacing:-.045em;margin:0 0 22px}.hero h1 span{color:#39bfff}.hero-text{font-size:17px;color:#c7d4e1;max-width:540px}.hero-actions{display:flex;gap:12px;margin:32px 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:14px 21px;border-radius:999px;font-size:13px;font-weight:800;transition:.25s;cursor:pointer}.btn-primary{background:var(--blue);color:#fff;box-shadow:0 12px 30px rgba(8,127,245,.28)}.btn-primary:hover{transform:translateY(-2px);background:#0874dc}.btn-ghost{border:1px solid rgba(255,255,255,.35);color:#fff}.btn-ghost:hover{background:#fff;color:var(--navy)}.hero-proof{display:flex;align-items:center;gap:18px;color:#aebdcb;font-size:12px}.hero-proof b{color:#fff;font-size:15px}.hero-proof i{width:1px;height:20px;background:#486075}
.hero-visual{height:510px;position:relative}.parking-scene{position:absolute;inset:30px 0 0 0;border-radius:30px;overflow:hidden;background:linear-gradient(135deg,#173750,#071624);box-shadow:0 30px 80px rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.12)}.parking-scene:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 65% 25%,rgba(43,192,255,.25),transparent 30%),linear-gradient(180deg,transparent 55%,rgba(1,9,17,.65))}.city-lines{position:absolute;inset:0;background:linear-gradient(125deg,transparent 45%,rgba(255,255,255,.07) 45.2%,transparent 45.5%),linear-gradient(55deg,transparent 58%,rgba(255,255,255,.06) 58.2%,transparent 58.5%)}.car{position:absolute;width:260px;height:100px;left:29%;bottom:130px;z-index:4}.car-body{position:absolute;bottom:0;width:100%;height:55px;background:linear-gradient(180deg,#27384a,#111b25);border-radius:22px 25px 14px 14px;box-shadow:0 20px 30px rgba(0,0,0,.5)}.car-roof{position:absolute;width:135px;height:65px;left:57px;top:5px;background:linear-gradient(150deg,#31475b,#15212c);border-radius:60px 55px 10px 10px;transform:skew(-8deg)}.car-roof:after{content:"";position:absolute;inset:9px 13px 20px;background:linear-gradient(135deg,#182c3c,#48647a);border-radius:45px 45px 5px 5px;opacity:.8}.wheel{position:absolute;width:42px;height:42px;background:#080d12;border:8px solid #34414c;border-radius:50%;bottom:-13px;z-index:3}.w1{left:32px}.w2{right:32px}.light{position:absolute;width:14px;height:8px;background:#ff4457;border-radius:6px;bottom:23px;z-index:5;box-shadow:0 0 18px #ff334d}.l1{right:13px}.l2{left:13px}.barrier-post{position:absolute;right:11%;bottom:104px;width:22px;height:145px;background:linear-gradient(90deg,#9eaab4,#fff,#8b97a1);z-index:5;border-radius:5px}.barrier-arm{position:absolute;width:175px;height:10px;right:6px;top:9px;background:repeating-linear-gradient(135deg,#fff 0 14px,#f02d3f 14px 28px);transform-origin:right center;transform:rotate(-1deg);border-radius:8px}.camera{position:absolute;right:14%;top:55px;width:70px;height:45px;border-radius:8px;background:#101a24;border:2px solid #4b6478;z-index:6;box-shadow:0 10px 25px rgba(0,0,0,.4)}.camera:after{content:"";position:absolute;width:20px;height:20px;border:4px solid #35c9ff;border-radius:50%;right:10px;top:9px}.camera span{position:absolute;left:-18px;top:15px;width:22px;height:12px;background:#1c2c3b}.plate{position:absolute;right:20%;bottom:92px;z-index:7;background:#e9f2f7;color:#102132;border-radius:5px;padding:5px 10px;font-weight:800;font-size:12px;box-shadow:0 5px 15px #0005}.status-card,.ai-card{position:absolute;z-index:8;background:rgba(7,21,34,.84);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(12px);border-radius:13px;padding:12px 15px;display:flex;gap:10px;align-items:center;box-shadow:0 15px 35px rgba(0,0,0,.25)}.status-card{left:7%;top:12%}.ai-card{right:6%;bottom:12%}.status-card small,.ai-card small{display:block;color:#8ea4b7;font-size:8px;letter-spacing:.14em}.status-card strong,.ai-card strong{font-size:11px;color:#fff}.status-dot{width:9px;height:9px;border-radius:50%;background:#19d98b;box-shadow:0 0 15px #19d98b}.ai-icon{color:#4bd0ff;font-size:18px}.orb{position:absolute;border-radius:50%;filter:blur(4px);opacity:.4}.orb-1{width:180px;height:180px;background:#008eff;right:-40px;top:20px}.orb-2{width:140px;height:140px;background:#00d1b2;left:-20px;bottom:20px}
.trust-strip{background:#f5f8fc;border-bottom:1px solid var(--line)}.trust-inner{height:72px;display:flex;justify-content:center;align-items:center;gap:24px;font-size:10px;letter-spacing:.18em;font-weight:800;color:#75879a}.trust-inner i{width:4px;height:4px;background:#2aa9f7;border-radius:50%}
.section{padding:105px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:45px}.section-head h2,.stats-copy h2,.software-copy h2,.technology h2,.cta-box h2{font-family:Manrope,sans-serif;font-size:clamp(34px,4vw,48px);line-height:1.05;letter-spacing:-.035em;margin:0}.section-intro{max-width:410px;color:var(--muted);font-size:14px;margin:0}.solutions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.solution-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff;box-shadow:0 8px 30px rgba(14,40,65,.05);transition:.3s}.solution-card:hover{transform:translateY(-6px);box-shadow:0 18px 45px rgba(14,40,65,.11)}.card-image{height:190px;position:relative;overflow:hidden}.card-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.52))}.parking-img{background:radial-gradient(circle at 30% 35%,#90b4c8 0 4%,transparent 5%),linear-gradient(135deg,#173b56,#071421 55%,#2c718c)}.rfid-img{background:radial-gradient(circle at 60% 42%,#1fcbff 0 5%,transparent 6%),repeating-radial-gradient(circle at 60% 42%,transparent 0 15px,rgba(53,206,255,.25) 16px 18px),#102b43}.anpr-img{background:linear-gradient(135deg,#263f54,#081421);}.terminal-img{background:linear-gradient(135deg,#2b6076,#0a2437 55%,#183445)}.industrial-img{background:linear-gradient(135deg,#1e3848,#0a1722);}.iiot-img{background:radial-gradient(circle at 70% 40%,#1595d1 0 4%,transparent 5%),linear-gradient(135deg,#12354b,#071522)}.card-image:before{content:"";position:absolute;width:55%;height:35%;left:22%;top:28%;border:1px solid rgba(255,255,255,.22);box-shadow:30px 20px 0 rgba(255,255,255,.04),-25px 10px 0 rgba(255,255,255,.03);transform:skew(-15deg);border-radius:8px}.floating-icon{position:absolute;z-index:2;bottom:-18px;left:20px;width:42px;height:42px;border-radius:12px;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:800;box-shadow:0 10px 25px rgba(8,127,245,.3)}.card-body{padding:30px 22px 24px}.card-body h3{margin:0 0 9px;font-family:Manrope,sans-serif;font-size:19px}.card-body p{margin:0 0 20px;color:var(--muted);font-size:13px;min-height:42px}.card-body a{color:var(--blue);font-size:12px;font-weight:800}
.dark-section{background:var(--navy);color:#fff;padding:100px 0}.dark-head{margin-bottom:35px}.dark-head .eyebrow{color:#7fa1bc}.dark-head h2{max-width:600px}.btn-outline-light{border:1px solid #44617a;color:#fff}.projects-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.project-card{background:#0d2840;border:1px solid #1d3a53;border-radius:17px;overflow:hidden}.project-visual{height:205px;position:relative;background:#17364d}.project-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,#061525 100%)}.project-visual span{position:absolute;right:15px;top:15px;z-index:2;font-size:10px;color:#9db5c9;border:1px solid #52708a;border-radius:999px;padding:5px 8px}.tia{background:linear-gradient(140deg,#c47d47,#233747 50%,#0d1e2b)}.epmmop{background:linear-gradient(140deg,#5f879a,#1a2f40 48%,#0b1825)}.metro{background:linear-gradient(140deg,#1d5e83,#0b2235 50%,#173e51)}.ambato{background:linear-gradient(140deg,#7a6c55,#22394a 50%,#091924)}.project-card>div:last-child{padding:16px 17px 20px}.project-card small{color:#7fa1b7;font-size:10px}.project-card h3{margin:5px 0 3px;font-family:Manrope;font-size:17px}.project-card p{margin:0;color:#aebdca;font-size:11px}
.stats-section{padding:100px 0;background:#f5f8fc}.stats-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:90px;align-items:center}.stats-copy p:not(.eyebrow){color:var(--muted);max-width:520px}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#dce6ef;border:1px solid #dce6ef}.stats-grid>div{background:#f5f8fc;padding:28px}.stats-grid strong{display:block;font-family:Manrope;font-size:42px;letter-spacing:-.05em;color:#0a2742}.stats-grid strong span{color:var(--blue)}.stats-grid small{display:block;color:#687b8e;font-size:12px;margin-top:5px}
.software-section{padding:110px 0}.software-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:80px;align-items:center}.software-screen{background:#061525;border-radius:22px;padding:13px;box-shadow:0 30px 70px rgba(5,20,35,.22);transform:rotate(-1deg)}.screen-top{height:42px;display:flex;justify-content:space-between;align-items:center;padding:0 12px;color:#fff;font-weight:700;font-size:12px}.screen-top i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#526a7e;margin-left:5px}.screen-grid{background:#f6f9fc;border-radius:13px;padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.metric,.chart,.map-mini{background:#fff;border:1px solid #e6edf3;border-radius:11px;padding:14px}.metric small,.chart small{font-size:8px;color:#8191a0;font-weight:800;letter-spacing:.12em}.metric strong{display:block;font-size:25px;margin-top:8px;color:#0b2238}.metric em{font-size:9px;color:#15a878;font-style:normal}.progress{height:6px;background:#e7eef5;border-radius:99px;margin-top:10px}.progress span{display:block;width:78%;height:100%;background:var(--blue);border-radius:99px}.chart{grid-column:1/3}.bars{height:70px;display:flex;align-items:end;gap:7px;padding-top:12px}.bars i{flex:1;background:linear-gradient(to top,#087ff5,#4bcfff);border-radius:4px 4px 0 0}.bars i:nth-child(1){height:35%}.bars i:nth-child(2){height:55%}.bars i:nth-child(3){height:45%}.bars i:nth-child(4){height:72%}.bars i:nth-child(5){height:62%}.bars i:nth-child(6){height:88%}.bars i:nth-child(7){height:78%}.map-mini{display:flex;align-items:center;justify-content:space-around;color:#087ff5;font-size:24px;grid-column:1/3}.software-copy>p:not(.eyebrow){color:var(--muted)}.software-item{display:flex;align-items:center;gap:14px;border-top:1px solid var(--line);padding:17px 0}.software-item>span{font-size:10px;color:#9aabba}.software-item h3{margin:0;font-family:Manrope;font-size:16px}.software-item p{margin:3px 0 0;color:var(--muted);font-size:12px}.software-item b{margin-left:auto;color:var(--blue)}.software-item.active{border-top-color:var(--blue)}
.technology{padding:85px 0;background:#f7fafc;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.center{text-align:center}.technology h2{max-width:700px;margin:0 auto 40px}.tech-list{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid #dfe8f0;background:#fff;border-radius:18px;overflow:hidden}.tech-list div{padding:23px 12px;text-align:center;border-right:1px solid #e5edf3;font-size:12px;font-weight:800;color:#365066}.tech-list div:last-child{border-right:0}.tech-list span{display:block;color:var(--blue);font-size:24px;margin-bottom:6px}
.cta-section{padding:90px 0;background:#fff}.cta-box{background:linear-gradient(110deg,#061525,#0b2d49);color:#fff;border-radius:26px;padding:55px 60px;display:flex;align-items:center;justify-content:space-between;gap:40px;overflow:hidden;position:relative}.cta-box:after{content:"";position:absolute;width:400px;height:400px;border-radius:50%;right:-180px;top:-220px;background:#087ff5;opacity:.12}.cta-box h2{max-width:650px}.cta-box p:not(.eyebrow){color:#aebdca}.cta-actions{position:relative;z-index:2;min-width:230px;text-align:center}.mail-link{display:block;margin-top:14px;font-size:12px;color:#b7c7d5}
footer{background:#03101d;color:#91a5b8;padding:60px 0 20px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.1fr;gap:50px}.footer-brand .brand-next{color:#fff}.footer-grid h4{color:#fff;margin:0 0 15px;font-size:12px}.footer-grid a,.footer-grid p{display:block;font-size:11px;margin:7px 0}.footer-grid a:hover{color:#fff}.footer-wa{display:inline-block!important;background:#0cc77a;color:#041a12!important;padding:9px 14px;border-radius:999px;font-weight:800;margin-top:10px!important}.footer-bottom{border-top:1px solid #1a2d3e;margin-top:45px;padding-top:18px;display:flex;justify-content:space-between;font-size:10px}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){.nav-links{gap:15px}.hero-content{grid-template-columns:1fr}.hero{min-height:auto}.hero-content{padding:75px 0}.hero-visual{height:390px}.solutions-grid{grid-template-columns:repeat(2,1fr)}.projects-grid{grid-template-columns:repeat(2,1fr)}.stats-layout,.software-layout{grid-template-columns:1fr;gap:45px}.tech-list{grid-template-columns:repeat(3,1fr)}.tech-list div:nth-child(3){border-right:0}.cta-box{padding:45px}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.container{width:min(100% - 28px,1180px)}.nav{height:70px}.menu-toggle{display:flex;flex-direction:column;gap:5px}.menu-toggle span{display:block;width:24px;height:2px;background:#17324a}.nav-links{position:absolute;top:70px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);display:none;flex-direction:column;align-items:stretch;padding:18px 20px;box-shadow:0 20px 30px rgba(0,0,0,.08)}.nav-links.open{display:flex}.nav-links a{padding:10px}.nav-cta{text-align:center}.hero h1{font-size:42px}.hero-visual{height:320px}.parking-scene{inset:10px 0 0}.car{left:21%;transform:scale(.78);transform-origin:bottom}.barrier-post{right:7%}.camera{right:9%;top:35px}.status-card{left:4%;top:9%}.ai-card{right:3%;bottom:8%}.trust-inner{overflow:hidden;justify-content:flex-start;white-space:nowrap;gap:15px}.section,.dark-section,.software-section,.stats-section{padding:75px 0}.section-head{display:block}.section-intro{margin-top:15px}.solutions-grid{grid-template-columns:1fr}.projects-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}.tech-list{grid-template-columns:1fr 1fr}.tech-list div{border-right:1px solid #e5edf3!important;border-bottom:1px solid #e5edf3}.cta-box{display:block;padding:38px 28px}.cta-actions{margin-top:28px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:5px}}

/* Fotografías reales integradas desde el sitio anterior */
.card-image img,.project-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.card-image img{z-index:0}
.card-image:before{display:none}
.card-image:after{z-index:1;background:linear-gradient(180deg,rgba(3,15,27,.02) 32%,rgba(3,15,27,.48) 100%)}
.card-image .floating-icon{z-index:2}
.project-visual img{z-index:0}
.project-visual:after{z-index:1;background:linear-gradient(180deg,rgba(3,15,27,.02) 35%,rgba(6,21,37,.88) 100%)}
.project-visual span{z-index:2;background:rgba(6,21,37,.56);backdrop-filter:blur(6px)}
.projects-grid{grid-template-columns:repeat(3,1fr)}
.epmmop-network,.scada{background:#17364d}
@media(max-width:980px){.projects-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.projects-grid{grid-template-columns:1fr}}


/* Ajustes de marca - logo e imagen corporativa */
.logo-brand{min-width:210px;display:flex;align-items:center;line-height:1}
.brand-logo-img{display:block;height:54px;width:auto;max-width:100%}

.stats-side{display:grid;gap:24px}
.stats-visual{position:relative;overflow:hidden;border-radius:24px;min-height:360px;background:#dfe9f4;box-shadow:0 20px 55px rgba(10,33,56,.12)}
.stats-visual img{display:block;width:100%;height:100%;object-fit:cover}

.cta-brand-actions{position:relative;z-index:2;display:grid;gap:22px;justify-items:center;min-width:320px}
.cta-brand{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(12px);border-radius:22px;padding:18px 22px;text-align:center;min-width:280px}
.cta-logo{display:block;margin:0 auto 12px;max-width:240px;width:100%;height:auto}
.cta-slogan{margin:0;font-family:Manrope,sans-serif;font-size:18px;font-weight:700;line-height:1.35;color:#fff}

.footer-brand-image{display:inline-block;margin-bottom:12px}
.footer-brand-chip{display:inline-flex;align-items:center;justify-content:center;background:#fff;border-radius:16px;padding:12px 14px;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.footer-logo{display:block;height:48px;width:auto;max-width:100%}
.footer-slogan{max-width:240px;color:#d1dde8!important;font-weight:600;line-height:1.6}

@media(max-width:980px){
  .cta-brand-actions{justify-items:start;min-width:unset}
  .cta-brand{min-width:unset;width:100%;max-width:360px}
}

@media(max-width:720px){
  .brand-logo-img{height:46px}
  .stats-visual{min-height:260px}
  .cta-brand-actions{justify-items:stretch}
  .cta-brand{padding:16px 18px}
  .cta-logo{max-width:220px}
  .cta-slogan{font-size:16px}
  .footer-brand-chip{padding:10px 12px}
  .footer-logo{height:40px}
}


/* Ajuste logo header más proporcionado */
.logo-brand{min-width:132px;display:flex;align-items:center}
.brand-logo-img{height:34px!important;width:auto;max-width:100%}

/* Hero con imagen corporativa */
.hero-media{position:absolute;inset:30px 0 0 0;border-radius:30px;overflow:hidden;background:linear-gradient(135deg,#173750,#071624);box-shadow:0 30px 80px rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.12)}
.hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,21,37,.08),rgba(6,21,37,.46) 100%)}
.hero-media-img{display:block;width:100%;height:100%;object-fit:cover}
.hero-media .status-card,.hero-media .ai-card{position:absolute;z-index:3}
.hero-media .status-card{left:5%;top:8%}
.hero-media .ai-card{right:5%;bottom:8%;max-width:255px}
.hero-media .ai-card strong{line-height:1.35;display:block}

/* Desactivar visual anterior */
.parking-scene{display:none}

@media(max-width:720px){
  .brand-logo-img{height:30px!important}
  .hero-media{inset:10px 0 0}
  .hero-media .status-card{left:4%;top:6%}
  .hero-media .ai-card{right:3%;bottom:6%;max-width:220px}
}


/* Corrección final: logo header tamaño controlado */
.site-header .brand.logo-brand{min-width:168px!important;max-width:168px!important;height:38px!important;overflow:hidden!important;display:flex!important;align-items:center!important;line-height:0!important;flex:0 0 168px!important}
.site-header .brand.logo-brand .brand-logo-img{display:block!important;width:168px!important;height:auto!important;max-height:38px!important;object-fit:contain!important}
.nav{overflow:hidden}

/* Mantener composición original del hero usando la foto dentro del recuadro derecho */
.parking-scene{display:block!important}
.parking-scene-photo{background:#0b2238!important}
.parking-scene-photo .parking-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;z-index:0}
.parking-scene-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,21,37,.08),rgba(6,21,37,.44) 100%);z-index:1}
.parking-scene-photo .status-card,.parking-scene-photo .ai-card{z-index:3}
.parking-scene-photo .ai-card{max-width:260px}
.parking-scene-photo .ai-card strong{display:block;line-height:1.35}
.parking-scene-photo .status-card{left:7%;top:12%}
.parking-scene-photo .ai-card{right:6%;bottom:12%}
.hero-media,.hero-media-img{display:none!important}

/* Sección nosotros sin foto para evitar mover la composición */
.stats-side,.stats-visual{display:none!important}
.stats-layout{grid-template-columns:1fr 1.2fr!important;gap:90px!important}

@media(max-width:720px){
  .site-header .brand.logo-brand{min-width:145px!important;max-width:145px!important;height:32px!important;flex-basis:145px!important}
  .site-header .brand.logo-brand .brand-logo-img{width:145px!important;max-height:32px!important}
}


/* =========================================================
   NEXT CONTROL — NOSOTROS / GALERÍA CORPORATIVA
   ========================================================= */
.stats-section .stats-layout{grid-template-columns:1fr 1.2fr!important;gap:90px!important;align-items:center}
.about-gallery{margin-top:52px;display:grid;grid-template-columns:1.25fr .75fr;gap:18px}
.about-photo{margin:0;min-height:330px;position:relative;overflow:hidden;border-radius:22px;background:#10283d;box-shadow:0 18px 48px rgba(8,31,51,.12);border:1px solid rgba(8,65,107,.08)}
.about-photo-wide{min-height:390px}
.about-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .65s ease}
.about-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(4,18,31,.82) 100%);pointer-events:none}
.about-photo:hover img{transform:scale(1.025)}
.about-photo figcaption{position:absolute;z-index:2;left:26px;right:26px;bottom:24px;color:#fff}
.about-photo figcaption span{display:block;color:#52c9ff;font-size:9px;font-weight:800;letter-spacing:.16em;margin-bottom:7px}
.about-photo figcaption strong{display:block;font-family:Manrope,Inter,sans-serif;font-size:18px;line-height:1.28;max-width:410px}

/* =========================================================
   NEXT CONTROL — SOFTWARE MODAL
   ========================================================= */
.software-item{width:100%;border-left:0;border-right:0;border-bottom:0;background:transparent;text-align:left;font:inherit;color:inherit;cursor:pointer;transition:padding .2s ease,background .2s ease,border-color .2s ease}
.software-item:hover{background:#f8fbff;padding-left:10px;padding-right:10px}
.software-item:focus-visible{outline:2px solid var(--blue);outline-offset:3px}

.software-modal{position:fixed;inset:0;z-index:5000;display:flex;align-items:center;justify-content:center;padding:28px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .24s ease,visibility .24s ease}
.software-modal.open{opacity:1;visibility:visible;pointer-events:auto}
.software-modal-backdrop{position:absolute;inset:0;background:rgba(2,14,26,.78);backdrop-filter:blur(9px)}
.software-modal-dialog{position:relative;z-index:2;width:min(1040px,100%);max-height:min(760px,calc(100vh - 56px));display:grid;grid-template-columns:1.05fr .95fr;background:#fff;border-radius:28px;overflow:hidden;box-shadow:0 45px 110px rgba(0,0,0,.38);transform:translateY(20px) scale(.985);transition:transform .28s ease}
.software-modal.open .software-modal-dialog{transform:none}
.software-modal-close{position:absolute;top:18px;right:18px;z-index:5;width:42px;height:42px;border:1px solid rgba(6,21,37,.08);border-radius:50%;background:rgba(255,255,255,.92);color:#0a2138;font-size:25px;line-height:1;cursor:pointer;box-shadow:0 8px 22px rgba(0,0,0,.10)}
.software-modal-close:hover{background:#fff;transform:rotate(4deg)}
.software-modal-content{padding:54px;overflow:auto}
.software-modal-number{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--blue);color:#fff;font-weight:800;font-size:12px;box-shadow:0 10px 24px rgba(8,127,245,.22);margin-bottom:22px}
.software-modal-content h2{font-family:Manrope,Inter,sans-serif;font-size:clamp(34px,4vw,48px);letter-spacing:-.04em;line-height:1.05;margin:0 0 14px;color:#061525}
.software-modal-lead{font-size:16px;line-height:1.65;color:#52687d;margin:0 0 26px}
.software-modal-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0 0 26px}
.software-feature{display:flex;align-items:center;gap:9px;min-height:46px;padding:11px 13px;border:1px solid #e1eaf2;border-radius:11px;background:#fbfdff;color:#304b63;font-size:12px;font-weight:600}
.software-feature span{display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:rgba(8,127,245,.10);color:var(--blue);font-weight:900}
.software-modal-description{color:#687b8e;line-height:1.72;font-size:13px;margin:0}
.software-modal-actions{margin-top:28px}

.software-modal-visual{min-height:540px;display:flex;align-items:center;justify-content:center;padding:48px;background:radial-gradient(circle at 82% 18%,rgba(31,200,255,.23),transparent 30%),linear-gradient(135deg,#061525,#0b3352);position:relative;overflow:hidden}
.software-modal-visual::before{content:"";position:absolute;inset:0;opacity:.16;background-image:linear-gradient(rgba(255,255,255,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.18) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(to bottom right,#000,transparent 88%)}
.software-ui-card{position:relative;z-index:2;width:100%;padding:29px;border-radius:22px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(12px);color:#fff;box-shadow:0 24px 65px rgba(0,0,0,.22)}
.software-ui-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.software-ui-card small{font-size:8px;font-weight:800;letter-spacing:.14em;color:#72cfff}
.software-ui-card>strong{display:block;font-family:Manrope,Inter,sans-serif;font-size:31px;letter-spacing:-.03em;margin-top:8px}
.software-live{display:inline-flex;align-items:center;gap:6px;font-size:8px;font-weight:800;color:#b9d1df;letter-spacing:.1em}
.software-live i,.software-ui-status i{width:8px;height:8px;border-radius:50%;background:#16c784;box-shadow:0 0 14px #16c784}
.software-ui-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:27px 0 4px}
.software-ui-metrics>div{padding:14px;border:1px solid rgba(255,255,255,.10);background:rgba(3,16,29,.25);border-radius:12px}
.software-ui-metrics b{display:block;font-size:18px;margin-top:4px}
.software-ui-chart{height:155px;display:flex;align-items:flex-end;gap:8px;padding:20px 0 0;margin-top:10px;border-bottom:1px solid rgba(255,255,255,.13)}
.software-ui-chart span{flex:1;border-radius:5px 5px 0 0;background:linear-gradient(to top,#087ff5,#43d4ff);box-shadow:0 0 18px rgba(31,200,255,.12)}
.software-ui-chart span:nth-child(1){height:34%}.software-ui-chart span:nth-child(2){height:55%}.software-ui-chart span:nth-child(3){height:46%}.software-ui-chart span:nth-child(4){height:78%}.software-ui-chart span:nth-child(5){height:63%}.software-ui-chart span:nth-child(6){height:90%}
.software-ui-status{display:flex;align-items:center;gap:9px;margin-top:20px;color:#c4d8e8;font-size:11px}

@media(max-width:980px){
  .stats-section .stats-layout{grid-template-columns:1fr!important;gap:42px!important}
  .about-gallery{grid-template-columns:1fr 1fr}
  .about-photo,.about-photo-wide{min-height:310px}
  .software-modal-dialog{grid-template-columns:1fr;overflow:auto}
  .software-modal-visual{min-height:330px;padding:34px}
}
@media(max-width:720px){
  .about-gallery{grid-template-columns:1fr;margin-top:36px}
  .about-photo,.about-photo-wide{min-height:280px}
  .about-photo figcaption{left:20px;right:20px;bottom:19px}
  .about-photo figcaption strong{font-size:16px}
  .software-modal{padding:12px}
  .software-modal-dialog{max-height:calc(100vh - 24px);border-radius:20px}
  .software-modal-content{padding:38px 24px 30px}
  .software-modal-features{grid-template-columns:1fr}
  .software-modal-visual{min-height:280px;padding:24px}
  .software-ui-card{padding:22px}
}

/* =========================================================
   AJUSTE FINAL 2026-10-06 — NOSOTROS + SOFTWARE
   ========================================================= */

/* Nosotros: galería más compacta y proporcional al resto del sitio */
.stats-section{padding-bottom:96px}
.stats-section .about-gallery{
  margin-top:38px;
  grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);
  gap:16px;
  align-items:stretch;
}
.stats-section .about-photo,
.stats-section .about-photo-wide{
  min-height:0!important;
  height:248px;
  border-radius:18px;
  box-shadow:0 14px 36px rgba(8,31,51,.10);
}
.stats-section .about-photo img{
  object-position:center center;
}
.stats-section .about-photo-wide img{
  object-position:center 46%;
}
.stats-section .about-photo figcaption{
  left:22px;
  right:22px;
  bottom:20px;
}
.stats-section .about-photo figcaption strong{
  font-size:16px;
  max-width:360px;
}

/* Software: misma lógica visual de tarjetas, bordes y radios del sitio */
.software-section{
  padding:96px 0;
  background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);
}
.software-section .software-layout{
  grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
  gap:64px;
  align-items:center;
}
.software-section .software-screen{
  transform:none;
  border-radius:20px;
  padding:12px;
  border:1px solid rgba(6,21,37,.08);
  box-shadow:0 22px 58px rgba(5,20,35,.16);
}
.software-section .screen-grid{
  border-radius:12px;
  padding:16px;
  gap:10px;
}
.software-section .metric,
.software-section .chart,
.software-section .map-mini{
  border-radius:10px;
}
.software-section .software-copy{
  max-width:520px;
  width:100%;
}
.software-section .software-copy>p:not(.eyebrow){
  margin:16px 0 24px;
  max-width:480px;
  line-height:1.65;
}
.software-section .software-item{
  -webkit-appearance:none;
  appearance:none;
  display:grid;
  grid-template-columns:34px minmax(0,1fr) 28px;
  align-items:center;
  gap:13px;
  width:100%;
  margin:0 0 10px;
  padding:15px 16px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  color:var(--ink);
  box-shadow:0 6px 18px rgba(14,40,65,.035);
  text-align:left;
  cursor:pointer;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease;
}
.software-section .software-item:hover{
  padding-left:16px;
  padding-right:16px;
  transform:translateY(-2px);
  border-color:#bddcf9;
  background:#fff;
  box-shadow:0 12px 28px rgba(14,40,65,.08);
}
.software-section .software-item.active{
  border-color:rgba(8,127,245,.42);
  background:linear-gradient(90deg,rgba(8,127,245,.055),#fff 68%);
  box-shadow:0 10px 26px rgba(8,127,245,.08);
}
.software-section .software-item>span{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:10px;
  background:#f0f6fc;
  color:#6e8296;
  font-size:10px;
  font-weight:800;
}
.software-section .software-item.active>span{
  background:var(--blue);
  color:#fff;
}
.software-section .software-item>div{min-width:0}
.software-section .software-item h3{
  font-size:15px;
  line-height:1.25;
  color:#102a42;
}
.software-section .software-item p{
  margin:4px 0 0;
  line-height:1.4;
  font-size:11.5px;
}
.software-section .software-item b{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  margin-left:0;
  border-radius:50%;
  background:#f2f7fc;
  color:var(--blue);
  font-size:15px;
  font-weight:800;
}
.software-section .software-item.active b{
  background:rgba(8,127,245,.11);
}

@media(max-width:980px){
  .stats-section{padding-bottom:82px}
  .stats-section .about-gallery{margin-top:32px;grid-template-columns:1fr 1fr}
  .stats-section .about-photo,.stats-section .about-photo-wide{height:230px}
  .software-section .software-layout{grid-template-columns:1fr;gap:38px}
  .software-section .software-screen{max-width:720px;width:100%;margin:0 auto}
  .software-section .software-copy{max-width:720px;margin:0 auto}
}

@media(max-width:720px){
  .stats-section .about-gallery{grid-template-columns:1fr;gap:14px;margin-top:28px}
  .stats-section .about-photo,.stats-section .about-photo-wide{height:215px!important}
  .stats-section .about-photo figcaption{left:18px;right:18px;bottom:17px}
  .software-section{padding:72px 0}
  .software-section .software-layout{gap:32px}
  .software-section .software-item{grid-template-columns:32px minmax(0,1fr) 26px;padding:13px 13px}
  .software-section .software-item:hover{padding-left:13px;padding-right:13px}
  .software-section .software-item>span{width:32px;height:32px}
  .software-section .screen-grid{padding:12px;gap:8px}
}
/* =========================================================
   AJUSTE MODAL SOFTWARE — PANTALLAS DE ESCRITORIO
   Evita que el contenido inferior quede cortado
   ========================================================= */

.software-modal {
    padding: 16px;
}

.software-modal-dialog {
    width: min(1120px, calc(100vw - 32px));
    max-height: calc(100dvh - 32px);
    grid-template-columns: 1.08fr .92fr;
}


/* Columna de información */
.software-modal-content {
    padding: 38px 48px 32px;
    overflow-y: auto;
    overflow-x: hidden;
}


/* Número 01 */
.software-modal-number {
    width: 44px;
    height: 44px;
    margin-bottom: 18px;
}


/* Título */
.software-modal-content h2 {
    font-size: clamp(34px, 3.5vw, 46px);
    margin-bottom: 12px;
}


/* Descripción principal */
.software-modal-lead {
    font-size: 15px;
    line-height: 1.55;
    margin-bottom: 20px;
}


/* Características */
.software-modal-features {
    gap: 8px;
    margin-bottom: 20px;
}

.software-feature {
    min-height: 42px;
    padding: 9px 12px;
}


/* Texto inferior */
.software-modal-description {
    line-height: 1.6;
}


/* Botón inferior */
.software-modal-actions {
    margin-top: 20px;
}


/* Columna gráfica derecha */
.software-modal-visual {
    min-height: 0;
    padding: 34px 36px;
}


/* Panel interno */
.software-ui-card {
    padding: 25px;
}


/* Métricas */
.software-ui-metrics {
    margin: 22px 0 4px;
}


/* Gráfico */
.software-ui-chart {
    height: 135px;
    margin-top: 8px;
}


/* Estado inferior */
.software-ui-status {
    margin-top: 16px;
}
@media (max-height: 800px) and (min-width: 981px) {

    .software-modal-content {
        padding: 28px 46px 24px;
    }

    .software-modal-number {
        width: 42px;
        height: 42px;
        margin-bottom: 14px;
    }

    .software-modal-content .eyebrow {
        margin-bottom: 12px;
    }

    .software-modal-content h2 {
        font-size: 40px;
        margin-bottom: 10px;
    }

    .software-modal-lead {
        font-size: 14px;
        margin-bottom: 16px;
    }

    .software-modal-features {
        gap: 7px;
        margin-bottom: 16px;
    }

    .software-feature {
        min-height: 40px;
        padding: 8px 12px;
    }

    .software-modal-description {
        font-size: 12.5px;
        line-height: 1.55;
    }

    .software-modal-actions {
        margin-top: 16px;
    }

    .software-modal-visual {
        padding: 28px 34px;
    }

    .software-ui-card {
        padding: 24px;
    }

    .software-ui-chart {
        height: 120px;
    }
}
/* =========================
   DROPDOWN SOLUCIONES
========================= */

.nav-dropdown{
  position:relative;
  display:flex;
  align-items:center;
}

.nav-dropdown-toggle{
  appearance:none;
  border:0;
  background:transparent;

  font-family:inherit;
  font-size:13px;
  font-weight:600;

  color:#40536a;

  display:flex;
  align-items:center;
  gap:6px;

  padding:0;

  cursor:pointer;

  transition:.25s ease;
}

.nav-dropdown-toggle:hover,
.nav-dropdown.open .nav-dropdown-toggle{
  color:var(--blue);
}

.dropdown-arrow{
  display:inline-block;
  font-size:15px;
  line-height:1;

  transition:
    transform .25s ease;
}

.nav-dropdown.open .dropdown-arrow{
  transform:rotate(180deg);
}


/* MENÚ FLOTANTE */

.nav-dropdown-menu{
  position:absolute;

  top:calc(100% + 20px);
  left:50%;

  width:310px;

  padding:10px;

  background:#fff;

  border:1px solid #e4ebf3;
  border-radius:16px;

  box-shadow:
    0 20px 50px
    rgba(6,21,37,.14);

  opacity:0;
  visibility:hidden;

  transform:
    translate(-50%,10px);

  transition:
    opacity .22s ease,
    transform .22s ease,
    visibility .22s ease;

  z-index:2000;
}

.nav-dropdown.open
.nav-dropdown-menu{
  opacity:1;
  visibility:visible;

  transform:
    translate(-50%,0);
}


/* LINKS DEL DROPDOWN */

.nav-dropdown-menu a{
  display:block;

  padding:14px 16px;

  border-radius:10px;

  color:#40536a !important;

  font-size:13px;
  font-weight:600;

  line-height:1.4;

  transition:.2s ease;
}

.nav-dropdown-menu a:hover{
  background:#f2f7fc;

  color:var(--blue) !important;
}


/* PEQUEÑA LÍNEA AZUL */

.nav-dropdown-menu a + a{
  border-top:1px solid #edf2f7;
}


/* =========================
   MOBILE
========================= */

@media(max-width:720px){

  .nav-dropdown{
    width:100%;

    display:block;
  }

  .nav-dropdown-toggle{
    width:100%;

    justify-content:space-between;

    padding:10px;

    font-size:13px;
  }

  .nav-dropdown-menu{
    position:relative;

    top:auto;
    left:auto;

    width:100%;

    margin-top:4px;

    padding:5px;

    border-radius:12px;

    box-shadow:none;

    background:#f5f8fc;

    display:none;

    opacity:1;
    visibility:visible;

    transform:none;
  }

  .nav-dropdown.open
  .nav-dropdown-menu{
    display:block;

    transform:none;
  }

  .nav-dropdown-menu a{
    padding:12px 14px;
  }

}
/* ==================================================
   DROPDOWN SOLUCIONES - NEXT CONTROL
================================================== */

.site-header,
.nav,
.nav-links{
  overflow: visible !important;
}

.nav-dropdown{
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
}


/* BOTÓN SOLUCIONES */

.nav-dropdown-toggle{
  appearance: none !important;
  -webkit-appearance: none !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 0 !important;
  outline: 0 !important;

  background: transparent !important;

  font-family: inherit !important;
  font-size: 13px !important;
  font-weight: 600 !important;

  color: #40536a !important;

  line-height: 1 !important;

  cursor: pointer !important;

  white-space: nowrap !important;

  box-shadow: none !important;

  transition: color .2s ease !important;
}

.nav-dropdown-toggle:hover,
.nav-dropdown.open .nav-dropdown-toggle{
  color: #087ff5 !important;
}


/* FLECHA */

.dropdown-arrow{
  display: inline-block !important;

  font-size: 14px !important;

  margin-left: 2px !important;

  transition: transform .25s ease !important;
}

.nav-dropdown.open .dropdown-arrow{
  transform: rotate(180deg) !important;
}


/* ==================================================
   PANEL DESPLEGABLE
================================================== */

.nav-dropdown-menu{
  position: absolute !important;

  top: calc(100% + 24px) !important;
  left: 0 !important;

  width: 320px !important;

  padding: 8px !important;

  margin: 0 !important;

  background: #ffffff !important;

  border: 1px solid #e2eaf2 !important;
  border-radius: 16px !important;

  box-shadow:
    0 18px 45px
    rgba(6,21,37,.14) !important;

  z-index: 9999 !important;

  display: none !important;
}


/* MOSTRAR AL ABRIR */

.nav-dropdown.open .nav-dropdown-menu{
  display: block !important;
}


/* LINKS DEL SUBMENÚ */

.nav-dropdown-menu a{
  display: block !important;

  width: 100% !important;

  padding: 13px 15px !important;
  margin: 0 !important;

  border-radius: 10px !important;

  background: transparent !important;

  color: #40536a !important;

  font-size: 13px !important;
  font-weight: 600 !important;

  line-height: 1.4 !important;

  white-space: normal !important;

  transition:
    background .2s ease,
    color .2s ease !important;
}

.nav-dropdown-menu a:hover{
  background: #f3f7fb !important;
  color: #087ff5 !important;
}


/* DIVISIÓN ENTRE OPCIONES */

.nav-dropdown-menu a + a{
  margin-top: 3px !important;
  border-top: 1px solid #edf2f6 !important;
}


/* ==================================================
   RESPONSIVE
================================================== */

@media(max-width: 720px){

  .nav-dropdown{
    display: block !important;
    width: 100% !important;
  }

  .nav-dropdown-toggle{
    width: 100% !important;

    justify-content: space-between !important;

    padding: 10px !important;
  }

  .nav-dropdown-menu{
    position: static !important;

    width: 100% !important;

    margin-top: 5px !important;

    box-shadow: none !important;

    background: #f5f8fc !important;

    border-radius: 12px !important;
  }

  .nav-dropdown-menu a{
    padding: 12px !important;
  }

}