:root{--navy:#0b3573;--navy2:#061b3b;--blue:#1475c8;--cyan:#25a7df;--green:#42a84b;--ink:#0b1730;--muted:#617087;--light:#f4f8fd;--soft:#eaf3fb;--line:#dbe6f1;--white:#fff;--shadow:0 24px 70px rgba(7,38,82,.14)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Manrope,system-ui,sans-serif;line-height:1.65;background:#fff}h1,h2,h3,b,.brand{font-family:"Space Grotesk",Manrope,sans-serif}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3rem,6vw,6rem);line-height:.99;letter-spacing:-.055em;margin-bottom:28px}h2{font-size:clamp(2.25rem,4.4vw,4.45rem);line-height:1.06;letter-spacing:-.045em;margin-bottom:22px}h3{font-size:1.38rem;line-height:1.25}em{font-style:normal;background:linear-gradient(90deg,var(--cyan),#7cddf7);-webkit-background-clip:text;color:transparent}.container{width:min(1200px,calc(100% - 40px));margin:auto}.section{padding:112px 0}.section-dark{background:radial-gradient(circle at 78% 18%,rgba(29,147,211,.30),transparent 35%),linear-gradient(145deg,#06162f,#0a326c 62%,#0e548f);color:#fff}.section-soft{background:var(--light)}.site-header{position:fixed;inset:0 0 auto;z-index:100;transition:.25s}.site-header.scrolled,.site-header.menu-open{background:rgba(255,255,255,.97);box-shadow:0 10px 35px rgba(0,30,70,.1);backdrop-filter:blur(18px)}.nav-wrap{height:86px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff;font-size:1.5rem;font-weight:700}.brand img{width:49px;height:36px;object-fit:contain}.site-header.scrolled .brand,.site-header.menu-open .brand{color:var(--navy)}.main-nav{display:flex;align-items:center;gap:18px}.nav-group{position:relative}.nav-parent{border:0;background:transparent;color:rgba(255,255,255,.82);font:inherit;font-weight:700;font-size:.86rem;cursor:pointer;padding:30px 6px;display:flex;gap:6px}.nav-group.active>.nav-parent,.nav-parent:hover{color:var(--cyan)}.site-header.scrolled .nav-parent,.site-header.menu-open .nav-parent{color:var(--navy)}.dropdown{position:absolute;top:74px;left:-16px;min-width:245px;background:#fff;padding:12px;border-radius:16px;box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s}.nav-group:hover .dropdown,.nav-group.open .dropdown{opacity:1;visibility:visible;transform:none}.dropdown a{display:block;padding:10px 12px;border-radius:9px;color:var(--ink);text-decoration:none;font-size:.82rem;font-weight:650}.dropdown a:hover,.dropdown a.active{background:var(--light);color:var(--blue)}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:12px;padding:14px 21px;text-decoration:none;font-weight:800;transition:.22s;cursor:pointer}.button-sm{padding:10px 16px;background:linear-gradient(100deg,var(--blue),var(--cyan));color:#fff}.button-primary{background:linear-gradient(100deg,var(--blue),var(--cyan));color:#fff;box-shadow:0 13px 34px rgba(25,143,207,.3)}.button-primary:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(25,143,207,.4)}.button-ghost{color:#fff;border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.05)}.mobile-toggle{display:none;border:0;background:transparent}.mobile-toggle span{display:block;width:26px;height:2px;background:#fff;margin:5px}.page-hero{padding:176px 0 92px;overflow:hidden}.page-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:72px;min-height:650px}.hero-sub,.lead{font-size:1.12rem;color:rgba(255,255,255,.72);max-width:790px}.darklead{color:var(--muted)}.hero-actions{display:flex;gap:14px;margin-top:36px}.hero-badge{margin-top:34px;display:inline-flex;padding:9px 14px;border:1px solid rgba(255,255,255,.18);border-radius:30px;color:#b7eaff;font-size:.75rem;font-weight:700}.hero-graphic{height:520px;position:relative;display:grid;place-items:center}.signal-ring{position:absolute;border:1px solid rgba(91,201,239,.22);border-radius:50%;width:470px;height:470px}.r2{width:340px;height:340px}.hero-logo{width:245px;height:245px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(145deg,#0b2e66,#1288ca);box-shadow:0 40px 90px rgba(0,0,0,.35);z-index:2;border:7px solid rgba(255,255,255,.1)}.hero-logo img{width:105px;height:72px;object-fit:contain}.hero-logo span{font-size:.68rem;color:rgba(255,255,255,.65)}.data-chip{position:absolute;background:rgba(255,255,255,.96);color:var(--navy);padding:11px 14px;border-radius:12px;font-size:.72rem;font-weight:800;box-shadow:var(--shadow);z-index:3}.c1{left:0;top:105px}.c2{right:0;top:145px}.c3{left:5px;bottom:100px}.c4{right:5px;bottom:115px}.eyebrow{display:flex;align-items:center;gap:10px;font-size:.72rem;letter-spacing:.16em;font-weight:800;color:#a7e5fb;margin-bottom:22px}.eyebrow span{width:30px;height:2px;background:var(--green)}.eyebrow.dark{color:var(--blue)}.proof-strip{background:#fff;box-shadow:0 20px 55px rgba(5,34,73,.09)}.proof-strip .container{display:grid;grid-template-columns:repeat(4,1fr)}.proof-strip div div{padding:27px;border-right:1px solid var(--line);display:flex;flex-direction:column}.proof-strip b{font-size:1.2rem;color:var(--navy)}.proof-strip span{font-size:.74rem;color:var(--muted)}.section-head{max-width:880px;margin-bottom:55px}.section-head.centered{text-align:center;margin-inline:auto}.centered .eyebrow{justify-content:center}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.industry-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px;transition:.22s;position:relative;overflow:hidden}.feature-card:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:3px;background:linear-gradient(90deg,var(--blue),var(--cyan),var(--green));opacity:0}.feature-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#b8dbef}.feature-card:hover:before{opacity:1}.feature-number{color:var(--cyan);font-size:.72rem;font-weight:800;letter-spacing:.12em;margin-bottom:22px}.feature-card p{color:var(--muted);font-size:.91rem}.feature-card ul{list-style:none;padding:0;margin:18px 0 0}.feature-card li{font-size:.81rem;padding:8px 0;border-top:1px solid var(--line)}.feature-card li:before{content:"✓";color:var(--green);font-weight:900;margin-right:9px}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.intelligence-stack div{display:grid;grid-template-columns:105px 1fr;gap:20px;padding:21px 0;border-top:1px solid rgba(255,255,255,.14)}.intelligence-stack b{color:#79dafa}.intelligence-stack span{color:rgba(255,255,255,.68)}.text-link{color:var(--blue);font-weight:800;text-decoration:none}.text-link.light{color:#8ce0fa}.process-list{list-style:none;margin:0;padding:0;counter-reset:item}.process-list li{display:grid;grid-template-columns:55px 150px 1fr;gap:18px;padding:24px 0;border-top:1px solid var(--line);counter-increment:item}.process-list li:before{content:"0" counter(item);font-size:.75rem;color:var(--cyan);font-weight:800}.process-list span{color:var(--muted)}.mini-cta{padding-top:35px}.mini-cta-box{background:radial-gradient(circle at 10% 10%,rgba(38,169,223,.25),transparent 35%),linear-gradient(145deg,#06182f,#0b4f8d);border-radius:30px;color:#fff;padding:58px 62px;display:flex;align-items:center;justify-content:space-between;gap:35px;box-shadow:var(--shadow)}.mini-cta-box h2{font-size:clamp(2rem,3.2vw,3.2rem)}.mini-cta-box p{color:rgba(255,255,255,.68);max-width:720px}.outcome-pills{display:flex;flex-wrap:wrap;gap:12px}.outcome-pills span{padding:13px 16px;border-radius:30px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);font-weight:700;font-size:.84rem}.faq-page{display:grid;grid-template-columns:.72fr 1.28fr;gap:90px}.faq-sidebar p{color:var(--muted)}details{border-top:1px solid var(--line);padding:21px 0}summary{list-style:none;cursor:pointer;font-weight:800;display:flex;justify-content:space-between}summary:after{content:"+";color:var(--blue);font-size:1.3rem}details[open] summary:after{content:"−"}details p{color:var(--muted);font-size:.92rem;margin:14px 0 0}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.contact-copy>p,.contact-copy span{color:var(--muted)}.contact-copy a{color:var(--blue)}.contact-points div{padding:17px 0;border-top:1px solid var(--line)}.contact-points b,.contact-points span{display:block}.enterprise-form{padding:34px;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);background:#fff}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.enterprise-form label span{display:block;font-size:.73rem;font-weight:800;margin-bottom:6px}.enterprise-form input,.enterprise-form select,.enterprise-form textarea{width:100%;border:1px solid var(--line);background:#f9fbfd;border-radius:10px;padding:12px;font:inherit;margin-bottom:14px}.enterprise-form .button{width:100%}.enterprise-form small{display:block;text-align:center;margin-top:10px;color:var(--muted)}.legal-hero{padding:170px 0 65px;background:linear-gradient(145deg,#06162f,#0b4d88);color:#fff}.legal-copy{max-width:850px}.legal-copy h2{font-size:2rem;margin-top:45px}.legal-copy p{color:var(--muted)}.not-found{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px}.not-found img{width:140px}.not-found h1{font-size:3.2rem;margin-top:25px}.site-footer{background:#06142d;color:#fff;padding:72px 0 24px}.footer-grid{display:grid;grid-template-columns:1.7fr repeat(3,1fr);gap:45px}.footer-intro .brand{margin-bottom:16px}.footer-intro p,.footer-intro small{color:rgba(255,255,255,.55)}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:9px}.footer-grid b{margin-bottom:8px}.footer-grid a{color:rgba(255,255,255,.62);text-decoration:none;font-size:.83rem}.footer-grid a:hover{color:var(--cyan)}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.1);margin-top:50px;padding-top:22px;color:rgba(255,255,255,.42);font-size:.72rem}.footer-bottom a{color:inherit}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:10px;top:10px;z-index:999;background:#fff;padding:10px}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}@media(max-width:1000px){.main-nav{position:fixed;top:76px;left:18px;right:18px;display:none;flex-direction:column;align-items:stretch;gap:4px;background:#fff;padding:18px;border-radius:18px;box-shadow:var(--shadow);max-height:calc(100vh - 100px);overflow:auto}.main-nav.open{display:flex}.mobile-toggle{display:block}.site-header.menu-open .mobile-toggle span,.site-header.scrolled .mobile-toggle span{background:var(--navy)}.nav-parent{color:var(--navy);padding:12px 5px;width:100%;justify-content:space-between}.dropdown{position:static;display:none;opacity:1;visibility:visible;transform:none;box-shadow:none;padding:2px 8px 10px}.nav-group.open .dropdown{display:block}.page-hero-grid,.split,.faq-page,.contact-grid{grid-template-columns:1fr}.hero-graphic{height:480px}.feature-grid,.industry-card-grid{grid-template-columns:1fr 1fr}.proof-strip .container{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.process-list li{grid-template-columns:45px 130px 1fr}}@media(max-width:620px){.container{width:min(100% - 28px,1200px)}.section{padding:82px 0}.page-hero{padding-top:140px}.page-hero-grid{min-height:unset}.hero-actions{flex-direction:column}.hero-actions .button{width:100%}.hero-graphic{height:390px}.signal-ring{width:340px;height:340px}.r2{width:245px;height:245px}.hero-logo{width:185px;height:185px}.hero-logo img{width:80px}.data-chip{font-size:.62rem;padding:8px}.c1,.c3{left:0}.c2,.c4{right:0}.feature-grid,.industry-card-grid,.proof-strip .container,.form-grid{grid-template-columns:1fr}.proof-strip div div{border-right:0;border-bottom:1px solid var(--line)}.mini-cta-box{padding:35px 24px;flex-direction:column;align-items:flex-start}.process-list li{grid-template-columns:35px 1fr}.process-list span{grid-column:2}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:8px}.site-header .brand{font-size:1.3rem}.page-hero h1{font-size:3.1rem}}

/* ===== 2026 PREMIUM EXPERIENCE ENHANCEMENTS ===== */
:root{
  --glass:rgba(255,255,255,.72);
  --glass-dark:rgba(8,31,67,.7);
  --glow:0 0 0 1px rgba(42,165,221,.13),0 30px 90px rgba(9,57,112,.16);
}
body{overflow-x:hidden;background:
  radial-gradient(circle at 12% 8%,rgba(37,167,223,.055),transparent 24%),
  radial-gradient(circle at 88% 22%,rgba(66,168,75,.045),transparent 20%),#fff}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.018;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.site-header{border-bottom:1px solid transparent}.site-header.scrolled{border-color:rgba(15,81,145,.08);background:rgba(255,255,255,.82);backdrop-filter:blur(22px) saturate(145%)}
.brand img{filter:drop-shadow(0 8px 18px rgba(28,131,196,.18))}
.main-nav .nav-parent,.main-nav>a{transition:color .22s ease,transform .22s ease}.main-nav .nav-parent:hover,.main-nav>a:hover{transform:translateY(-1px)}
.dropdown{border:1px solid rgba(18,104,177,.1)!important;background:rgba(255,255,255,.92)!important;backdrop-filter:blur(20px) saturate(145%);box-shadow:0 24px 70px rgba(5,36,80,.18)!important;border-radius:18px!important;padding:10px!important}
.dropdown a{border-radius:11px!important;padding:11px 13px!important}.dropdown a:hover{background:linear-gradient(90deg,rgba(37,167,223,.1),rgba(66,168,75,.06))!important;color:var(--navy)!important}
.button{position:relative;overflow:hidden;isolation:isolate}.button:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.26) 45%,transparent 70%);transform:translateX(-120%);transition:transform .7s ease}.button:hover:before{transform:translateX(120%)}
.button-primary{border:1px solid rgba(255,255,255,.26);box-shadow:0 16px 38px rgba(23,123,196,.28)}
.page-hero,.hero{position:relative;isolation:isolate;overflow:hidden}.page-hero:after,.hero:after{content:"";position:absolute;width:480px;height:480px;border-radius:50%;right:-160px;bottom:-240px;background:radial-gradient(circle,rgba(66,168,75,.22),transparent 65%);filter:blur(8px);z-index:-1;animation:floatGlow 8s ease-in-out infinite alternate}.page-hero:before,.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,black,transparent 85%);z-index:-1}
@keyframes floatGlow{to{transform:translate(-45px,-35px) scale(1.12)}}
.hero-graphic,.platform-visual,.visual-card{filter:drop-shadow(0 30px 70px rgba(0,20,50,.25))}
.signal-ring{animation:pulseRing 3.8s ease-in-out infinite}.signal-ring.r2{animation-delay:1s}@keyframes pulseRing{0%,100%{opacity:.35;transform:scale(.96)}50%{opacity:.8;transform:scale(1.03)}}
.data-chip{box-shadow:0 14px 38px rgba(0,21,54,.2)!important;backdrop-filter:blur(12px);animation:chipFloat 5s ease-in-out infinite}.data-chip:nth-of-type(even){animation-delay:1.2s}@keyframes chipFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
.section{position:relative}.section:nth-of-type(even):not(.section-dark){background:linear-gradient(180deg,rgba(244,248,253,.7),rgba(255,255,255,.96))}
.card,.feature-card,.info-card,.solution-card,.industry-card,.metric-card,.content-card,.contact-points>div,.enterprise-form{border:1px solid rgba(20,117,200,.1)!important;box-shadow:0 15px 45px rgba(8,48,96,.07);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;background:linear-gradient(150deg,rgba(255,255,255,.97),rgba(247,251,255,.95))}
.card:hover,.feature-card:hover,.info-card:hover,.solution-card:hover,.industry-card:hover,.metric-card:hover,.content-card:hover,.contact-points>div:hover{transform:translateY(-7px);box-shadow:var(--glow);border-color:rgba(37,167,223,.28)!important}
.eyebrow{letter-spacing:.18em}.eyebrow span{box-shadow:0 0 18px rgba(66,168,75,.55)}
h1,h2{font-variation-settings:"wght" 700;text-wrap:balance}.hero-sub,.lead{text-wrap:pretty}
.enterprise-form{border-radius:26px!important;padding:34px!important;background:rgba(255,255,255,.9)!important;backdrop-filter:blur(18px)}
.enterprise-form input,.enterprise-form select,.enterprise-form textarea{background:#f8fbff!important;border:1px solid #d9e7f3!important;transition:border-color .2s,box-shadow .2s,background .2s}.enterprise-form input:focus,.enterprise-form select:focus,.enterprise-form textarea:focus{outline:none;border-color:var(--cyan)!important;background:#fff!important;box-shadow:0 0 0 4px rgba(37,167,223,.12)}
.enterprise-form label span{color:var(--navy);font-size:.76rem;letter-spacing:.02em}.enterprise-form small{line-height:1.55;margin-top:14px!important}
.contact-grid{align-items:start}.contact-copy{position:sticky;top:120px}.contact-points>div{padding:19px;border-radius:16px;margin:13px 0}.contact-points b{color:var(--navy)}
.site-footer{position:relative;overflow:hidden}.site-footer:before{content:"";position:absolute;width:600px;height:600px;border-radius:50%;left:-260px;top:-380px;background:radial-gradient(circle,rgba(37,167,223,.18),transparent 68%)}
.reveal{transition-duration:.85s!important;transition-timing-function:cubic-bezier(.2,.75,.25,1)!important}
@media(max-width:1000px){.contact-copy{position:static}.dropdown{backdrop-filter:none}.data-chip{animation:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* 2026 premium visual refresh */
.page-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 75% 24%,rgba(39,172,225,.24),transparent 30%),linear-gradient(135deg,#03142f 0%,#072d61 58%,#0b4a86 100%)}
.page-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,#000,transparent 85%)}
.hero-media{position:relative;min-height:610px;border-radius:30px;overflow:hidden;box-shadow:0 40px 100px rgba(0,0,0,.38);border:1px solid rgba(255,255,255,.16)}
.hero-media>img{width:100%;height:610px;object-fit:cover;display:block;filter:saturate(1.08) contrast(1.05)}
.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,19,46,.08),rgba(2,19,46,.72))}
.glass-panel{position:absolute;z-index:2;left:24px;right:24px;bottom:24px;padding:20px;border:1px solid rgba(255,255,255,.2);border-radius:18px;background:rgba(3,20,48,.74);backdrop-filter:blur(18px);box-shadow:0 22px 60px rgba(0,0,0,.3)}
.console-head{display:flex;gap:10px;align-items:center}.console-head small{margin-left:auto;color:rgba(255,255,255,.6);font-size:.68rem}.live-dot{width:8px;height:8px;border-radius:50%;background:#38d77b;box-shadow:0 0 0 6px rgba(56,215,123,.13)}
.console-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:16px 0}.console-kpis span{background:rgba(255,255,255,.07);padding:10px;border-radius:10px;font-size:.67rem}.console-kpis b{display:block;font-size:1.05rem;color:#8fe7ff}
.decision-feed p{margin:7px 0;font-size:.72rem;color:rgba(255,255,255,.75)}.decision-feed i{font-style:normal;color:#43d87f;margin-right:7px}.hero-float{position:absolute;z-index:3;top:24px;padding:13px 16px;border-radius:14px;background:rgba(255,255,255,.92);color:#082550;box-shadow:0 18px 40px rgba(0,0,0,.25)}.hero-float b{font-size:1.35rem}.hero-float span{display:block;font-size:.64rem;color:#66748a}.hf-one{left:24px}.hf-two{right:24px}
.immersive-story{padding:110px 0}.immersive-grid,.visual-feature-grid,.security-showcase-grid,.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:76px;align-items:center}.immersive-image,.visual-frame{position:relative;border-radius:28px;overflow:hidden;box-shadow:0 32px 80px rgba(0,0,0,.28)}.immersive-image img,.visual-frame img{display:block;width:100%;height:520px;object-fit:cover}.image-kicker{position:absolute;left:22px;bottom:22px;padding:10px 14px;border-radius:999px;background:rgba(4,24,54,.8);backdrop-filter:blur(12px);font-size:.68rem;letter-spacing:.12em;font-weight:800}.story-points{margin-top:34px}.story-points div{padding:17px 0;border-top:1px solid rgba(255,255,255,.13);display:grid;grid-template-columns:150px 1fr;gap:20px}.story-points span{color:rgba(255,255,255,.68)}
.architecture-section{background:linear-gradient(180deg,#f6faff,#fff)}.architecture-stack{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;align-items:stretch}.arch-card{padding:28px 22px;border:1px solid #dce8f4;border-radius:22px;background:#fff;box-shadow:0 18px 45px rgba(9,52,105,.08);position:relative;overflow:hidden}.arch-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(#25a7df,#42a84b)}.arch-card small{font-weight:800;color:#1475c8;letter-spacing:.09em}.arch-card h3{margin:12px 0}.arch-card p{font-size:.86rem;color:#65738b}
.agent-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.agent-grid article{padding:20px;border-radius:17px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.055)}.agent-grid b{display:block;color:#87e6ff;margin-bottom:6px}.agent-grid span{font-size:.82rem;color:rgba(255,255,255,.67)}
.visual-feature{background:#f6faff}.visual-frame img{height:560px}.check-list{list-style:none;padding:0;margin:28px 0}.check-list li{padding:10px 0;border-top:1px solid #dce7f2}.check-list li:before{content:"✓";color:#42a84b;font-weight:900;margin-right:10px}
.security-showcase{background:radial-gradient(circle at 90% 30%,rgba(37,167,223,.12),transparent 30%)}.security-pill-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:28px 0}.security-pill-grid span{padding:13px 14px;border-radius:12px;background:#eef7fd;border:1px solid #d5e9f5;font-size:.78rem;font-weight:700}.security-orbit{height:480px;position:relative;display:grid;place-items:center;background:radial-gradient(circle,rgba(25,117,200,.16),transparent 58%)}.shield-core{width:220px;height:220px;border-radius:42% 42% 52% 52%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;font-weight:800;background:linear-gradient(145deg,#082d62,#1281c5);box-shadow:0 30px 80px rgba(10,70,130,.28);z-index:2}.shield-core small{display:block;font-size:.66rem;color:rgba(255,255,255,.65);margin-top:8px}.security-orbit i{position:absolute;border:1px dashed #7fc8e9;border-radius:50%}.security-orbit i:nth-of-type(1){width:330px;height:330px}.security-orbit i:nth-of-type(2){width:430px;height:430px}.security-orbit i:nth-of-type(3){width:270px;height:270px;transform:rotate(45deg)}
.why-brotecs{position:relative;overflow:hidden}.why-brotecs:after{content:"";position:absolute;width:600px;height:600px;border-radius:50%;background:rgba(37,167,223,.12);right:-220px;top:-180px;filter:blur(10px)}.credentials{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:30px 0}.credentials div,.brotecs-panel div{padding:17px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.05);border-radius:15px}.credentials b,.brotecs-panel b{display:block;color:#89e5ff}.credentials span,.brotecs-panel small{font-size:.72rem;color:rgba(255,255,255,.62)}.brotecs-panel{position:relative;z-index:2;padding:28px;border:1px solid rgba(255,255,255,.16);border-radius:26px;background:rgba(255,255,255,.06);backdrop-filter:blur(15px);display:grid;gap:12px}.bp-label{font-size:.68rem;letter-spacing:.14em;font-weight:800;color:#73d6f5}
@media(max-width:1000px){.immersive-grid,.visual-feature-grid,.security-showcase-grid,.why-grid{grid-template-columns:1fr}.architecture-stack{grid-template-columns:1fr 1fr}.hero-media{min-height:540px}.hero-media>img{height:540px}.security-orbit{height:380px}}
@media(max-width:620px){.architecture-stack,.agent-grid,.security-pill-grid,.credentials{grid-template-columns:1fr}.console-kpis{grid-template-columns:1fr 1fr}.immersive-image img,.visual-frame img{height:360px}.hero-media{min-height:500px}.hero-media>img{height:500px}.hero-float{display:none}.glass-panel{left:12px;right:12px;bottom:12px}.decision-feed p:nth-child(n+3){display:none}.story-points div{grid-template-columns:1fr;gap:4px}.security-orbit{height:310px}.shield-core{width:170px;height:170px}}


/* Homepage hero rebuilt to match the approved visual direction */
.home-hero{position:relative;min-height:100svh;overflow:hidden;background:#03142f;padding:98px 0 24px;display:flex;align-items:center}
.home-hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,15,39,.98) 0%,rgba(3,24,57,.92) 36%,rgba(4,29,63,.45) 63%,rgba(4,22,47,.20) 100%),linear-gradient(180deg,rgba(0,0,0,.05),rgba(2,16,39,.72)),url('assets/visuals/ai-truck.jpg') center right/cover no-repeat;filter:saturate(1.12) contrast(1.04)}
.home-hero-bg:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 45% 45%,rgba(31,145,222,.16),transparent 28%),linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:auto,46px 46px,46px 46px}
.home-hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:.93fr 1.07fr;gap:38px;align-items:center;padding-top:12px}
.home-hero-copy{align-self:center}.hero-kicker{display:inline-flex;border:1px solid rgba(127,216,250,.28);border-radius:999px;padding:8px 14px;color:#d8f5ff;background:rgba(2,20,49,.58);box-shadow:0 0 24px rgba(42,161,222,.13);font-size:.64rem;letter-spacing:.11em;font-weight:800;margin-bottom:18px}
.home-hero h1{font-size:clamp(2.85rem,4.7vw,5.35rem);line-height:1.02;margin-bottom:19px}.home-hero h1 em{background:linear-gradient(90deg,#4b8fff,#36b9ef 48%,#3fd18a);-webkit-background-clip:text;color:transparent}.home-hero-copy>p{max-width:590px;color:rgba(255,255,255,.78);font-size:clamp(.94rem,1.15vw,1.08rem);line-height:1.55}.home-hero .hero-actions{margin-top:25px}.play-chip{width:28px;height:28px;border:1px solid rgba(255,255,255,.55);border-radius:50%;display:inline-grid;place-items:center;font-size:.66rem}
.hero-statbar{display:grid;grid-template-columns:repeat(4,1fr);margin-top:27px;border:1px solid rgba(129,200,241,.22);border-radius:12px;background:rgba(2,22,52,.72);backdrop-filter:blur(14px);max-width:690px}.hero-statbar>div{min-height:68px;padding:12px 13px;border-right:1px solid rgba(255,255,255,.12);display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;align-items:center}.hero-statbar>div:last-child{border-right:0}.stat-icon{grid-row:1/3;width:27px;height:27px;border:1px solid rgba(112,207,245,.34);border-radius:8px;display:grid;place-items:center;color:#d6f6ff;font-size:.62rem}.hero-statbar b{font-size:.91rem;line-height:1.1}.hero-statbar small{font-size:.57rem;color:rgba(255,255,255,.58);line-height:1.2}
.command-window{align-self:center;background:rgba(5,27,61,.91);border:1px solid rgba(132,194,231,.25);border-radius:16px;padding:13px;box-shadow:0 28px 80px rgba(0,0,0,.42);backdrop-filter:blur(18px);max-height:610px}.command-head{display:flex;align-items:center;padding:2px 3px 11px}.command-live{font-size:.62rem;color:#41d481;margin-left:10px}.command-more{margin-left:auto;color:rgba(255,255,255,.62)}.command-kpis{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(255,255,255,.08);border-radius:8px;background:rgba(255,255,255,.04)}.command-kpis>div{padding:10px;border-right:1px solid rgba(255,255,255,.09);text-align:center}.command-kpis>div:last-child{border-right:0}.command-kpis b{display:block;font-size:1.05rem}.command-kpis>div:nth-child(2) b,.command-kpis>div:nth-child(4) b{color:#42d782}.command-kpis small{display:block;font-size:.5rem;color:rgba(255,255,255,.57)}.command-main{display:grid;grid-template-columns:.94fr 1.06fr;gap:10px;margin-top:10px}.ops-list,.route-map,.agent-feed{border:1px solid rgba(255,255,255,.08);border-radius:8px;background:rgba(255,255,255,.025)}.ops-list{padding:9px}.ops-list h3,.agent-feed h3{font-size:.75rem;margin:0 0 7px}.ops-list article{position:relative;border:1px solid rgba(255,255,255,.07);border-radius:7px;padding:7px 70px 7px 8px;margin:5px 0;background:rgba(255,255,255,.025)}.ops-list article b,.ops-list article span{display:block}.ops-list article b{font-size:.58rem}.ops-list article span{font-size:.48rem;color:rgba(255,255,255,.58)}.ops-list article em{position:absolute;right:7px;top:7px;text-align:right;font-style:normal;font-size:.5rem}.ops-list article i{font-style:normal;color:#43d985}.route-map{position:relative;min-height:175px;overflow:hidden;background-color:#071e40;background-image:linear-gradient(rgba(93,141,182,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(93,141,182,.12) 1px,transparent 1px);background-size:20px 20px}.route-path{position:absolute;height:3px;border-radius:10px;filter:drop-shadow(0 0 5px currentColor)}.rp1{width:72%;left:11%;top:47%;background:#26a8ff;transform:rotate(-20deg)}.rp2{width:60%;left:24%;top:58%;background:#3ddc8b;transform:rotate(29deg)}.pin{position:absolute;width:10px;height:10px;border:2px solid #fff;border-radius:50%;background:#168dff;box-shadow:0 0 0 4px rgba(26,151,255,.22)}.p1{left:16%;top:54%}.p2{left:48%;top:30%}.p3{right:16%;top:65%}.p4{right:30%;top:36%;background:#3bd489}.agent-feed{padding:9px;margin-top:10px}.agent-feed p{display:grid;grid-template-columns:35px 88px 1fr;gap:6px;margin:5px 0;font-size:.49rem;color:rgba(255,255,255,.69)}.agent-feed time{color:#43d985}.agent-feed b{color:#fff;font-family:Manrope,sans-serif;font-size:.49rem}.hero-security-badge{position:absolute;right:3%;bottom:3%;padding:9px 13px;border:1px solid rgba(73,220,142,.35);border-radius:9px;background:rgba(3,22,50,.76);color:#dfffee;font-size:.68rem;box-shadow:0 12px 35px rgba(0,0,0,.25)}
.immersive-image img{object-position:center bottom!important}
.six-agent-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.agent-detail{padding:28px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 16px 45px rgba(8,48,96,.07)}.agent-detail>span{color:var(--cyan);font-size:.72rem;font-weight:800}.agent-detail p{color:var(--muted);font-size:.86rem}.agent-detail p b{color:var(--navy)}
.route-page-hero{padding:160px 0 90px}.route-page-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center}.network-visual{position:relative;border-radius:28px;overflow:hidden;box-shadow:0 35px 90px rgba(0,0,0,.35)}.network-visual img{display:block;width:100%;height:570px;object-fit:cover}.network-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(2,17,42,.34))}.network-metric{position:absolute;z-index:2;padding:12px 14px;border-radius:12px;background:rgba(3,26,58,.83);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(12px);color:#fff}.network-metric b,.network-metric span{display:block}.network-metric b{color:#63e3a0}.network-metric span{font-size:.61rem;color:rgba(255,255,255,.65)}.nm1{left:22px;top:22px}.nm2{right:22px;top:22px}.nm3{right:22px;bottom:22px}.optimization-console{padding:22px;border:1px solid rgba(255,255,255,.14);border-radius:22px;background:rgba(255,255,255,.055)}.oc-head{display:flex;justify-content:space-between}.oc-head span{font-size:.63rem;color:#49db90}.oc-map{height:300px;position:relative;margin:18px 0;border-radius:15px;overflow:hidden;background:#061c3d;background-image:linear-gradient(rgba(94,145,187,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(94,145,187,.12) 1px,transparent 1px);background-size:25px 25px}.oc-map i{position:absolute;width:13px;height:13px;border:3px solid white;border-radius:50%;background:#1497ff;box-shadow:0 0 0 5px rgba(20,151,255,.2)}.oc-map i:nth-child(1){left:12%;top:65%}.oc-map i:nth-child(2){left:42%;top:24%}.oc-map i:nth-child(3){right:18%;top:58%}.oc-map i:nth-child(4){right:8%;top:20%;background:#3bd48b}.oc-route{position:absolute;height:4px;border-radius:9px}.r-a{width:70%;left:12%;top:49%;transform:rotate(-19deg);background:#21a4ff;box-shadow:0 0 14px #21a4ff}.r-b{width:48%;right:8%;top:40%;transform:rotate(34deg);background:#3bd48b;box-shadow:0 0 14px #3bd48b}.oc-results{display:grid;grid-template-columns:1fr 1fr;gap:10px}.oc-results>div{padding:13px;border:1px solid rgba(255,255,255,.12);border-radius:12px}.oc-results .selected{border-color:#42d88a;background:rgba(66,216,138,.08)}.oc-results b,.oc-results small{display:block}.oc-results small{color:rgba(255,255,255,.58)}.light-list li{border-color:rgba(255,255,255,.13);color:rgba(255,255,255,.74)}
@media(max-width:1100px){.home-hero{min-height:auto;padding:125px 0 55px}.home-hero-inner{grid-template-columns:1fr}.command-window{max-width:820px}.hero-security-badge{display:none}.route-page-grid{grid-template-columns:1fr}.network-visual img{height:480px}.six-agent-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.home-hero{padding-top:105px}.home-hero h1{font-size:clamp(2.7rem,12vw,4.3rem)}.home-hero-inner{gap:26px}.home-hero-copy>p{font-size:.95rem}.hero-statbar{grid-template-columns:1fr 1fr}.hero-statbar>div:nth-child(2){border-right:0}.hero-statbar>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.11)}.command-main{grid-template-columns:1fr}.route-map{min-height:150px}.agent-feed p{grid-template-columns:33px 78px 1fr}.six-agent-grid{grid-template-columns:1fr}.network-visual img{height:390px}.route-page-hero{padding-top:130px}}
@media(max-height:800px) and (min-width:1101px){.home-hero{padding-top:86px}.home-hero h1{font-size:clamp(2.5rem,4.3vw,4.65rem);margin-bottom:14px}.home-hero-copy>p{font-size:.95rem}.home-hero .hero-actions{margin-top:18px}.hero-statbar{margin-top:18px}.command-window{transform:scale(.92);transform-origin:center right}}

/* QA refinement: shared navigation/footer, responsive hero fit and map visuals */
.route-map{background:#071e40 url('assets/visuals/hero-command-map.svg') center/cover no-repeat!important}.route-map .route-path,.route-map .pin{display:none}
.oc-map{background:#061c3d url('assets/visuals/network-optimizer-map.svg') center/cover no-repeat!important}.oc-map>i,.oc-map>.oc-route{display:none}
.immersive-image img{object-position:center center!important}
@media(min-width:1101px){
 .page-hero,.route-page-hero{min-height:100svh;height:100svh;padding:100px 0 24px;display:flex;align-items:center}
 .page-hero-grid,.route-page-grid{min-height:0;width:100%}
 .page-hero-grid{height:calc(100svh - 124px)}
 .hero-graphic{height:min(58vh,520px)}
 .route-page-grid{height:calc(100svh - 124px)}
 .network-visual img{height:min(65vh,570px)}
}
@media(min-width:1101px) and (max-height:820px){
 .page-hero h1,.route-page-hero h1{font-size:clamp(2.5rem,4.5vw,4.6rem);margin-bottom:16px}
 .page-hero .hero-sub,.route-page-hero .hero-sub{font-size:.98rem;line-height:1.5}
 .page-hero .hero-actions,.route-page-hero .hero-actions{margin-top:20px}
 .hero-graphic{transform:scale(.88)}
 .network-visual img{height:58vh}
}
@media(max-width:980px){.main-nav{top:82px}.nav-group{width:100%}.nav-parent{width:100%;justify-content:space-between}.dropdown{position:static;display:none;opacity:1;visibility:visible;transform:none;box-shadow:none;padding:4px 8px 10px;background:#f4f8fd}.nav-group.open .dropdown{display:block}}

/* =========================================================
   RESPONSIVE HERO QA OVERRIDES — 2026-07-31
   Keeps every internal-page hero visually consistent and
   prevents fixed-height overflow at common viewport sizes.
   ========================================================= */

/* Never let decorative hero objects widen the page. */
html,body{max-width:100%;overflow-x:hidden}
.page-hero,.route-page-hero,.legal-hero{width:100%;}
.page-hero-grid,.route-page-grid{min-width:0;}
.page-hero-grid>* ,.route-page-grid>*{min-width:0;}

/* Internal page hero: desktop/laptop baseline. */
.page-hero{
  min-height:100svh;
  height:auto;
  padding:clamp(104px,12vh,138px) 0 clamp(38px,6vh,70px);
  display:flex;
  align-items:center;
}
.page-hero-grid{
  width:100%;
  min-height:0;
  grid-template-columns:minmax(0,1.04fr) minmax(360px,.96fr);
  gap:clamp(34px,5vw,72px);
  align-items:center;
}
.page-hero h1{
  font-size:clamp(2.75rem,4.6vw,5rem);
  line-height:1.01;
  margin-bottom:clamp(16px,2.4vh,26px);
  overflow-wrap:anywhere;
}
.page-hero .hero-sub{
  font-size:clamp(.96rem,1.25vw,1.1rem);
  line-height:1.58;
  max-width:680px;
}
.page-hero .hero-actions{margin-top:clamp(20px,3vh,32px);flex-wrap:wrap}
.page-hero .hero-graphic{
  width:100%;
  height:clamp(350px,52vh,500px);
  min-height:0;
  max-height:500px;
}
.page-hero .signal-ring{width:min(44vw,440px);height:min(44vw,440px)}
.page-hero .signal-ring.r2{width:min(32vw,320px);height:min(32vw,320px)}
.page-hero .hero-logo{width:clamp(180px,18vw,235px);height:clamp(180px,18vw,235px)}
.page-hero .data-chip{max-width:180px;white-space:normal;text-align:center}

/* Route optimization hero follows the same viewport-safe rules. */
.route-page-hero{
  min-height:100svh;
  height:auto;
  padding:clamp(104px,12vh,138px) 0 clamp(38px,6vh,70px);
  display:flex;
  align-items:center;
}
.route-page-grid{
  width:100%;
  grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);
  gap:clamp(32px,4.5vw,64px);
  align-items:center;
}
.route-page-hero h1{
  font-size:clamp(2.75rem,4.6vw,5rem);
  line-height:1.01;
  margin-bottom:clamp(16px,2.4vh,24px);
  overflow-wrap:anywhere;
}
.route-page-hero .hero-sub{font-size:clamp(.96rem,1.2vw,1.08rem);line-height:1.58}
.route-page-hero .network-visual{width:100%;max-height:min(58vh,520px)}
.route-page-hero .network-visual img{height:min(58vh,520px);min-height:350px}

/* Legal-page heroes use the same header clearance without oversized whitespace. */
.legal-hero{
  min-height:min(52svh,500px);
  padding:clamp(118px,15vh,160px) 0 clamp(48px,8vh,76px);
  display:flex;
  align-items:center;
}
.legal-hero h1{font-size:clamp(2.7rem,5vw,4.8rem);overflow-wrap:anywhere}

/* Laptop and short-screen QA: compress safely, never scale the whole layout. */
@media (min-width:1001px) and (max-height:820px){
  .page-hero,.route-page-hero{padding-top:96px;padding-bottom:28px;min-height:100svh}
  .page-hero-grid,.route-page-grid{gap:38px}
  .page-hero h1,.route-page-hero h1{font-size:clamp(2.45rem,4vw,4.15rem);margin-bottom:12px}
  .page-hero .hero-sub,.route-page-hero .hero-sub{font-size:.92rem;line-height:1.48}
  .page-hero .hero-actions,.route-page-hero .hero-actions{margin-top:16px}
  .page-hero .hero-graphic{height:min(49vh,390px)}
  .page-hero .hero-logo{width:175px;height:175px}
  .page-hero .hero-logo img{width:76px;height:54px}
  .page-hero .data-chip{font-size:.62rem;padding:8px 10px;max-width:145px}
  .route-page-hero .network-visual,.route-page-hero .network-visual img{height:min(50vh,400px);min-height:310px}
}

/* Tablet: stack, center, and keep graphics compact. */
@media (max-width:1000px){
  .page-hero,.route-page-hero{
    min-height:auto;
    padding:118px 0 62px;
    display:block;
  }
  .page-hero-grid,.route-page-grid{
    grid-template-columns:1fr;
    gap:34px;
  }
  .page-hero-grid>div:first-child,.route-page-grid>div:first-child{max-width:760px}
  .page-hero h1,.route-page-hero h1{font-size:clamp(2.7rem,7.3vw,4.4rem)}
  .page-hero .hero-graphic{height:390px;max-width:680px;margin-inline:auto}
  .page-hero .signal-ring{width:370px;height:370px}
  .page-hero .signal-ring.r2{width:270px;height:270px}
  .route-page-hero .network-visual{max-width:760px;margin-inline:auto;max-height:none}
  .route-page-hero .network-visual img{height:430px;min-height:0}
}

/* Mobile: compact hero content so the first section fits typical phone screens. */
@media (max-width:620px){
  .page-hero,.route-page-hero{
    padding:96px 0 34px;
    min-height:100svh;
    display:flex;
    align-items:center;
  }
  .page-hero-grid,.route-page-grid{gap:18px}
  .page-hero h1,.route-page-hero h1{
    font-size:clamp(2.15rem,10.4vw,3rem);
    line-height:1.02;
    letter-spacing:-.045em;
    margin-bottom:12px;
  }
  .page-hero .eyebrow,.route-page-hero .eyebrow{font-size:.6rem;letter-spacing:.11em;margin-bottom:12px}
  .page-hero .hero-sub,.route-page-hero .hero-sub{font-size:.86rem;line-height:1.45;margin-bottom:0}
  .page-hero .hero-actions,.route-page-hero .hero-actions{margin-top:14px;gap:9px}
  .page-hero .hero-actions .button,.route-page-hero .hero-actions .button{padding:11px 14px;font-size:.82rem}
  .page-hero .hero-graphic{height:205px;max-height:205px;margin-top:0}
  .page-hero .signal-ring{width:205px;height:205px}
  .page-hero .signal-ring.r2{width:145px;height:145px}
  .page-hero .hero-logo{width:120px;height:120px;border-width:4px}
  .page-hero .hero-logo img{width:53px;height:38px;margin:0}
  .page-hero .hero-logo b{font-size:.68rem}
  .page-hero .hero-logo span{display:none}
  .page-hero .data-chip{font-size:.52rem;line-height:1.25;padding:6px 8px;max-width:102px;border-radius:8px}
  .page-hero .c1{top:8px;left:0}.page-hero .c2{top:18px;right:0}
  .page-hero .c3{bottom:10px;left:0}.page-hero .c4{bottom:18px;right:0}
  .route-page-hero .network-visual{border-radius:18px}
  .route-page-hero .network-visual img{height:205px;min-height:0}
  .route-page-hero .network-metric{padding:7px 9px;font-size:.65rem}
  .route-page-hero .network-metric span{font-size:.5rem}
  .route-page-hero .nm1{left:10px;top:10px}.route-page-hero .nm2{right:10px;top:10px}.route-page-hero .nm3{right:10px;bottom:10px}
}

/* Very small and landscape phones: prioritize readable content over decoration. */
@media (max-width:420px), (max-height:560px) and (max-width:900px){
  .page-hero,.route-page-hero{min-height:auto;padding-top:88px}
  .page-hero .hero-graphic{height:170px;max-height:170px}
  .page-hero .signal-ring{width:170px;height:170px}.page-hero .signal-ring.r2{width:120px;height:120px}
  .page-hero .hero-logo{width:102px;height:102px}
  .route-page-hero .network-visual img{height:175px}
}


/* ===== FINAL RESPONSIVE LAYOUT QA — 2026-07-31 ===== */
:root{--site-gutter:clamp(24px,5vw,84px);--hero-gutter:clamp(28px,6vw,104px)}
.container{width:min(1320px,calc(100% - (var(--site-gutter) * 2)));margin-inline:auto}
.nav-wrap{width:min(1440px,calc(100% - (var(--site-gutter) * 2)))}

/* Every internal hero gets deliberate breathing room on every side. */
.page-hero>.container,.route-page-hero>.container,.legal-hero>.container{
  width:min(1280px,calc(100% - (var(--hero-gutter) * 2)));
  margin-inline:auto;
}
.page-hero,.route-page-hero{padding-inline:0}
.page-hero-grid,.route-page-grid{max-width:1280px;margin-inline:auto}
.page-hero-grid>div:first-child,.route-page-grid>div:first-child{padding-inline:0}

/* Home hero — approved dark command-center direction. */
.home-hero{min-height:100svh;padding:92px 0 28px;display:flex;align-items:center;overflow:hidden}
.home-hero>.home-hero-bg{background-position:center center}
.home-hero-inner{width:min(1450px,calc(100% - (clamp(28px,4vw,68px) * 2)));grid-template-columns:minmax(440px,.83fr) minmax(600px,1.17fr);gap:clamp(30px,3.4vw,58px);align-items:center}
.home-hero h1{font-size:clamp(3.25rem,4.75vw,5.35rem);line-height:1.02}
.home-hero-copy>p{max-width:590px}
.command-window{width:100%;max-width:none}
.hero-action-rail{position:absolute;right:clamp(14px,2vw,34px);top:50%;transform:translateY(-44%);z-index:6;display:flex;flex-direction:column;gap:8px}
.hero-action-rail a{width:72px;min-height:74px;border-radius:34px;background:rgba(4,20,46,.84);border:1px solid rgba(255,255,255,.13);color:#fff;text-decoration:none;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;backdrop-filter:blur(12px);box-shadow:0 15px 35px rgba(0,0,0,.24)}
.hero-action-rail a:first-child{background:linear-gradient(160deg,#128be4,#0648c8)}
.hero-action-rail b{font-size:1rem}.hero-action-rail span{font-size:.57rem;line-height:1.2;margin-top:4px}

/* Approved second section: light floating panel with clean image and four operating gaps. */
.operating-gap-section{background:#06152e;padding:0 0 38px}
.operating-gap-panel{background:linear-gradient(135deg,#fff,#edf5ff);border:1px solid rgba(255,255,255,.52);border-radius:26px;padding:20px;display:grid;grid-template-columns:minmax(320px,.88fr) minmax(300px,.62fr) minmax(580px,1.5fr);gap:28px;align-items:center;box-shadow:0 28px 75px rgba(0,8,28,.35)}
.operating-gap-image{height:230px;border-radius:18px;overflow:hidden}
.operating-gap-image img{width:100%;height:100%;object-fit:cover;object-position:center 67%;display:block}
.operating-gap-copy .eyebrow{margin-bottom:12px}.operating-gap-copy h2{font-size:clamp(2rem,2.5vw,3rem);margin-bottom:12px}.operating-gap-copy p{font-size:.9rem;color:var(--muted);margin:0}
.gap-reasons{display:grid;grid-template-columns:repeat(4,1fr);align-items:start}
.gap-reasons article{min-width:0;text-align:center;padding:8px 15px;border-left:1px solid var(--line)}
.gap-reasons article:first-child{border-left:0}
.gap-reasons b{font-size:.74rem;display:block;margin:10px 0 5px}.gap-reasons p{font-size:.68rem;line-height:1.55;color:var(--muted);margin:0}
.gap-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;margin:auto;font-weight:900}.gap-icon.red{background:#ffe2e8;color:#f14363}.gap-icon.orange{background:#fff0df;color:#ff7a1a}.gap-icon.blue{background:#e1edff;color:#196fe7}.gap-icon.purple{background:#eee3ff;color:#7c3fe4}

@media(max-width:1250px){
 .home-hero-inner{grid-template-columns:minmax(370px,.9fr) minmax(520px,1.1fr)}
 .home-hero h1{font-size:clamp(3rem,4.5vw,4.65rem)}
 .hero-action-rail{display:none}
 .operating-gap-panel{grid-template-columns:.85fr .75fr 1.4fr;gap:18px}
 .gap-reasons article{padding-inline:9px}
}
@media(max-width:1000px){
 :root{--site-gutter:32px;--hero-gutter:40px}
 .home-hero{min-height:auto;padding:110px 0 48px}
 .home-hero-inner{grid-template-columns:1fr;width:min(880px,calc(100% - 64px))}
 .command-window{max-width:880px}
 .operating-gap-section{padding:26px 0 46px}
 .operating-gap-panel{grid-template-columns:1fr 1fr;padding:24px}
 .operating-gap-image{height:270px}.gap-reasons{grid-column:1/-1}
 .page-hero>.container,.route-page-hero>.container,.legal-hero>.container{width:calc(100% - 80px)}
}
@media(max-width:720px){
 :root{--site-gutter:20px;--hero-gutter:22px}
 .container,.nav-wrap{width:calc(100% - 40px)}
 .page-hero>.container,.route-page-hero>.container,.legal-hero>.container{width:calc(100% - 44px)}
 .page-hero,.route-page-hero{padding-top:104px;padding-bottom:42px;min-height:auto;align-items:flex-start}
 .page-hero-grid,.route-page-grid{width:100%;gap:24px}
 .home-hero-inner{width:calc(100% - 36px)}
 .home-hero h1{font-size:clamp(2.55rem,11vw,3.6rem)}
 .command-window{padding:13px}.command-kpis{grid-template-columns:1fr 1fr}.command-kpis>div:nth-child(2){border-right:0}.command-kpis>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.09)}
 .operating-gap-panel{grid-template-columns:1fr;border-radius:20px;padding:16px}
 .operating-gap-image{height:220px}.gap-reasons{grid-template-columns:1fr 1fr}.gap-reasons article:nth-child(odd){border-left:0}.gap-reasons article{border-top:1px solid var(--line);padding:18px 10px}
}
@media(max-width:460px){
 .container,.nav-wrap{width:calc(100% - 28px)}
 .page-hero>.container,.route-page-hero>.container,.legal-hero>.container{width:calc(100% - 32px)}
 .home-hero-inner{width:calc(100% - 28px)}
 .home-hero{padding-top:96px}
 .home-hero h1{font-size:clamp(2.2rem,10.8vw,3rem)}
 .hero-statbar{grid-template-columns:1fr 1fr}
 .command-window{overflow:hidden}.agent-feed p{grid-template-columns:34px 1fr}.agent-feed p b{display:none}
 .operating-gap-image{height:190px}.operating-gap-copy h2{font-size:2rem}.gap-reasons{grid-template-columns:1fr}.gap-reasons article{border-left:0}
}


/* ===== 2026 DISTINCT HERO SYSTEM + APPROVED HOME COMPOSITION ===== */
.material-symbols-rounded{font-family:'Material Symbols Rounded';font-weight:normal;font-style:normal;font-size:1.35em;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:'liga';-webkit-font-smoothing:antialiased}
.home-hero{min-height:100svh;padding:92px 0 18px;display:flex;align-items:center;position:relative;overflow:hidden}
.home-hero-bg{background:linear-gradient(90deg,rgba(2,13,34,.97) 0%,rgba(2,21,49,.86) 35%,rgba(3,22,49,.32) 66%,rgba(2,13,31,.36) 100%),linear-gradient(180deg,rgba(1,8,22,.04),rgba(1,12,31,.64)),url('assets/visuals/route-network-clean.jpg') center/cover no-repeat!important}
.home-hero-inner{position:relative;display:grid;grid-template-columns:.79fr 1.21fr;gap:34px;align-items:center;width:100%;padding-right:82px}
.home-hero-copy{align-self:center;padding-bottom:94px}.home-hero h1{font-size:clamp(3rem,4.4vw,5.25rem);line-height:1.015;margin:14px 0 20px}.home-hero-copy>p{max-width:560px;font-size:clamp(.92rem,1.05vw,1.08rem);line-height:1.55;color:rgba(255,255,255,.84)}
.hero-kicker{display:inline-flex;max-width:100%;padding:8px 14px;border:1px solid rgba(108,198,240,.33);border-radius:999px;background:rgba(2,23,52,.72);box-shadow:0 0 24px rgba(25,139,211,.16);font-size:.67rem;letter-spacing:.13em;font-weight:800;color:#d8f5ff}
.command-window{width:100%;max-width:720px;margin-left:auto;transform:none}
.hero-statbar-centered{position:absolute!important;left:50%!important;bottom:14px!important;transform:translateX(-50%)!important;width:min(760px,60vw)!important;margin:0!important;z-index:8;grid-template-columns:repeat(4,1fr)!important;background:rgba(3,26,58,.86)!important;backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.15);box-shadow:0 18px 55px rgba(0,0,0,.28)}
.hero-statbar-centered>div{display:grid!important;grid-template-columns:38px 1fr!important;grid-template-rows:auto auto!important;column-gap:10px;align-items:center;padding:12px 16px!important}.hero-statbar-centered .stat-icon{grid-row:1/3;width:36px;height:36px;border:1px solid rgba(255,255,255,.16);border-radius:10px;display:grid;place-items:center;font-size:20px;color:#dff7ff}.hero-statbar-centered b{font-size:1rem!important}.hero-statbar-centered small{font-size:.61rem!important}
.hero-security-badge{position:absolute!important;right:86px!important;bottom:20px!important;display:flex!important;align-items:center;gap:7px;color:#fff;background:rgba(3,26,58,.78);border:1px solid rgba(255,255,255,.16);border-radius:12px;padding:11px 15px;z-index:8}.hero-security-badge .material-symbols-rounded{color:#3de079;font-size:22px}
.operating-gap-section{padding:0;background:#06142d}.operating-gap-edge{width:calc(100% - 32px);margin:0 16px 16px;max-width:none;border-radius:24px;padding:18px 24px;display:grid;grid-template-columns:minmax(280px,.85fr) minmax(280px,.58fr) minmax(520px,1.57fr);align-items:center;gap:24px;background:#f7faff;box-shadow:0 22px 70px rgba(0,15,45,.22)}.operating-gap-image{height:215px}.operating-gap-image img{width:100%;height:100%;object-fit:cover;border-radius:16px}.operating-gap-copy h2{font-size:clamp(1.7rem,2.3vw,2.65rem);margin-bottom:10px}.operating-gap-copy p{font-size:.87rem}.gap-reasons{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.gap-reasons article{padding:8px 16px;text-align:center;border-left:1px solid #dce6f2}.gap-reasons article:first-child{border-left:0}.gap-reasons b{font-size:.74rem}.gap-reasons p{font-size:.66rem;line-height:1.55}.gap-icon{margin-inline:auto}
/* Distinct internal-page hero visuals */
.hero-visual-unique{height:min(58vh,520px);min-height:410px;border:1px solid rgba(255,255,255,.16);border-radius:26px;background:linear-gradient(145deg,rgba(5,29,65,.92),rgba(8,63,112,.72));box-shadow:0 35px 90px rgba(0,0,0,.3);padding:18px;overflow:hidden;position:relative}.hero-visual-top{display:flex;justify-content:space-between;align-items:center;padding:3px 3px 14px;border-bottom:1px solid rgba(255,255,255,.12);font-size:.72rem}.visual-live{font-weight:800}.visual-live i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#3ddb7f;box-shadow:0 0 0 5px rgba(61,219,127,.12);margin-right:8px}.visual-status{font-size:.58rem;letter-spacing:.12em;color:#8cddfa}.hero-visual-stage{height:62%;position:relative;overflow:hidden;border-radius:16px;margin:14px 0;background:radial-gradient(circle at center,rgba(22,146,219,.20),transparent 45%),#061a3a}.visual-gridlines{position:absolute;inset:0;background-image:linear-gradient(rgba(117,182,224,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(117,182,224,.09) 1px,transparent 1px);background-size:29px 29px}.visual-orbit{position:absolute;border:1px solid rgba(67,199,241,.23);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.orbit-a{width:310px;height:310px}.orbit-b{width:210px;height:210px}.visual-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:170px;height:170px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:linear-gradient(145deg,#0c4d91,#12a0d6);box-shadow:0 0 55px rgba(29,168,222,.35);border:5px solid rgba(255,255,255,.10);z-index:3}.visual-core .material-symbols-rounded{font-size:44px;color:#fff;margin-bottom:8px}.visual-core b{font-size:.86rem;max-width:130px}.visual-core small{font-size:.55rem;color:rgba(255,255,255,.68)}.visual-route{position:absolute;height:3px;border-radius:4px;box-shadow:0 0 12px currentColor}.vr1{width:52%;left:4%;top:34%;background:#21a8ff;color:#21a8ff;transform:rotate(-16deg)}.vr2{width:48%;right:4%;bottom:28%;background:#42da85;color:#42da85;transform:rotate(20deg)}.hero-vcards{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.hero-vcard{min-width:0;padding:10px;border:1px solid rgba(255,255,255,.12);border-radius:11px;background:rgba(255,255,255,.045)}.hero-vcard span,.hero-vcard b{display:block}.hero-vcard span{font-size:.55rem;color:rgba(255,255,255,.62);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hero-vcard b{font-size:.76rem;color:#dff7ff;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hero-agents .hero-vcards{grid-template-columns:repeat(3,1fr)}.hero-security .visual-core{background:linear-gradient(145deg,#0b5b53,#22a56b)}.hero-finance .visual-core{background:linear-gradient(145deg,#68460c,#d19b25)}.hero-safety .visual-core{background:linear-gradient(145deg,#62255c,#a84497)}.hero-maintenance .visual-core{background:linear-gradient(145deg,#23436e,#3376b4)}.hero-fuel .visual-core{background:linear-gradient(145deg,#65410e,#d47e20)}.hero-government .visual-core,.hero-terms .visual-core{background:linear-gradient(145deg,#343a63,#666eb5)}
@media(max-width:1180px){.home-hero-inner{padding-right:0;grid-template-columns:.9fr 1.1fr}.hero-action-rail{display:none}.hero-security-badge{right:22px!important}.operating-gap-edge{grid-template-columns:1fr 1fr}.gap-reasons{grid-column:1/-1}.operating-gap-image{height:230px}}
@media(max-width:900px){.home-hero{height:auto;min-height:100svh;padding:112px 0 28px}.home-hero-inner{grid-template-columns:1fr;gap:28px}.home-hero-copy{padding-bottom:0}.command-window{max-width:760px;margin:auto}.hero-statbar-centered{position:relative!important;left:auto!important;bottom:auto!important;transform:none!important;width:100%!important;margin-top:4px!important;grid-column:1/-1}.hero-security-badge{position:relative!important;right:auto!important;bottom:auto!important;grid-column:1/-1;justify-self:end}.operating-gap-edge{width:calc(100% - 24px);margin:0 12px 12px;grid-template-columns:1fr}.gap-reasons{grid-template-columns:repeat(2,1fr)}.gap-reasons article:nth-child(odd){border-left:0}.hero-visual-unique{height:460px;min-height:0;max-width:720px;margin-inline:auto}.page-hero-grid{gap:36px}}
@media(max-width:620px){.home-hero{padding-top:96px}.home-hero h1{font-size:clamp(2.55rem,12vw,3.75rem)}.hero-statbar-centered{grid-template-columns:1fr 1fr!important}.hero-statbar-centered>div{border-bottom:1px solid rgba(255,255,255,.1)}.hero-security-badge{justify-self:stretch;justify-content:center}.operating-gap-edge{padding:14px;gap:16px;border-radius:18px}.operating-gap-image{height:190px}.gap-reasons{grid-template-columns:1fr 1fr}.gap-reasons article{padding:10px 8px}.hero-visual-unique{height:390px;padding:13px}.hero-visual-stage{height:59%}.visual-core{width:130px;height:130px}.visual-core .material-symbols-rounded{font-size:34px}.orbit-a{width:250px;height:250px}.orbit-b{width:175px;height:175px}.hero-vcards{grid-template-columns:1fr 1fr}.hero-agents .hero-vcards{grid-template-columns:1fr 1fr}.hero-vcard{padding:8px}.page-hero,.route-page-hero{height:auto!important;min-height:100svh!important;padding:112px 0 48px!important}.page-hero-grid,.route-page-grid{height:auto!important;min-height:0!important}.page-hero-grid>div:first-child,.route-page-grid>div:first-child{padding-inline:0}}

/* === APPROVED HOME HERO + RESPONSIVE PAGE VISUAL QA === */
.home-hero{position:relative;padding:0!important;min-height:0!important;background:#031226!important;overflow:hidden}
.approved-hero-desktop{position:relative;width:100%;margin:0 auto;background:#031226}
.approved-hero-desktop>img{display:block;width:100%;height:auto;max-height:calc(100svh - 2px);object-fit:contain;object-position:center top;background:#031226}
.hero-hotspot{position:absolute;display:block;border-radius:12px;z-index:5}
.hotspot-demo{left:2.7%;top:46.2%;width:14.8%;height:5.4%}.hotspot-platform{left:18.2%;top:46.2%;width:12.2%;height:5.4%}.hotspot-command{left:41.8%;top:8.8%;width:47%;height:59%}.hotspot-agents{left:25%;top:67%;width:16%;height:6%}
.home-mobile-layout{display:none!important}
.approved-gap-section{padding:0!important;background:#04172f;overflow:hidden}
.approved-gap-desktop{width:100%;padding:0 1.8% 1.4%;background:#04172f}
.approved-gap-desktop img{display:block;width:100%;height:auto;border-radius:0 0 20px 20px}
.gap-mobile-layout{display:none!important}

/* generous, consistent page gutters */
.page-hero>.container,.route-page-hero>.container{width:min(1320px,calc(100% - clamp(48px,8vw,144px)))!important;margin-inline:auto!important}
.page-hero-grid,.route-page-grid{gap:clamp(44px,6vw,88px)!important}
.page-hero-grid>*,.route-page-grid>*{min-width:0}

/* Purpose-specific cinematic hero graphics */
.hero-visual-unique{isolation:isolate;background:#061a38!important;border-color:rgba(116,205,246,.22)!important}
.hero-visual-unique:before{content:"";position:absolute;inset:0;z-index:-3;background-size:cover;background-position:center;opacity:.52;filter:saturate(1.08) contrast(1.04)}
.hero-visual-unique:after{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,rgba(2,16,39,.18),rgba(2,18,42,.88) 76%),linear-gradient(90deg,rgba(2,17,40,.5),transparent 58%)}
.hero-fleet:before,.hero-dispatch:before,.hero-logistics:before,.hero-fmcg:before,.hero-corporate:before{background-image:url('assets/visuals/operations-tablet.jpg')}
.hero-maintenance:before,.hero-fuel:before,.hero-rental:before,.hero-manufacturing:before{background-image:url('assets/visuals/ai-truck.jpg')}
.hero-brain:before,.hero-agents:before,.hero-industries:before,.hero-logistics:before{background-image:url('assets/visuals/route-network-clean.jpg')}
.hero-security:before,.hero-integrations:before,.hero-deployment:before,.hero-layers:before,.hero-engineering:before,.hero-government:before{background-image:url('assets/visuals/enterprise-platform-concept.jpg')}
.hero-finance:before,.hero-faq:before,.hero-contact:before{background-image:url('assets/visuals/route-network.jpg')}
.hero-visual-top,.hero-vcards{position:relative;z-index:3}
.hero-visual-stage{position:relative;z-index:2;background:rgba(2,19,45,.34)!important;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(3px)}
.hero-visual-stage .visual-gridlines{opacity:.5}
.visual-core{box-shadow:0 18px 55px rgba(0,0,0,.38),0 0 0 1px rgba(111,218,255,.2),0 0 42px rgba(24,156,223,.24)!important;backdrop-filter:blur(10px)}
.hero-vcard{background:rgba(2,24,53,.72)!important;backdrop-filter:blur(10px);border-color:rgba(127,214,250,.2)!important}
.hero-visual-unique[data-page-visual="ai-agents"] .hero-visual-stage:after{content:"6 AGENTS • ADVISORY → AUTOMATION";position:absolute;left:50%;bottom:12px;transform:translateX(-50%);white-space:nowrap;padding:8px 13px;border-radius:999px;background:rgba(3,31,64,.78);border:1px solid rgba(82,222,156,.35);color:#9ff0c4;font-size:.62rem;font-weight:800;letter-spacing:.08em}
.hero-visual-unique[data-page-visual="security"] .hero-visual-stage:after{content:"SIGNED SIGNALS • TAMPER-EVIDENT RECORDS";position:absolute;left:50%;bottom:12px;transform:translateX(-50%);white-space:nowrap;padding:8px 13px;border-radius:999px;background:rgba(3,31,64,.8);border:1px solid rgba(82,222,156,.35);color:#a9f0ca;font-size:.6rem;font-weight:800}

@media(max-width:900px){
 .approved-hero-desktop{display:none}.home-mobile-layout{display:grid!important;padding:126px 0 54px}
 .approved-gap-desktop{display:none}.gap-mobile-layout{display:grid!important;margin:0 14px 40px!important}
 .page-hero>.container,.route-page-hero>.container{width:min(100% - 32px,760px)!important}
 .page-hero{padding-top:124px!important;padding-bottom:56px!important}
 .page-hero-grid,.route-page-grid{gap:30px!important}
 .hero-visual-unique{width:100%;max-width:100%!important}
}
@media(max-width:600px){
 .page-hero>.container,.route-page-hero>.container{width:calc(100% - 24px)!important}
 .page-hero{padding-top:110px!important;padding-bottom:42px!important}
 .home-mobile-layout{padding:112px 0 38px}
 .gap-mobile-layout{margin-inline:10px!important;border-radius:18px!important}
 .hero-visual-unique{height:350px!important;border-radius:20px!important}
 .hero-vcards{gap:6px!important}.hero-vcard span{font-size:.5rem!important}.hero-vcard b{font-size:.68rem!important}
}
@media(min-width:901px) and (max-height:820px){
 .approved-hero-desktop>img{height:100svh;width:100%;object-fit:contain}
 .page-hero{padding-top:112px!important;padding-bottom:36px!important}
 .page-hero-grid{min-height:calc(100svh - 148px)!important}
 .hero-visual-unique{height:min(52vh,430px)!important;min-height:360px!important}
}


/* ===== 2026 final visual and responsive correction ===== */
body{overflow-x:hidden}
.home-hero{position:relative!important;min-height:100svh!important;height:auto!important;padding:clamp(104px,11vh,136px) 0 clamp(24px,4vh,48px)!important;background:#031126 url('assets/visuals/home-hero-network.jpg') center/cover no-repeat!important;overflow:hidden!important}
.home-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,13,34,.96) 0%,rgba(2,16,40,.78) 39%,rgba(2,18,43,.38) 68%,rgba(2,15,37,.55) 100%),linear-gradient(180deg,rgba(1,10,27,.22),rgba(1,10,27,.72));z-index:0;pointer-events:none}
.home-hero-bg,.approved-hero-desktop{display:none!important}
.home-live-layout{position:relative;z-index:2;display:grid!important;grid-template-columns:minmax(0,.84fr) minmax(540px,1.16fr);gap:clamp(28px,4vw,62px);align-items:center;width:min(1500px,calc(100% - clamp(40px,6vw,112px)))!important;margin-inline:auto!important}
.home-hero-copy{padding:0!important;align-self:center}
.home-hero h1{font-size:clamp(3.15rem,5.45vw,6.2rem)!important;max-width:760px;margin-bottom:22px!important}
.home-hero .hero-sub{max-width:610px;font-size:clamp(.97rem,1.05vw,1.14rem)}
.hero-kicker{display:inline-flex!important;max-width:100%;padding:9px 15px!important;border-radius:999px!important;background:rgba(2,22,52,.72)!important;border:1px solid rgba(84,187,236,.3)!important;box-shadow:0 0 24px rgba(42,159,226,.12);font-size:clamp(.61rem,.7vw,.76rem)!important;letter-spacing:.12em!important;white-space:normal!important}
.command-window{width:100%;max-width:800px;margin-left:auto;background:rgba(3,24,52,.91)!important;backdrop-filter:blur(15px);border-color:rgba(121,206,246,.22)!important;box-shadow:0 34px 90px rgba(0,0,0,.42)!important}
.hero-statbar-centered{position:relative!important;grid-column:1/-1!important;left:auto!important;bottom:auto!important;transform:none!important;width:min(980px,78%)!important;margin:clamp(16px,2.3vh,28px) auto 0!important;z-index:5;display:grid!important;grid-template-columns:repeat(4,1fr)!important;background:rgba(3,27,58,.87)!important;backdrop-filter:blur(14px)}
.hero-security-badge{position:relative!important;grid-column:1/-1!important;right:auto!important;bottom:auto!important;justify-self:end!important;margin-top:-65px!important;margin-right:0!important;z-index:6;background:rgba(3,25,53,.9)!important}
.hero-action-rail{right:clamp(12px,1.5vw,28px)!important}
.operating-gap-section{padding:clamp(12px,2vw,28px)!important;background:#06172f!important}
.operating-gap-panel.operating-gap-edge{width:calc(100% - clamp(24px,3.2vw,56px))!important;max-width:none!important;margin:0 auto!important;border-radius:26px!important;padding:clamp(16px,2.2vw,30px)!important;grid-template-columns:minmax(260px,.82fr) minmax(290px,.62fr) minmax(500px,1.5fr)!important;gap:clamp(20px,2.5vw,42px)!important}
.operating-gap-image{height:clamp(250px,25vw,375px)!important;border-radius:18px!important;overflow:hidden}
.operating-gap-image img{width:100%;height:100%;object-fit:cover;object-position:center 58%}
.operating-gap-copy h2{font-size:clamp(2rem,2.65vw,3.35rem)!important}

/* Internal hero: clean, simple, page-specific information graphic */
.page-hero,.route-page-hero{min-height:100svh!important;height:auto!important;padding:clamp(112px,13vh,148px) 0 clamp(48px,7vh,78px)!important;display:flex;align-items:center}
.page-hero>.container,.route-page-hero>.container{width:min(1360px,calc(100% - clamp(40px,7vw,128px)))!important;margin-inline:auto!important}
.page-hero-grid,.route-page-grid{grid-template-columns:minmax(0,.92fr) minmax(430px,1.08fr)!important;gap:clamp(42px,6vw,92px)!important;align-items:center!important}
.page-hero-grid>div:first-child,.route-page-grid>div:first-child{padding-inline:0!important}
.hero-trust-chips{display:flex;flex-wrap:wrap;gap:9px;margin:24px 0 26px}
.hero-trust-chips span{display:inline-flex;align-items:center;gap:6px;padding:8px 11px;border:1px solid rgba(115,207,247,.2);border-radius:999px;background:rgba(255,255,255,.055);font-size:.72rem;font-weight:700;color:#c8eefe}
.hero-trust-chips i{font-style:normal;font-size:17px;color:#59d798}
.hero-visual-unique.simple-topic-visual{height:clamp(400px,49vh,520px)!important;min-height:400px!important;padding:18px!important;border-radius:24px!important;background:linear-gradient(145deg,#071c3a,#0b3868)!important;box-shadow:0 32px 85px rgba(0,0,0,.32)!important}
.hero-visual-unique.simple-topic-visual:before{opacity:.12!important;filter:blur(1px) saturate(.65)!important}
.hero-visual-unique.simple-topic-visual:after{background:linear-gradient(145deg,rgba(3,19,44,.3),rgba(3,23,50,.86))!important}
.simple-topic-visual .hero-visual-top{position:relative;z-index:4;padding:5px 5px 15px!important}
.simple-topic-visual .hero-visual-stage{height:64%!important;margin:14px 0 12px!important;background:linear-gradient(145deg,rgba(7,31,66,.92),rgba(8,57,97,.72))!important;border:1px solid rgba(113,207,248,.17)!important;box-shadow:inset 0 0 50px rgba(19,132,204,.08)}
.simple-topic-visual .visual-gridlines{opacity:.32!important;background-size:34px 34px!important}
.simple-topic-visual .visual-orbit{display:none!important}
.simple-topic-visual .visual-core{width:176px!important;height:176px!important;background:linear-gradient(145deg,#0d4b8b,#159cca)!important;box-shadow:0 0 0 18px rgba(38,164,221,.07),0 0 55px rgba(30,168,222,.32)!important}
.simple-topic-visual .visual-core .material-symbols-rounded{font-size:48px!important}
.simple-topic-visual .visual-route{height:2px!important;opacity:.82}
.simple-topic-visual .vr1{width:45%!important;left:3%!important;top:31%!important}.simple-topic-visual .vr2{width:45%!important;right:3%!important;bottom:30%!important}
.simple-topic-visual .hero-vcards{position:relative;z-index:4;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}
.simple-topic-visual .hero-vcard{padding:10px!important;background:rgba(3,26,55,.83)!important}
.topic-foundation-ribbon{position:absolute;left:50%;bottom:7px;transform:translateX(-50%);z-index:5;width:max-content;max-width:calc(100% - 30px);padding:7px 12px;border-radius:999px;border:1px solid rgba(80,221,151,.25);background:rgba(2,22,47,.86);color:#a8edca;font-size:.58rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
/* Visual accent by topic, still clean and consistent */
.hero-security .visual-core{background:linear-gradient(145deg,#0a574f,#21a56c)!important}.hero-finance .visual-core{background:linear-gradient(145deg,#74500d,#d4a233)!important}.hero-safety .visual-core{background:linear-gradient(145deg,#64265f,#aa4ba0)!important}.hero-maintenance .visual-core{background:linear-gradient(145deg,#29446d,#3f79b8)!important}.hero-fuel .visual-core{background:linear-gradient(145deg,#714310,#dc8127)!important}.hero-agents .visual-core,.hero-brain .visual-core{background:linear-gradient(145deg,#173e86,#735fd5)!important}.hero-integrations .visual-core,.hero-layers .visual-core{background:linear-gradient(145deg,#075786,#13a3b8)!important}

@media(max-width:1180px){
 .home-live-layout{grid-template-columns:minmax(0,.9fr) minmax(500px,1.1fr);width:min(100% - 48px,1240px)!important;gap:30px}
 .home-hero h1{font-size:clamp(3rem,5vw,4.8rem)!important}.command-window{transform:scale(.95);transform-origin:right center}
 .hero-statbar-centered{width:88%!important}.operating-gap-panel.operating-gap-edge{grid-template-columns:1fr 1fr!important}.gap-reasons{grid-column:1/-1!important}.operating-gap-image{height:270px!important}
 .page-hero-grid,.route-page-grid{grid-template-columns:minmax(0,.9fr) minmax(390px,1.1fr)!important;gap:42px!important}
}
@media(max-width:900px){
 .home-hero{min-height:auto!important;padding:112px 0 34px!important}.home-live-layout{grid-template-columns:1fr!important;width:min(100% - 32px,760px)!important}.home-hero-copy{text-align:left}.command-window{transform:none!important;margin:0 auto!important}.hero-statbar-centered{width:100%!important;margin-top:10px!important}.hero-security-badge{margin:10px 0 0!important;justify-self:center!important}.hero-action-rail{display:none!important}
 .operating-gap-panel.operating-gap-edge{width:calc(100% - 24px)!important;grid-template-columns:1fr!important}.gap-reasons{grid-template-columns:repeat(2,1fr)!important}
 .page-hero,.route-page-hero{min-height:auto!important;padding:116px 0 56px!important}.page-hero>.container,.route-page-hero>.container{width:min(100% - 36px,760px)!important}.page-hero-grid,.route-page-grid{grid-template-columns:1fr!important;gap:32px!important}.hero-visual-unique.simple-topic-visual{height:430px!important;min-height:0!important;width:100%!important}
}
@media(max-width:620px){
 .home-live-layout{width:calc(100% - 24px)!important}.home-hero h1{font-size:clamp(2.55rem,11vw,3.7rem)!important}.hero-actions{flex-direction:column!important}.hero-actions .button{width:100%!important}.hero-statbar-centered{grid-template-columns:1fr 1fr!important}.hero-statbar-centered>div{min-height:78px}.command-window{padding:12px!important}.command-kpis{grid-template-columns:1fr 1fr!important}.command-grid{grid-template-columns:1fr!important}.command-map{min-height:210px}.command-agent-feed{display:none}
 .operating-gap-panel.operating-gap-edge{padding:14px!important}.operating-gap-image{height:210px!important}.gap-reasons{grid-template-columns:1fr 1fr!important}.gap-reasons article{padding:10px 7px!important}
 .page-hero>.container,.route-page-hero>.container{width:calc(100% - 24px)!important}.hero-visual-unique.simple-topic-visual{height:370px!important;padding:12px!important}.simple-topic-visual .hero-visual-stage{height:58%!important}.simple-topic-visual .visual-core{width:126px!important;height:126px!important}.simple-topic-visual .visual-core .material-symbols-rounded{font-size:34px!important}.simple-topic-visual .hero-vcards{grid-template-columns:1fr 1fr!important}.topic-foundation-ribbon{font-size:.47rem!important;letter-spacing:.04em!important}
}
@media(max-height:780px) and (min-width:901px){
 .home-hero{padding-top:96px!important;padding-bottom:18px!important}.home-hero h1{font-size:clamp(2.8rem,4.5vw,4.6rem)!important}.home-hero .hero-sub{font-size:.94rem!important;margin-bottom:16px!important}.home-hero .hero-actions{margin:22px 0!important}.command-window{transform:scale(.88);transform-origin:right center}.hero-statbar-centered{margin-top:-20px!important}.hero-security-badge{margin-top:-60px!important}
 .page-hero,.route-page-hero{padding-top:104px!important;padding-bottom:34px!important}.hero-visual-unique.simple-topic-visual{height:390px!important;min-height:360px!important}
}

/* ===== HOME HERO FINAL RESPONSIVE REBUILD ===== */
.home-hero{
  position:relative!important;
  min-height:100svh!important;
  height:100svh!important;
  padding:clamp(88px,10vh,112px) 0 clamp(14px,2vh,24px)!important;
  display:flex!important;
  align-items:stretch!important;
  overflow:hidden!important;
  background:#031126 url('assets/visuals/home-hero-connected-fleet.jpg') center center/cover no-repeat!important;
}
.home-hero::before{
  content:""!important;position:absolute!important;inset:0!important;z-index:0!important;pointer-events:none!important;
  background:
    linear-gradient(90deg,rgba(1,10,27,.97) 0%,rgba(1,14,35,.88) 32%,rgba(1,17,42,.58) 57%,rgba(1,12,31,.65) 100%),
    linear-gradient(180deg,rgba(1,9,24,.25),rgba(1,10,27,.73))!important;
}
.home-hero::after{content:""!important;position:absolute!important;inset:auto 0 0!important;height:32%!important;background:linear-gradient(transparent,#031126)!important;z-index:0!important;pointer-events:none!important}
.home-live-layout{
  position:relative!important;z-index:2!important;
  width:min(1480px,calc(100% - clamp(44px,6vw,112px)))!important;
  height:100%!important;margin:auto!important;
  display:grid!important;
  grid-template-columns:minmax(380px,.83fr) minmax(560px,1.17fr)!important;
  grid-template-rows:minmax(0,1fr) auto!important;
  column-gap:clamp(28px,3.6vw,64px)!important;
  row-gap:clamp(10px,1.5vh,18px)!important;
  align-items:center!important;
}
.home-hero-copy{min-width:0!important;align-self:center!important;padding:0!important;position:relative!important;z-index:3!important}
.home-hero .hero-kicker{font-size:clamp(.56rem,.64vw,.72rem)!important;line-height:1.2!important;padding:7px 12px!important;margin-bottom:clamp(12px,1.5vh,20px)!important;max-width:100%!important}
.home-hero h1{font-size:clamp(2.75rem,4.35vw,5.15rem)!important;line-height:.98!important;letter-spacing:-.052em!important;margin:0 0 clamp(14px,1.7vh,22px)!important;max-width:690px!important}
.home-hero-copy>p{font-size:clamp(.88rem,.95vw,1.05rem)!important;line-height:1.55!important;max-width:560px!important;margin:0!important;color:rgba(255,255,255,.78)!important}
.home-hero .hero-actions{display:flex!important;gap:12px!important;margin:clamp(18px,2.4vh,28px) 0 0!important;flex-wrap:wrap!important}
.home-hero .button{padding:clamp(12px,1.4vh,16px) clamp(17px,1.7vw,25px)!important;font-size:clamp(.78rem,.86vw,.94rem)!important}
.command-window{
  align-self:center!important;min-width:0!important;width:100%!important;max-height:calc(100svh - clamp(130px,17vh,185px))!important;
  overflow:hidden!important;padding:clamp(12px,1.25vw,18px)!important;border-radius:20px!important;
  background:rgba(2,22,49,.9)!important;backdrop-filter:blur(16px)!important;
  box-shadow:0 28px 90px rgba(0,0,0,.42)!important;
}
.command-head{padding-bottom:10px!important}.command-kpis{gap:0!important;margin-bottom:10px!important}.command-kpis>div{padding:10px 8px!important}.command-kpis b{font-size:clamp(1rem,1.35vw,1.45rem)!important}.command-kpis small{font-size:clamp(.5rem,.56vw,.64rem)!important}
.command-main{gap:10px!important}.ops-list,.route-map{min-height:clamp(155px,21vh,230px)!important}.ops-list{padding:12px!important}.ops-list h3,.agent-feed h3{font-size:.78rem!important;margin-bottom:8px!important}.ops-list article{padding:7px 0!important;font-size:clamp(.55rem,.61vw,.68rem)!important}.route-map{background-size:cover!important}
.agent-feed{padding:11px 13px!important;margin-top:10px!important}.agent-feed p{font-size:clamp(.51rem,.57vw,.64rem)!important;padding:5px 0!important;line-height:1.35!important}.agent-feed time{width:42px!important}
.hero-statbar-centered{
  position:relative!important;grid-column:1/3!important;grid-row:2!important;left:auto!important;bottom:auto!important;transform:none!important;
  width:min(920px,72%)!important;margin:0 auto!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
  z-index:5!important;border-radius:14px!important;
}
.hero-statbar-centered>div{min-width:0!important;padding:10px 13px!important;grid-template-columns:32px 1fr!important;column-gap:8px!important}.hero-statbar-centered .stat-icon{width:31px!important;height:31px!important;font-size:18px!important}.hero-statbar-centered b{font-size:clamp(.75rem,.85vw,.95rem)!important;white-space:nowrap!important}.hero-statbar-centered small{font-size:clamp(.48rem,.52vw,.58rem)!important;white-space:nowrap!important}
.hero-security-badge{position:absolute!important;right:0!important;bottom:0!important;margin:0!important;padding:10px 13px!important;font-size:clamp(.68rem,.76vw,.84rem)!important;z-index:6!important}
.hero-action-rail{right:clamp(8px,1.15vw,18px)!important;top:50%!important;transform:translateY(-45%)!important;gap:8px!important}.hero-action-rail a{width:64px!important;min-height:68px!important;padding:9px 5px!important;font-size:.62rem!important}

@media (max-width:1180px){
  .home-live-layout{width:min(100% - 40px,1120px)!important;grid-template-columns:minmax(330px,.82fr) minmax(510px,1.18fr)!important;column-gap:28px!important}
  .home-hero h1{font-size:clamp(2.7rem,4.35vw,4.25rem)!important}.command-window{max-height:calc(100svh - 155px)!important}
  .hero-action-rail{display:none!important}.hero-statbar-centered{width:86%!important}.hero-security-badge{right:0!important}
}
@media (max-width:920px){
  .home-hero{height:auto!important;min-height:100svh!important;padding:102px 0 28px!important;background-position:58% center!important}
  .home-live-layout{width:min(100% - 32px,760px)!important;height:auto!important;grid-template-columns:1fr!important;grid-template-rows:auto!important;gap:24px!important}
  .home-hero-copy,.command-window{grid-column:1!important}.command-window{max-height:none!important}
  .hero-statbar-centered{grid-column:1!important;grid-row:auto!important;width:100%!important;margin:0!important}
  .hero-security-badge{position:relative!important;right:auto!important;bottom:auto!important;justify-self:center!important;margin-top:-10px!important}
  .home-hero h1{font-size:clamp(3rem,8vw,4.8rem)!important;max-width:720px!important}.home-hero-copy>p{max-width:650px!important}
}
@media (max-width:620px){
  .home-hero{padding:92px 0 22px!important;background-position:62% center!important}
  .home-live-layout{width:calc(100% - 24px)!important;gap:18px!important}.home-hero h1{font-size:clamp(2.45rem,11vw,3.55rem)!important}
  .home-hero .hero-kicker{border-radius:14px!important;font-size:.55rem!important}.home-hero .hero-actions{flex-direction:column!important}.home-hero .hero-actions .button{width:100%!important}
  .command-window{padding:10px!important;border-radius:16px!important}.command-kpis{grid-template-columns:1fr 1fr!important}.command-main{grid-template-columns:1fr!important}.route-map{min-height:190px!important}.agent-feed{display:none!important}
  .hero-statbar-centered{grid-template-columns:1fr 1fr!important}.hero-statbar-centered>div{min-height:68px!important}.hero-security-badge{width:100%!important;justify-content:center!important}
}
@media (min-width:921px) and (max-height:760px){
  .home-hero{padding-top:82px!important;padding-bottom:10px!important}.home-live-layout{width:min(1420px,calc(100% - 52px))!important;row-gap:6px!important}
  .home-hero .hero-kicker{margin-bottom:9px!important;padding:6px 10px!important}.home-hero h1{font-size:clamp(2.55rem,4vw,3.9rem)!important;margin-bottom:10px!important}.home-hero-copy>p{font-size:.82rem!important;line-height:1.42!important}.home-hero .hero-actions{margin-top:13px!important}
  .command-window{max-height:calc(100svh - 104px)!important;padding:10px!important}.command-kpis>div{padding:7px!important}.ops-list,.route-map{min-height:150px!important}.agent-feed p{padding:3px 0!important}.hero-statbar-centered{width:70%!important}.hero-statbar-centered>div{padding:7px 10px!important}.hero-security-badge{padding:7px 10px!important}
}

/* ===== AUG 2026 precision corrections ===== */
/* Home background supplied by product owner */
.home-hero{
  background-image:url('assets/visuals/home-hero-connected-fleet.jpg')!important;
  background-position:center center!important;
  background-size:cover!important;
}

/* Reserve a true gutter between the FleexoCommand panel and the quick actions. */
@media (min-width:1181px){
  .home-live-layout{
    width:min(1390px,calc(100% - 150px))!important;
    transform:translateX(-26px);
  }
  .command-window{max-width:760px!important;margin-right:34px!important}
  .hero-action-rail{right:24px!important;gap:12px!important}
  .hero-action-rail a{width:70px!important;min-height:72px!important}
}
@media (min-width:1181px) and (max-width:1450px){
  .home-live-layout{width:calc(100% - 138px)!important;transform:translateX(-18px)}
  .command-window{margin-right:28px!important}
}

/* The Operating Gap is real HTML text at every breakpoint; never swap it for a screenshot. */
.approved-gap-desktop{display:none!important}
.operating-gap-panel.operating-gap-edge{display:grid!important}
.operating-gap-copy,.gap-reasons,.gap-reasons article{position:relative;z-index:2}
.operating-gap-copy h2,.operating-gap-copy p,.gap-reasons b,.gap-reasons p{
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
.operating-gap-copy h2{color:#0b1730!important}
.operating-gap-copy p,.gap-reasons p{color:#617087!important}
.gap-reasons b{color:#0b1730!important}

/* Internal-page visual cards must not inherit social artwork or any embedded/cut-off text. */
.hero-visual-unique:before,
.hero-visual-unique.simple-topic-visual:before{display:none!important;background-image:none!important;content:none!important}
.hero-visual-unique.simple-topic-visual{
  background:
    radial-gradient(circle at 50% 42%,rgba(32,155,218,.18),transparent 38%),
    linear-gradient(145deg,#061a38,#0a315e)!important;
}
.simple-topic-visual .visual-route{display:none!important}
.simple-topic-visual .hero-visual-stage{
  background:
    linear-gradient(rgba(51,153,211,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(51,153,211,.055) 1px,transparent 1px),
    linear-gradient(145deg,rgba(7,31,66,.96),rgba(8,57,97,.8))!important;
  background-size:32px 32px,32px 32px,auto!important;
}

/* Robust home hero scaling without component collision. */
@media (max-width:1180px){
  .home-live-layout{transform:none!important}
  .command-window{margin-right:auto!important}
}
@media (max-width:900px){
  .home-hero{height:auto!important;min-height:100svh!important;overflow:visible!important}
}


/* === Homepage structure update: live hero background + relocated FleexoCommand === */
.home-hero{
  min-height:100svh!important;
  display:flex!important;
  align-items:center!important;
  padding:96px 0 26px!important;
  background-image:
    linear-gradient(90deg,rgba(2,12,31,.90) 0%,rgba(2,15,37,.67) 40%,rgba(2,14,34,.24) 72%,rgba(2,13,32,.12) 100%),
    linear-gradient(180deg,rgba(2,12,31,.18),rgba(2,12,31,.46)),
    var(--hero-img)!important;
  background-position:center center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
}
.home-hero::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:radial-gradient(circle at 72% 42%,rgba(22,133,232,.08),transparent 33%)!important;
  pointer-events:none!important;
  z-index:0!important;
}
.hero-copy-layout{
  position:relative!important;
  z-index:2!important;
  width:min(1480px,calc(100% - clamp(40px,6vw,110px)))!important;
  margin-inline:auto!important;
  display:grid!important;
  grid-template-columns:minmax(420px,650px) 1fr!important;
  grid-template-rows:auto auto!important;
  align-items:center!important;
  column-gap:clamp(30px,5vw,86px)!important;
}
.hero-copy-layout .home-hero-copy{grid-column:1;max-width:650px!important}
.hero-copy-layout .hero-statbar-centered{grid-column:1/-1!important;width:min(920px,76%)!important;justify-self:center!important;margin-top:clamp(22px,4vh,44px)!important}
.hero-copy-layout .hero-security-badge{right:clamp(0px,1vw,18px)!important;bottom:0!important}
.home-hero-bg{display:none!important}

.operating-gap-image img{
  object-position:center center!important;
}

.beyond-command{
  margin-top:42px!important;
  margin-bottom:34px!important;
  display:grid!important;
  grid-template-columns:minmax(250px,.42fr) minmax(560px,1.58fr)!important;
  gap:34px!important;
  align-items:center!important;
}
.beyond-command-heading h3{font-size:clamp(1.6rem,2vw,2.35rem);margin-bottom:12px}
.beyond-command-heading p{color:var(--muted);margin:0}
.command-window-embedded{
  width:100%!important;
  max-width:none!important;
  max-height:none!important;
  transform:none!important;
  margin:0!important;
}

@media(max-width:1100px){
  .home-hero{min-height:auto!important;padding:118px 0 48px!important;background-position:62% center!important}
  .hero-copy-layout{grid-template-columns:1fr!important;width:min(860px,calc(100% - 48px))!important}
  .hero-copy-layout .home-hero-copy{grid-column:1!important;max-width:680px!important}
  .hero-copy-layout .hero-statbar-centered{grid-column:1!important;width:100%!important}
  .hero-copy-layout .hero-security-badge{position:relative!important;right:auto!important;bottom:auto!important;justify-self:start!important;margin-top:14px!important}
  .beyond-command{grid-template-columns:1fr!important}
}
@media(max-width:720px){
  .home-hero{padding:100px 0 30px!important;background-position:64% center!important}
  .hero-copy-layout{width:calc(100% - 28px)!important}
  .hero-copy-layout .hero-statbar-centered{grid-template-columns:1fr 1fr!important}
  .beyond-command{margin-top:28px!important;gap:20px!important}
  .command-window-embedded .command-main{grid-template-columns:1fr!important}
}
@media(max-height:800px) and (min-width:1101px){
  .home-hero{padding:82px 0 18px!important}
  .hero-copy-layout .hero-statbar-centered{margin-top:16px!important}
}

/* === Homepage centered command hero rebuild (2026-08-01) === */
.home-hero{
  position:relative!important;
  min-height:100svh!important;
  height:auto!important;
  padding:clamp(88px,9vh,118px) 0 clamp(22px,3vh,38px)!important;
  background:#031126 var(--hero-img) center center/cover no-repeat!important;
  overflow:hidden!important;
}
.home-hero::before{
  content:""!important;
  position:absolute!important;inset:0!important;
  background:linear-gradient(180deg,rgba(2,12,31,.66) 0%,rgba(2,15,36,.28) 38%,rgba(2,13,31,.62) 100%)!important;
  pointer-events:none!important;z-index:0!important;
}
.home-hero::after{content:""!important;position:absolute!important;inset:auto 0 0!important;height:18%!important;background:linear-gradient(transparent,#031126)!important;z-index:0!important;pointer-events:none!important}
.home-hero-centered{position:relative!important;z-index:2!important;width:min(1480px,calc(100% - 64px))!important;margin:auto!important;display:flex!important;flex-direction:column!important;align-items:center!important;gap:clamp(12px,1.55vh,20px)!important}
.home-hero-copy-centered{text-align:center!important;max-width:980px!important;margin:0 auto!important;padding:0!important}
.home-hero-copy-centered .hero-kicker{display:inline-flex!important;margin:0 auto clamp(10px,1.2vh,16px)!important}
.home-hero-copy-centered h1{font-size:clamp(2.65rem,4.15vw,5.1rem)!important;line-height:.98!important;max-width:980px!important;margin:0 auto clamp(10px,1.2vh,15px)!important;letter-spacing:-.052em!important}
.home-hero-copy-centered>p{font-size:clamp(.84rem,.95vw,1.05rem)!important;line-height:1.48!important;max-width:760px!important;margin:0 auto!important;color:rgba(255,255,255,.82)!important}
.hero-command-wrap{width:min(760px,66vw)!important;margin:0 auto!important;position:relative!important}
.hero-command-center{width:100%!important;max-width:none!important;margin:0 auto!important;padding:clamp(12px,1.3vw,18px)!important;border-radius:18px!important;background:rgba(2,22,49,.94)!important;border:1px solid rgba(120,190,255,.28)!important;box-shadow:0 24px 70px rgba(0,0,0,.42)!important;transform:none!important}
.hero-command-center .command-head{padding-bottom:8px!important}.hero-command-center .command-kpis>div{padding:9px 7px!important}.hero-command-center .command-kpis b{font-size:clamp(1rem,1.5vw,1.35rem)!important}.hero-command-center .command-kpis small{font-size:clamp(.48rem,.57vw,.64rem)!important}
.hero-command-center .command-main{gap:10px!important}.hero-command-center .ops-list,.hero-command-center .route-map{min-height:160px!important}.hero-command-center .agent-feed{margin-top:10px!important}.hero-command-center .agent-feed p{padding:3px 0!important;font-size:clamp(.56rem,.63vw,.7rem)!important}
.hero-command-actions{display:flex!important;justify-content:center!important;gap:12px!important;flex-wrap:wrap!important;margin-top:-2px!important}
.hero-command-actions .button{min-width:160px!important;padding:12px 18px!important;border-radius:10px!important;font-size:.82rem!important;gap:8px!important}
.button-dark{background:rgba(2,22,49,.82)!important;color:white!important;border:1px solid rgba(150,205,255,.35)!important;box-shadow:0 10px 25px rgba(0,0,0,.18)!important}
.button-dark:hover{background:rgba(10,51,95,.92)!important;transform:translateY(-2px)!important}
.hero-command-actions .material-symbols-rounded{font-size:20px!important}
.hero-statbar-home{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;transform:none!important;width:min(980px,90%)!important;margin:0 auto!important;display:grid!important;grid-template-columns:repeat(4,1fr)!important;background:rgba(3,25,55,.88)!important;border:1px solid rgba(125,191,255,.22)!important;backdrop-filter:blur(14px)!important}
.hero-security-home{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;margin:0 auto!important;padding:8px 14px!important;font-size:.78rem!important}
.home-hero .hero-action-rail{display:none!important}

@media (max-width:1100px){
  .home-hero{min-height:auto!important;padding:96px 0 30px!important;background-position:56% center!important}
  .home-hero-centered{width:min(920px,calc(100% - 36px))!important}
  .hero-command-wrap{width:min(760px,92vw)!important}
  .hero-statbar-home{width:100%!important}
}
@media (max-width:760px){
  .home-hero{padding:86px 0 24px!important;background-position:57% center!important}
  .home-hero::before{background:linear-gradient(180deg,rgba(2,12,31,.84),rgba(2,15,36,.5) 48%,rgba(2,13,31,.78))!important}
  .home-hero-centered{width:calc(100% - 24px)!important;gap:14px!important}
  .home-hero-copy-centered h1{font-size:clamp(2.35rem,10.5vw,3.5rem)!important}
  .hero-command-wrap{width:100%!important;overflow:hidden!important}
  .hero-command-center{padding:10px!important}
  .hero-command-center .command-kpis{grid-template-columns:1fr 1fr!important}
  .hero-command-center .command-main{grid-template-columns:1fr!important}
  .hero-command-center .route-map{min-height:180px!important}
  .hero-command-center .agent-feed{display:none!important}
  .hero-command-actions{width:100%!important;display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .hero-command-actions .button{width:100%!important;min-width:0!important}
  .hero-statbar-home{grid-template-columns:1fr 1fr!important;width:100%!important}
  .hero-statbar-home>div{min-height:72px!important}
}
@media (max-height:820px) and (min-width:1101px){
  .home-hero{padding-top:74px!important;padding-bottom:14px!important}
  .home-hero-centered{gap:8px!important}
  .home-hero-copy-centered .hero-kicker{margin-bottom:6px!important;padding:5px 10px!important}
  .home-hero-copy-centered h1{font-size:clamp(2.2rem,3.4vw,3.65rem)!important;margin-bottom:6px!important}
  .home-hero-copy-centered>p{font-size:.77rem!important;line-height:1.35!important}
  .hero-command-wrap{width:min(690px,62vw)!important}
  .hero-command-center{padding:9px!important}
  .hero-command-center .command-kpis>div{padding:5px!important}
  .hero-command-center .ops-list,.hero-command-center .route-map{min-height:126px!important}
  .hero-command-center .agent-feed p{font-size:.51rem!important;line-height:1.2!important}
  .hero-command-actions .button{padding:8px 14px!important;font-size:.72rem!important}
  .hero-statbar-home>div{padding:6px 9px!important;min-height:50px!important}
  .hero-security-home{padding:5px 10px!important;font-size:.7rem!important}
}


/* === Viewport-fit homepage hero refinement (2026-08-02) === */
.home-hero-copy-centered h1 > span,
.home-hero-copy-centered h1 > em{white-space:nowrap!important}

@media (min-width:1101px){
  .home-hero{
    height:100svh!important;
    min-height:640px!important;
    max-height:100svh!important;
    padding:clamp(68px,8.2vh,88px) 0 clamp(8px,1.4vh,16px)!important;
    display:flex!important;
    align-items:center!important;
  }
  .home-hero-centered{
    height:100%!important;
    justify-content:center!important;
    gap:clamp(5px,.75vh,9px)!important;
  }
  .home-hero-copy-centered .hero-kicker{
    margin-bottom:clamp(3px,.55vh,7px)!important;
    padding:5px 10px!important;
    font-size:clamp(.52rem,.58vw,.66rem)!important;
  }
  .home-hero-copy-centered h1{
    max-width:1200px!important;
    font-size:clamp(2.55rem,3.25vw,4.2rem)!important;
    line-height:1.01!important;
    margin:0 auto clamp(4px,.65vh,8px)!important;
    letter-spacing:-.045em!important;
  }
  .home-hero-copy-centered>p{
    max-width:820px!important;
    font-size:clamp(.72rem,.78vw,.9rem)!important;
    line-height:1.36!important;
  }
  .hero-command-wrap{width:min(700px,58vw)!important}
  .hero-command-center{padding:clamp(8px,.75vw,12px)!important;border-radius:15px!important}
  .hero-command-center .command-head{padding-bottom:5px!important;font-size:.83rem!important}
  .hero-command-center .command-kpis>div{padding:5px 5px!important}
  .hero-command-center .command-kpis b{font-size:clamp(.94rem,1.12vw,1.15rem)!important}
  .hero-command-center .command-kpis small{font-size:clamp(.43rem,.48vw,.55rem)!important}
  .hero-command-center .command-main{gap:7px!important}
  .hero-command-center .ops-list,
  .hero-command-center .route-map{min-height:118px!important;height:118px!important}
  .hero-command-center .ops-list{padding:8px!important}
  .hero-command-center .ops-list h3,
  .hero-command-center .agent-feed h3{font-size:.72rem!important;margin-bottom:4px!important}
  .hero-command-center .ops-list article{padding:3px 0!important;font-size:.53rem!important}
  .hero-command-center .agent-feed{margin-top:6px!important;padding:7px 9px!important}
  .hero-command-center .agent-feed p{padding:2px 0!important;font-size:clamp(.46rem,.49vw,.56rem)!important;line-height:1.16!important}
  .hero-command-actions{gap:8px!important;margin-top:0!important}
  .hero-command-actions .button{min-width:145px!important;padding:8px 13px!important;font-size:.7rem!important}
  .hero-command-actions .material-symbols-rounded{font-size:17px!important}
  .hero-statbar-home{width:min(900px,78%)!important}
  .hero-statbar-home>div{min-height:47px!important;padding:5px 8px!important}
  .hero-statbar-home b{font-size:.88rem!important}
  .hero-statbar-home small{font-size:.52rem!important}
  .hero-statbar-home .stat-icon{font-size:20px!important}
  .hero-security-home{padding:5px 10px!important;font-size:.66rem!important}
  .hero-security-home .material-symbols-rounded{font-size:18px!important}
}

@media (min-width:1101px) and (max-height:720px){
  .home-hero{padding-top:62px!important;padding-bottom:6px!important;min-height:600px!important}
  .home-hero-centered{gap:4px!important}
  .home-hero-copy-centered .hero-kicker{display:none!important}
  .home-hero-copy-centered h1{font-size:clamp(2.25rem,2.85vw,3.25rem)!important;margin-bottom:3px!important}
  .home-hero-copy-centered>p{font-size:.68rem!important;line-height:1.25!important;max-width:760px!important}
  .hero-command-wrap{width:min(630px,54vw)!important}
  .hero-command-center .ops-list,.hero-command-center .route-map{height:100px!important;min-height:100px!important}
  .hero-command-center .agent-feed p:nth-of-type(4){display:none!important}
  .hero-statbar-home>div{min-height:42px!important;padding:4px 7px!important}
  .hero-security-home{padding:4px 9px!important}
}

@media (max-width:1100px){
  .home-hero-copy-centered h1 > span,
  .home-hero-copy-centered h1 > em{white-space:normal!important}
  .home-hero-copy-centered h1{max-width:820px!important}
}


/* === Hero action rail + command dashboard overlap QA (2026-08-02) === */
@media (min-width:1101px){
  .home-hero-centered{position:relative!important;padding-inline:clamp(4px,.6vw,10px)!important}
  .hero-command-actions{
    position:absolute!important;
    right:clamp(0px,.7vw,12px)!important;
    top:50%!important;
    transform:translateY(-29%)!important;
    z-index:6!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:clamp(10px,1.4vh,16px)!important;
    width:92px!important;
    margin:0!important;
  }
  .hero-command-actions .button{
    width:82px!important;
    min-width:82px!important;
    height:82px!important;
    padding:8px!important;
    border-radius:50%!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:4px!important;
    text-align:center!important;
    line-height:1.12!important;
    font-size:.67rem!important;
    white-space:normal!important;
    box-shadow:0 14px 34px rgba(0,0,0,.32)!important;
    backdrop-filter:blur(16px)!important;
  }
  .hero-command-actions .button-primary{background:linear-gradient(145deg,#168df5,#0757d9)!important}
  .hero-command-actions .button-dark{background:rgba(3,25,55,.88)!important;border-color:rgba(137,199,255,.32)!important}
  .hero-command-actions .material-symbols-rounded{font-size:25px!important;line-height:1!important}
  .hero-command-wrap{max-width:calc(100% - 220px)!important}

  /* Keep the AI decision label and rows in their own flow. */
  .hero-command-center .agent-feed{
    position:relative!important;
    display:block!important;
    clear:both!important;
    min-height:0!important;
    height:auto!important;
    overflow:hidden!important;
    padding:8px 10px 7px!important;
    margin-top:8px!important;
  }
  .hero-command-center .agent-feed h3{
    position:relative!important;
    display:block!important;
    float:none!important;
    clear:both!important;
    margin:0 0 5px!important;
    padding:0 0 4px!important;
    line-height:1.2!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
    z-index:2!important;
  }
  .hero-command-center .agent-feed p{
    position:relative!important;
    margin:0!important;
    min-height:0!important;
    align-items:start!important;
  }
}

@media (min-width:1101px) and (max-width:1320px){
  .hero-command-actions{right:0!important;width:76px!important;gap:9px!important}
  .hero-command-actions .button{width:68px!important;min-width:68px!important;height:68px!important;font-size:.58rem!important;padding:6px!important}
  .hero-command-actions .material-symbols-rounded{font-size:21px!important}
  .hero-command-wrap{max-width:calc(100% - 170px)!important}
}

@media (min-width:1101px) and (max-height:760px){
  .hero-command-actions{gap:7px!important;transform:translateY(-25%)!important}
  .hero-command-actions .button{width:62px!important;min-width:62px!important;height:62px!important;font-size:.53rem!important}
  .hero-command-actions .material-symbols-rounded{font-size:19px!important}
  .hero-command-center .agent-feed{padding:6px 8px 5px!important;margin-top:5px!important}
  .hero-command-center .agent-feed h3{font-size:.66rem!important;margin-bottom:3px!important;padding-bottom:3px!important}
}

@media (max-width:1100px){
  .hero-command-actions{
    position:static!important;
    transform:none!important;
    width:100%!important;
    display:flex!important;
    flex-direction:row!important;
    justify-content:center!important;
    gap:10px!important;
    margin-top:0!important;
  }
  .hero-command-actions .button{
    width:auto!important;
    min-width:150px!important;
    height:auto!important;
    border-radius:12px!important;
    flex-direction:row!important;
    padding:11px 16px!important;
    font-size:.76rem!important;
  }
}

@media (max-width:760px){
  .hero-command-actions{display:grid!important;grid-template-columns:1fr!important}
  .hero-command-actions .button{width:100%!important;min-width:0!important}
}

/* ============================================================
   QA PASS — appended fixes (accessibility, forms, print)
   ============================================================ */

/* Honeypot: off-screen but not display:none, so bots still fill it */
.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* Consent checkbox */
.consent-field{display:flex!important;align-items:flex-start;gap:10px;margin:14px 0 16px;font-size:.85rem;line-height:1.5;color:#425268}
.consent-field input[type=checkbox]{width:17px;height:17px;min-width:17px;margin-top:2px;accent-color:#0b3573;cursor:pointer}
.consent-field span{flex:1}
.consent-field a{color:#0b3573;text-decoration:underline;text-underline-offset:2px}

/* Direct contact details */
.contact-direct{margin-top:22px;padding-top:18px;border-top:1px solid rgba(11,53,115,.14)}
.contact-direct p{margin:0 0 6px;font-size:.92rem;color:#3a4a60}
.contact-direct a{color:#0b3573;font-weight:600}
.contact-direct small{color:#69788c}

/* Visible keyboard focus everywhere (was missing) */
:focus-visible{outline:3px solid #2f7bff;outline-offset:2px;border-radius:4px}
.section-dark :focus-visible,.site-header :focus-visible,.home-hero :focus-visible,.page-hero :focus-visible,.site-footer :focus-visible{outline-color:#7fb2ff}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:0}

/* Respect reduced-motion for the decorative animations */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .reveal{opacity:1!important;transform:none!important}
}

/* Images inside picture elements inherit the frame sizing */
picture{display:block;width:100%;height:100%}
picture img{display:block;width:100%;height:100%;object-fit:cover}

/* Print */
@media print{
  .site-header,.site-footer,.mobile-toggle,.skip-link,.hero-command-actions,.mini-cta{display:none!important}
  body{background:#fff!important;color:#000!important}
  .section-dark,.home-hero,.page-hero{background:#fff!important;color:#000!important}
  a[href^="http"]::after{content:" (" attr(href) ")";font-size:.75em;color:#555}
  .reveal{opacity:1!important;transform:none!important}
}

/* No-JS fallback navigation (header/footer are JS-injected) */
.ns-nav{display:flex;flex-wrap:wrap;gap:4px 16px;align-items:center;padding:14px 22px;background:#071e40;border-bottom:1px solid rgba(255,255,255,.12)}
.ns-nav a{color:#cfe0fb;font-size:.82rem;text-decoration:none}
.ns-nav a:hover{color:#fff;text-decoration:underline}
.ns-nav .ns-brand{font-weight:800;font-size:1rem;color:#fff;margin-right:10px}

/* ============================================================
   INTERNAL PAGE HERO INSTRUMENT  (.gi)
   Each internal page docks one real pane of the product console
   into its hero. The left accent rail is the per-page signal.
   ============================================================ */

.gi{
  --gi-acc:#2f7bff; --gi-acc2:#4fa8ff;
  position:relative;
  display:flex;flex-direction:column;
  min-height:430px;
  padding:0 0 0 3px;
  border-radius:20px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.018)),
    linear-gradient(160deg,#06182f 0%,#04101f 62%,#050f1c 100%);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 28px 70px -28px rgba(0,0,0,.75),inset 0 1px 0 rgba(255,255,255,.07);
  overflow:hidden;
  font-family:'Manrope',system-ui,sans-serif;
}
.gi.acc-blue  {--gi-acc:#2f7bff;--gi-acc2:#63b3ff}
.gi.acc-violet{--gi-acc:#8b6cf6;--gi-acc2:#b39bff}
.gi.acc-leaf  {--gi-acc:#2fbb7a;--gi-acc2:#5fdca0}
.gi.acc-amber {--gi-acc:#e5992c;--gi-acc2:#ffc165}
.gi.acc-rose  {--gi-acc:#ef5a68;--gi-acc2:#ff8a94}

/* Signature: the accent rail with a slow travelling highlight */
.gi-rail{position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--gi-acc),var(--gi-acc2));opacity:.85}
.gi-rail:after{content:"";position:absolute;left:0;right:0;height:26%;background:linear-gradient(180deg,transparent,#fff,transparent);opacity:.55;animation:giRail 5.5s cubic-bezier(.5,0,.5,1) infinite}
@keyframes giRail{0%{top:-30%}100%{top:104%}}

/* Head */
.gi-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 18px 13px;border-bottom:1px solid rgba(255,255,255,.09)}
.gi-name{display:flex;align-items:center;gap:9px;font-weight:800;font-size:.98rem;color:#fff;letter-spacing:-.01em}
.gi-name i{width:7px;height:7px;border-radius:50%;background:var(--gi-acc2);box-shadow:0 0 0 4px rgba(255,255,255,.07);animation:giPulse 2.4s ease-in-out infinite}
@keyframes giPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.82)}}
.gi-tag{font-family:'Space Grotesk','Manrope',sans-serif;font-size:.63rem;font-weight:600;letter-spacing:.13em;color:#9fb6d6;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.09);padding:4px 9px;border-radius:999px;white-space:nowrap}

/* Stage */
.gi-stage{flex:1;display:flex;flex-direction:column;gap:9px;padding:15px 18px;min-height:0}

/* Foot metric strip */
.gi-foot{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.025)}
.gi-foot>div{padding:11px 10px;text-align:center;border-left:1px solid rgba(255,255,255,.06)}
.gi-foot>div:first-child{border-left:0}
.gi-foot span{display:block;font-size:.61rem;letter-spacing:.07em;text-transform:uppercase;color:#8ba3c4;margin-bottom:3px}
.gi-foot b{display:block;font-family:'Space Grotesk','Manrope',sans-serif;font-size:.95rem;font-weight:700;color:#fff;line-height:1.15}
.gi-foot b.up{color:#5fdca0}
.gi-foot b.down{color:#ff8a94}

/* ---------- shared atoms ---------- */
.gi-row{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);font-size:.76rem}
.gi-row .k{font-family:'Space Grotesk','Manrope',sans-serif;font-weight:700;color:#fff;white-space:nowrap}
.gi-row .d{flex:1;color:#a9bdd8;line-height:1.35;min-width:0}
.gi-row .t{font-family:'Space Grotesk','Manrope',sans-serif;color:#dce8f8;white-space:nowrap;font-size:.74rem}

.gi-bar{flex:1;min-width:46px;height:6px;border-radius:999px;background:rgba(255,255,255,.10);overflow:hidden;display:block}
.gi-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--gi-acc),var(--gi-acc2))}
.gi-bar i.leaf {background:linear-gradient(90deg,#2fbb7a,#5fdca0)}
.gi-bar i.amber{background:linear-gradient(90deg,#e5992c,#ffc165)}
.gi-bar i.rose {background:linear-gradient(90deg,#ef5a68,#ff8a94)}

.gi-pill{font-family:'Space Grotesk','Manrope',sans-serif;font-size:.57rem;font-weight:700;letter-spacing:.09em;padding:3px 8px;border-radius:999px;white-space:nowrap;border:1px solid}
.gi-pill.p-live{color:#8fc4ff;background:rgba(47,123,255,.15);border-color:rgba(47,123,255,.38)}
.gi-pill.p-ok  {color:#77e0ac;background:rgba(47,187,122,.15);border-color:rgba(47,187,122,.38)}
.gi-pill.p-warn{color:#ffc165;background:rgba(229,153,44,.15);border-color:rgba(229,153,44,.40)}
.gi-pill.p-risk{color:#ff97a0;background:rgba(239,90,104,.15);border-color:rgba(239,90,104,.40)}
.gi-pill.p-mute{color:#9fb2ca;background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14)}

.gi-note{font-size:.66rem;letter-spacing:.05em;text-transform:uppercase;color:#7e95b5}

/* ---------- platform.html · gi-stack ---------- */
.gi-stack{gap:7px;justify-content:center}
.gi-layer{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:11px;padding:9px 11px;border-radius:11px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);position:relative}
.gi-layer:before{content:"";position:absolute;left:0;top:12%;bottom:12%;width:2px;border-radius:2px;background:var(--gi-acc);opacity:.7}
.gi-layer em{font-family:'Space Grotesk','Manrope',sans-serif;font-style:normal;font-weight:700;font-size:.72rem;color:var(--gi-acc2);letter-spacing:.05em}
.gi-layer b{display:block;font-size:.84rem;color:#fff;line-height:1.2}
.gi-layer span{display:block;font-size:.7rem;color:#93a9c8;margin-top:1px}

/* ---------- security.html · gi-shield ---------- */
.gi-shield{align-items:center;justify-content:center;gap:14px}
.gi-rings{position:relative;width:132px;height:132px;flex:none;display:grid;place-items:center}
.gi-rings>div{position:absolute;border-radius:50%;border:1px solid rgba(47,123,255,.30)}
.gi-rings>div:nth-child(1){inset:0;animation:giSpin 22s linear infinite}
.gi-rings>div:nth-child(2){inset:15px;border-color:rgba(47,123,255,.22)}
.gi-rings>div:nth-child(3){inset:30px;border-color:rgba(47,123,255,.16)}
.gi-rings>div:nth-child(1):before{content:"";position:absolute;top:-4px;left:50%;width:7px;height:7px;margin-left:-3px;border-radius:50%;background:var(--gi-acc2);box-shadow:0 0 12px var(--gi-acc2)}
@keyframes giSpin{to{transform:rotate(360deg)}}
.gi-rings>div:last-child{inset:44px;display:grid;place-items:center;border:0;background:radial-gradient(circle,rgba(47,123,255,.26),rgba(47,123,255,.05));border-radius:50%}
.gi-rings b{font-size:.72rem;font-weight:800;color:#fff;text-align:center;line-height:1.15}
.gi-trust{width:100%;display:flex;flex-direction:column;gap:7px}
.gi-trust>div{display:flex;align-items:center;gap:10px}
.gi-trust b{width:88px;flex:none;font-size:.74rem;font-weight:600;color:#c2d4ea}

/* ---------- ai-agents.html · gi-agents ---------- */
.gi-agents{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gi-agent{padding:9px 10px;border-radius:11px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07)}
.gi-agent .tp{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:3px}
.gi-agent b{font-size:.78rem;color:#fff}
.gi-agent>span{display:block;font-size:.68rem;color:#93a9c8;line-height:1.35}

/* ---------- ai-intelligence.html · gi-loop ---------- */
.gi-stages{display:flex;align-items:stretch;gap:7px}
.gi-stages b{flex:1;display:flex;flex-direction:column;gap:2px;padding:9px 8px;border-radius:11px;background:rgba(139,108,246,.10);border:1px solid rgba(139,108,246,.26);font-size:.76rem;color:#fff;text-align:center}
.gi-stages b small{font-size:.62rem;font-weight:500;color:#b6a6f0;letter-spacing:.02em}
.gi-stages em{display:flex;align-items:center;font-style:normal;color:var(--gi-acc2);font-size:.9rem}
.gi-log{display:flex;flex-direction:column;gap:6px;margin-top:2px}
.gi-log p{display:flex;gap:9px;margin:0;padding:7px 10px;border-radius:10px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.06);font-size:.72rem;line-height:1.4;color:#a9bdd8}
.gi-log time{font-family:'Space Grotesk','Manrope',sans-serif;color:var(--gi-acc2);flex:none;font-size:.69rem;padding-top:1px}
.gi-log b{color:#fff;font-weight:700}

/* ---------- transport / logistics / corporate · gi-board ---------- */
.gi-board{gap:7px;justify-content:center}

/* ---------- fleet-management.html · gi-grid ---------- */
.gi-tiles{display:grid;grid-template-columns:repeat(12,1fr);gap:5px}
.gi-tiles i{aspect-ratio:1;border-radius:3px;background:rgba(255,255,255,.09)}
.gi-tiles i.on{background:linear-gradient(135deg,#2f7bff,#63b3ff)}
.gi-tiles i.ok{background:rgba(47,187,122,.55)}
.gi-tiles i.sv{background:rgba(229,153,44,.6)}
.gi-legend{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.66rem;color:#9fb4d0}
.gi-legend span{display:flex;align-items:center;gap:6px}
.gi-legend span:before{content:"";width:8px;height:8px;border-radius:2px;background:rgba(255,255,255,.12)}
.gi-legend .l-on:before{background:#3f8bff}
.gi-legend .l-ok:before{background:rgba(47,187,122,.8)}
.gi-legend .l-sv:before{background:rgba(229,153,44,.85)}

/* ---------- driver-safety.html · gi-score ---------- */
.gi-score{display:flex;align-items:center;gap:16px}
.gi-ring{--pct:80%;position:relative;width:104px;height:104px;flex:none;border-radius:50%;display:grid;place-items:center;
  background:conic-gradient(var(--gi-acc) var(--pct),rgba(255,255,255,.10) 0)}
.gi-ring:before{content:"";position:absolute;inset:9px;border-radius:50%;background:#07172c}
.gi-ring>div{position:relative;text-align:center}
.gi-ring b{display:block;font-family:'Space Grotesk','Manrope',sans-serif;font-size:1.6rem;font-weight:700;color:#fff;line-height:1}
.gi-ring span{display:block;font-size:.55rem;letter-spacing:.11em;color:#93a9c8;margin-top:3px}
.gi-events{flex:1;display:flex;flex-direction:column;gap:7px;min-width:0}
.gi-events .gi-row{padding:5px 0;background:none;border:0;border-radius:0}
.gi-events .k{font-size:.73rem;font-weight:600;color:#c2d4ea;width:96px;flex:none}
.gi-events .d{flex:none;width:64px;font-family:'Space Grotesk','Manrope',sans-serif;font-size:.68rem;color:#8ba3c4}

/* ---------- financial-intelligence.html · gi-ledger ---------- */
.gi-lhead,.gi-lrow{display:grid;grid-template-columns:1fr 78px 68px;gap:8px;align-items:center}
.gi-lhead{padding:0 10px 6px;font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:#7e95b5;border-bottom:1px solid rgba(255,255,255,.08)}
.gi-lhead span:not(:first-child),.gi-lrow .amt,.gi-lrow .mg{text-align:right}
.gi-lrow{padding:7px 10px;border-bottom:1px solid rgba(255,255,255,.045);font-size:.75rem}
.gi-lrow .lane{color:#dbe6f5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gi-lrow .amt{font-family:'Space Grotesk','Manrope',sans-serif;color:#fff}
.gi-lrow .mg{font-family:'Space Grotesk','Manrope',sans-serif;font-weight:700}
.gi-lrow .mg.up{color:#5fdca0}
.gi-lrow .mg.down{color:#ff8a94}
.gi-ledger .gi-row{margin-top:6px}

/* ---------- fuel-management.html · gi-gauge ---------- */
.gi-dials{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.gi-dial{text-align:center;padding:10px 6px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07)}
.gi-arc{position:relative;width:56px;height:28px;margin:0 auto 8px;overflow:hidden}
.gi-arc:before{content:"";position:absolute;inset:0;border-radius:56px 56px 0 0;border:5px solid rgba(255,255,255,.11);border-bottom:0}
.gi-arc i{position:absolute;left:50%;bottom:0;width:2px;height:24px;margin-left:-1px;background:var(--gi-acc2);transform-origin:bottom center;border-radius:2px}
.gi-dial b{display:block;font-family:'Space Grotesk','Manrope',sans-serif;font-size:1rem;font-weight:700;color:#fff}
.gi-dial span{display:block;font-size:.62rem;color:#8ba3c4;margin-top:2px}

/* ---------- maintenance.html · gi-timeline ---------- */
.gi-wear{display:flex;align-items:center;gap:10px;font-size:.74rem}
.gi-wear .nm{width:132px;flex:none;color:#c2d4ea;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gi-wear .du{width:58px;flex:none;text-align:right;font-family:'Space Grotesk','Manrope',sans-serif;color:#dce8f8;font-size:.72rem}
.gi-timeline .gi-row{margin-top:4px}

/* ---------- deployment.html · gi-topo ---------- */
.gi-topo{gap:7px;justify-content:center}
.gi-node{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:9px 11px;border-radius:11px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07)}
.gi-node .dot{width:9px;height:9px;border-radius:50%;background:var(--gi-acc2);box-shadow:0 0 10px rgba(47,123,255,.7)}
.gi-node .dot.air{background:#7e95b5;box-shadow:none}
.gi-node b{grid-column:2;font-size:.8rem;color:#fff}
.gi-node span:not(.dot):not(.gi-pill){grid-column:2;font-size:.68rem;color:#93a9c8;margin-top:-2px}
.gi-node .gi-pill{grid-column:3;grid-row:1/3}

/* ---------- integrations.html · gi-hub ---------- */
.gi-bus{text-align:center;padding:11px;border-radius:12px;background:linear-gradient(135deg,rgba(47,123,255,.20),rgba(47,123,255,.06));border:1px solid rgba(47,123,255,.32)}
.gi-bus b{display:block;font-size:.95rem;color:#fff}
.gi-bus span{display:block;font-size:.66rem;color:#a8c3e6;margin-top:2px}
.gi-chips{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.gi-chip{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07)}
.gi-chip b{font-size:.72rem;font-weight:600;color:#dbe6f5}
.gi-chip em{font-family:'Space Grotesk','Manrope',sans-serif;font-style:normal;font-size:.56rem;letter-spacing:.09em;color:var(--gi-acc2);background:rgba(47,123,255,.14);border:1px solid rgba(47,123,255,.28);padding:2px 6px;border-radius:999px}

/* ---------- logistics-automation.html · gi-route ---------- */
.gi-track{position:relative;padding:6px 0 2px}
.gi-track .line{position:absolute;left:5%;right:5%;top:19px;height:2px;background:rgba(255,255,255,.12);border-radius:2px}
.gi-track .line i{display:block;height:100%;width:66%;border-radius:2px;background:linear-gradient(90deg,var(--gi-acc),var(--gi-acc2))}
.gi-stops{position:relative;display:grid;grid-template-columns:repeat(6,1fr)}
.gi-stop{text-align:center}
.gi-stop b{display:grid;place-items:center;width:26px;height:26px;margin:0 auto 6px;border-radius:50%;background:#07172c;border:2px solid var(--gi-acc);font-family:'Space Grotesk','Manrope',sans-serif;font-size:.7rem;color:#fff}
.gi-stop span{font-size:.62rem;color:#93a9c8;line-height:1.25;display:block}
.gi-compare{display:flex;flex-direction:column;gap:8px;margin-top:6px}
.gi-compare>div{display:flex;align-items:center;gap:10px;font-size:.72rem}
.gi-compare .lb{width:88px;flex:none;color:#c2d4ea}
.gi-compare .vl{width:60px;flex:none;text-align:right;font-family:'Space Grotesk','Manrope',sans-serif;color:#fff}

/* ---------- industry-government.html · gi-chain ---------- */
.gi-step{display:grid;grid-template-columns:26px 1fr;gap:11px;padding-bottom:9px;position:relative}
.gi-step:not(:last-child):before{content:"";position:absolute;left:13px;top:27px;bottom:0;width:1px;background:rgba(255,255,255,.14)}
.gi-step em{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;font-style:normal;font-family:'Space Grotesk','Manrope',sans-serif;font-size:.72rem;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);color:#9fb6d6}
.gi-step em.done{background:rgba(47,187,122,.18);border-color:rgba(47,187,122,.45);color:#77e0ac}
.gi-step .bd b{display:block;font-size:.79rem;color:#fff;line-height:1.25}
.gi-step .bd span{display:block;font-size:.68rem;color:#93a9c8;margin-top:2px;line-height:1.35}

/* ---------- contact.html · gi-steps ---------- */
.gi-dstep{display:grid;grid-template-columns:30px 1fr;gap:12px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.gi-dstep:last-child{border-bottom:0}
.gi-dstep em{font-style:normal;font-family:'Space Grotesk','Manrope',sans-serif;font-size:.82rem;font-weight:700;color:var(--gi-acc2)}
.gi-dstep .bd b{display:block;font-size:.82rem;color:#fff}
.gi-dstep .bd span{display:block;font-size:.69rem;color:#93a9c8;margin-top:2px;line-height:1.35}

/* ---------- faq.html · gi-qa ---------- */
.gi-q{padding:10px 12px;border-radius:11px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07)}
.gi-q.open{background:rgba(47,123,255,.10);border-color:rgba(47,123,255,.28)}
.gi-q b{display:block;font-size:.78rem;color:#fff;line-height:1.3;position:relative;padding-right:18px}
.gi-q b:after{content:"+";position:absolute;right:0;top:-1px;color:var(--gi-acc2);font-weight:600}
.gi-q.open b:after{content:"–"}
.gi-q span{display:block;font-size:.69rem;color:#a0b6d2;margin-top:5px;line-height:1.4}
.gi-q:not(.open) span{display:none}

/* ---------- industries.html · gi-sector ---------- */
.gi-sectors{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gi-sectors>div{padding:9px 10px;border-radius:11px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07)}
.gi-sectors b{display:block;font-size:.78rem;color:#fff}
.gi-sectors span{display:block;font-size:.66rem;color:#93a9c8;margin-top:2px;line-height:1.35}

/* ---------- industry-fmcg.html · gi-heat ---------- */
.gi-cells{display:grid;grid-template-columns:repeat(10,1fr);gap:4px}
.gi-cells i{aspect-ratio:1;border-radius:3px;background:rgba(255,255,255,.06)}
.gi-cells i.d1{background:rgba(47,123,255,.28)}
.gi-cells i.d2{background:rgba(47,123,255,.48)}
.gi-cells i.d3{background:rgba(47,123,255,.70)}
.gi-cells i.d4{background:linear-gradient(135deg,#2f7bff,#7cc0ff)}

/* ---------- industry-manufacturing.html · gi-lanes ---------- */
.gi-lane{padding:9px 10px;border-radius:11px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07)}
.gi-lane .top{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:7px}
.gi-lane b{font-size:.78rem;color:#fff}
.gi-lane .cnt{font-size:.65rem;color:#8ba3c4}
.gi-slots{display:grid;grid-template-columns:repeat(10,1fr);gap:4px}
.gi-slots i{height:9px;border-radius:2px;background:rgba(255,255,255,.10)}
.gi-slots i.f{background:linear-gradient(90deg,var(--gi-acc),var(--gi-acc2))}
.gi-slots i.h{background:rgba(229,153,44,.6)}

/* ---------- industry-rental.html · gi-avail ---------- */
.gi-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.gi-days>div{text-align:center}
.gi-days span{display:block;font-size:.57rem;letter-spacing:.08em;color:#8ba3c4;margin-bottom:5px}
.gi-days i{display:block;height:34px;border-radius:6px;background:rgba(255,255,255,.09)}
.gi-days i.b{background:linear-gradient(180deg,#2f7bff,#1c5ac4)}
.gi-days i.p{background:linear-gradient(180deg,#e5992c,#c07a17)}
.gi-days i.s{background:linear-gradient(180deg,#ef5a68,#c73f4c)}

/* ---------- why-gofleexo.html · gi-marks ---------- */
.gi-mark{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.gi-mark:last-child{border-bottom:0}
.gi-mark .bd b{display:block;font-size:.8rem;color:#fff}
.gi-mark .bd span{display:block;font-size:.67rem;color:#93a9c8;margin-top:2px;line-height:1.35}
.gi-mark .yr{flex:none;font-family:'Space Grotesk','Manrope',sans-serif;font-size:.55rem;letter-spacing:.1em;color:var(--gi-acc2);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.10);padding:3px 7px;border-radius:999px}

/* ---------- responsive ---------- */
@media(max-width:900px){
  .gi{min-height:0;max-width:640px;margin-inline:auto;width:100%}
  .gi-stage{padding:14px}
}
@media(max-width:620px){
  .gi-agents,.gi-sectors,.gi-chips{grid-template-columns:1fr}
  .gi-score{flex-direction:column;align-items:stretch;gap:12px}
  .gi-ring{margin:0 auto}
  .gi-events .k{width:88px}
  .gi-foot{grid-template-columns:1fr 1fr}
  .gi-foot>div:nth-child(3){border-left:0}
  .gi-foot>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.06)}
  .gi-tiles{grid-template-columns:repeat(9,1fr)}
  .gi-stops{grid-template-columns:repeat(3,1fr);gap:10px 0}
  .gi-track .line{display:none}
  .gi-wear .nm{width:100px}
  .gi-stages{flex-direction:column}
  .gi-stages em{transform:rotate(90deg);justify-content:center}
  .gi-lhead,.gi-lrow{grid-template-columns:1fr 66px 58px}
}
@media(prefers-reduced-motion:reduce){
  .gi-rail:after,.gi-name i,.gi-rings>div:nth-child(1){animation:none}
}

/* gi — stage containers and remaining tokens */
.gi-grid,.gi-heat,.gi-avail,.gi-lanes,.gi-timeline,.gi-topo,.gi-chain,.gi-marks,.gi-steps,.gi-qa,.gi-sector,.gi-ledger,.gi-hub,.gi-route,.gi-loop,.gi-gauge{gap:9px}
.gi-chain,.gi-marks,.gi-steps{justify-content:center}
.gi-grid,.gi-heat{justify-content:flex-start}
.gi-hub,.gi-route,.gi-loop,.gi-gauge,.gi-lanes,.gi-avail{justify-content:center}
.gi-legend .l-off:before{background:rgba(255,255,255,.20)}

/* ============================================================
   HOME HERO — rebuilt
   Two columns: the argument on the left, the proof on the right.
   One focal point (the console), one motion (the live feed).
   ============================================================ */

.home-hero{padding:clamp(112px,13vh,150px) 0 clamp(56px,7vh,84px)!important;min-height:0!important;height:auto!important;display:flex;align-items:center}
.home-hero:after{display:none!important}

.hh-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);gap:clamp(32px,4.5vw,72px);align-items:center}

/* ---- left: the argument ---- */
.hh-copy{max-width:600px}
.hh-kicker{display:inline-flex;align-items:center;gap:9px;font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#9dc4ff;background:rgba(47,123,255,.12);border:1px solid rgba(47,123,255,.30);padding:6px 14px 6px 11px;border-radius:999px;margin-bottom:22px}
.hh-kicker i{width:6px;height:6px;border-radius:50%;background:#63b3ff;box-shadow:0 0 10px #63b3ff;animation:hhPulse 2.4s ease-in-out infinite}
@keyframes hhPulse{0%,100%{opacity:1}50%{opacity:.35}}

.home-hero h1#home-title{font-size:clamp(2.4rem,4.4vw,4.15rem);line-height:1.04;letter-spacing:-.028em;font-weight:800;color:#fff;margin:0 0 20px}
.home-hero h1#home-title span{display:block}
.home-hero h1#home-title em{display:block;font-style:normal;background:linear-gradient(96deg,#7cc0ff 0%,#a9d4ff 46%,#5fdca0 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#7cc0ff}

.hh-lead{font-size:clamp(1rem,1.16vw,1.12rem);line-height:1.6;color:#b9cbe4;margin:0 0 30px;max-width:52ch}

.hh-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:28px}
.hh-actions .button{display:inline-flex;align-items:center;gap:9px}
.hh-link{display:inline-flex;align-items:center;gap:7px;font-weight:700;font-size:.94rem;color:#a9d4ff;text-decoration:none;padding:4px 2px;border-bottom:1px solid rgba(169,212,255,.35);transition:color .18s,border-color .18s}
.hh-link:hover{color:#fff;border-color:#fff}
.hh-link .material-symbols-rounded{font-size:18px;transition:transform .18s}
.hh-link:hover .material-symbols-rounded{transform:translateX(3px)}

.hh-trust{display:flex;align-items:center;gap:9px;margin:0;font-size:.8rem;color:#8ba7c9}
.hh-trust .material-symbols-rounded{font-size:19px;color:#5fdca0}

/* ---- right: the proof ---- */
.hh-console{position:relative}
.hh-console:before{content:"";position:absolute;inset:-14% -10% -18% -6%;background:radial-gradient(60% 55% at 55% 45%,rgba(47,123,255,.30),transparent 72%);filter:blur(28px);z-index:0}
.hhc{position:relative;z-index:1;border-radius:20px;overflow:hidden;
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02)),linear-gradient(160deg,#071c36,#040f1e);
  border:1px solid rgba(255,255,255,.13);
  box-shadow:0 44px 90px -32px rgba(0,0,0,.85),inset 0 1px 0 rgba(255,255,255,.09)}

.hhc-bar{display:flex;align-items:center;justify-content:space-between;padding:13px 18px;border-bottom:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.03)}
.hhc-bar b{font-size:.92rem;font-weight:800;color:#fff;letter-spacing:-.01em}
.hhc-live{display:inline-flex;align-items:center;gap:7px;font-family:'Space Grotesk','Manrope',sans-serif;font-size:.6rem;font-weight:700;letter-spacing:.14em;color:#77e0ac;background:rgba(47,187,122,.13);border:1px solid rgba(47,187,122,.34);padding:4px 10px;border-radius:999px}
.hhc-live i{width:6px;height:6px;border-radius:50%;background:#5fdca0;animation:hhPulse 1.9s ease-in-out infinite}

.hhc-kpis{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid rgba(255,255,255,.09)}
.hhc-kpis>div{padding:15px 12px;text-align:center;border-left:1px solid rgba(255,255,255,.07)}
.hhc-kpis>div:first-child{border-left:0}
.hhc-kpis b{display:block;font-family:'Space Grotesk','Manrope',sans-serif;font-size:clamp(1.25rem,1.9vw,1.7rem);font-weight:700;color:#fff;line-height:1;letter-spacing:-.02em}
.hhc-kpis b.dn{color:#5fdca0}
.hhc-kpis small{display:block;font-size:.63rem;letter-spacing:.05em;color:#8ba3c4;margin-top:6px}

.hhc-feed{padding:15px 18px 6px}
.hhc-feed h2{font-size:.62rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#7e95b5;margin:0 0 11px}
.hhc-feed article{display:flex;gap:11px;padding:9px 0;border-top:1px solid rgba(255,255,255,.06);opacity:0;animation:hhIn .6s ease forwards}
.hhc-feed article:first-of-type{border-top:0}
.hhc-feed article:nth-of-type(1){animation-delay:.25s}
.hhc-feed article:nth-of-type(2){animation-delay:.55s}
.hhc-feed article:nth-of-type(3){animation-delay:.85s}
.hhc-feed article:nth-of-type(4){animation-delay:1.15s}
@keyframes hhIn{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
.hhc-feed time{flex:none;font-family:'Space Grotesk','Manrope',sans-serif;font-size:.68rem;color:#63b3ff;padding-top:2px}
.hhc-feed p{margin:0;font-size:.78rem;line-height:1.45;color:#a9bdd8}
.hhc-feed p b{color:#fff;font-weight:700}

.hhc-foot{display:flex;gap:8px;flex-wrap:wrap;padding:11px 18px 14px;border-top:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.02)}
.hhc-foot span{font-size:.63rem;letter-spacing:.05em;color:#8ba3c4;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);padding:4px 10px;border-radius:999px}

/* ---- stat band, lifted out of the hero ---- */
.hh-band{background:#03101f;border-top:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07)}
.hh-band-inner{display:grid;grid-template-columns:repeat(5,1fr);gap:0}
.hh-band-inner>div{padding:24px 14px;text-align:center;border-left:1px solid rgba(255,255,255,.06)}
.hh-band-inner>div:first-child{border-left:0}
.hh-band-inner b{display:block;font-family:'Space Grotesk','Manrope',sans-serif;font-size:clamp(1.4rem,2.1vw,1.85rem);font-weight:700;color:#fff;letter-spacing:-.02em;line-height:1}
.hh-band-inner small{display:block;font-size:.72rem;color:#8ba3c4;margin-top:8px}

/* ---- responsive ---- */
@media(max-width:1080px){
  .hh-grid{grid-template-columns:1fr;gap:40px}
  .hh-copy{max-width:none;text-align:center;margin-inline:auto}
  .hh-lead{margin-inline:auto}
  .hh-actions,.hh-trust{justify-content:center}
  .hhc{max-width:680px;margin-inline:auto}
  .hh-band-inner{grid-template-columns:repeat(3,1fr)}
  .hh-band-inner>div:nth-child(4){border-left:0}
  .hh-band-inner>div:nth-child(-n+3){border-bottom:1px solid rgba(255,255,255,.06)}
}
@media(max-width:620px){
  .home-hero{padding:100px 0 44px!important}
  .home-hero h1#home-title{font-size:clamp(2.15rem,10vw,3rem)}
  .hh-actions{gap:14px}
  .hh-actions .button{width:100%;justify-content:center}
  .hh-link{width:100%;justify-content:center;border-bottom:0}
  .hhc-kpis{grid-template-columns:1fr 1fr}
  .hhc-kpis>div:nth-child(3){border-left:0}
  .hhc-kpis>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.07)}
  .hhc-feed article:nth-of-type(4){display:none}
  .hh-band-inner{grid-template-columns:1fr 1fr}
  .hh-band-inner>div:nth-child(odd){border-left:0}
  .hh-band-inner>div:last-child{grid-column:1/-1;border-left:0}
}
@media(prefers-reduced-motion:reduce){
  .hh-kicker i,.hhc-live i{animation:none}
  .hhc-feed article{opacity:1;animation:none}
}

/* gi — refinements after selector audit */
.gi-row>.gi-bar{flex:0 1 88px}
.gi-events .gi-row>.gi-bar,.gi-trust .gi-bar,.gi-compare .gi-bar,.gi-wear .gi-bar{flex:1 1 auto}
.gi-row>.d{flex:1 1 auto;min-width:0}
/* panel sizes to its content — never clip the instrument */
.page-hero-grid>.gi{align-self:center}
.gi,.gi-stage{min-width:0}
.gi-stage>*{min-width:0}

/* gi — VTS vs VMS comparison (vts-vms.html) */
.gi-vs{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.gi-vscol{display:flex;flex-direction:column;gap:6px;padding:11px 11px 13px;border-radius:12px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.03)}
.gi-vscol.vs-b{background:rgba(47,187,122,.09);border-color:rgba(47,187,122,.26)}
.gi-vshead{display:block;font-size:.6rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:#8ba3c4;padding-bottom:7px;margin-bottom:2px;border-bottom:1px solid rgba(255,255,255,.09)}
.gi-vscol.vs-b .gi-vshead{color:#77e0ac;border-bottom-color:rgba(47,187,122,.26)}
.gi-vsrow{display:flex;align-items:flex-start;gap:7px;font-size:.71rem;line-height:1.35;color:#c2d4ea}
.gi-vsrow.off{color:#6d829d;padding-left:16px;text-decoration:line-through;text-decoration-color:rgba(255,255,255,.28)}
.gi-vsrow i{flex:none;width:13px;font-style:normal;font-weight:700;text-align:center;line-height:1.3}
.gi-vsrow i.no{color:#7e95b5}
.gi-vsrow i.yes{color:#5fdca0}
@media(max-width:620px){.gi-vs{grid-template-columns:1fr}}

/* ---- homepage credential strip ---- */
.hh-cred{background:#04121f;padding:clamp(30px,4vh,44px) 0;border-bottom:1px solid rgba(255,255,255,.07)}
.hh-cred-inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.5fr) auto;gap:clamp(20px,3vw,44px);align-items:center}
.hh-cred-lead{margin:0;font-size:.95rem;line-height:1.6;color:#a9bdd8}
.hh-cred-lead b{color:#fff;font-weight:700}
.hh-cred-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.hh-cred-grid>div{text-align:center;padding:0 10px;border-left:1px solid rgba(255,255,255,.09)}
.hh-cred-grid>div:first-child{border-left:0}
.hh-cred-grid b{display:block;font-family:'Space Grotesk','Manrope',sans-serif;font-size:clamp(1.1rem,1.6vw,1.4rem);font-weight:700;color:#fff;letter-spacing:-.02em;line-height:1.1}
.hh-cred-grid small{display:block;font-size:.68rem;color:#8ba3c4;margin-top:6px;line-height:1.3}
.hh-cred-link{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;font-size:.84rem;font-weight:700;color:#a9d4ff;text-decoration:none;border-bottom:1px solid rgba(169,212,255,.35)}
.hh-cred-link:hover{color:#fff;border-color:#fff}
.hh-cred-link .material-symbols-rounded{font-size:17px}

/* ---- homepage VTS compatibility ---- */
.vts-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(32px,5vw,72px);align-items:center}
.vts-panel{padding:clamp(18px,2vw,24px);border-radius:18px;background:linear-gradient(160deg,#06182f,#040f1e);border:1px solid rgba(255,255,255,.10);box-shadow:0 30px 70px -30px rgba(0,0,0,.7)}
.vts-panel-head span{display:inline-block;font-family:'Space Grotesk','Manrope',sans-serif;font-size:.6rem;font-weight:700;letter-spacing:.14em;color:#8ba3c4;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);padding:4px 10px;border-radius:999px;margin-bottom:14px}
.vts-step{padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.vts-step b{display:block;font-size:.88rem;color:#fff}
.vts-step span{display:block;font-size:.72rem;color:#93a9c8;margin-top:2px}
.vts-step.vts-out{background:rgba(47,187,122,.11);border-color:rgba(47,187,122,.30)}
.vts-step.vts-out b{color:#8fe9bd}
.vts-arrow{width:2px;height:16px;margin:5px auto;background:linear-gradient(180deg,rgba(255,255,255,.35),rgba(255,255,255,.08));position:relative}
.vts-arrow:after{content:"";position:absolute;left:50%;bottom:-4px;width:6px;height:6px;margin-left:-3px;border-right:2px solid rgba(255,255,255,.35);border-bottom:2px solid rgba(255,255,255,.35);transform:rotate(45deg)}
@media(max-width:980px){
  .hh-cred-inner{grid-template-columns:1fr;text-align:center;gap:22px}
  .hh-cred-lead{max-width:64ch;margin-inline:auto}
  .vts-grid{grid-template-columns:1fr;gap:34px}
  .vts-panel{max-width:600px;margin-inline:auto;width:100%}
}
@media(max-width:620px){
  .hh-cred-grid{grid-template-columns:1fr 1fr;gap:16px 0}
  .hh-cred-grid>div:nth-child(odd){border-left:0}
}

/* ---- Brotecs heritage (why-gofleexo.html) ---- */
.heritage-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:26px}
.heritage-card{padding:20px 18px;border-radius:16px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.10)}
.heritage-card b{display:block;font-family:'Space Grotesk','Manrope',sans-serif;font-size:clamp(1.5rem,2.4vw,2.1rem);font-weight:700;color:#fff;line-height:1;letter-spacing:-.02em}
.heritage-card>span{display:block;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:#7fb2ff;margin:9px 0 10px}
.heritage-card p{margin:0;font-size:.82rem;line-height:1.55;color:#a9bdd8}
.heritage-domains{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0;border:1px solid rgba(255,255,255,.10);border-radius:16px;overflow:hidden}
.heritage-domains>div{padding:16px 18px;border-left:1px solid rgba(255,255,255,.08)}
.heritage-domains>div:first-child{border-left:0}
.heritage-domains b{display:block;font-size:.86rem;color:#fff;margin-bottom:5px}
.heritage-domains span{display:block;font-size:.76rem;line-height:1.5;color:#93a9c8}
@media(max-width:980px){.heritage-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.heritage-grid{grid-template-columns:1fr}.heritage-domains>div{border-left:0;border-top:1px solid rgba(255,255,255,.08)}.heritage-domains>div:first-child{border-top:0}}

/* ---- IoT device grid (integrations.html) ---- */
.device-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
.device-card{padding:18px;border-radius:16px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.10);display:flex;flex-direction:column}
.device-card b{display:block;font-size:.95rem;color:#fff;margin-bottom:8px}
.device-card p{margin:0 0 14px;font-size:.82rem;line-height:1.55;color:#a9bdd8;flex:1}
.device-card span{align-self:flex-start;font-family:'Space Grotesk','Manrope',sans-serif;font-size:.58rem;font-weight:700;letter-spacing:.11em;color:#7fb2ff;background:rgba(47,123,255,.13);border:1px solid rgba(47,123,255,.28);padding:4px 9px;border-radius:999px}

/* homepage VTS section wrapper */
.vts-strip{background:linear-gradient(180deg,#f6f9fd,#eef4fb);border-top:1px solid rgba(11,53,115,.08);border-bottom:1px solid rgba(11,53,115,.08)}
.vts-strip .vts-panel{background:linear-gradient(160deg,#06182f,#040f1e)}

/* gi — density pass so tall panels fit without clipping */
.gi-vs{gap:8px}
.gi-vscol{padding:10px 10px 12px;gap:5px}
.gi-vsrow{font-size:.69rem;line-height:1.3}
.gi-vshead{font-size:.57rem;padding-bottom:6px}
@media(min-width:1181px){
  .page-hero-grid>.gi .gi-stage{padding:13px 16px}
}

/* every feature-card is the same shape regardless of page */
.feature-grid{align-items:stretch}
.feature-card{display:flex;flex-direction:column}
.feature-card p{flex:1}

/* ---- FleexoCommand console v2 ---- */
.hhc-bar .hhc-src{font-size:.66rem;color:#8ba3c4;margin-left:auto;padding-left:12px}
.hhc-bar{gap:10px}

.hhc-kpis>div{padding:13px 10px;position:relative}
.hhc-ico{display:block;font-size:19px;color:#63b3ff;margin-bottom:6px}
.hhc-kpis b{font-size:clamp(1.15rem,1.7vw,1.5rem)}
.hhc-kpis b.up{color:#5fdca0}
.hhc-kpis small{font-size:.66rem;color:#c2d4ea;margin-top:5px;letter-spacing:0}
.hhc-kpis em{display:block;font-style:normal;font-size:.6rem;color:#7e95b5;margin-top:3px}

.hhc-split{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid rgba(255,255,255,.09)}
.hhc-col{padding:14px 16px}
.hhc-col+.hhc-col{border-left:1px solid rgba(255,255,255,.08)}
.hhc-col h2{font-size:.6rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#7e95b5;margin:0 0 10px}

.hhc-lane{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:.72rem}
.hhc-lane .ln{flex:1;color:#c2d4ea;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.hhc-lane .bar{flex:0 0 52px;height:5px;border-radius:999px;background:rgba(255,255,255,.10);overflow:hidden}
.hhc-lane .bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#2f7bff,#63b3ff)}
.hhc-lane .bar i.leaf{background:linear-gradient(90deg,#2fbb7a,#5fdca0)}
.hhc-lane .bar i.rose{background:linear-gradient(90deg,#ef5a68,#ff8a94)}
.hhc-lane .vl{flex:0 0 46px;text-align:right;font-family:'Space Grotesk','Manrope',sans-serif;font-size:.7rem;font-weight:700}
.hhc-lane .vl.up{color:#5fdca0}
.hhc-lane .vl.dn{color:#ff8a94}

.hhc-catch{display:flex;gap:9px;padding:6px 0;align-items:flex-start}
.hhc-catch>.material-symbols-rounded{font-size:17px;color:#ffc165;flex:none;margin-top:2px}
.hhc-catch b{display:block;font-size:.74rem;color:#fff;line-height:1.25}
.hhc-catch span{display:block;font-size:.66rem;color:#93a9c8;line-height:1.35;margin-top:1px}

.hhc-feed{padding:13px 16px 8px}
.hhc-foot span{font-size:.62rem}

@media(max-width:620px){
  .hhc-split{grid-template-columns:1fr}
  .hhc-col+.hhc-col{border-left:0;border-top:1px solid rgba(255,255,255,.08)}
  .hhc-bar .hhc-src{display:none}
  .hhc-kpis>div{padding:11px 8px}
}

/* ============================================================
   USE CASES
   ============================================================ */
.gi-uc{align-items:center;justify-content:center;gap:12px;text-align:center}
.gi-uc-icon{font-size:40px;color:var(--gi-acc2)}
.gi-uc-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;width:100%}
.gi-uc-grid>div{padding:13px 10px;border-radius:12px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08)}
.gi-uc-grid b{display:block;font-family:'Space Grotesk','Manrope',sans-serif;font-size:1.15rem;font-weight:700;color:#fff;line-height:1.1;letter-spacing:-.02em}
.gi-uc-grid small{display:block;font-size:.64rem;color:#93a9c8;margin-top:5px;line-height:1.3}
.gi-uclist{gap:7px;justify-content:center}

.uc-two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,58px);align-items:start}
.uc-two h2{font-size:clamp(1.35rem,2vw,1.75rem);margin:0 0 20px;letter-spacing:-.02em}
.uc-list{display:flex;flex-direction:column;gap:12px}
.uc-item{padding:16px 18px;border-radius:14px;background:#f5f8fc;border:1px solid rgba(11,53,115,.10);border-left:3px solid #d98a8a;border-radius:0 14px 14px 0}
.uc-item.uc-fix{background:#f1f9f5;border-color:rgba(47,187,122,.22);border-left-color:#2fbb7a}
.uc-item b{display:block;font-size:.98rem;color:#0b2244;margin-bottom:6px;line-height:1.3}
.uc-item p{margin:0;font-size:.87rem;line-height:1.6;color:#4a5c74}
.uc-links{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:26px}

.uc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}
.uc-card{position:relative;display:flex;flex-direction:column;padding:24px 22px;border-radius:18px;background:#fff;border:1px solid rgba(11,53,115,.12);text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s}
.uc-card:hover{transform:translateY(-3px);box-shadow:0 22px 46px -22px rgba(11,53,115,.32);border-color:rgba(47,123,255,.4)}
.uc-card-ico{font-size:28px;color:#2f7bff;margin-bottom:14px}
.uc-card-num{position:absolute;top:20px;right:22px;font-family:'Space Grotesk','Manrope',sans-serif;font-size:1.5rem;font-weight:700;color:rgba(11,53,115,.12)}
.uc-card b{display:block;font-size:1.05rem;line-height:1.32;color:#0b2244;margin-bottom:8px;letter-spacing:-.01em}
.uc-card-eb{display:inline-block;font-size:.6rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:#2f7bff;background:rgba(47,123,255,.09);border:1px solid rgba(47,123,255,.2);padding:3px 9px;border-radius:999px;margin-bottom:12px;align-self:flex-start}
.uc-card p{margin:0 0 16px;font-size:.87rem;line-height:1.6;color:#4a5c74;flex:1}
.uc-card-go{font-size:.83rem;font-weight:700;color:#2f7bff}

/* ============================================================
   BLOG
   ============================================================ */
.bl-feature{display:flex;flex-direction:column;padding:26px 24px;border-radius:20px;text-decoration:none;
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02)),linear-gradient(160deg,#071c36,#040f1e);
  border:1px solid rgba(255,255,255,.13);box-shadow:0 40px 84px -34px rgba(0,0,0,.8);transition:transform .2s,border-color .2s}
.bl-feature:hover{transform:translateY(-3px);border-color:rgba(47,123,255,.45)}
.bl-feature-tag{align-self:flex-start;font-family:'Space Grotesk','Manrope',sans-serif;font-size:.58rem;font-weight:700;letter-spacing:.14em;color:#77e0ac;background:rgba(47,187,122,.13);border:1px solid rgba(47,187,122,.34);padding:4px 10px;border-radius:999px;margin-bottom:14px}
.bl-feature b{display:block;font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.25;color:#fff;letter-spacing:-.02em;margin-bottom:10px}
.bl-feature p{margin:0 0 18px;font-size:.9rem;line-height:1.6;color:#a9bdd8}
.bl-cat{display:inline-block;font-size:.6rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:#7fb2ff;margin-bottom:8px}
.bl-foot{display:flex;align-items:center;gap:14px;font-size:.74rem;color:#8ba3c4;margin-top:auto}
.bl-go{margin-left:auto;color:#a9d4ff;font-weight:700}

.bl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}
.bl-card{display:flex;flex-direction:column;padding:24px 22px;border-radius:18px;background:#fff;border:1px solid rgba(11,53,115,.12);text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s}
.bl-card:hover{transform:translateY(-3px);box-shadow:0 22px 46px -22px rgba(11,53,115,.32);border-color:rgba(47,123,255,.4)}
.bl-card .bl-cat{color:#2f7bff}
.bl-card b{display:block;font-size:1.05rem;line-height:1.32;color:#0b2244;letter-spacing:-.01em;margin-bottom:9px}
.bl-card p{margin:0 0 18px;font-size:.87rem;line-height:1.6;color:#4a5c74;flex:1}
.bl-card .bl-foot{color:#6f8099}

/* ---- article ---- */
.post-head{padding:clamp(120px,15vh,168px) 0 clamp(44px,6vh,68px)}
.post-head-inner{max-width:820px}
.post-meta{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;font-size:.76rem;color:#8ba3c4;margin-bottom:16px}
.post-cat{font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:.62rem;color:#7fb2ff;background:rgba(47,123,255,.12);border:1px solid rgba(47,123,255,.28);padding:4px 10px;border-radius:999px}
.post-head h1{font-size:clamp(1.9rem,3.6vw,3.05rem);line-height:1.12;letter-spacing:-.028em;color:#fff;margin:0 0 18px;font-weight:800}
.post-standfirst{font-size:clamp(1rem,1.25vw,1.16rem);line-height:1.62;color:#b9cbe4;margin:0;max-width:62ch}

.post-body-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:clamp(30px,4vw,64px);align-items:start}
.post-toc{position:sticky;top:104px}
.post-toc>b{display:block;font-size:.64rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#6f8099;margin-bottom:12px}
.post-toc ol{margin:0 0 26px;padding-left:18px;display:flex;flex-direction:column;gap:9px}
.post-toc li{font-size:.85rem;line-height:1.4}
.post-toc a{color:#2b4a75;text-decoration:none}
.post-toc a:hover{color:#2f7bff;text-decoration:underline}
.post-toc-cta{padding:18px;border-radius:14px;background:#f5f8fc;border:1px solid rgba(11,53,115,.10)}
.post-toc-cta b{display:block;font-size:.92rem;color:#0b2244;margin-bottom:6px}
.post-toc-cta p{margin:0 0 14px;font-size:.8rem;line-height:1.5;color:#4a5c74}

.post-body{max-width:74ch}
.post-body h2{font-size:clamp(1.3rem,2vw,1.62rem);line-height:1.25;letter-spacing:-.02em;color:#0b2244;margin:34px 0 14px;scroll-margin-top:104px}
.post-body h2:first-child{margin-top:0}
.post-body p{font-size:1rem;line-height:1.75;color:#3f5470;margin:0 0 16px}
.post-takeaways{margin:34px 0 0;padding:22px 24px;border-radius:16px;background:#f1f9f5;border:1px solid rgba(47,187,122,.24)}
.post-takeaways b{display:block;font-size:.66rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#1d7a52;margin-bottom:12px}
.post-takeaways ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:9px}
.post-takeaways li{font-size:.92rem;line-height:1.6;color:#25412f}
.post-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}

@media(max-width:900px){
  .uc-two{grid-template-columns:1fr;gap:34px}
  .gi-uc-grid{grid-template-columns:1fr 1fr}
  .post-body-grid{grid-template-columns:1fr;gap:28px}
  .post-toc{position:static}
  .post-toc ol{margin-bottom:20px}
}
@media(max-width:620px){
  .uc-card-num{font-size:1.2rem;top:16px;right:18px}
  .uc-links,.post-links{flex-direction:column}
  .uc-links .button,.post-links .button{width:100%;justify-content:center}
  .bl-foot{flex-wrap:wrap;gap:8px 12px}
  .bl-go{margin-left:0}
}

/* ---- executive value section (homepage) ---- */
.exec-section{background:linear-gradient(180deg,#f6f9fd,#eef4fb);border-top:1px solid rgba(11,53,115,.08)}
.exec-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px;margin-bottom:26px}
.exec-card{display:flex;flex-direction:column;padding:24px 22px;border-radius:18px;background:#fff;border:1px solid rgba(11,53,115,.12)}
.exec-ico{font-size:28px;color:#2f7bff;margin-bottom:14px}
.exec-card b{display:block;font-size:1.12rem;color:#0b2244;letter-spacing:-.01em}
.exec-sub{display:block;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:#7086a3;margin:5px 0 12px}
.exec-card p{margin:0 0 16px;font-size:.87rem;line-height:1.6;color:#4a5c74;flex:1}
.exec-tag{align-self:flex-start;font-size:.7rem;font-weight:700;color:#1d7a52;background:rgba(47,187,122,.11);border:1px solid rgba(47,187,122,.26);padding:5px 11px;border-radius:999px;line-height:1.3}
.exec-note{display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding:22px 24px;border-radius:16px;background:#0b2244;border:1px solid rgba(11,53,115,.2)}
.exec-note p{margin:0;flex:1;min-width:260px;font-size:.9rem;line-height:1.62;color:#c2d4ea}
.exec-note b{color:#fff}
@media(max-width:620px){.exec-note{flex-direction:column;align-items:stretch}.exec-note .button{width:100%;justify-content:center}}

/* residual class coverage */
.accordion{display:flex;flex-direction:column;gap:10px}

/* ============================================================
   RESPONSIVE SAFETY NET — last block in the file, wins on order
   ============================================================ */

/* nothing may exceed the viewport */
*,*::before,*::after{box-sizing:border-box}
img,picture,svg,video,canvas{max-width:100%;height:auto}
body{overflow-x:hidden}
h1,h2,h3,h4,p,li,b,span,small,em,time,summary{overflow-wrap:anywhere}

/* grid children may never be forced wider than their track */
.feature-grid>*,.uc-grid>*,.bl-grid>*,.exec-grid>*,.device-grid>*,.heritage-grid>*,
.industry-card-grid>*,.gi-uc-grid>*,.hh-cred-grid>*,.hh-band-inner>*,.hhc-kpis>*,
.gi-foot>*,.hhc-split>*,.uc-two>*,.post-body-grid>*,.split>*{min-width:0}

@media(max-width:900px){
  .uc-two,.hhc-split,.vts-grid,.hh-cred-inner,.post-body-grid{grid-template-columns:1fr!important}
}

@media(max-width:620px){
  /* every multi-column grid becomes one column */
  .feature-grid,.uc-grid,.bl-grid,.exec-grid,.device-grid,.heritage-grid,
  .industry-card-grid,.gi-agents,.gi-sectors,.gi-chips,.gi-dials,.gi-vs,
  .heritage-domains,.uc-two,.hhc-split,.vts-grid,.hh-grid,.post-body-grid{
    grid-template-columns:1fr!important}
  .gi-uc-grid,.hh-cred-grid,.hhc-kpis,.gi-foot,.hh-band-inner{grid-template-columns:1fr 1fr!important}

  /* type scale */
  .post-head h1{font-size:clamp(1.65rem,7.5vw,2.15rem)}
  .post-body h2{font-size:clamp(1.15rem,5vw,1.35rem)}
  .uc-two h2{font-size:clamp(1.2rem,5.2vw,1.45rem)}

  /* buttons stack full width so nothing is cut off */
  .hero-actions{flex-direction:column;align-items:stretch}
  .hero-actions .button{width:100%;justify-content:center}

  /* long ids and pills must wrap rather than clip */
  .gi-row{flex-wrap:wrap}
  .gi-row .d{flex:1 1 100%;order:3}
  .gi-row>.gi-bar{flex:1 1 100%;order:4}
  .post-meta{gap:6px 12px}
}

@media(max-width:420px){
  .gi-uc-grid,.hh-cred-grid,.hhc-kpis,.hh-band-inner{grid-template-columns:1fr!important}
  .gi-foot{grid-template-columns:1fr 1fr!important}
  .gi-tiles{grid-template-columns:repeat(6,1fr)}
  .gi-cells{grid-template-columns:repeat(6,1fr)}
  .gi-days{grid-template-columns:repeat(4,1fr)}
  .gi-slots{grid-template-columns:repeat(5,1fr)}
  .gi-stops{grid-template-columns:repeat(2,1fr)}
  .exec-note{padding:18px}
}

/* ============================================================
   CONTAINER SYSTEM — single source of truth for page gutters.
   Must stay the last container declaration in this file.
   Legacy layers set .container and .page-hero>.container many
   times with , so these carry !important to win.
   ============================================================ */
:root{
  --gf-max:1320px;
  --gf-gutter:clamp(20px,4.5vw,72px);
}
.container,
.page-hero>.container,
.route-page-hero>.container,
.home-hero>.container,
.post-head>.container{
  width:min(var(--gf-max),calc(100% - (var(--gf-gutter) * 2)))!important;
  max-width:100%!important;
  margin-inline:auto!important;
}
.nav-wrap{width:min(var(--gf-max),calc(100% - (var(--gf-gutter) * 2)))!important;margin-inline:auto!important}

/* narrower measure for reading columns, still inside the same gutter */
.post-head-inner{max-width:820px}
.legal-copy{max-width:820px}

@media(max-width:1100px){:root{--gf-gutter:clamp(20px,4vw,44px)}}
@media(max-width:620px){:root{--gf-gutter:18px}}
@media(max-width:380px){:root{--gf-gutter:14px}}

/* ============================================================
   USE CASE HERO PANELS — one distinct instrument per page
   ============================================================ */
.ucp{gap:9px;justify-content:center}
.ucp .tr{display:block;flex:1;height:6px;border-radius:999px;background:rgba(255,255,255,.10);overflow:hidden;min-width:34px}
.ucp .tr i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--gi-acc),var(--gi-acc2))}
.ucp .tr i.ok{background:linear-gradient(90deg,#2fbb7a,#5fdca0)}
.ucp .tr i.warn{background:linear-gradient(90deg,#e5992c,#ffc165)}
.ucp .tr i.crit,.ucp .tr i.rose{background:linear-gradient(90deg,#ef5a68,#ff8a94)}

/* --- fuel reconciliation --- */
.ucp-sig{display:flex;align-items:center;gap:10px;font-size:.74rem}
.ucp-sig .lb{width:96px;flex:none;color:#c2d4ea}
.ucp-sig .vl{width:56px;flex:none;text-align:right;font-family:'Space Grotesk','Manrope',sans-serif;color:#fff;font-size:.72rem}
.ucp-verdict{display:flex;gap:11px;align-items:flex-start;margin-top:5px;padding:12px 13px;border-radius:12px;background:rgba(239,90,104,.11);border:1px solid rgba(239,90,104,.30)}
.ucp-verdict>.material-symbols-rounded{font-size:21px;color:#ff8a94;flex:none}
.ucp-verdict b{display:block;font-size:.82rem;color:#fff}
.ucp-verdict span{display:block;font-size:.69rem;color:#d8b3b8;line-height:1.4;margin-top:2px}

/* --- lane margin waterfall --- */
.ucp-axis{display:flex;justify-content:space-between;font-size:.58rem;letter-spacing:.06em;color:#7e95b5;padding:0 0 2px}
.ucp-lane{display:flex;align-items:center;gap:9px;font-size:.73rem}
.ucp-lane .ln{width:92px;flex:none;color:#c2d4ea;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ucp-lane .tk{position:relative;flex:1;height:16px;min-width:60px;border-radius:4px;background:rgba(255,255,255,.05)}
.ucp-lane .tk:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:rgba(255,255,255,.28)}
.ucp-lane .tk i{position:absolute;top:3px;bottom:3px;border-radius:3px}
.ucp-lane .tk i.pos{background:linear-gradient(90deg,#2fbb7a,#5fdca0)}
.ucp-lane .tk i.neg{background:linear-gradient(90deg,#ff8a94,#ef5a68)}
.ucp-lane .vl{width:52px;flex:none;text-align:right;font-family:'Space Grotesk','Manrope',sans-serif;font-weight:700;font-size:.71rem}
.ucp-lane .vl.up{color:#5fdca0}
.ucp-lane .vl.dn{color:#ff8a94}

/* --- service runway --- */
.ucp-scale{display:flex;justify-content:space-between;font-size:.57rem;letter-spacing:.05em;color:#7e95b5;padding-left:106px}
.ucp-track{display:flex;align-items:center;gap:10px;font-size:.72rem}
.ucp-track .nm{width:96px;flex:none;color:#c2d4ea;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ucp-track .rw{position:relative;flex:1;height:15px;min-width:80px;border-radius:4px;background:rgba(255,255,255,.05)}
.ucp-track .rw i{position:absolute;top:4px;height:7px;border-radius:999px;background:linear-gradient(90deg,#2f7bff,#63b3ff)}
.ucp-track .rw i.crit{background:linear-gradient(90deg,#ef5a68,#ff8a94)}
.ucp-track .rw i.warn{background:linear-gradient(90deg,#e5992c,#ffc165)}
.ucp-track .rw i.ok{background:linear-gradient(90deg,#2fbb7a,#5fdca0)}
.ucp-track .mk{position:absolute;top:-2px;transform:translateX(-50%);font-family:'Space Grotesk','Manrope',sans-serif;font-size:.56rem;color:#fff;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);padding:1px 5px;border-radius:999px;white-space:nowrap}
.ucp-slot{display:flex;align-items:center;gap:10px;margin-top:4px;padding:11px 13px;border-radius:12px;background:rgba(47,187,122,.10);border:1px solid rgba(47,187,122,.28);flex-wrap:wrap}
.ucp-slot>.material-symbols-rounded{font-size:20px;color:#77e0ac;flex:none}
.ucp-slot b{font-size:.78rem;color:#fff}
.ucp-slot span:not(.material-symbols-rounded){font-size:.68rem;color:#9fd8bb;width:100%;padding-left:30px}

/* --- driver risk distribution --- */
.ucp-ringwrap{display:flex;align-items:center;gap:16px}
.ucp-ring{--pct:80%;position:relative;width:96px;height:96px;flex:none;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--gi-acc) var(--pct),rgba(255,255,255,.10) 0)}
.ucp-ring:before{content:"";position:absolute;inset:9px;border-radius:50%;background:#07172c}
.ucp-ring>div{position:relative;text-align:center}
.ucp-ring b{display:block;font-family:'Space Grotesk','Manrope',sans-serif;font-size:1.5rem;font-weight:700;color:#fff;line-height:1}
.ucp-ring span{display:block;font-size:.52rem;letter-spacing:.12em;color:#93a9c8;margin-top:3px}
.ucp-bands{flex:1;display:flex;flex-direction:column;gap:7px;min-width:0}
.ucp-bands>div{display:flex;align-items:center;gap:9px;font-size:.71rem}
.ucp-bands .bd{width:64px;flex:none;color:#c2d4ea}
.ucp-bands .ct{width:32px;flex:none;text-align:right;font-family:'Space Grotesk','Manrope',sans-serif;color:#fff;font-size:.7rem}
.ucp-flag{display:flex;gap:11px;align-items:flex-start;margin-top:5px;padding:12px 13px;border-radius:12px;background:rgba(239,90,104,.10);border:1px solid rgba(239,90,104,.28)}
.ucp-flag>.material-symbols-rounded{font-size:20px;color:#ff8a94;flex:none}
.ucp-flag b{display:block;font-size:.79rem;color:#fff;line-height:1.3}
.ucp-flag span{display:block;font-size:.68rem;color:#d8b3b8;line-height:1.4;margin-top:2px}

/* --- government audit chain --- */
.ucp-stamp{display:flex;align-items:center;gap:11px;padding:11px 13px;border-radius:12px;background:rgba(47,187,122,.10);border:1px solid rgba(47,187,122,.28)}
.ucp-stamp>.material-symbols-rounded{font-size:24px;color:#77e0ac;flex:none}
.ucp-stamp b{display:block;font-size:.85rem;color:#fff}
.ucp-stamp span{display:block;font-size:.68rem;color:#9fd8bb;margin-top:1px}
.ucp-chain>div{display:grid;grid-template-columns:24px 1fr;gap:10px;padding-bottom:8px;position:relative}
.ucp-chain>div:not(:last-child):before{content:"";position:absolute;left:12px;top:25px;bottom:0;width:1px;background:rgba(255,255,255,.14)}
.ucp-chain em{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;font-style:normal;font-family:'Space Grotesk','Manrope',sans-serif;font-size:.68rem;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);color:#9fb6d6}
.ucp-chain .done em{background:rgba(47,187,122,.18);border-color:rgba(47,187,122,.45);color:#77e0ac}
.ucp-chain .now em{background:rgba(47,123,255,.20);border-color:rgba(47,123,255,.5);color:#8fc4ff}
.ucp-chain b{display:block;font-size:.77rem;color:#fff;line-height:1.25}
.ucp-chain span{display:block;font-size:.66rem;color:#93a9c8;margin-top:1px}

/* --- VTS signal reuse --- */
.ucp-dev{display:flex;align-items:center;gap:11px;padding:12px 13px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);position:relative}
.ucp-dev>.material-symbols-rounded{font-size:24px;color:var(--gi-acc2);flex:none}
.ucp-dev b{display:block;font-size:.85rem;color:#fff}
.ucp-dev>div>span{display:block;font-size:.68rem;color:#93a9c8;margin-top:1px}
.ucp-dot{width:8px;height:8px;border-radius:50%;background:#5fdca0;margin-left:auto;box-shadow:0 0 10px #5fdca0;animation:giPulse 2s ease-in-out infinite}
.ucp-fan{display:grid;grid-template-columns:repeat(4,1fr);height:18px}
.ucp-fan i{justify-self:center;width:1px;height:100%;background:linear-gradient(180deg,rgba(255,255,255,.32),rgba(255,255,255,.06))}
.ucp-outs{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}
.ucp-outs>div{text-align:center;padding:11px 5px;border-radius:11px;background:rgba(47,123,255,.10);border:1px solid rgba(47,123,255,.26)}
.ucp-outs .material-symbols-rounded{font-size:19px;color:#8fc4ff}
.ucp-outs b{display:block;font-size:.63rem;color:#dbe6f5;margin-top:5px;line-height:1.25}
.ucp-zero{display:flex;align-items:center;gap:12px;margin-top:4px;padding:12px 13px;border-radius:12px;background:rgba(47,187,122,.10);border:1px solid rgba(47,187,122,.28)}
.ucp-zero b{font-family:'Space Grotesk','Manrope',sans-serif;font-size:1.5rem;font-weight:700;color:#8fe9bd;flex:none;line-height:1}
.ucp-zero span{font-size:.7rem;color:#9fd8bb;line-height:1.4}

@media(max-width:620px){
  .ucp-ringwrap{flex-direction:column;align-items:stretch;gap:14px}
  .ucp-ring{margin:0 auto}
  .ucp-scale{padding-left:0}
  .ucp-track .nm,.ucp-lane .ln,.ucp-sig .lb{width:82px}
  .ucp-outs,.ucp-fan{grid-template-columns:repeat(2,1fr)}
  .ucp-fan{height:14px}
  .ucp-outs{gap:7px}
}

/* per-panel stage rhythm */
.ucp-recon{gap:10px}
.ucp-water{gap:8px}
.ucp-runway{gap:9px}
.ucp-risk{gap:12px}
.ucp-audit{gap:12px}
.ucp-reuse{gap:0}
.ucp-reuse .ucp-outs{margin-top:0}

/* full-bleed blocks brought into the same gutter as .container */
.operating-gap-panel,
.operating-gap-edge{
  width:min(var(--gf-max),calc(100% - (var(--gf-gutter) * 2)))!important;
  margin-inline:auto!important;
}
.not-found{
  width:min(var(--gf-max),calc(100% - (var(--gf-gutter) * 2)));
  margin-inline:auto;
  padding-block:clamp(96px,16vh,180px) clamp(48px,8vh,96px);
  text-align:center;
}
.not-found img{width:150px;height:auto;margin:0 auto 22px;display:block}
.not-found .hero-actions{justify-content:center;flex-wrap:wrap}

/* ---- homepage use-case teaser ---- */
.res-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.res-card{display:flex;flex-direction:column;gap:10px;padding:20px 18px;border-radius:16px;text-decoration:none;
  background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.10);transition:transform .2s,border-color .2s,background .2s}
.res-card:hover{transform:translateY(-3px);background:rgba(255,255,255,.07);border-color:rgba(47,123,255,.45)}
.res-card>.material-symbols-rounded{font-size:24px;color:#63b3ff}
.res-card b{font-size:.95rem;line-height:1.35;color:#fff;letter-spacing:-.01em;flex:1}
.rc-go{font-size:.72rem;font-weight:700;letter-spacing:.05em;color:#a9d4ff}
.res-foot{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:26px}
@media(max-width:620px){
  .res-grid{grid-template-columns:1fr!important}
  .res-foot{flex-direction:column}
  .res-foot .button{width:100%;justify-content:center}
}

/* ============================================================
   CALL TO ACTION — .container provides the page gutter,
   .mini-cta-box provides its own internal padding.
   ============================================================ */
.mini-cta{padding-top:clamp(28px,5vh,52px);padding-bottom:clamp(40px,7vh,80px)}
.mini-cta-box{
  position:relative;overflow:hidden;
  display:grid!important;
  grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);
  align-items:center;
  gap:clamp(26px,4vw,56px)!important;
  padding:clamp(30px,4.4vw,60px)!important;
  border-radius:clamp(18px,2vw,28px)!important;
  background:
    radial-gradient(120% 140% at 8% 0%,rgba(47,123,255,.34),transparent 58%),
    radial-gradient(90% 120% at 100% 100%,rgba(47,187,122,.20),transparent 60%),
    linear-gradient(145deg,#06182f,#0a2f5c)!important;
  border:1px solid rgba(255,255,255,.13);
  box-shadow:0 40px 90px -38px rgba(0,0,0,.75),inset 0 1px 0 rgba(255,255,255,.09);
}
.mini-cta-box:before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:46px 46px;
  -webkit-mask-image:radial-gradient(80% 80% at 70% 30%,#000,transparent 75%);
  mask-image:radial-gradient(80% 80% at 70% 30%,#000,transparent 75%);
}
.mcta-copy,.mcta-act{position:relative;z-index:1;min-width:0}
.mini-cta-box h2{font-size:clamp(1.5rem,2.7vw,2.35rem)!important;line-height:1.16;letter-spacing:-.025em;margin:0 0 12px}
.mini-cta-box p{margin:0;max-width:56ch!important;font-size:.95rem;line-height:1.65;color:rgba(255,255,255,.74)!important}

.mcta-act{display:flex;flex-direction:column;align-items:stretch;gap:12px}
.mcta-primary{justify-content:center;gap:9px;width:100%;padding-block:15px;font-size:1rem}
.mcta-alt{text-align:center;font-size:.84rem;font-weight:600;color:#a9d4ff;text-decoration:none;padding:2px}
.mcta-alt:hover{color:#fff;text-decoration:underline}
.mcta-trust{display:flex;align-items:center;justify-content:center;gap:8px;text-align:center;
  font-size:.72rem;line-height:1.4;color:#9fb6d6;padding-top:10px;border-top:1px solid rgba(255,255,255,.12)}
.mcta-trust .material-symbols-rounded{font-size:17px;color:#5fdca0;flex:none}

@media(max-width:900px){
  .mini-cta-box{grid-template-columns:1fr!important;gap:24px!important}
  .mini-cta-box p{max-width:none!important}
  .mcta-act{max-width:420px}
}
@media(max-width:620px){
  .mini-cta-box{padding:26px 22px!important;text-align:left}
  .mcta-act{max-width:none}
  .mcta-trust{justify-content:flex-start;text-align:left}
}

/* ============================================================
   FOOTER — brand + contact, then a five-column link grid
   ============================================================ */
.site-footer{background:#03101f;border-top:1px solid rgba(255,255,255,.08);padding:clamp(44px,7vh,76px) 0 0;color:#a9bdd8}
.site-footer:before{display:none!important}

.footer-top{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);
  align-items:start;padding-bottom:clamp(30px,4vh,44px);border-bottom:1px solid rgba(255,255,255,.09)}
.footer-brand .brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;margin-bottom:16px}
.footer-brand .brand img{width:38px;height:auto}
.footer-brand .brand span{font-size:1.22rem;font-weight:800;color:#fff;letter-spacing:-.02em}
.footer-brand p{margin:0 0 12px;font-size:.92rem;line-height:1.65;color:#9fb6d6;max-width:46ch}
.footer-brand small{font-size:.8rem;color:#7e95b5}

.footer-contact{display:flex;flex-direction:column;gap:9px;align-items:flex-start}
.footer-contact>b{font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#7e95b5;margin-bottom:3px}
.fc-line{display:flex;align-items:center;gap:9px;font-size:.88rem;color:#c2d4ea;text-decoration:none}
a.fc-line:hover{color:#7fb2ff}
.fc-line .material-symbols-rounded{font-size:18px;color:#63b3ff;flex:none}
.fc-note{font-size:.78rem;color:#7e95b5;padding-left:27px;line-height:1.45}
.fc-cta{margin-top:8px}

.footer-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(20px,2.6vw,40px);
  padding:clamp(30px,4.5vh,48px) 0}
.footer-links>div{display:flex;flex-direction:column;gap:11px;min-width:0}
.footer-links b{font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#fff;margin-bottom:3px}
.footer-links a{font-size:.87rem;line-height:1.4;color:#9fb6d6;text-decoration:none;transition:color .15s}
.footer-links a:hover{color:#7fb2ff}

.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  padding:20px 0 26px;border-top:1px solid rgba(255,255,255,.09);font-size:.82rem;color:#7e95b5}
.footer-legal{display:flex;gap:22px;flex-wrap:wrap}
.footer-legal a{color:#9fb6d6;text-decoration:none}
.footer-legal a:hover{color:#7fb2ff;text-decoration:underline}

@media(max-width:1000px){
  .footer-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
}
@media(max-width:820px){
  .footer-top{grid-template-columns:1fr;gap:30px}
  .footer-brand p{max-width:none}
}
@media(max-width:620px){
  .footer-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 20px}
  .footer-bottom{flex-direction:column;align-items:flex-start;gap:12px}
  .footer-legal{gap:16px}
  .fc-cta{width:100%;justify-content:center}
}
@media(max-width:400px){
  .footer-links{grid-template-columns:1fr}
}

/* ============================================================
   LEGAL PAGES — privacy, terms
   ============================================================ */
.legal-hero{background:linear-gradient(160deg,#06182f,#04101f);color:#fff;padding:clamp(118px,15vh,164px) 0 clamp(38px,5vh,58px);border-bottom:1px solid rgba(255,255,255,.08)}
.legal-hero h1{font-size:clamp(1.9rem,3.4vw,2.9rem);line-height:1.14;letter-spacing:-.026em;margin:0 0 14px;font-weight:800;color:#fff}
.legal-hero p{margin:0 0 16px;max-width:64ch;font-size:clamp(.96rem,1.2vw,1.08rem);line-height:1.62;color:#b9cbe4}
.legal-updated{display:inline-block;font-size:.74rem;letter-spacing:.05em;color:#8ba3c4;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);padding:5px 12px;border-radius:999px}

.legal-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:clamp(28px,4vw,60px);align-items:start}
.legal-toc{position:sticky;top:104px}
.legal-toc>b{display:block;font-size:.64rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#6f8099;margin-bottom:12px}
.legal-toc ol{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px}
.legal-toc li{font-size:.83rem;line-height:1.35}
.legal-toc a{color:#2b4a75;text-decoration:none}
.legal-toc a:hover{color:#2f7bff;text-decoration:underline}

.legal-copy{max-width:76ch}
.legal-draft{display:flex;gap:12px;align-items:flex-start;padding:16px 18px;margin-bottom:30px;border-radius:14px;background:#fff8ec;border:1px solid rgba(200,140,30,.28)}
.legal-draft .material-symbols-rounded{font-size:20px;color:#b8801c;flex:none;margin-top:1px}
.legal-draft p{margin:0;font-size:.86rem;line-height:1.6;color:#6b5220}
.legal-block{padding:0 0 4px;margin-bottom:26px}
.legal-block h2{font-size:clamp(1.12rem,1.7vw,1.36rem);line-height:1.3;letter-spacing:-.018em;color:#0b2244;margin:0 0 12px;scroll-margin-top:104px}
.legal-block p{margin:0 0 13px;font-size:.94rem;line-height:1.72;color:#3f5470}
.legal-block p:last-child{margin-bottom:0}
.legal-block b{color:#0b2244;font-weight:700}
.legal-block a{color:#2f7bff}

@media(max-width:900px){
  .legal-grid{grid-template-columns:1fr;gap:26px}
  .legal-toc{position:static}
  .legal-toc ol{columns:2;column-gap:24px}
  .legal-copy{max-width:none}
}
@media(max-width:520px){.legal-toc ol{columns:1}}

/* ============================================================
   HOME HERO LEGIBILITY — final word on the hero background.
   The stylesheet declares .home-hero many times across its
   history; an earlier scrim fell to 28% opacity at 38% height,
   exactly where the headline sits, so the photograph showed
   through the type.

   The background photograph is prepared at build time (softened
   and graduated-darkened on its left) rather than blurred with a
   CSS filter — no compositing cost while scrolling on low-end
   devices. It reaches this stylesheet through the --hero-img
   custom property, which index.html sets to a VERSIONED filename
   so a cached copy of an older image can never shadow it.

   Gradients are baked into background-image (not a ::before)
   so their stacking order above the photo is guaranteed and
   cannot be undone by an earlier layer. Keep this block last.

   To let more of the photo through, lower the .90 and .84 stops
   in the wedge. To darken, raise them.
   ============================================================ */
.home-hero{
  background-color:#020b1c!important;
  background-image:
    /* 1. legibility wedge — heaviest under the copy column, lifting toward the console */
    linear-gradient(100deg,
      rgba(2,9,22,.94)  0%,
      rgba(2,11,27,.90) 26%,
      rgba(2,13,32,.80) 44%,
      rgba(2,14,34,.60) 60%,
      rgba(2,13,31,.62) 100%),
    /* 2. vertical darkening: clears the fixed header, seats the section below */
    linear-gradient(180deg,
      rgba(1,7,18,.80) 0%,
      rgba(1,7,18,.22) 22%,
      rgba(1,7,18,.20) 58%,
      rgba(3,17,38,.90) 88%,
      #031126 100%),
    /* 3. the pre-blurred photograph */
    var(--hero-img)!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}

/* faint brand glow behind the console only — never over the copy */
.home-hero::before{
  content:""!important;position:absolute!important;inset:0!important;
  background:radial-gradient(46% 52% at 74% 44%,rgba(47,123,255,.18),transparent 70%)!important;
  z-index:0!important;pointer-events:none!important;
}
.home-hero::after{display:none!important}
.home-hero>.container{position:relative;z-index:2}

/* lift the type itself so it holds up over any part of the image */
.home-hero h1#home-title{
  color:#fff!important;
  text-shadow:0 2px 22px rgba(0,6,18,.72),0 1px 3px rgba(0,6,18,.55)!important;
}
.home-hero h1#home-title em{
  filter:drop-shadow(0 2px 12px rgba(0,6,18,.65));
}
.hh-lead{
  color:#cfdff2!important;
  text-shadow:0 1px 14px rgba(0,6,18,.66)!important;
}
.hh-kicker{
  background:rgba(6,26,58,.72)!important;
  border-color:rgba(96,160,255,.44)!important;
  color:#bcd8ff!important;
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  text-shadow:none!important;
}
.hh-trust{
  color:#bdd3ea!important;
  text-shadow:0 1px 10px rgba(0,6,18,.6)!important;
}
.hh-link{color:#bcdcff!important;text-shadow:0 1px 10px rgba(0,6,18,.55)!important}

/* single-column layouts: the copy is centred over the image, so darken evenly */
@media(max-width:1080px){
  .home-hero{
    background-image:
      linear-gradient(180deg,
        rgba(1,8,20,.88) 0%,
        rgba(2,12,30,.80) 34%,
        rgba(2,13,32,.78) 62%,
        rgba(3,17,38,.92) 88%,
        #031126 100%),
      var(--hero-img)!important;
    background-position:60% center!important;
  }
  .home-hero::before{background:radial-gradient(70% 40% at 50% 30%,rgba(47,123,255,.16),transparent 72%)!important}
}
@media(max-width:620px){
  .home-hero{background-position:64% center!important}
  .home-hero h1#home-title{text-shadow:0 2px 16px rgba(0,6,18,.8)!important}
}

/* if the visitor prefers reduced transparency, drop the photo entirely */
@media(prefers-reduced-transparency:reduce){
  .home-hero{background-image:linear-gradient(160deg,#04162f,#020b1c)!important}
}

/* ---- hero flow infographic ---- */
.hh-flow{display:flex;align-items:stretch;gap:8px;margin:0 0 4px;flex-wrap:nowrap}
.hf-step{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;padding:11px 12px;border-radius:13px;
  background:rgba(7,26,54,.62);border:1px solid rgba(255,255,255,.13);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.hf-step .material-symbols-rounded{font-size:19px;color:#63b3ff}
.hf-step b{font-size:.82rem;color:#fff;line-height:1.25;letter-spacing:-.01em}
.hf-step>span:not(.material-symbols-rounded){font-size:.68rem;color:#9fb6d6;line-height:1.3}
.hf-step.hf-mid{border-color:rgba(139,108,246,.42);background:rgba(28,20,64,.6)}
.hf-step.hf-mid .material-symbols-rounded{color:#b39bff}
.hf-step.hf-out{border-color:rgba(47,187,122,.42);background:rgba(6,34,26,.58)}
.hf-step.hf-out .material-symbols-rounded{color:#5fdca0}
.hf-arrow{align-self:center;flex:none;width:14px;height:2px;border-radius:2px;background:rgba(255,255,255,.3);position:relative}
.hf-arrow:after{content:"";position:absolute;right:-1px;top:50%;width:5px;height:5px;margin-top:-3px;
  border-top:2px solid rgba(255,255,255,.3);border-right:2px solid rgba(255,255,255,.3);transform:rotate(45deg)}

@media(max-width:1080px){.hh-flow{max-width:620px;margin-inline:auto}}
@media(max-width:620px){
  .hh-flow{flex-direction:column;gap:6px}
  .hf-step{flex-direction:row;align-items:center;gap:10px;padding:10px 12px}
  .hf-step .material-symbols-rounded{flex:none}
  .hf-step b{flex:none}
  .hf-arrow{width:2px;height:10px;margin-left:22px;align-self:flex-start}
  .hf-arrow:after{right:auto;left:50%;top:auto;bottom:-1px;margin:0 0 0 -3px;transform:rotate(135deg)}
}

/* ============================================================
   FLEEXOCOMMAND SHOWCASE — the dashboard, now in "Beyond GPS"
   ============================================================ */
.fx-showcase{margin-bottom:clamp(30px,4vh,48px)}
.fx-showcase-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:20px}
.fx-showcase-eb{display:inline-block;font-size:.62rem;font-weight:700;letter-spacing:.15em;color:#2f7bff;background:rgba(47,123,255,.09);border:1px solid rgba(47,123,255,.22);padding:4px 11px;border-radius:999px;margin-bottom:10px}
.fx-showcase-head b{display:block;font-size:clamp(1.15rem,1.9vw,1.6rem);color:#0b2244;letter-spacing:-.02em;line-height:1.25}
.fx-showcase-head p{margin:8px 0 0;max-width:62ch;font-size:.92rem;line-height:1.62;color:#4a5c74}
.fx-showcase-link{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;font-size:.88rem;font-weight:700;color:#2f7bff;text-decoration:none;border-bottom:1px solid rgba(47,123,255,.35);padding-bottom:2px}
.fx-showcase-link:hover{color:#0b2244;border-color:#0b2244}
.fx-showcase-link .material-symbols-rounded{font-size:17px}

/* device frame so it reads as a screenshot sitting on the page */
.fx-frame{
  position:relative;padding:clamp(10px,1.4vw,18px);border-radius:clamp(16px,1.8vw,24px);
  background:linear-gradient(160deg,rgba(11,34,68,.10),rgba(11,34,68,.04));
  border:1px solid rgba(11,53,115,.14);
  box-shadow:0 40px 90px -40px rgba(11,53,115,.45);
}
.fx-frame:before{
  content:"";position:absolute;inset:auto 8% -22px 8%;height:44px;border-radius:50%;
  background:radial-gradient(50% 50% at 50% 50%,rgba(11,53,115,.22),transparent 72%);
  filter:blur(10px);z-index:-1;
}
.fx-frame .fx{font-size:clamp(9px,.78vw,12px)}
@media(max-width:620px){
  .fx-showcase-head{flex-direction:column;align-items:flex-start;gap:14px}
  .fx-frame{padding:8px;border-radius:14px}
}



/* ============================================================
   HERO v4 — one column, no screenshot.
   The photograph is deliberately a secondary layer: a deep navy
   field carries the type, the image supplies depth and the
   fleet/IoT subject matter behind it. Readability is a property
   of the construction, not of gradient luck.
   Keep this block after every other .home-hero / .hh-* rule.
   ============================================================ */
.home-hero{
  position:relative;
  display:flex;align-items:center;
  padding:clamp(126px,18vh,200px) 0 clamp(78px,12vh,124px)!important;
  min-height:min(92vh,880px)!important;height:auto!important;
  background-color:#04101f!important;
  background-image:
    /* copy-side field — near solid left, muted but present right */
    linear-gradient(100deg,
      rgba(3,12,26,.975) 0%,
      rgba(3,13,29,.955) 32%,
      rgba(4,15,34,.88)  52%,
      rgba(4,16,36,.70)  70%,
      rgba(4,15,33,.62)  100%),
    /* seats the section under the header and into the band below */
    linear-gradient(180deg,
      rgba(2,8,19,.80) 0%,
      rgba(2,8,19,.24) 26%,
      rgba(2,8,19,.22) 56%,
      rgba(3,17,38,.90) 88%,
      #031126 100%),
    var(--hero-img)!important;
  background-size:cover!important;
  background-position:64% center!important;
  background-repeat:no-repeat!important;
}
/* fine engineering grid + a single soft glow — the only decoration */
.home-hero::before{
  content:""!important;position:absolute!important;inset:0!important;z-index:0!important;pointer-events:none!important;
  background:
    radial-gradient(38% 46% at 82% 38%,rgba(47,123,255,.20),transparent 72%),
    linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px)!important;
  background-size:auto,58px 58px,58px 58px!important;
  -webkit-mask-image:linear-gradient(100deg,transparent 0%,transparent 34%,#000 72%);
  mask-image:linear-gradient(100deg,transparent 0%,transparent 34%,#000 72%);
}
.home-hero::after{display:none!important}
.home-hero>.container{position:relative;z-index:2}

.hh-grid{display:block!important;grid-template-columns:none!important}
.hh-copy{
  /* capped against the container, never a fixed px width: a fixed
     width grows as a share of a narrowing viewport and walks the
     text out of the darkened field. Verified AAA 320px-2560px. */
  max-width:min(680px,54%)!important;
  margin:0!important;text-align:left!important;
}

/* --- type --- */
.hh-kicker{
  display:inline-flex;align-items:center;gap:9px;margin:0 0 24px!important;
  padding:7px 15px 7px 12px;border-radius:999px;
  font-size:.71rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase;
  color:#c3dcff!important;
  background:rgba(9,32,68,.62)!important;
  border:1px solid rgba(104,166,255,.40)!important;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  text-shadow:none!important;
}
.hh-kicker i{width:6px;height:6px;border-radius:50%;background:#63b3ff;box-shadow:0 0 12px #63b3ff;animation:hhPulse 2.4s ease-in-out infinite}

.home-hero h1#home-title{
  font-size:clamp(2.35rem,5.3vw,4.3rem)!important;
  line-height:1.03!important;letter-spacing:-.034em!important;font-weight:800!important;
  color:#fff!important;margin:0 0 20px!important;
  text-shadow:0 2px 26px rgba(0,5,16,.6)!important;
}
.home-hero h1#home-title span{display:block}
.home-hero h1#home-title em{
  display:block;font-style:normal;
  background:linear-gradient(96deg,#7cc0ff 0%,#a9d4ff 44%,#6fe3ac 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#7cc0ff;
  filter:drop-shadow(0 2px 14px rgba(0,5,16,.55));
}
.hh-lead{
  font-size:clamp(1.02rem,1.4vw,1.2rem)!important;line-height:1.62!important;
  color:#d3e2f4!important;max-width:54ch!important;margin:0 0 32px!important;
  text-shadow:0 1px 16px rgba(0,5,16,.6)!important;
}

/* --- actions --- */
.hh-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin:0 0 38px!important;justify-content:flex-start!important}
.hh-actions .button{display:inline-flex;align-items:center;gap:9px;padding:15px 26px;font-size:1rem}
.hh-link{display:inline-flex;align-items:center;gap:7px;font-weight:700;font-size:.95rem;
  color:#c3dcff!important;text-decoration:none;padding:4px 2px;
  border-bottom:1px solid rgba(195,220,255,.38);transition:color .18s,border-color .18s;
  text-shadow:0 1px 10px rgba(0,5,16,.55)!important}
.hh-link:hover{color:#fff!important;border-color:#fff}
.hh-link .material-symbols-rounded{font-size:18px;transition:transform .18s}
.hh-link:hover .material-symbols-rounded{transform:translateX(3px)}

/* --- signal chain: rules and type, no boxes --- */
.hh-chain{
  display:flex;align-items:flex-start;gap:clamp(12px,1.6vw,26px);
  padding-top:26px;margin:0 0 22px;
  border-top:1px solid rgba(255,255,255,.14);
}
.hc-node{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.hc-node .material-symbols-rounded{font-size:21px;color:#7fb2ff;margin-bottom:5px}
.hc-node b{font-size:.88rem;font-weight:700;color:#fff;line-height:1.25;letter-spacing:-.01em;
  text-shadow:0 1px 10px rgba(0,5,16,.55)}
.hc-node small{font-size:.72rem;line-height:1.35;color:#b7cee6;text-shadow:0 1px 10px rgba(0,5,16,.5)}
.hc-ai .material-symbols-rounded{color:#b39bff}
.hc-out .material-symbols-rounded{color:#6fe3ac}
.hc-link{flex:none;align-self:center;margin-top:14px;width:clamp(14px,2vw,30px);height:1px;
  background:linear-gradient(90deg,rgba(255,255,255,.42),rgba(255,255,255,.16));position:relative}
.hc-link:after{content:"";position:absolute;right:0;top:50%;width:5px;height:5px;margin-top:-3px;
  border-top:1px solid rgba(255,255,255,.42);border-right:1px solid rgba(255,255,255,.42);transform:rotate(45deg)}

.hh-trust{display:flex;align-items:center;gap:9px;margin:0!important;justify-content:flex-start!important;
  font-size:.8rem;color:#b7cee6!important;text-shadow:0 1px 10px rgba(0,5,16,.55)!important}
.hh-trust .material-symbols-rounded{font-size:19px;color:#6fe3ac;flex:none}

/* --- scroll cue --- */
.hh-cue{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);z-index:2;
  width:23px;height:37px;border-radius:999px;border:1px solid rgba(255,255,255,.28)}
.hh-cue span{position:absolute;left:50%;top:8px;width:3px;height:7px;margin-left:-1.5px;border-radius:999px;
  background:rgba(255,255,255,.7);animation:hhCue 2.1s ease-in-out infinite}
@keyframes hhCue{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(13px)}}

/* --- narrower desktops / tablets --- */
@media(max-width:1100px){
  .home-hero{
    min-height:0!important;
    background-image:
      linear-gradient(104deg,
        rgba(3,12,26,.975) 0%,
        rgba(3,13,29,.955) 36%,
        rgba(4,15,34,.86)  62%,
        rgba(4,15,33,.72)  100%),
      linear-gradient(180deg,
        rgba(2,8,19,.80) 0%,
        rgba(2,8,19,.28) 26%,
        rgba(2,8,19,.26) 56%,
        rgba(3,17,38,.90) 88%,
        #031126 100%),
      var(--hero-img)!important;
    background-position:68% center!important;
  }
  .hh-copy{max-width:min(640px,74%)!important}
  .hh-cue{display:none}
}
@media(max-width:820px){
  .home-hero{
    padding:clamp(108px,15vh,150px) 0 clamp(52px,8vh,80px)!important;
    background-image:
      linear-gradient(180deg,
        rgba(2,9,21,.92) 0%,
        rgba(3,13,31,.86) 34%,
        rgba(3,14,33,.84) 62%,
        rgba(3,17,38,.92) 88%,
        #031126 100%)!important;
    background-position:66% center!important;
  }
  .home-hero::before{
    -webkit-mask-image:linear-gradient(180deg,transparent,#000 60%);
    mask-image:linear-gradient(180deg,transparent,#000 60%)!important;
  }
  .hh-copy{max-width:100%!important}
  .hh-chain{flex-wrap:wrap;gap:18px}
  .hc-node{flex:1 1 100%;flex-direction:row;align-items:flex-start;gap:12px}
  .hc-node .material-symbols-rounded{margin-bottom:0;flex:none;margin-top:1px}
  .hc-node b{flex:none}
  .hc-link{display:none}
}
@media(max-width:620px){
  .home-hero h1#home-title{font-size:clamp(2.05rem,9.4vw,2.9rem)!important}
  .hh-actions{flex-direction:column;align-items:stretch;gap:14px}
  .hh-actions .button{width:100%;justify-content:center}
  .hh-link{justify-content:center;border-bottom:0}
  .hh-trust{align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){.hh-cue span,.hh-kicker i{animation:none}}
@media(prefers-reduced-transparency:reduce){
  .home-hero{background-image:linear-gradient(160deg,#04162f,#020b1c)!important}
}

/* ============================================================
   OPERATING GAP — align the panel to the site container.
   `.operating-gap-panel.operating-gap-edge` is two classes, so
   it outranks the one-class container rule no matter how many
   !importants that carries. This selector matches its weight.
   ============================================================ */
.operating-gap-section{padding-inline:0!important}
.operating-gap-panel.operating-gap-edge{
  width:min(var(--gf-max),calc(100% - (var(--gf-gutter) * 2)))!important;
  max-width:none!important;
  margin:0 auto!important;
  align-items:stretch!important;
}
/* the image column stretches to the row instead of sitting at a
   fixed height inside a centred row, which left it floating */
.operating-gap-panel.operating-gap-edge>.operating-gap-image{
  height:auto!important;
  min-height:clamp(230px,19vw,330px);
  align-self:stretch!important;
  border-radius:18px!important;
  overflow:hidden;
}
.operating-gap-panel.operating-gap-edge>.operating-gap-image picture,
.operating-gap-panel.operating-gap-edge>.operating-gap-image img{
  width:100%!important;height:100%!important;display:block;
  object-fit:cover!important;object-position:center 56%!important;border-radius:18px!important;
}
.operating-gap-panel.operating-gap-edge>.operating-gap-copy{align-self:center!important}
.operating-gap-panel.operating-gap-edge>.gap-reasons{align-self:center!important}
@media(max-width:900px){
  .operating-gap-panel.operating-gap-edge{width:min(var(--gf-max),calc(100% - (var(--gf-gutter) * 2)))!important}
  .operating-gap-panel.operating-gap-edge>.operating-gap-image{min-height:220px}
}
@media(max-width:620px){
  .operating-gap-panel.operating-gap-edge>.operating-gap-image{min-height:190px}
}

/* ============================================================
   HERO v6 — the photograph stays visible.
   The left of the IMAGE now carries its own softening and
   graduated darkening (baked into the JPEG at build time), so
   the CSS only needs a light scrim rather than an opaque panel.
   Result: the connected-fleet photograph reads across the whole
   hero while the copy still sits on a calm, even field.
   Keep this block last.
   ============================================================ */
.home-hero{
  position:relative;display:flex;align-items:center;
  padding:clamp(122px,17vh,190px) 0 clamp(72px,11vh,116px)!important;
  min-height:min(90vh,860px)!important;height:auto!important;
  background-color:#050f22!important;
  background-image:
    /* light scrim — evens the copy side without hiding the image */
    linear-gradient(100deg,
      rgba(4,12,28,.30) 0%,
      rgba(4,12,28,.30) 46%,
      rgba(4,14,32,.25) 60%,
      rgba(5,16,36,.17) 78%,
      rgba(5,15,33,.14) 100%),
    /* seats the hero under the header and into the band below */
    linear-gradient(180deg,
      rgba(2,8,19,.58) 0%,
      rgba(2,8,19,.12) 26%,
      rgba(2,8,19,.10) 56%,
      rgba(3,17,38,.88) 88%,
      #031126 100%),
    var(--hero-img)!important;
  background-size:cover!important;
  background-position:70% center!important;
  background-repeat:no-repeat!important;
}
.home-hero::before{
  content:""!important;position:absolute!important;inset:0!important;z-index:0!important;pointer-events:none!important;
  background:
    radial-gradient(34% 44% at 84% 40%,rgba(47,123,255,.16),transparent 72%),
    linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px)!important;
  background-size:auto,58px 58px,58px 58px!important;
  -webkit-mask-image:linear-gradient(100deg,transparent 46%,#000 68%);
  mask-image:linear-gradient(100deg,transparent 46%,#000 68%)!important;
}
.home-hero::after{display:none!important}
.home-hero>.container{position:relative;z-index:2}

.hh-grid{display:block!important;grid-template-columns:none!important}
.hh-copy{
  /* container-relative on purpose: a fixed px width grows as a
     share of a narrowing viewport and walks the text off the
     calm side of the image. */
  max-width:min(640px,46%)!important;margin:0!important;text-align:left!important;
}
.home-hero h1#home-title{font-size:clamp(2.2rem,3.9vw,3.4rem)!important;line-height:1.07!important}
.hh-lead{font-size:clamp(1rem,1.2vw,1.09rem)!important;max-width:48ch!important;margin-bottom:28px!important}
/* the image is soft here, but a light shadow keeps the type crisp */
.home-hero h1#home-title{text-shadow:0 2px 20px rgba(0,5,16,.5)!important}
.hh-lead,.hh-trust,.hh-link,.hc-node b,.hc-node small{text-shadow:0 1px 12px rgba(0,5,16,.45)!important}
.hh-chain{padding-top:22px;margin-bottom:20px;border-top-color:rgba(255,255,255,.16)}

@media(max-width:1100px){
  .home-hero{
    min-height:0!important;
    background-image:
      linear-gradient(102deg,
        rgba(4,12,28,.80) 0%,
        rgba(4,12,28,.76) 54%,
        rgba(4,14,32,.62) 70%,
        rgba(5,15,33,.48) 100%),
      linear-gradient(180deg,
        rgba(2,8,19,.58) 0%,
        rgba(2,8,19,.16) 26%,
        rgba(2,8,19,.14) 56%,
        rgba(3,17,38,.88) 88%,
        #031126 100%),
      var(--hero-img)!important;
    background-position:74% center!important;
  }
  .home-hero::before{
    -webkit-mask-image:linear-gradient(102deg,transparent 54%,#000 74%);
    mask-image:linear-gradient(102deg,transparent 54%,#000 74%)!important;
  }
  .hh-copy{max-width:min(620px,56%)!important}
  .hh-cue{display:none}
}
@media(max-width:820px){
  /* single column: the copy spans the width, so the soft-dark part
     of the image is brought under it and the detail sits below */
  .home-hero{
    padding:clamp(106px,15vh,146px) 0 clamp(50px,8vh,78px)!important;
    background-image:
      linear-gradient(180deg,
        rgba(3,11,25,.86) 0%,
        rgba(3,12,28,.86) 62%,
        rgba(3,13,30,.74) 82%,
        rgba(3,17,38,.92) 94%,
        #031126 100%),
      var(--hero-img)!important;
    background-position:left center!important;
  }
  .home-hero::before{
    background:radial-gradient(74% 32% at 50% 86%,rgba(47,123,255,.18),transparent 74%)!important;
    -webkit-mask-image:none;mask-image:none!important;
  }
  .hh-copy{max-width:100%!important}
}
@media(max-width:620px){
  .home-hero h1#home-title{font-size:clamp(2.05rem,8.8vw,2.8rem)!important}
}
@media(prefers-reduced-transparency:reduce){
  .home-hero{background-image:linear-gradient(160deg,#061529,#04101f)!important}
}

/* ============================================================
   FLEEXOCOMMAND — vehicle management console
   Sizing is driven by one font-size on .fx; everything inside is
   in em, so the whole console scales with the viewport.
   ============================================================ */
.fx{
  position:relative;border-radius:clamp(10px,1.1vw,16px);overflow:hidden;
  background:linear-gradient(180deg,#0a1f3d,#061428);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 30px 70px -30px rgba(11,53,115,.55),0 2px 0 rgba(255,255,255,.07) inset;
  font-size:clamp(9px,.76vw,12.5px);
  color:#dbe6f5;line-height:1.35;
}
.fx-chrome{display:flex;align-items:center;gap:.9em;padding:.7em 1em;background:#04101f;border-bottom:1px solid rgba(255,255,255,.09)}
.fx-dots{display:flex;gap:.42em}
.fx-dots i{width:.7em;height:.7em;border-radius:50%;background:#33415a}
.fx-dots i:first-child{background:#ff5f57}.fx-dots i:nth-child(2){background:#febc2e}.fx-dots i:nth-child(3){background:#28c840}
.fx-tab{flex:1;display:flex;align-items:center;gap:.5em;justify-content:center;max-width:24em;margin:0 auto;
  padding:.34em 1em;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);
  font-size:.92em;color:#93a9c8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fx-tab .material-symbols-rounded{font-size:1em;color:#5fdca0}
.fx-chip-live{display:inline-flex;align-items:center;gap:.42em;font-family:'Space Grotesk','Manrope',sans-serif;font-size:.8em;font-weight:700;letter-spacing:.12em;color:#77e0ac;background:rgba(47,187,122,.14);border:1px solid rgba(47,187,122,.34);padding:.24em .7em;border-radius:999px;white-space:nowrap}
.fx-chip-live i{width:.42em;height:.42em;border-radius:50%;background:#5fdca0;animation:hhPulse 1.9s ease-in-out infinite}

.fx-body{display:grid;grid-template-columns:9.4em minmax(0,1fr)}

/* --- module rail --- */
.fx-rail{display:flex;flex-direction:column;gap:.12em;padding:.9em .6em;background:#04101f;border-right:1px solid rgba(255,255,255,.08)}
.fx-logo{display:grid;place-items:center;width:2em;height:2em;border-radius:.6em;background:linear-gradient(135deg,#2f7bff,#5fdca0);color:#04101f;font-weight:800;font-size:1.1em;margin:0 0 .8em .3em}
.fx-rail a{display:flex;align-items:center;gap:.6em;padding:.42em .6em;border-radius:.5em;font-size:.92em;color:#7c93b2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fx-rail a .material-symbols-rounded{font-size:1.25em;flex:none}
.fx-rail a.on{background:rgba(47,123,255,.16);color:#bcdcff;box-shadow:inset 2px 0 0 #3f8bff}
.fx-rail-end{margin-top:auto}

.fx-main{padding:.9em 1.1em 1.1em;display:flex;flex-direction:column;gap:.8em;min-width:0}

/* --- top bar --- */
.fx-top{display:flex;align-items:center;gap:.7em}
.fx-title b{display:block;font-size:1.3em;color:#fff;letter-spacing:-.01em;line-height:1.2}
.fx-title span{display:block;font-size:.9em;color:#7e95b5;margin-top:.1em;white-space:nowrap}
.fx-search{flex:1;display:flex;align-items:center;gap:.5em;min-width:0;margin-left:.6em;
  padding:.42em .8em;border-radius:.5em;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);
  font-size:.9em;color:#6f88a8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fx-search .material-symbols-rounded{font-size:1.15em;flex:none}
.fx-seg{display:flex;border-radius:.5em;overflow:hidden;border:1px solid rgba(255,255,255,.11);flex:none}
.fx-seg i{font-style:normal;padding:.34em .7em;font-size:.9em;color:#8ba3c4;background:rgba(255,255,255,.03)}
.fx-seg i.on{background:rgba(47,123,255,.24);color:#bcdcff}
.fx-bell{position:relative;flex:none;color:#8ba3c4}
.fx-bell .material-symbols-rounded{font-size:1.35em}
.fx-bell em{position:absolute;top:-.3em;right:-.4em;font-style:normal;font-size:.62em;font-weight:700;background:#ef5a68;color:#fff;padding:.05em .38em;border-radius:999px}
.fx-avatar{display:grid;place-items:center;width:2em;height:2em;border-radius:50%;flex:none;background:rgba(47,123,255,.22);border:1px solid rgba(47,123,255,.4);color:#bcdcff;font-size:.86em;font-weight:700}

/* --- KPI strip --- */
.fx-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.55em}
.fx-kpis>div{padding:.62em .7em;border-radius:.6em;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);min-width:0}
.fx-kpis .lb{display:flex;align-items:center;gap:.35em;font-size:.86em;color:#8ba3c4;white-space:nowrap;overflow:hidden}
.fx-kpis .lb .material-symbols-rounded{font-size:1.05em;color:#6d88ab}
.fx-kpis b{display:flex;align-items:baseline;gap:.35em;font-family:'Space Grotesk','Manrope',sans-serif;font-size:1.4em;font-weight:700;color:#fff;margin:.2em 0 .25em;letter-spacing:-.02em}
.fx-kpis em{font-style:normal;font-size:.58em;font-weight:700}
.fx-kpis em.up{color:#5fdca0}
.fx-spark{display:block;width:100%;height:1.35em}
.fx-spark polyline{fill:none;stroke:#5fdca0;stroke-width:1.7;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}
.fx-spark.down polyline{stroke:#63b3ff}

/* --- panels --- */
.fx-split{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:.6em}
.fx-map,.fx-side{border-radius:.6em;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);overflow:hidden;min-width:0;display:flex;flex-direction:column}
.fx-panel-h{display:flex;align-items:center;justify-content:space-between;gap:.5em;padding:.55em .75em;border-bottom:1px solid rgba(255,255,255,.07)}
.fx-panel-h b{display:flex;align-items:center;gap:.42em;font-size:1.02em;color:#fff}
.fx-panel-h b .material-symbols-rounded{font-size:1.15em;color:#63b3ff}
.fx-tag{font-size:.84em;color:#8ba3c4;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.09);padding:.14em .6em;border-radius:999px;white-space:nowrap}
.fx-mtabs{display:flex;gap:.15em;border-radius:.4em;overflow:hidden;border:1px solid rgba(255,255,255,.1)}
.fx-mtabs i{font-style:normal;padding:.2em .55em;font-size:.82em;color:#8ba3c4}
.fx-mtabs i.on{background:rgba(47,123,255,.24);color:#bcdcff}

/* --- the map --- */
.fx-mapwrap{position:relative;flex:1;min-height:0}
.fx-mapsvg{display:block;width:100%;height:clamp(150px,15vw,238px);background:#071a2f}
.m-land{fill:#08192c}
.m-water{fill:#0a2440;opacity:.9}
.m-park{fill:#0d2a26;opacity:.85}
.m-blocks rect{fill:rgba(255,255,255,.05)}
.m-road path{fill:none;vector-effect:non-scaling-stroke;stroke-linecap:round}
.m-minor path{stroke:rgba(255,255,255,.09);stroke-width:1}
.m-primary path{stroke:rgba(255,255,255,.20);stroke-width:2}
.m-motorway-casing path{stroke:rgba(255,255,255,.26);stroke-width:6.4}
.m-motorway path{stroke:#3a4f6d;stroke-width:4.6}
.m-congested path{stroke:#e5992c;stroke-width:4.6;opacity:.85}
.m-geofence{fill:rgba(95,220,160,.10);stroke:rgba(95,220,160,.55);stroke-width:1.4;stroke-dasharray:5 4;vector-effect:non-scaling-stroke}
.m-geolabel{fill:#77e0ac;font-size:7px;font-family:'Space Grotesk','Manrope',sans-serif;letter-spacing:.04em}
.m-route{fill:none;stroke:url(#fxroute);stroke-width:2.8;stroke-linecap:round;vector-effect:non-scaling-stroke;opacity:.45}
.m-route-done{fill:none;stroke:url(#fxroute);stroke-width:3;stroke-linecap:round;vector-effect:non-scaling-stroke;
  stroke-dasharray:8 5;animation:fxDash 3.2s linear infinite}
@keyframes fxDash{to{stroke-dashoffset:-26}}
.m-pins .p-depot{fill:#0a1f38;stroke:#63b3ff;stroke-width:2}
.m-pins .p-dot{fill:#63b3ff}
.m-pins .p-stop{fill:#0a1f38;stroke:rgba(255,255,255,.55);stroke-width:1.6}
.m-veh rect{stroke:#061428;stroke-width:1.4}
.m-veh .v-head{opacity:.9}
.v-ok rect,.v-ok .v-head{fill:#5fdca0}
.v-warn rect,.v-warn .v-head{fill:#ffc165}
.v-risk rect,.v-risk .v-head{fill:#ff8a94}
.v-idle rect,.v-idle .v-head{fill:#8ba3c4}
.m-ping{fill:none;stroke:#5fdca0;stroke-width:1.4;opacity:0;transform-origin:208px 142px;animation:fxPing 2.8s ease-out infinite}
@keyframes fxPing{0%{opacity:.85;transform:scale(.35)}80%{opacity:0;transform:scale(1.5)}100%{opacity:0}}
.m-callout rect{fill:rgba(6,20,40,.94);stroke:rgba(255,255,255,.22);stroke-width:1}
.m-callout .c-tail{fill:rgba(6,20,40,.94)}
.m-callout .c-t{fill:#fff;font-size:8px;font-weight:700;font-family:'Space Grotesk','Manrope',sans-serif}
.m-callout .c-s{fill:#a9bdd8;font-size:7px;font-family:'Manrope',sans-serif}

.fx-mapctl{position:absolute;top:.6em;right:.6em;display:flex;flex-direction:column;border-radius:.4em;overflow:hidden;border:1px solid rgba(255,255,255,.14);background:rgba(6,20,40,.86)}
.fx-mapctl span{display:grid;place-items:center;width:1.75em;height:1.65em;font-size:.95em;color:#bcdcff;border-bottom:1px solid rgba(255,255,255,.1)}
.fx-mapctl span:last-child{border-bottom:0}
.fx-mapctl .material-symbols-rounded{font-size:1.05em}
.fx-mapscale{position:absolute;left:.6em;bottom:.6em;display:flex;align-items:center;gap:.4em;font-size:.78em;color:#a9bdd8;text-shadow:0 1px 3px rgba(0,0,0,.7)}
.fx-mapscale i{display:block;width:2.6em;height:.28em;border:1px solid rgba(255,255,255,.6);border-top:0}
.fx-mapcoord{position:absolute;right:.6em;bottom:.6em;font-size:.74em;color:#8ba3c4;background:rgba(6,20,40,.7);padding:.15em .5em;border-radius:.3em;white-space:nowrap}

.fx-maplegend{display:flex;gap:.8em;flex-wrap:wrap;padding:.5em .75em;border-top:1px solid rgba(255,255,255,.07);font-size:.85em;color:#93a9c8}
.fx-maplegend span{display:flex;align-items:center;gap:.4em}
.fx-maplegend span:before{content:"";width:.5em;height:.5em;border-radius:50%}
.fx-maplegend .l-ok:before{background:#5fdca0}.fx-maplegend .l-idle:before{background:#8ba3c4}
.fx-maplegend .l-warn:before{background:#ffc165}.fx-maplegend .l-risk:before{background:#ff8a94}
.fx-maplegend .l-geo:before{background:transparent;border:1px dashed rgba(95,220,160,.8);border-radius:2px}

/* --- agent feed --- */
.fx-ev{display:flex;gap:.55em;align-items:flex-start;padding:.48em .75em;border-bottom:1px solid rgba(255,255,255,.05)}
.fx-ev>.material-symbols-rounded{font-size:1.15em;flex:none;margin-top:.1em}
.fx-ev .ok{color:#5fdca0}.fx-ev .warn{color:#ffc165}.fx-ev .risk{color:#ff8a94}
.fx-ev b{display:block;font-size:.97em;color:#fff}
.fx-ev div>span{display:block;font-size:.88em;color:#93a9c8;line-height:1.3;margin-top:.05em}
.fx-ev time{margin-left:auto;font-family:'Space Grotesk','Manrope',sans-serif;font-size:.85em;color:#63b3ff;flex:none}
.fx-side-foot{margin-top:auto;display:flex;align-items:center;gap:.45em;padding:.5em .75em;border-top:1px solid rgba(255,255,255,.07);font-size:.82em;color:#7e95b5}
.fx-side-foot .material-symbols-rounded{font-size:1.05em;color:#5fdca0}

/* --- table --- */
.fx-table{border-radius:.6em;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);overflow:hidden}
.fx-ttabs{display:flex;gap:.2em;padding:.45em .75em 0;border-bottom:1px solid rgba(255,255,255,.07)}
.fx-ttabs i{font-style:normal;display:flex;align-items:center;gap:.35em;padding:.35em .7em;font-size:.9em;color:#8ba3c4;border-bottom:2px solid transparent}
.fx-ttabs i.on{color:#fff;border-bottom-color:#3f8bff}
.fx-ttabs em{font-style:normal;font-size:.78em;font-weight:700;background:rgba(239,90,104,.2);color:#ff97a0;padding:.05em .4em;border-radius:999px}
.fx-tr{display:grid;grid-template-columns:1.05fr 1.05fr 1fr .72fr .5fr .82fr .62fr;gap:.5em;padding:.45em .75em;border-bottom:1px solid rgba(255,255,255,.05);font-size:.93em;align-items:center}
.fx-tr:last-child{border-bottom:0}
.fx-tr>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fx-th{background:rgba(255,255,255,.04);font-size:.85em;letter-spacing:.05em;text-transform:uppercase;color:#7e95b5}
.fx-tr .veh{display:flex;align-items:center;gap:.4em;font-family:'Space Grotesk','Manrope',sans-serif}
.fx-tr .veh i{width:.45em;height:.45em;border-radius:50%;flex:none}
.fx-tr .veh i.ok{background:#5fdca0}.fx-tr .veh i.warn{background:#ffc165}.fx-tr .veh i.risk{background:#ff8a94}
.fx-tr .bar{height:.4em;border-radius:999px;background:rgba(255,255,255,.12);overflow:hidden;min-width:2.4em}
.fx-tr .bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#2f7bff,#63b3ff)}
.fx-tr .bar i.amber{background:linear-gradient(90deg,#e5992c,#ffc165)}
.fx-tr .bar i.rose{background:linear-gradient(90deg,#ef5a68,#ff8a94)}
.fx-tr .sc{font-family:'Space Grotesk','Manrope',sans-serif;font-weight:700}
.fx-tr .sc.good{color:#5fdca0}.fx-tr .sc.mid{color:#ffc165}.fx-tr .sc.low{color:#ff8a94}
.fx-tr .st{font-size:.88em;padding:.12em .55em;border-radius:999px;justify-self:start}
.fx-tr .st.ok{color:#77e0ac;background:rgba(47,187,122,.14)}
.fx-tr .st.warn{color:#ffc165;background:rgba(229,153,44,.15)}
.fx-tr .st.risk{color:#ff97a0;background:rgba(239,90,104,.16)}
.fx-tr .mg{font-family:'Space Grotesk','Manrope',sans-serif;font-weight:700;text-align:right}
.fx-tr .mg.up{color:#5fdca0}.fx-tr .mg.dn{color:#ff8a94}

@media(max-width:1080px){.fx{font-size:11px}.fx-body{grid-template-columns:8.6em minmax(0,1fr)}}
@media(max-width:820px){
  .fx-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
  .fx-split{grid-template-columns:1fr}
  .fx-mapsvg{height:210px}
  .fx-search{display:none}
}
@media(max-width:620px){
  .fx{font-size:10px}
  .fx-body{grid-template-columns:1fr}
  .fx-rail{flex-direction:row;overflow:hidden;gap:.3em;padding:.5em;border-right:0;border-bottom:1px solid rgba(255,255,255,.08)}
  .fx-rail a{padding:.35em .45em}
  .fx-rail a span:not(.material-symbols-rounded){display:none}
  .fx-rail a{font-size:0}
  .fx-rail a .material-symbols-rounded{font-size:15px}
  .fx-logo{margin:0 .3em 0 0}
  .fx-rail-end{margin-top:0;margin-left:auto}
  .fx-kpis{grid-template-columns:1fr 1fr}
  .fx-kpis>div:nth-child(5){display:none}
  .fx-tr{grid-template-columns:1fr .8fr .8fr}
  .fx-tr>span:nth-child(2),.fx-tr>span:nth-child(3),.fx-tr>span:nth-child(4){display:none}
  .fx-mapcoord,.fx-mtabs{display:none}
  .fx-ttabs{overflow-x:auto}
}
@media(prefers-reduced-motion:reduce){.m-route-done,.m-ping,.fx-chip-live i{animation:none}}

/* ============================================================
   HERO — fit the viewport, no scroll to see it whole.
   Vertical rhythm and type both scale against svh as well as
   vw, so the block stays inside one screen on short laptops
   and tall phones alike. Keep after the HERO v6 block.
   ============================================================ */
.home-hero{
  min-height:100svh!important;
  padding:clamp(96px,13svh,150px) 0 clamp(28px,5svh,64px)!important;
  align-items:center;
}
.hh-copy{max-width:min(680px,52%)!important}
.hh-kicker{
  margin:0 0 clamp(10px,1.8svh,20px)!important;
  padding:6px 13px 6px 11px;font-size:clamp(.62rem,1.5svh,.7rem);
}
.home-hero h1#home-title{
  font-size:clamp(1.9rem,min(3.9vw,5.4svh),3.4rem)!important;
  line-height:1.06!important;margin:0 0 clamp(10px,1.9svh,20px)!important;
}
.hh-lead{
  font-size:clamp(.92rem,min(1.18vw,2.1svh),1.08rem)!important;
  line-height:1.58!important;max-width:50ch!important;
  margin:0 0 clamp(14px,2.6svh,28px)!important;
}
.hh-actions{margin:0 0 clamp(14px,2.6svh,30px)!important;gap:clamp(12px,2vw,22px)}
.hh-actions .button{padding:clamp(11px,1.7svh,15px) clamp(18px,2vw,26px);font-size:clamp(.88rem,1.9svh,1rem)}
.hh-chain{
  padding-top:clamp(12px,2.2svh,22px)!important;
  margin:0 0 clamp(12px,2.2svh,20px)!important;
  gap:clamp(10px,1.4vw,24px);
}
.hc-node .material-symbols-rounded{font-size:clamp(15px,2.4svh,20px);margin-bottom:clamp(2px,.6svh,5px)}
.hc-node b{font-size:clamp(.74rem,1.7svh,.85rem)}
.hc-node small{font-size:clamp(.63rem,1.45svh,.72rem);line-height:1.3}
.hh-trust{font-size:clamp(.7rem,1.55svh,.8rem)}
.hh-trust .material-symbols-rounded{font-size:clamp(15px,2.2svh,19px)}
.hh-cue{bottom:clamp(12px,2.4svh,26px)}

/* very short viewports: drop the least load-bearing rows first */
@media(max-height:620px) and (min-width:821px){
  .hh-chain{display:none}
  .home-hero h1#home-title{font-size:clamp(1.8rem,4.6svh,2.6rem)!important}
}
@media(max-width:1100px){.hh-copy{max-width:min(640px,58%)!important}}
@media(max-width:820px){
  .home-hero{
    min-height:100svh!important;
    padding:clamp(84px,12svh,132px) 0 clamp(24px,4svh,52px)!important;
  }
  .hh-copy{max-width:100%!important}
  .home-hero h1#home-title{font-size:clamp(1.75rem,min(7.4vw,5svh),2.7rem)!important}
  .hh-chain{gap:clamp(6px,1.2svh,14px)!important}
  .hc-node{gap:9px}
}
@media(max-width:820px) and (max-height:700px){
  .hh-chain{display:none}
}

/* ---- hero panels for the commercial modules ---- */
.ucp-challan,.ucp-invoice,.ucp-parts{gap:8px;justify-content:center}
.ucp-chal{display:flex;align-items:baseline;gap:10px;font-size:.75rem;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.07)}
.ucp-chal .lb{width:88px;flex:none;color:#8ba3c4}
.ucp-chal .vl{flex:1;color:#fff;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ucp-load{display:flex;align-items:center;gap:10px;font-size:.73rem;margin-top:2px}
.ucp-load .lt{width:88px;flex:none;color:#c2d4ea}
.ucp-load .pc{width:38px;flex:none;text-align:right;font-family:'Space Grotesk','Manrope',sans-serif;color:#5fdca0;font-weight:700}
.ucp-verdict.ok{background:rgba(47,187,122,.11);border-color:rgba(47,187,122,.30)}
.ucp-verdict.ok>.material-symbols-rounded{color:#77e0ac}
.ucp-verdict.ok span{color:#9fd8bb}
.ucp-verdict.warn{background:rgba(229,153,44,.11);border-color:rgba(229,153,44,.32)}
.ucp-verdict.warn>.material-symbols-rounded{color:#ffc165}
.ucp-verdict.warn span{color:#dfc194}

.ucp-inv{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:.75rem;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.ucp-inv .d{color:#a9bdd8;min-width:0;overflow:hidden;text-overflow:ellipsis}
.ucp-inv .v{font-family:'Space Grotesk','Manrope',sans-serif;color:#fff;flex:none}
.ucp-inv.tot{border-bottom:0;border-top:1px solid rgba(255,255,255,.18);margin-top:4px;padding-top:9px}
.ucp-inv.tot .d,.ucp-inv.tot .v{font-weight:700;color:#fff;font-size:.86rem}
.ucp-inv.marg{border:0;padding-top:2px}
.ucp-inv.marg .d{font-size:.68rem;color:#8ba3c4}
.ucp-inv .v.up{color:#5fdca0;font-weight:700}

.ucp-part{display:flex;align-items:center;gap:9px;font-size:.74rem;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.ucp-part .nm{flex:1;color:#dbe6f5;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ucp-part .qty{flex:none;font-family:'Space Grotesk','Manrope',sans-serif;color:#8ba3c4;width:26px;text-align:right}
@media(max-width:620px){
  .ucp-chal{flex-wrap:wrap;gap:2px}
  .ucp-chal .vl{text-align:left;width:100%}
  .ucp-load .lt{width:72px}
}

/* ============================================================
   CENTRED SECTION HEADS
   `.section-head` is itself a `.container`, so the container
   system's `max-width:100%!important` removed its 880px measure.
   The h2 then centred across the full 1320px while `.lead`
   (max-width:790px, no auto margin) sat flush left — the heading
   looked centred and the paragraph under it did not.

   Three classes here, so this outranks the one-class container
   rule; `!important` alone would not have been enough.
   Keep this after the CONTAINER SYSTEM block.
   ============================================================ */
.container.section-head.centered,
.section-head.centered{
  width:min(920px,calc(100% - (var(--gf-gutter) * 2)))!important;
  max-width:100%!important;
  margin-inline:auto!important;
  text-align:center!important;
}
/* every child is centred as a box, not just as text */
.container.section-head.centered>*,
.section-head.centered>*{margin-inline:auto!important}

.container.section-head.centered .lead,
.container.section-head.centered .darklead,
.section-head.centered .lead,
.section-head.centered .darklead{
  max-width:68ch!important;margin-left:auto!important;margin-right:auto!important;text-align:center!important;
}
.container.section-head.centered h2,
.section-head.centered h2{max-width:22ch!important;margin-left:auto!important;margin-right:auto!important;text-align:center!important}
.container.section-head.centered .eyebrow,
.section-head.centered .eyebrow{justify-content:center!important;text-align:center!important}

/* action rows that sit inside a centred head */
.section-head.centered .uc-links,
.section-head.centered .hero-actions,
.section-head.centered .res-foot{justify-content:center!important}
.section-head.centered .text-link,
.section-head.centered a.text-link{display:inline-flex}

@media(max-width:820px){
  .container.section-head.centered h2,
  .section-head.centered h2{max-width:100%!important}
  .container.section-head.centered .lead,
  .section-head.centered .lead{max-width:100%!important}
}

/* a bare link or a second paragraph inside a centred head */
.section-head.centered p{text-align:center!important;margin-left:auto!important;margin-right:auto!important}
.section-head.centered p>a{display:inline-block}

/* ---- certification cards ---- */
.cert-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.cert-card{display:flex;flex-direction:column;padding:24px 22px;border-radius:18px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.13);text-align:left}
.cert-badge{align-self:flex-start;font-family:'Space Grotesk','Manrope',sans-serif;font-size:.62rem;font-weight:700;letter-spacing:.16em;color:#8fe9bd;background:rgba(47,187,122,.14);border:1px solid rgba(47,187,122,.34);padding:5px 11px;border-radius:999px;margin-bottom:14px}
.cert-card b{display:block;font-family:'Space Grotesk','Manrope',sans-serif;font-size:1.25rem;color:#fff;letter-spacing:-.01em;line-height:1.2}
.cert-sub{display:block;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:#7fb2ff;margin:7px 0 12px}
.cert-card p{margin:0;font-size:.86rem;line-height:1.6;color:#a9bdd8}

/* ---- footer offices and certification badges ---- */
.fc-offices{display:flex;flex-direction:column;gap:14px;margin:4px 0 6px}
.fc-offices>div b{display:block;font-size:.76rem;font-weight:700;letter-spacing:.05em;color:#c2d4ea;margin-bottom:3px}
.fc-offices>div span{display:block;font-size:.82rem;line-height:1.5;color:#8ba3c4}
.fc-certs{display:flex;flex-wrap:wrap;gap:7px;margin-top:6px}
.fc-certs i{font-style:normal;font-family:'Space Grotesk','Manrope',sans-serif;font-size:.63rem;font-weight:700;letter-spacing:.09em;color:#8fe9bd;background:rgba(47,187,122,.12);border:1px solid rgba(47,187,122,.30);padding:4px 9px;border-radius:999px;white-space:nowrap}

/* ---- contact page offices ---- */
.contact-offices{display:flex;flex-direction:column;gap:14px;margin:14px 0 12px}
.contact-offices>div b{display:block;font-size:.86rem;color:#0b2244;margin-bottom:3px}
.contact-offices>div span{display:block;font-size:.86rem;line-height:1.55;color:#4a5c74}
.contact-certs{display:flex;flex-wrap:wrap;gap:7px;margin:0}
.contact-certs span{font-family:'Space Grotesk','Manrope',sans-serif;font-size:.64rem;font-weight:700;letter-spacing:.09em;color:#1d7a52;background:rgba(47,187,122,.11);border:1px solid rgba(47,187,122,.28);padding:4px 10px;border-radius:999px}
.section-dark .contact-offices>div b{color:#fff}
.section-dark .contact-offices>div span{color:#a9bdd8}
.section-dark .contact-certs span{color:#8fe9bd;background:rgba(47,187,122,.14);border-color:rgba(47,187,122,.34)}

/* ---- legal page contact block ---- */
.legal-contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:16px 0 22px}
.legal-contact>div{padding:14px 16px;border-radius:12px;background:#f5f8fc;border:1px solid rgba(11,53,115,.10)}
.lc-k{display:block;font-size:.66rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:#6f8099;margin-bottom:5px}
.legal-contact a{font-size:.92rem;font-weight:600;color:#2f7bff;text-decoration:none;word-break:break-word}
.legal-contact a:hover{text-decoration:underline}

.legal-offices{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:12px 0 18px}
.legal-offices>div{padding:16px 18px;border-radius:12px;background:#fff;border:1px solid rgba(11,53,115,.12);border-left:3px solid #2f7bff}
.lo-tag{display:block;font-size:.66rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#2f7bff;margin-bottom:7px}
.legal-offices address{font-style:normal;font-size:.9rem;line-height:1.6;color:#3f5470}
.legal-block .legal-sub{font-size:.86rem;color:#6f8099;margin:0 0 4px}
.legal-block .legal-note{font-size:.86rem;line-height:1.6;color:#6f8099;margin:0}

/* ---- global presence & memberships strip ---- */
.presence-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-bottom:26px}
.ps-block{padding:20px 22px;border-radius:16px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.11)}
.ps-block>b{display:block;font-size:.66rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#7fb2ff;margin-bottom:12px}
.ps-list{display:flex;flex-wrap:wrap;gap:8px}
.ps-list i{font-style:normal;font-size:.82rem;font-weight:600;color:#fff;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);padding:6px 13px;border-radius:999px;white-space:nowrap}
.ps-block small{display:block;font-size:.72rem;line-height:1.5;color:#8ba3c4;margin-top:11px}

/* ============================================================
   FOOTER — parent brand, global presence, credential logos
   Several supplied logos are dark artwork on transparency, so
   they are set on white tiles rather than recoloured: brand
   guidelines for ISO, CMMI and the associations do not permit
   altering their marks.
   ============================================================ */
.footer-brand small a{color:#a9d4ff;text-decoration:none}
.footer-bottom a{color:#9fb6d6;text-decoration:none;border-bottom:1px solid rgba(159,182,214,.3)}
.footer-bottom a:hover{color:#7fb2ff;border-color:#7fb2ff}

/* parent brand lockup */
.footer-parent{display:inline-flex;flex-direction:column;gap:8px;margin-top:16px;text-decoration:none;align-items:flex-start}
.footer-parent>span{font-size:.74rem;letter-spacing:.13em;text-transform:uppercase;color:#7e95b5}
.footer-parent img{height:38px;width:auto;display:block;padding:8px 12px;border-radius:9px;background:#fff;box-shadow:0 6px 18px -8px rgba(0,0,0,.7);transition:transform .18s}
.footer-parent:hover img{transform:translateY(-2px)}

/* global presence with flags */
.footer-presence{margin-top:22px}
.footer-presence>b,.footer-creds>b{display:block;font-size:.64rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#7e95b5;margin-bottom:10px}
.footer-presence>span{display:flex;flex-wrap:wrap;gap:7px}
.footer-presence i{display:inline-flex;align-items:center;gap:7px;font-style:normal;font-size:.75rem;color:#c2d4ea;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);padding:4px 11px 4px 5px;border-radius:999px;white-space:nowrap}
.footer-presence i img{width:20px;height:auto;display:block;flex:none;border-radius:2px}

/* certification and membership logos on white tiles */
.footer-creds{margin-top:22px}
.footer-creds>b:not(:first-child){margin-top:16px}
.fcred-row{display:flex;flex-wrap:wrap;gap:9px}
.fcred-tile:hover{transform:translateY(-2px)}

@media(max-width:620px){
  .footer-presence i{font-size:.71rem}
  .footer-presence i img{width:18px}
  .footer-parent img{height:34px}
}

/* presence strip on the Why page */
.ps-list i{display:inline-flex;align-items:center;gap:8px;padding-left:6px}
.ps-list i img{width:22px;height:auto;display:block;flex:none;border-radius:2px}
.ps-logos{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}

/* certification marks on cards */
.contact-certs{display:flex;flex-wrap:wrap;gap:9px;margin:0}
.contact-certs .ps-tile{background:#fff;border:1px solid rgba(11,53,115,.12)}
.section-dark .contact-certs .ps-tile{border-color:rgba(255,255,255,.16)}

/* ============================================================
   CREDENTIAL TILES — sized by height, width follows the artwork
   The supplied marks range from 1:1 (ISO, BCS, DCCI) to 4.93:1
   (BASIS). A fixed tile makes the square ones render at ~59% of
   the available width and look lost inside it, so the tile takes
   a fixed height and lets its width follow the logo. Wide marks
   are capped so BASIS does not dominate the row.
   ============================================================ */
.fcred-tile,.ps-tile,.cert-logo{
  display:inline-flex;align-items:center;justify-content:center;
  height:60px;padding:9px 13px;border-radius:11px;
  background:#fff;border:1px solid rgba(255,255,255,.18);
  box-shadow:0 6px 16px -10px rgba(0,0,0,.65);
  flex:none;transition:transform .18s;
}
.fcred-tile img,.ps-tile img,.cert-logo img{
  height:100%;width:auto;max-width:168px;object-fit:contain;display:block;
}
.fcred-tile:hover,.ps-tile:hover{transform:translateY(-2px)}
.cert-logo{margin-bottom:14px;align-self:flex-start;border-color:rgba(255,255,255,.2)}
.contact-certs .ps-tile{border-color:rgba(11,53,115,.14);box-shadow:0 6px 16px -12px rgba(11,53,115,.5)}

@media(max-width:620px){
  .fcred-tile,.ps-tile,.cert-logo{height:52px;padding:8px 11px}
  .fcred-tile img,.ps-tile img,.cert-logo img{max-width:142px}
}


/* ============================================================
   FOOTER — follow row
   Sits between the link columns and the legal rule, aligned
   right, on one line. Icons carry Facebook and LinkedIn brand
   colour on hover.
   ============================================================ */
.footer-followrow{display:flex;justify-content:flex-end;padding:0 0 16px}
.footer-social{display:inline-flex;align-items:center;gap:12px}
.footer-social>b{font-size:.74rem;font-weight:700;letter-spacing:.09em;color:#8ba3c4;text-transform:none;margin:0;white-space:nowrap}
.footer-social>span{display:inline-flex;gap:9px}
.footer-social a{
  display:grid;place-items:center;width:34px;height:34px;border-radius:9px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  color:#c2d4ea;transition:background .18s,border-color .18s,color .18s,transform .18s;
}
.footer-social svg{width:17px;height:17px;fill:currentColor;display:block}
.footer-social a[href*="facebook"]:hover{background:#1877F2;border-color:#1877F2;color:#fff;transform:translateY(-2px)}
.footer-social a[href*="linkedin"]:hover{background:#0A66C2;border-color:#0A66C2;color:#fff;transform:translateY(-2px)}
.footer-social a:focus-visible{outline:3px solid #7fb2ff;outline-offset:2px}

@media(max-width:620px){
  .footer-followrow{justify-content:flex-start;padding-bottom:14px}
  .footer-social>b{font-size:.72rem}
  .footer-social a{width:32px;height:32px}
  .footer-social svg{width:16px;height:16px}
}

/* company link inside the hero trust line */
.hh-trust a{color:#c3dcff;text-decoration:none;border-bottom:1px solid rgba(195,220,255,.4);transition:color .18s,border-color .18s}
.hh-trust a:hover{color:#fff;border-color:#fff}

/* ============================================================
   VISUAL POLISH — shared components, site-wide
   .feature-card alone renders 245 times, so most of the lift
   comes from that one component. Everything here is additive
   to existing rules; !important appears only where the rule it
   overrides already used it.
   Keep this block near the end, before the responsive net.
   ============================================================ */

/* --- feature cards --- */
.feature-grid{gap:20px}
.feature-card{
  padding:28px 26px 26px!important;
  border-radius:20px;
  background:linear-gradient(180deg,#fff,#fbfdff)!important;
  border:1px solid rgba(11,53,115,.11)!important;
  box-shadow:0 2px 4px rgba(8,48,96,.04),0 14px 34px -20px rgba(8,48,96,.22)!important;
  transition:transform .26s cubic-bezier(.2,.75,.25,1),box-shadow .26s,border-color .26s!important;
}
.feature-card:after{
  content:"";position:absolute;right:-40px;top:-40px;width:130px;height:130px;border-radius:50%;
  background:radial-gradient(circle,rgba(47,123,255,.13),transparent 70%);
  opacity:0;transition:opacity .3s;pointer-events:none;
}
.feature-card:hover{
  transform:translateY(-6px)!important;
  border-color:rgba(47,123,255,.34)!important;
  box-shadow:0 4px 8px rgba(8,48,96,.05),0 26px 54px -22px rgba(11,53,115,.32)!important;
}
.feature-card:hover:after{opacity:1}

/* numbered badge instead of a small caption */
.feature-card .feature-number{
  display:inline-grid;place-items:center;
  width:40px;height:40px;border-radius:12px;
  font-family:'Space Grotesk','Manrope',sans-serif;
  font-size:.92rem;font-weight:700;letter-spacing:0;color:#fff;
  background:linear-gradient(140deg,#2f7bff,#1c5ac4);
  box-shadow:0 8px 18px -8px rgba(47,123,255,.7);
  margin-bottom:18px;transition:transform .26s;
}
.feature-card:hover .feature-number{transform:scale(1.06) rotate(-3deg)}
.feature-card h3{font-size:1.06rem;line-height:1.32;letter-spacing:-.015em;color:#0b2244;margin:0 0 9px}
.feature-card p{font-size:.9rem;line-height:1.62;color:#4a5c74}

/* lists: lighter rules, accent ticks */
.feature-card ul{margin:16px 0 0!important;padding:0;border-top:1px solid rgba(11,53,115,.09);padding-top:6px}
.feature-card li{
  display:flex;align-items:flex-start;gap:9px;
  font-size:.82rem;line-height:1.5;color:#41556f;
  padding:7px 0!important;border-top:0!important;
}
.feature-card li:before{
  content:"";flex:none;width:15px;height:15px;margin:2px 0 0;border-radius:50%;
  background:rgba(47,187,122,.14) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.6 6.2 4.7 8.4 9.4 3.6' fill='none' stroke='%232fbb7a' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/10px 10px no-repeat;
}

/* cards on dark sections */
.section-dark .feature-card{
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025))!important;
  border-color:rgba(255,255,255,.12)!important;
  box-shadow:0 20px 48px -26px rgba(0,0,0,.7)!important;
}
.section-dark .feature-card:hover{border-color:rgba(120,180,255,.42)!important}
.section-dark .feature-card h3{color:#fff}
.section-dark .feature-card p{color:#a9bdd8}
.section-dark .feature-card ul{border-top-color:rgba(255,255,255,.12)}
.section-dark .feature-card li{color:#bcd0e6}

/* --- eyebrows read as pills --- */
.section-head .eyebrow{
  display:inline-flex;align-items:center;gap:9px;
  padding:6px 15px 6px 12px;border-radius:999px;
  background:rgba(47,123,255,.08);border:1px solid rgba(47,123,255,.22);
  font-size:.64rem;letter-spacing:.15em;margin-bottom:16px;
}
.section-head .eyebrow span{width:16px;height:2px;border-radius:2px}
.section-dark .section-head .eyebrow{background:rgba(120,180,255,.12);border-color:rgba(120,180,255,.3)}

/* --- intelligence stack rows become cards --- */
.intelligence-stack div{
  grid-template-columns:118px 1fr;gap:18px;
  padding:16px 18px!important;border-top:0!important;
  border-radius:14px;background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.10);margin-bottom:9px;
  transition:background .22s,border-color .22s,transform .22s;
}
.intelligence-stack div:hover{background:rgba(255,255,255,.075);border-color:rgba(120,180,255,.34);transform:translateX(3px)}
.intelligence-stack b{color:#8fc4ff;font-size:.92rem}
.intelligence-stack span{color:#a9bdd8;font-size:.85rem;line-height:1.55}

/* --- challenge/solution items --- */
.uc-item{transition:transform .22s,box-shadow .22s}
.uc-item:hover{transform:translateX(4px);box-shadow:0 14px 30px -20px rgba(11,53,115,.35)}

/* --- device / heritage / exec cards pick up the same lift --- */
.device-card,.heritage-card,.cert-card{transition:transform .24s,border-color .24s,background .24s}
.device-card:hover,.heritage-card:hover,.cert-card:hover{
  transform:translateY(-4px);background:rgba(255,255,255,.07);border-color:rgba(120,180,255,.34)}
.exec-card{transition:transform .24s,box-shadow .24s,border-color .24s}
.exec-card:hover{transform:translateY(-5px);border-color:rgba(47,123,255,.34);box-shadow:0 24px 50px -24px rgba(11,53,115,.3)}

/* --- staggered reveal so grids animate in sequence --- */
.feature-grid>.reveal:nth-child(2),.uc-grid>.reveal:nth-child(2),.bl-grid>.reveal:nth-child(2),
.res-grid>.reveal:nth-child(2),.exec-grid>.reveal:nth-child(2),.device-grid>.reveal:nth-child(2){transition-delay:.07s}
.feature-grid>.reveal:nth-child(3),.uc-grid>.reveal:nth-child(3),.bl-grid>.reveal:nth-child(3),
.res-grid>.reveal:nth-child(3),.exec-grid>.reveal:nth-child(3),.device-grid>.reveal:nth-child(3){transition-delay:.14s}
.feature-grid>.reveal:nth-child(4),.uc-grid>.reveal:nth-child(4),.res-grid>.reveal:nth-child(4){transition-delay:.21s}
.feature-grid>.reveal:nth-child(5),.uc-grid>.reveal:nth-child(5),.res-grid>.reveal:nth-child(5){transition-delay:.28s}
.feature-grid>.reveal:nth-child(6),.uc-grid>.reveal:nth-child(6),.res-grid>.reveal:nth-child(6){transition-delay:.35s}

/* anchors clear the fixed header */
:target{scroll-margin-top:110px}

@media(max-width:820px){
  .feature-card{padding:24px 22px!important}
  .feature-card .feature-number{width:36px;height:36px;font-size:.85rem;margin-bottom:15px}
  .intelligence-stack div{grid-template-columns:1fr;gap:5px}
}
@media(prefers-reduced-motion:reduce){
  .feature-card:hover,.exec-card:hover,.device-card:hover,.heritage-card:hover,
  .cert-card:hover,.uc-item:hover,.intelligence-stack div:hover{transform:none!important}
  .feature-grid>.reveal,.uc-grid>.reveal,.bl-grid>.reveal,.res-grid>.reveal,
  .exec-grid>.reveal,.device-grid>.reveal{transition-delay:0s!important}
}

/* the previous tick rule still contributed a right margin; the flex gap handles spacing now */
.feature-card li:before{margin-right:0}

/* ============================================================
   EVEN GRID ROWS
   `repeat(auto-fit, minmax(Npx, 1fr))` picks its column count
   from the available width, not from how many items there are —
   so a six-card grid became five across plus one stranded. Each
   grid below now declares a column count that divides its item
   count, and steps down through counts that also divide it.

   Item counts as built: res-grid 6, uc-grid 6, industry 6,
   bl-grid 3, cert-grid 3, legal 3, exec-grid 4, heritage 4,
   device-grid 8, feature-grid 3 / 6 / 15.
   If you add a card, keep the total divisible by the column
   count or the last row will be short again.
   ============================================================ */

/* 6 items -> 3 / 2 / 1 */
.res-grid,.uc-grid,.industry-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
/* 3, 6 or 15 items -> 3 / 2 is uneven for 3 and 15, so step 3 -> 1 */
.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
/* 3 items -> 3 / 1 */
.bl-grid,.cert-grid,.legal-contact,.legal-offices{grid-template-columns:repeat(3,minmax(0,1fr))!important}
/* 4 items -> 4 / 2 / 1 */
.exec-grid,.heritage-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
/* 8 items -> 4 / 2 / 1 */
.device-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}

@media(max-width:1180px){
  .device-grid,.exec-grid,.heritage-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:1000px){
  /* 6 and 8 divide by 2; 3 and 15 do not, so those go straight to one column */
  .res-grid,.uc-grid,.industry-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .bl-grid,.cert-grid,.legal-contact,.legal-offices{grid-template-columns:1fr!important}
}
@media(max-width:900px){
  .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:620px){
  .res-grid,.uc-grid,.industry-card-grid,.feature-grid,.bl-grid,.cert-grid,
  .exec-grid,.heritage-grid,.device-grid,.legal-contact,.legal-offices{
    grid-template-columns:1fr!important}
}

/* feature grids carry their item count, so each gets a ladder that divides it:
   fg-6 steps 3 -> 2 -> 1; fg-3 and fg-15 hold 3 columns to 620px because a
   2-column step would strand one card. */
.fg-6{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.fg-3,.fg-15{grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media(max-width:1000px){
  .fg-6{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:900px){
  .fg-6{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .fg-3,.fg-15{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .fg-3,.fg-15{grid-template-columns:1fr!important}
}
@media(max-width:620px){
  .fg-6,.fg-3,.fg-15{grid-template-columns:1fr!important}
}

/* ============================================================
   CREDENTIAL TILES — optical sizing
   The ISO and CMMI marks are circular or near-square badges that
   already fill their canvas, so at equal height they cover far
   less area than a wide wordmark like BASIS and read as smaller.
   Logo strips are sized to look equally weighted, not to an
   identical box, so the square marks get more height and overrun
   the tile padding slightly. The tile clips, so nothing spills.
   ============================================================ */
.fcred-tile,.ps-tile,.cert-logo{height:68px;padding:9px 14px;overflow:hidden}
.fcred-tile img,.ps-tile img,.cert-logo img{height:100%;max-width:172px}

/* circular and near-square marks: render larger than the padding box */
.fcred-tile img[src*="iso-9001"],.ps-tile img[src*="iso-9001"],.cert-logo img[src*="iso-9001"],
.fcred-tile img[src*="iso-27001"],.ps-tile img[src*="iso-27001"],.cert-logo img[src*="iso-27001"],
.fcred-tile img[src*="bcs"],.ps-tile img[src*="bcs"],.cert-logo img[src*="bcs"],
.fcred-tile img[src*="dcci"],.ps-tile img[src*="dcci"],.cert-logo img[src*="dcci"]{
  /* no negative margin: percentage block margins resolve against the
     container's WIDTH, not its height. The tile is a centred flex box,
     so an oversized child overflows symmetrically on its own. */
  height:132%;
}
/* the CMMI mark is wider than tall but still carries a lot of internal space */
.fcred-tile img[src*="cmmi"],.ps-tile img[src*="cmmi"],.cert-logo img[src*="cmmi"]{
  height:118%;
}
/* square marks need less horizontal room, so tighten their tiles */
.fcred-tile:has(img[src*="iso-"]),.fcred-tile:has(img[src*="bcs"]),.fcred-tile:has(img[src*="dcci"]){padding-inline:10px}

@media(max-width:620px){
  .fcred-tile,.ps-tile,.cert-logo{height:58px;padding:8px 12px}
  .fcred-tile img,.ps-tile img,.cert-logo img{max-width:146px}
}

/* the revised H1 runs one line longer on narrow phones; reclaim the space
   from the vertical rhythm rather than from the copy */
@media(max-width:820px){
  .hh-lead{margin-bottom:clamp(10px,2svh,20px)!important}
  .hh-actions{margin-bottom:clamp(10px,2svh,22px)!important}
  .hh-chain{padding-top:clamp(10px,1.8svh,18px)!important;margin-bottom:clamp(9px,1.8svh,16px)!important}
}


/* ============================================================
   HERO IMAGE PATH
   Declared here rather than in an inline <style> in index.html.
   An external stylesheet is covered by `style-src 'self'`, so the
   Content-Security-Policy needs no hash and never has to be
   touched when this image is swapped. Change the filename here.
   ============================================================ */
:root{--hero-img:url("assets/visuals/gofleexo-hero-bg-v11.jpg")}
