*{margin:0;padding:0;box-sizing:border-box;}
:root{
  --navy:#0a2463;
  --navy2:#061a4a;
  --blue:#1a6fff;
  --light:#f5f7fa;
  --border:#e0e8f5;
  --gray:#4a5e7a;
  --lgray:#8098b8;
  --green:#00a86b;
  --text:#0d1f3c;
}
html{scroll-behavior:smooth;}
body{background:#fff;color:var(--text);font-family:'Inter',sans-serif;overflow-x:hidden;}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:0 60px;height:68px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--border);}
.nav-logo img{height:40px;width:auto;object-fit:contain;}
.nav-links{display:flex;align-items:center;gap:36px;list-style:none;}
.nav-links a{color:var(--gray);font-size:13px;font-weight:400;text-decoration:none;letter-spacing:0.2px;transition:color .2s;}
.nav-links a:hover{color:var(--navy);}
.nav-cta{background:var(--navy)!important;color:#fff!important;padding:9px 20px;border-radius:5px;font-size:13px!important;font-weight:500!important;letter-spacing:0.2px;transition:background .2s!important;}
.nav-cta:hover{background:var(--blue)!important;}

/* HERO CAROUSEL */
.hero{min-height:100vh;position:relative;overflow:hidden;}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease;z-index:1;}
.hero-slide.active{opacity:1;z-index:2;}
.hero-slide-bg{position:absolute;inset:0;background-size:cover;background-position:center;}
/* Slide 1: Warehouse — deep blue with light particles */
.hero-slide:nth-child(1) .hero-slide-bg{background:linear-gradient(135deg,#0a2463 0%,#061a4a 40%,#0c2870 100%);}
.hero-slide:nth-child(1) .hero-video-placeholder{background:
  radial-gradient(1px 1px at 20% 30%, rgba(122,184,255,0.3) 0%, transparent 100%),
  radial-gradient(1px 1px at 60% 60%, rgba(122,184,255,0.2) 0%, transparent 100%),
  radial-gradient(1px 1px at 80% 20%, rgba(255,255,255,0.15) 0%, transparent 100%),
  radial-gradient(2px 2px at 40% 80%, rgba(26,111,255,0.3) 0%, transparent 100%),
  radial-gradient(600px 600px at 30% 50%, rgba(26,111,255,0.08) 0%, transparent 70%);
  animation:warehouseMove 25s ease-in-out infinite alternate;}
@keyframes warehouseMove{0%{background-position:0% 0%,0% 0%,0% 0%,0% 0%,0% 50%;}100%{background-position:30% 20%,20% -10%,-15% 15%,10% -20%,60% 40%;};}
/* Slide 2: Fleet — moving diagonal lines */
.hero-slide:nth-child(2) .hero-slide-bg{background:linear-gradient(160deg,#091e56 0%,#0c2870 40%,#0a2463 100%);}
.hero-slide:nth-child(2) .hero-video-placeholder{
  background:repeating-linear-gradient(45deg,rgba(122,184,255,0.03) 0px,rgba(122,184,255,0.03) 1px,transparent 1px,transparent 40px),
  repeating-linear-gradient(-45deg,rgba(26,111,255,0.02) 0px,rgba(26,111,255,0.02) 1px,transparent 1px,transparent 60px),
  radial-gradient(800px 400px at 70% 50%, rgba(26,111,255,0.12) 0%, transparent 60%);
  animation:fleetMove 18s linear infinite;}
@keyframes fleetMove{0%{background-position:0px 0px,0px 0px,70% 50%;}100%{background-position:80px 80px,-120px 120px,30% 50%;}}
/* Slide 3: Tech — pulsing glow */
.hero-slide:nth-child(3) .hero-slide-bg{background:linear-gradient(140deg,#061a4a 0%,#0a2463 50%,#0c2870 100%);}
.hero-slide:nth-child(3) .hero-video-placeholder{
  background:radial-gradient(500px 500px at 50% 50%, rgba(0,168,107,0.1) 0%, transparent 60%),
  radial-gradient(300px 300px at 70% 30%, rgba(26,111,255,0.12) 0%, transparent 50%),
  radial-gradient(400px 400px at 20% 70%, rgba(122,184,255,0.08) 0%, transparent 50%);
  animation:techPulse 12s ease-in-out infinite alternate;}
@keyframes techPulse{0%{background-position:50% 50%,70% 30%,20% 70%;opacity:.6;}50%{opacity:1;}100%{background-position:40% 60%,60% 40%,30% 60%;opacity:.7;}}
/* VIDEO: Replace hero-slide-bg + hero-video-placeholder with <video autoplay muted loop playsinline src="file.mp4"></video> */
.hero-slide video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.hero-overlay{position:absolute;inset:0;background:rgba(6,16,40,0.5);z-index:1;}
.hero-video-placeholder{position:absolute;inset:0;overflow:hidden;}
.hero-video-placeholder::after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.015) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.015) 1px,transparent 1px);background-size:48px 48px;}
.hero-content{position:relative;z-index:3;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:140px 60px 100px;max-width:720px;}
.eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:32px;}
.eyebrow-dot{width:6px;height:6px;background:var(--green);border-radius:50%;animation:pulse 2s infinite;}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(0,168,107,0.5);}50%{box-shadow:0 0 0 5px rgba(0,168,107,0);}}
.eyebrow-text{font-size:11px;font-weight:500;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,0.6);}
h1{font-family:'Epilogue',sans-serif;font-size:clamp(40px,5vw,68px);font-weight:800;line-height:1.05;letter-spacing:-1.5px;margin-bottom:28px;color:#fff;}
h1 .accent{color:transparent;background:linear-gradient(135deg,#7ab8ff,#c5dcff);-webkit-background-clip:text;background-clip:text;}
.hero-desc{font-size:17px;line-height:1.85;color:rgba(255,255,255,0.7);max-width:520px;margin-bottom:44px;font-weight:300;}
.hero-actions{display:flex;gap:14px;align-items:center;}
.btn-primary{background:#fff;color:var(--navy);padding:14px 28px;border-radius:5px;font-size:14px;font-weight:500;text-decoration:none;transition:all .25s;letter-spacing:0.1px;}
.btn-primary:hover{background:#eff5ff;transform:translateY(-1px);}
.btn-outline{color:rgba(255,255,255,0.65);font-size:13px;font-weight:400;text-decoration:none;display:inline-flex;align-items:center;gap:6px;transition:color .2s;letter-spacing:0.2px;}
.btn-outline:hover{color:#fff;}
/* Carousel controls */
.hero-nav{position:absolute;bottom:40px;left:60px;z-index:5;display:flex;align-items:center;gap:12px;}
.hero-nav-btn{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,0.25);background:rgba(255,255,255,0.05);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;color:rgba(255,255,255,0.7);}
.hero-nav-btn:hover{background:rgba(255,255,255,0.15);border-color:rgba(255,255,255,0.5);color:#fff;}
.hero-dots{display:flex;gap:8px;margin-left:16px;}
.hero-dot{width:32px;height:3px;border-radius:2px;background:rgba(255,255,255,0.2);cursor:pointer;transition:all .3s;}
.hero-dot.active{background:#fff;width:48px;}

.kpi-band{background:#0a1628;border-top:1px solid rgba(255,255,255,0.07);border-bottom:1px solid rgba(255,255,255,0.07);}
.kpi-inner{max-width:900px;margin:0 auto;display:flex;align-items:stretch;padding:0;}
.kpi-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 32px;text-align:center;}
.kpi-div{width:1px;background:rgba(255,255,255,0.1);align-self:stretch;margin:28px 0;}
.kpi-n{font-family:'Epilogue',sans-serif;font-size:52px;font-weight:800;color:#ffffff;line-height:1;letter-spacing:-1px;}
.kpi-l{font-size:12px;color:rgba(255,255,255,0.45);margin-top:10px;letter-spacing:0.8px;text-transform:uppercase;}
.stat{padding:0 28px;}
.stat:first-child{padding-left:0;}
.stat-n{font-family:'Epilogue',sans-serif;font-size:28px;font-weight:700;color:#fff;line-height:1;}
.stat-l{font-size:11px;color:rgba(255,255,255,0.5);margin-top:4px;letter-spacing:0.3px;}
.stat-div{width:1px;height:32px;background:rgba(255,255,255,0.15);}

/* DASHBOARD */
.hero-right{position:relative;z-index:2;height:500px;}
.dash-wrap{position:absolute;inset:0;perspective:1000px;}
.dash{position:absolute;inset:0;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 40px 80px rgba(0,0,0,0.35);transform:rotateY(-6deg) rotateX(2deg);transition:transform .5s;}
.dash:hover{transform:rotateY(-2deg) rotateX(0deg);}
.dash-bar{background:var(--navy);padding:12px 18px;display:flex;align-items:center;justify-content:space-between;}
.dash-bar-dots{display:flex;gap:5px;}
.dash-bar-dots span{width:9px;height:9px;border-radius:50%;}
.dash-bar-title{font-family:'Epilogue',sans-serif;font-size:10px;font-weight:700;letter-spacing:2.5px;color:rgba(255,255,255,0.7);}
.dash-bar-live{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--green);font-weight:500;}

.dash-body{padding:18px;display:flex;flex-direction:column;gap:14px;}
.dash-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.metric{background:var(--light);border:1px solid var(--border);border-radius:8px;padding:12px;}
.metric-val{font-family:'Epilogue',sans-serif;font-size:22px;font-weight:700;line-height:1;color:var(--navy);}
.metric-val.green{color:var(--green);}
.metric-lbl{font-size:9px;color:var(--lgray);margin-top:3px;letter-spacing:0.8px;text-transform:uppercase;}
.metric-delta{font-size:9px;color:var(--green);margin-top:5px;}

.dash-chart{background:var(--light);border:1px solid var(--border);border-radius:8px;padding:14px;height:96px;}
.chart-lbl{font-size:9px;color:var(--lgray);letter-spacing:1px;margin-bottom:10px;text-transform:uppercase;}
.chart-bars{display:flex;align-items:flex-end;gap:5px;height:56px;}
.bar{flex:1;background:linear-gradient(to top,var(--navy),var(--blue));border-radius:2px 2px 0 0;animation:barUp .8s ease both;}
@keyframes barUp{from{height:0;}to{height:var(--h);}}

.dash-feed{background:var(--light);border:1px solid var(--border);border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:7px;}
.feed-row{display:flex;align-items:center;gap:9px;font-size:11px;color:var(--gray);animation:slideIn .4s ease both;}
@keyframes slideIn{from{opacity:0;transform:translateX(-6px);}to{opacity:1;transform:translateX(0);}}
.feed-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0;}
.feed-t{color:var(--blue);font-weight:500;margin-left:auto;font-size:10px;white-space:nowrap;}

/* TICKER */
.ticker{overflow:hidden;padding:18px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--light);position:relative;height:54px;}
.ticker-track{display:inline-flex;gap:56px;white-space:nowrap;will-change:transform;position:absolute;left:0;top:50%;transform:translateY(-50%);}
.ticker-item{font-family:'Epilogue',sans-serif;font-size:12px;font-weight:600;letter-spacing:2px;color:var(--navy);text-transform:uppercase;white-space:nowrap;display:inline-flex;align-items:center;gap:10px;flex-shrink:0;}
.ticker-item::before{content:'';width:3px;height:3px;border-radius:50%;background:var(--blue);flex-shrink:0;}

/* MOBILE TICKER (hidden on desktop) */
.mob-ticker{display:none;}

/* TECH BAR */

/* SECTIONS */
.lbl{font-size:10px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--blue);margin-bottom:14px;}
.sh{font-family:'Epilogue',sans-serif;font-size:clamp(28px,3.5vw,46px);font-weight:800;letter-spacing:-0.8px;line-height:1.1;margin-bottom:14px;color:var(--navy);}
.sub{color:var(--gray);font-size:15px;line-height:1.85;max-width:500px;font-weight:300;margin-bottom:56px;}

/* COMPARE */
.compare-section{padding:96px 60px;background:var(--light);}
.compare-top{text-align:center;margin-bottom:56px;}
.compare-top .sub{margin:0 auto 0;}
.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:860px;margin:0 auto;}
.compare-card{border-radius:12px;padding:36px 32px;}
.card-generic{background:#fff;border:1px solid var(--border);}
.card-ddm{background:linear-gradient(140deg,#0a2463,#0c2f7a);border:1px solid #0a2463;}
.c-label{font-size:10px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;margin-bottom:18px;}
.c-label.g{color:var(--lgray);}
.c-label.d{color:rgba(255,255,255,0.5);}
.c-title{font-family:'Epilogue',sans-serif;font-size:20px;font-weight:700;margin-bottom:22px;letter-spacing:-0.3px;line-height:1.2;}
.c-title.g{color:var(--navy);}
.c-title.d{color:#fff;}
.c-list{display:flex;flex-direction:column;gap:12px;}
.c-item{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.5;}
.c-item.g{color:var(--gray);}
.c-item.d{color:rgba(255,255,255,0.85);}
.ci-icon{width:18px;height:18px;flex-shrink:0;margin-top:1px;}

/* SERVICES */
.services-section{padding:96px 60px;background:#fff;}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);border-radius:14px;overflow:hidden;border:1px solid var(--border);}
.svc{background:#fff;padding:44px 36px;transition:background .3s;cursor:default;position:relative;}
.svc:hover{background:#f8faff;}
.svc-n{font-family:'Epilogue',sans-serif;font-size:10px;font-weight:700;letter-spacing:2px;color:var(--lgray);margin-bottom:28px;}
.svc-icon-wrap{width:44px;height:44px;background:#eff5ff;border:1px solid #c8d8f5;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;}
.svc-icon-wrap svg{width:20px;height:20px;stroke:var(--navy);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.svc-title{font-family:'Epilogue',sans-serif;font-size:18px;font-weight:700;margin-bottom:12px;letter-spacing:-0.2px;color:var(--navy);}
.svc-desc{color:var(--gray);font-size:13px;line-height:1.75;}
.svc-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:20px;}
.tag{background:#eff5ff;border:1px solid #c8d8f5;color:#1a4fcc;font-size:10px;padding:3px 9px;border-radius:100px;font-weight:500;letter-spacing:0.3px;}

/* SECURITY */
.security-section{padding:96px 60px;background:var(--light);}
.security-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;max-width:1100px;margin:0 auto;}
.tech-section{background:#fff;}
.tech-card{background:var(--light);border:1px solid var(--border);border-radius:12px;padding:28px 24px;transition:border-color .25s,transform .25s;}
.tech-card:hover{border-color:var(--blue);transform:translateY(-3px);}
.tech-card-icon{width:44px;height:44px;background:#eff5ff;border:1px solid #c8dcff;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:16px;}
.tech-card-icon svg{width:20px;height:20px;stroke:var(--blue);}
.tech-card-title{font-family:'Epilogue',sans-serif;font-size:15px;font-weight:700;color:var(--navy);margin-bottom:8px;letter-spacing:-0.2px;}
.tech-card-desc{color:var(--gray);font-size:13px;line-height:1.75;}
.sec-cards{display:flex;flex-direction:column;gap:12px;margin-top:8px;}
.sec-card{background:#fff;border:1px solid var(--border);border-radius:10px;padding:20px 24px;display:flex;gap:16px;align-items:flex-start;transition:border-color .25s;}
.sec-card:hover{border-color:var(--blue);}
.sec-icon{width:40px;height:40px;min-width:40px;background:#eff5ff;border:1px solid #c8d8f5;border-radius:8px;display:flex;align-items:center;justify-content:center;}
.sec-icon svg{width:18px;height:18px;stroke:var(--navy);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.sec-card-title{font-family:'Epilogue',sans-serif;font-size:14px;font-weight:700;margin-bottom:4px;color:var(--navy);}
.sec-card-desc{color:var(--gray);font-size:12px;line-height:1.6;}

/* GPS BOX */
.gps-box{background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:0 16px 60px rgba(10,36,99,0.1);}
.gps-header{background:var(--navy);padding:12px 18px;display:flex;align-items:center;justify-content:space-between;}
.gps-title{font-family:'Epilogue',sans-serif;font-size:10px;font-weight:700;letter-spacing:2.5px;color:rgba(255,255,255,0.75);}
.live-badge{display:flex;align-items:center;gap:5px;background:rgba(0,168,107,0.15);border:1px solid rgba(0,168,107,0.35);padding:3px 9px;border-radius:100px;font-size:9px;color:var(--green);font-weight:600;letter-spacing:1px;}
.gps-map{position:relative;height:240px;background:linear-gradient(150deg,#091e56,#0c2f7a);overflow:hidden;}
.gps-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.05) 1px,transparent 1px);background-size:28px 28px;}
.gps-stats{padding:14px 18px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.gs{background:var(--light);border:1px solid var(--border);border-radius:7px;padding:10px 12px;}
.gs-val{font-family:'Epilogue',sans-serif;font-size:18px;font-weight:700;color:var(--navy);}
.gs-val.green{color:var(--green);}
.gs-val.blue{color:var(--blue);}
.gs-lbl{font-size:9px;color:var(--lgray);margin-top:2px;letter-spacing:0.5px;}

/* VALUES */
.values-section{padding:96px 60px;background:#fff;}
.values-top{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:56px;}
.values-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
.val-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:36px 32px;transition:all .35s;position:relative;overflow:hidden;}
.val-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--navy),var(--blue));transform:scaleX(0);transform-origin:left;transition:.35s;}
.val-card:hover{border-color:#b8cdee;transform:translateY(-3px);}
.val-card:hover::after{transform:scaleX(1);}
.val-icon{width:40px;height:40px;background:#eff5ff;border:1px solid #c8d8f5;border-radius:8px;display:flex;align-items:center;justify-content:center;margin-bottom:16px;}
.val-icon svg{width:18px;height:18px;stroke:var(--navy);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.val-title{font-family:'Epilogue',sans-serif;font-size:17px;font-weight:700;letter-spacing:-0.2px;margin-bottom:10px;color:var(--navy);}
.val-desc{color:var(--gray);font-size:13px;line-height:1.75;}

/* COVERAGE */
.coverage-section{padding:96px 60px;background:var(--light);}
.coverage-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.hub-list{display:flex;flex-direction:column;gap:12px;margin-top:8px;}
.hub{display:flex;align-items:center;gap:16px;padding:12px 20px;background:#fff;border-radius:10px;}
.hub-stripe{width:4px;height:36px;border-radius:2px;flex-shrink:0;}
.hub-name{font-family:'Epilogue',sans-serif;font-weight:700;color:var(--navy);font-size:14px;}
.hub-desc{font-size:12px;color:var(--gray);margin-top:2px;}
.hub-ext{display:flex;align-items:center;gap:16px;padding:18px 22px;background:#eff5ff;border-radius:10px;border:1px solid #c8d8f5;}
.hub-ext-text{font-family:'Epilogue',sans-serif;font-weight:700;color:#1a4fcc;font-size:14px;}
.hub-ext-sub{font-size:12px;color:var(--gray);margin-top:2px;}

/* PROCESS */
.process-section{padding:96px 60px;background:#fff;}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);border-radius:14px;overflow:hidden;border:1px solid var(--border);}
.process-step{padding:32px 26px;background:#fff;}
.process-step.dark{background:var(--navy);}
.step-n{font-family:'Epilogue',sans-serif;font-size:28px;font-weight:900;color:var(--border);margin-bottom:14px;}
.step-n.dark-n{color:rgba(255,255,255,0.12);}
.step-title{font-family:'Epilogue',sans-serif;font-size:14px;font-weight:700;color:var(--navy);margin-bottom:8px;}
.step-title.dark-t{color:#fff;}
.step-desc{font-size:12px;color:var(--gray);line-height:1.65;}
.step-desc.dark-d{color:rgba(255,255,255,0.6);}

/* PARTNERS */
.partners-section{padding:64px 60px;background:var(--light);border-top:1px solid var(--border);}
.partners-inner{display:flex;align-items:center;gap:48px;}
.partners-lbl{font-family:'Epilogue',sans-serif;font-size:10px;font-weight:700;letter-spacing:2px;color:var(--lgray);text-transform:uppercase;white-space:nowrap;min-width:100px;}
.partners-sep{width:1px;height:36px;background:var(--border);}
.partners-list{display:flex;align-items:center;gap:36px;flex-wrap:wrap;}
.partner{font-family:'Epilogue',sans-serif;font-size:13px;font-weight:700;color:var(--lgray);letter-spacing:1px;transition:color .2s;}
.partner:hover{color:var(--gray);}

/* CTA */
.cta-section{padding:100px 60px;background:var(--navy);}
.cta-inner{text-align:center;max-width:620px;margin:0 auto;}
.cta-inner h2{font-family:'Epilogue',sans-serif;font-size:clamp(32px,4.5vw,52px);font-weight:800;letter-spacing:-1.5px;margin-bottom:18px;line-height:1.08;color:#fff;}
.cta-inner p{color:rgba(255,255,255,0.6);font-size:16px;max-width:460px;margin:0 auto 40px;line-height:1.75;font-weight:300;}
.cta-btns{display:flex;align-items:center;justify-content:center;gap:16px;}

/* FOOTER */
footer{border-top:1px solid var(--border);padding:52px 60px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:40px;background:#fff;}
.footer-desc{font-size:12px;color:#94a3b8;margin-top:12px;max-width:260px;line-height:1.65;}
.footer-links{display:flex;gap:28px;}
.footer-links a{color:#94a3b8;font-size:12px;text-decoration:none;transition:color .2s;}
.footer-links a:hover{color:var(--blue);}
.footer-right{display:flex;gap:10px;justify-content:flex-end;}
.social-btn{width:36px;height:36px;background:var(--light);border:1px solid var(--border);border-radius:7px;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:all .2s;}
.social-btn svg{width:14px;height:14px;stroke:var(--lgray);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.social-btn:hover{background:#eff5ff;border-color:#c8d8f5;}
.social-btn:hover svg{stroke:var(--navy);}

/* REVEAL */
.reveal{opacity:0;transform:translateY(24px);transition:all .65s ease;}
.reveal.visible{opacity:1;transform:translateY(0);}
.reveal-delay-1{transition-delay:.1s;}
.reveal-delay-2{transition-delay:.2s;}
.reveal-delay-3{transition-delay:.3s;}

/* ── Terminal (Opción E) ── */
.term-row{display:flex;align-items:center;gap:16px;padding:3px 0;flex-wrap:wrap;}
.term-module{color:#7ab8ff;font-size:12px;min-width:155px;letter-spacing:0.5px;}
.term-bar{width:80px;height:4px;background:rgba(255,255,255,0.08);border-radius:2px;flex-shrink:0;}
.term-fill{display:block;height:100%;border-radius:2px;background:linear-gradient(90deg,#1a6fff,#7ab8ff);}
.term-val{min-width:96px;font-size:11px;font-weight:700;letter-spacing:1px;}
.green-t{color:#28c840;}
.blue-t{color:#7ab8ff;}
.term-desc{color:rgba(255,255,255,0.35);font-size:11px;}
@keyframes blink{0%,100%{opacity:1;}50%{opacity:0;}}

/* ── System Dashboard (Opción F) ── */
.sys-module{background:#0a1628;padding:24px 22px;}
.sys-mod-header{display:flex;align-items:center;gap:8px;margin-bottom:14px;}
.sys-mod-dot{width:7px;height:7px;border-radius:50%;background:#28c840;box-shadow:0 0 6px rgba(40,200,64,0.6);flex-shrink:0;}
.sys-mod-dot.active{animation:pulse-dot 2s infinite;}
.sys-mod-name{font-family:'Courier New',monospace;font-size:10px;color:rgba(255,255,255,0.5);letter-spacing:1px;flex:1;}
.sys-mod-status{font-size:9px;font-weight:700;letter-spacing:1.5px;color:#28c840;background:rgba(40,200,64,0.1);padding:2px 7px;border-radius:3px;}
.sys-mod-status.ok{color:#28c840;}
.sys-mod-metric{font-family:'Epilogue',sans-serif;font-size:36px;font-weight:800;color:#fff;line-height:1;letter-spacing:-1px;margin-bottom:4px;}
.sys-mod-label{font-size:11px;color:rgba(255,255,255,0.4);margin-bottom:10px;letter-spacing:0.2px;}
.sys-mod-bar{height:3px;background:rgba(255,255,255,0.07);border-radius:2px;margin-bottom:10px;}
.sys-mod-fill{height:100%;border-radius:2px;background:linear-gradient(90deg,#1a6fff,#7ab8ff);}
.sys-mod-sub{font-size:10px;color:rgba(255,255,255,0.25);letter-spacing:0.3px;}


/* ── Alianzas section ── */
.alianzas-section{background:var(--light);border-top:1px solid var(--border);}
.alianzas-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center;}
.alianza-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:32px 20px;transition:border-color .2s;}
.alianza-card:hover{border-color:var(--blue);}
.alianza-icon{width:48px;height:48px;background:#eff5ff;border:1px solid #c8dcff;border-radius:12px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;}
.alianza-icon svg{width:22px;height:22px;stroke:var(--blue);}
.alianza-name{font-family:'Epilogue',sans-serif;font-size:14px;font-weight:700;color:var(--navy);margin-bottom:6px;}
.alianza-desc{font-size:12px;color:var(--gray);line-height:1.6;margin-bottom:12px;}
.alianza-placeholder{font-size:11px;color:var(--lgray);font-style:italic;background:var(--light);border-radius:4px;padding:4px 10px;display:inline-block;}

/* ── Cert tags ── */
.cert-tag{font-size:10px;font-weight:600;letter-spacing:0.5px;color:var(--blue);background:#eff5ff;border:1px solid #c8dcff;border-radius:4px;padding:3px 8px;}
/* ── Cert logos row ── */
.cert-logos-row{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;}
.cert-logo-item{display:flex;flex-direction:column;align-items:center;gap:8px;}
.cert-logo-box{width:120px;height:60px;border-radius:8px;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;padding:8px;}
.cert-logo-label{font-size:10px;color:var(--lgray);letter-spacing:0.3px;text-align:center;}

/* ── Clientes bar ── */
.clientes-bar{background:#fff;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:44px 60px;}
.clientes-bar-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:32px;}
.clientes-bar-label{font-size:9px;font-weight:700;letter-spacing:2px;color:var(--lgray);text-transform:uppercase;line-height:1.6;white-space:nowrap;min-width:110px;}
.clientes-bar-div{width:1px;height:32px;background:var(--border);flex-shrink:0;}
.clientes-bar-logos{display:flex;align-items:center;gap:40px;flex-wrap:wrap;flex:1;justify-content:center;}
.client-logo{width:120px;height:52px;object-fit:contain;transition:transform .3s;}
.client-logo:hover{transform:scale(1.08);}

/* ── Diff table (Por qué DDM) ── */
.ddiff-row{display:grid;grid-template-columns:120px 1fr 1fr;gap:0;border-bottom:1px solid var(--border);}
.ddiff-row:first-child{border-top:1px solid var(--border);}
.ddiff-label{font-size:11px;font-weight:700;color:var(--navy);padding:12px 12px 12px 0;letter-spacing:0.2px;}
.ddiff-them{font-size:12px;color:var(--lgray);padding:12px;background:#fafbfc;border-left:1px solid var(--border);line-height:1.5;}
.ddiff-us{font-size:12px;color:var(--navy);font-weight:600;padding:12px;background:#eff5ff;border-left:1px solid #c8dcff;line-height:1.5;}
/* ── Pilares (Por qué DDM) ── */
.pilar-card{display:flex;gap:16px;align-items:flex-start;padding:20px 24px;background:var(--light);border:1px solid var(--border);border-radius:10px;transition:border-color .2s;}
.pilar-card:hover{border-color:var(--blue);}
.pilar-num{font-family:'Epilogue',sans-serif;font-size:22px;font-weight:900;color:#d0dff0;line-height:1;flex-shrink:0;min-width:28px;}
.pilar-title{font-family:'Epilogue',sans-serif;font-size:14px;font-weight:700;color:var(--navy);margin-bottom:4px;letter-spacing:-0.1px;}
.pilar-desc{font-size:12px;color:var(--gray);line-height:1.7;margin:0;}
/* ── Cert pilares ── */
.cert-pilar{background:#fff;border:1px solid var(--border);border-radius:10px;padding:24px;}
.cert-pilar-head{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px;}
.cert-pilar-title{font-family:'Epilogue',sans-serif;font-size:14px;font-weight:700;color:var(--navy);line-height:1.3;}
.cert-pilar-desc{font-size:13px;color:var(--gray);line-height:1.7;margin:0;}

/* ── Tabla capacidad→beneficio ── */
.tcap-header{display:grid;grid-template-columns:180px 1fr 1fr;gap:0;padding:10px 20px;background:var(--navy);border-radius:10px 10px 0 0;}
.tcap-header div{font-size:10px;font-weight:700;letter-spacing:2px;color:rgba(255,255,255,0.5);text-transform:uppercase;}
.tcap-row{display:grid;grid-template-columns:180px 1fr 1fr;gap:0;padding:20px;border-bottom:1px solid var(--border);align-items:center;transition:background .15s;}
.tcap-row:hover{background:#f8faff;}
.tcap-col-tech{display:flex;align-items:center;gap:12px;}
.tcap-icon{width:36px;height:36px;background:#eff5ff;border:1px solid #c8dcff;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.tcap-icon svg{width:16px;height:16px;stroke:var(--blue);}
.tcap-name{font-family:'Epilogue',sans-serif;font-size:13px;font-weight:700;color:var(--navy);}
.tcap-col-how{font-size:13px;color:var(--gray);line-height:1.6;padding:0 24px;}
.tcap-col-why{font-size:13px;color:var(--gray);line-height:1.6;padding:0 8px 0 24px;border-left:2px solid #deeaff;}
.tcap-benefit{color:var(--navy);font-weight:600;}

/* ── Servicio diferenciador ── */
.svc-ded{margin-top:16px;padding-top:14px;border-top:1px solid var(--border);font-size:12px;color:var(--blue);font-weight:500;line-height:1.5;}

/* ══════ RESPONSIVE ══════ */
@media(max-width:1024px){
  nav{padding:0 28px;}
  .hero-content{padding:120px 36px 80px;max-width:100%;}
  .hero-nav{left:36px;bottom:28px;}
  .compare-section,.services-section,.security-section,.values-section,.coverage-section,.process-section,.partners-section,.cta-section{padding:72px 32px;}
  .security-inner,.coverage-inner,.values-top{gap:40px;}
  .svc-grid{grid-template-columns:repeat(2,1fr);}
  .process-grid{grid-template-columns:repeat(2,1fr);}
  .alianzas-grid{grid-template-columns:repeat(2,1fr);}
  .clientes-bar{padding:32px 28px;}
  footer{padding:40px 28px;}
  .tcap-header,.tcap-row{grid-template-columns:140px 1fr 1fr;}
}

@media(max-width:768px){
  /* FORCE REVEAL VISIBLE — observer can be unreliable on mobile */
  .reveal{opacity:1!important;transform:none!important;}

  /* NAV */
  nav{padding:0 20px;height:56px;}
  .nav-links{display:none;}
  .nav-logo img{height:32px;}

  /* HERO */
  .hero-content{padding:100px 20px 70px;min-height:85vh;}
  h1{font-size:clamp(30px,7vw,44px);letter-spacing:-0.8px;}
  .hero-desc{font-size:15px;margin-bottom:28px;}
  .hero-actions{flex-direction:column;align-items:flex-start;gap:12px;}
  .btn-primary{padding:12px 24px;font-size:13px;}
  .hero-nav{left:20px;bottom:20px;}
  .hero-nav-btn{width:34px;height:34px;}

  /* KPI */
  .kpi-inner{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0;}
  .kpi-item{padding:20px 16px;}
  .kpi-div{display:none;}
  .kpi-n{font-size:28px;}
  .kpi-l{font-size:10px;}

  /* SECTIONS GENERAL */
  .compare-section,.services-section,.security-section,.values-section,.coverage-section,.process-section,.partners-section,.cta-section{padding:56px 20px;}
  .sh{font-size:clamp(24px,6vw,34px);}
  .sub{font-size:14px;margin-bottom:32px;}

  /* COMPARE */
  .compare-grid{grid-template-columns:1fr;}

  /* SERVICES */
  .svc-grid{grid-template-columns:1fr;border-radius:12px;}
  .svc{padding:28px 22px;}

  /* TECHNOLOGY MOCKUP — stack cards vertically on mobile */
  .tech-mockup{position:static!important;min-height:auto!important;display:flex;flex-direction:column;gap:16px;}
  .tech-mockup>div{position:static!important;width:100%!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;}

  /* SECURITY / TECH */
  .security-inner{grid-template-columns:1fr;gap:32px;}

  /* VALUES */
  .values-top{grid-template-columns:1fr;gap:20px;}
  .values-grid{grid-template-columns:1fr;}

  /* COVERAGE */
  .coverage-inner{grid-template-columns:1fr;gap:32px;}

  /* PROCESS */
  .process-grid{grid-template-columns:1fr;}

  /* PARTNERS */
  .partners-inner{flex-direction:column;align-items:flex-start;gap:16px;}
  .partners-list{gap:20px;}

  /* GPS */
  .gps-stats{grid-template-columns:1fr 1fr 1fr;}

  /* CTA */
  .cta-btns{flex-direction:column;gap:10px;}

  /* FOOTER */
  footer{grid-template-columns:1fr;text-align:center;gap:24px;padding:36px 20px;}
  .footer-desc{margin:12px auto 0;max-width:100%;}
  .footer-links{justify-content:center;}
  .footer-right{justify-content:center;}

  /* CLIENTES BAR */
  .clientes-bar{padding:28px 20px;}
  .clientes-bar-inner{flex-direction:column;gap:16px;text-align:center;}
  .clientes-bar-div{display:none;}
  .clientes-bar-logos{gap:20px;}
  .client-logo{width:80px;height:36px;}

  /* ALIANZAS */
  .alianzas-grid{grid-template-columns:1fr;}

  /* TABLA CAPACIDAD */
  .tcap-header,.tcap-row{grid-template-columns:1fr;gap:8px;padding:14px 16px;}
  .tcap-col-how,.tcap-col-why{padding:0;border-left:none;}

  /* DIFF TABLE */
  .ddiff-row{grid-template-columns:1fr;gap:0;}
  .ddiff-label{padding:10px 0 4px;}
  .ddiff-them,.ddiff-us{border-left:none;}

  /* TICKER — hide desktop, show mobile version */
  .ticker{display:none!important;}
  .mob-ticker{display:flex;gap:10px;padding:14px 20px;overflow-x:scroll;-webkit-overflow-scrolling:touch;background:var(--light);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
  .mob-ticker::-webkit-scrollbar{display:none;}
  .mob-pill{flex-shrink:0;font-family:'Epilogue',sans-serif;font-size:11px;font-weight:600;letter-spacing:1px;color:var(--navy);text-transform:uppercase;white-space:nowrap;background:#fff;border:1px solid var(--border);padding:10px 18px;border-radius:100px;}

  /* TECH MOCKUP TABLE OVERFLOW */
  .tech-mockup>div:first-child{overflow-x:auto;-webkit-overflow-scrolling:touch;}
  #tecnologia{overflow:visible!important;}

  /* INLINE STYLE OVERRIDES */
  [style*="grid-template-columns:1fr 1.2fr"]{grid-template-columns:1fr!important;gap:32px!important;}
  [style*="grid-template-columns:repeat(2"]{grid-template-columns:1fr!important;}
  [style*="grid-template-columns:repeat(3"]{grid-template-columns:1fr!important;}
  [style*="grid-template-columns:repeat(4"]{grid-template-columns:1fr 1fr!important;}
  [style*="padding:96px 60px"]{padding:56px 20px!important;}
  [style*="padding:72px 60px"]{padding:48px 20px!important;}
}

@media(max-width:480px){
  .hero-content{padding:90px 16px 60px;}
  h1{font-size:28px;}
  .kpi-n{font-size:30px;}
  .gps-stats{grid-template-columns:1fr;}
  .hero-nav-btn{width:30px;height:30px;}
  .hero-dot{width:24px;}
  .hero-dot.active{width:36px;}
}

/* FAQ */
.faq-item{border:1px solid var(--border);border-radius:10px;margin-bottom:12px;background:var(--light);overflow:hidden;}
.faq-item summary{cursor:pointer;padding:18px 22px;font-family:'Epilogue',sans-serif;font-size:15px;font-weight:700;color:var(--navy);list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:'+';font-size:20px;font-weight:400;color:var(--blue);flex-shrink:0;transition:transform .2s;}
.faq-item[open] summary::after{transform:rotate(45deg);}
.faq-item p{padding:0 22px 20px;margin:0;color:var(--gray);font-size:14px;line-height:1.8;font-weight:300;}
.hero-h{font-family:'Epilogue',sans-serif;font-size:clamp(40px,5vw,68px);font-weight:800;line-height:1.05;letter-spacing:-1.5px;margin-bottom:28px;color:#fff;}
.hero-h .accent{color:transparent;background:linear-gradient(135deg,#7ab8ff,#c5dcff);-webkit-background-clip:text;background-clip:text;}
@media(max-width:768px){.hero-h{font-size:clamp(30px,7vw,44px);letter-spacing:-0.8px;}#faq{padding:56px 20px!important;}}
@media(max-width:480px){.hero-h{font-size:28px;}}

/* Headings semánticos: heredan diseño de sus clases */
h2.sh{margin-top:0;}
h3.svc-title,h3.step-title{margin-top:0;}
@media (prefers-reduced-motion: reduce){
  .ticker-track{transform:none!important;}
  .reveal{opacity:1!important;transform:none!important;transition:none!important;}
}

/* Formulario de contacto (Netlify Forms) */
.cta-form{max-width:560px;margin:0 auto;text-align:left;}
.hp-field{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden;}
.cta-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;}
.cta-form input,.cta-form textarea{width:100%;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.18);border-radius:8px;padding:13px 16px;color:#fff;font-family:'Inter',sans-serif;font-size:14px;font-weight:300;outline:none;transition:border .2s;box-sizing:border-box;}
.cta-form input::placeholder,.cta-form textarea::placeholder{color:rgba(255,255,255,0.45);}
.cta-form input:focus,.cta-form textarea:focus{border-color:rgba(255,255,255,0.5);}
.cta-form textarea{resize:vertical;margin-bottom:16px;}
.cta-form-btn{width:100%;border:none;cursor:pointer;font-size:15px;}
.cta-alt{text-align:center;color:rgba(255,255,255,0.5)!important;font-size:13px!important;margin:16px auto 0!important;}
.cta-alt a{color:rgba(255,255,255,0.8);text-decoration:none;border-bottom:1px solid rgba(255,255,255,0.3);}
@media(max-width:600px){.cta-form-grid{grid-template-columns:1fr;}}
