/*
Theme Name: MobiQon V6.56
Theme URI: https://mobiqon.com
Author: MobiQon
Description: Custom lightweight WordPress theme for MobiQon's connected mobility platform.
Version: 6.56
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: mobiqon-v2
*/
:root{--mq-navy:#0a4559;--mq-navy-dark:#05293b;--mq-blue:#00a3d7;--mq-green:#4caf50;--mq-ink:#09263b;--mq-muted:#5b6f7e;--mq-bg:#f5f8fa;--mq-white:#fff;--radius:18px;--shadow:0 18px 45px rgba(7,39,57,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--mq-ink);background:#fff;line-height:1.55}h1,h2,h3,h4{font-family:Montserrat,Inter,Arial,sans-serif;line-height:1.08;margin:0 0 18px}h1{font-size:clamp(3rem,7vw,6.5rem);letter-spacing:-.045em}h2{font-size:clamp(2rem,4vw,3.7rem);letter-spacing:-.035em}h3{font-size:1.35rem}p{margin:0 0 18px}.container{width:min(1180px,calc(100% - 40px));margin:auto}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:800;color:var(--mq-blue);margin-bottom:12px}.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:9px;text-decoration:none;font-weight:800;font-size:.92rem;transition:.2s}.btn-primary{background:var(--mq-blue);color:white}.btn-primary:hover{transform:translateY(-2px);filter:brightness(.96)}.btn-secondary{border:1px solid rgba(255,255,255,.7);color:#fff}.btn-light{border:1px solid #bdccd4;color:var(--mq-ink);background:#fff}.site-header{position:sticky;top:0;z-index:99;background:rgba(5,41,59,.96);backdrop-filter:blur(12px);color:white}.nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{font-family:Montserrat,sans-serif;font-weight:800;font-size:1.6rem;color:white;text-decoration:none;display:flex;align-items:center;gap:6px}.brand-q{color:var(--mq-blue)}.brand-on{color:var(--mq-green)}.main-nav{display:flex;gap:28px;align-items:center}.main-nav a{color:white;text-decoration:none;font-weight:650;font-size:.9rem}.menu-toggle{display:none;background:none;border:0;color:white;font-size:1.5rem}.hero{background:linear-gradient(110deg,rgba(5,41,59,.98) 0%,rgba(5,41,59,.92) 42%,rgba(5,41,59,.68) 68%,rgba(5,41,59,.86) 100%),radial-gradient(circle at 78% 48%,rgba(0,163,215,.32),transparent 28%),linear-gradient(160deg,#0f5770,#031b2b);color:#fff;min-height:690px;display:flex;align-items:center;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(0,163,215,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(0,163,215,.08) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(to left,#000,transparent 76%);pointer-events:none}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:40px;align-items:center;padding:80px 0}.hero h1 span{display:block;color:#fff}.hero h1 .accent{color:var(--mq-blue)}.hero-copy{max-width:620px;font-size:1.14rem;color:#d8e7ed}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hero-visual{height:470px;position:relative}.road{position:absolute;inset:55px 0 10px;border-radius:45% 45% 8px 8px/18% 18% 8px 8px;background:linear-gradient(170deg,#35515d 0 30%,#233640 31% 100%);transform:perspective(500px) rotateX(5deg);overflow:hidden;box-shadow:inset 0 0 80px rgba(0,0,0,.45),0 25px 70px rgba(0,0,0,.22)}.road:before{content:"";position:absolute;left:48%;top:-5%;height:120%;width:3px;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.85) 0 18px,transparent 18px 42px);transform:rotate(2deg)}.cone{position:absolute;width:18px;height:34px;background:linear-gradient(#ff8a00 0 45%,white 45% 58%,#ff8a00 58%);clip-path:polygon(40% 0,60% 0,95% 88%,100% 100%,0 100%,5% 88%);filter:drop-shadow(0 4px 4px rgba(0,0,0,.4))}.worker{position:absolute;width:28px;height:55px;border-radius:15px 15px 8px 8px;background:linear-gradient(var(--mq-green),#d8ff69);box-shadow:0 0 0 8px rgba(76,175,80,.08),0 0 35px rgba(76,175,80,.45)}.worker:before{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#f1c49d;left:5px;top:-15px;border-top:6px solid #e8d22c}.hud{position:absolute;background:rgba(4,32,46,.86);border:1px solid rgba(0,163,215,.8);color:white;border-radius:9px;padding:10px 12px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em;box-shadow:0 0 30px rgba(0,163,215,.14)}.hud.green{border-color:var(--mq-green)}.hud:after{content:"";position:absolute;height:1px;width:70px;background:currentColor;opacity:.45}.hud1{top:85px;right:8px}.hud1:after{right:100%;top:50%}.hud2{bottom:75px;left:10px}.hud2:after{left:100%;top:50%}.hud3{top:220px;right:40px}.hud3:after{right:100%;top:50%}.network-dot{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--mq-blue);box-shadow:0 0 18px var(--mq-blue)}.section{padding:94px 0}.section.alt{background:var(--mq-bg)}.section.dark{background:var(--mq-navy-dark);color:#fff}.section-head{text-align:center;max-width:760px;margin:0 auto 48px}.section-head p{color:var(--mq-muted)}.dark .section-head p{color:#c4d7df}.ecosystem{display:grid;grid-template-columns:1.1fr 1.9fr;gap:55px;align-items:center}.ecosystem-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;align-items:center}.eco-node{text-align:center}.eco-icon{width:88px;height:88px;margin:0 auto 12px;border-radius:50%;border:2px solid #d8e7ed;display:grid;place-items:center;font-size:2rem;background:#fff}.eco-node.center .eco-icon{width:110px;height:110px;border:5px solid var(--mq-blue);font-weight:900;color:var(--mq-navy)}.eco-node small{display:block;color:var(--mq-muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);border:1px solid #e2ebef}.dark .card{background:#083b55;border-color:#116482}.card-visual{height:200px;position:relative;background:linear-gradient(135deg,#0e5b75,#06293d);overflow:hidden}.card-visual:before,.card-visual:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(0,163,215,.65)}.card-visual:before{width:180px;height:180px;right:-30px;top:12px}.card-visual:after{width:90px;height:90px;right:15px;top:55px}.card-visual.workforce{background:linear-gradient(rgba(5,41,59,.35),rgba(5,41,59,.85)),linear-gradient(135deg,#56816f,#1c3540)}.card-visual.mapper{background:linear-gradient(135deg,#082c46,#0a6277)}.card-visual.alerts{background:linear-gradient(135deg,#4b5e60,#152c36)}.visual-label{position:absolute;left:22px;bottom:20px;padding:7px 10px;border-radius:7px;background:rgba(0,0,0,.48);font-size:.72rem;font-weight:800}.card-body{padding:26px}.card-body .sub{font-weight:800;color:var(--mq-green);font-size:.9rem}.card.mapper-card .sub{color:var(--mq-blue)}.how-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.step{position:relative;text-align:center;padding:16px 10px}.step-num{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;margin:0 auto 15px;background:#eaf8fd;color:var(--mq-blue);font-weight:900;font-size:1.2rem}.step:not(:last-child):after{content:"→";position:absolute;right:-18px;top:30px;color:#9cb9c6;font-size:1.8rem}.value-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.value-card{padding:24px;border-left:4px solid var(--mq-green);background:#fff;border-radius:12px;box-shadow:0 10px 30px rgba(8,54,77,.08)}.value-card:nth-child(even){border-left-color:var(--mq-blue)}.tech-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:#1d6178;border-radius:16px;overflow:hidden}.tech-item{padding:30px 20px;background:#06354d}.tech-icon{font-size:1.7rem;margin-bottom:14px;color:var(--mq-blue)}.future-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.future-card{min-height:250px;padding:30px;border-radius:16px;background:linear-gradient(145deg,#fff,#eef5f7);border:1px solid #dbe8ed;position:relative;overflow:hidden}.future-card:after{content:"";position:absolute;width:160px;height:160px;border:1px solid rgba(0,163,215,.28);border-radius:50%;right:-45px;bottom:-45px}.cta{background:linear-gradient(120deg,#062b40,#0b5771);color:#fff;border-radius:20px;padding:52px;display:flex;justify-content:space-between;align-items:center;gap:30px}.site-footer{background:#041f2e;color:#c4d6dd;padding:56px 0 28px}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:28px}.site-footer h4{color:white;font-size:.9rem;text-transform:uppercase;letter-spacing:.08em}.site-footer a{color:#c4d6dd;text-decoration:none}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:35px;padding-top:22px;font-size:.82rem;display:flex;justify-content:space-between}.video-placeholder{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.05);border-radius:12px;padding:12px 16px;display:inline-flex;gap:10px;align-items:center;color:#dbe8ed;font-size:.84rem;margin-top:18px}.play{width:30px;height:30px;border-radius:50%;border:1px solid white;display:grid;place-items:center}.play:before{content:"▶";font-size:.65rem;margin-left:2px}.wp-block-post-content{margin:0}
@media(max-width:900px){.main-nav{display:none}.menu-toggle{display:block}.hero-grid,.ecosystem{grid-template-columns:1fr}.hero-visual{height:390px}.cards,.future-grid{grid-template-columns:1fr}.how-grid{grid-template-columns:1fr 1fr}.value-grid{grid-template-columns:1fr 1fr}.tech-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.ecosystem-flow{grid-template-columns:repeat(5,1fr);overflow:auto}.hero{min-height:auto}}@media(max-width:600px){.container{width:min(100% - 28px,1180px)}.section{padding:68px 0}.hero-grid{padding:60px 0}.hero-visual{height:320px}.how-grid,.value-grid,.tech-grid,.footer-grid{grid-template-columns:1fr}.step:not(:last-child):after{display:none}.cta{padding:34px 24px;display:block}.cta .btn{margin-top:18px}.footer-bottom{display:block}.main-nav.open{display:flex;position:absolute;top:78px;left:0;right:0;padding:24px;flex-direction:column;background:#05293b;align-items:flex-start}}

/* v1.1 editable-page system */
.custom-logo{max-height:48px;width:auto}.custom-logo-link{display:flex;align-items:center}.mq-page-content>.wp-block-group{margin-block-start:0}.mq-home-hero,.mq-inner-hero{color:#fff;background:linear-gradient(115deg,rgba(5,41,59,.98),rgba(5,41,59,.80)),radial-gradient(circle at 78% 50%,rgba(0,163,215,.34),transparent 30%),linear-gradient(145deg,#0d5971,#031c2b)}
.mq-home-hero{min-height:650px;display:flex;align-items:center}.mq-home-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;padding:90px 0}.mq-home-hero h1,.mq-inner-hero h1{color:#fff}.mq-home-hero .wp-block-button__link,.mq-inner-hero .wp-block-button__link{background:var(--mq-blue);border-radius:9px;font-weight:800}.mq-home-hero .is-style-outline .wp-block-button__link{background:transparent;border:1px solid #fff}.mq-css-workzone{height:430px;position:relative;border-radius:22px;overflow:hidden;background:linear-gradient(rgba(2,22,34,.1),rgba(2,22,34,.36)),linear-gradient(165deg,#537886 0 24%,#243944 24% 100%);box-shadow:0 25px 70px rgba(0,0,0,.25)}.mq-css-workzone:before{content:"";position:absolute;left:51%;top:0;width:3px;height:120%;background:repeating-linear-gradient(to bottom,#fff 0 20px,transparent 20px 47px);transform:rotate(10deg);opacity:.75}.mq-css-workzone:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 38% 57%,var(--mq-green) 0 4px,transparent 5px),radial-gradient(circle at 65% 48%,var(--mq-blue) 0 4px,transparent 5px),linear-gradient(120deg,transparent 44%,rgba(0,163,215,.7) 44.3% 44.6%,transparent 45%),linear-gradient(20deg,transparent 58%,rgba(76,175,80,.65) 58.3% 58.6%,transparent 59%)}.mq-marker{position:absolute;z-index:2;background:rgba(3,31,45,.9);border:1px solid var(--mq-blue);color:#fff;border-radius:8px;padding:9px 11px;font-size:.72rem;font-weight:800}.worker-marker{top:27%;left:7%;border-color:var(--mq-green)}.asset-marker{bottom:22%;left:30%}.vehicle-marker{top:40%;right:7%}.mq-inner-hero{padding:110px 0 90px;min-height:480px;display:flex;align-items:center;position:relative;overflow:hidden}.mq-inner-hero:after{content:"";position:absolute;right:-4%;top:10%;width:520px;height:520px;border:1px solid rgba(0,163,215,.25);border-radius:50%;box-shadow:0 0 0 55px rgba(0,163,215,.04),0 0 0 110px rgba(76,175,80,.025)}.mq-inner-hero.assetmapper{background:linear-gradient(112deg,rgba(5,41,59,.98),rgba(5,41,59,.78)),repeating-linear-gradient(65deg,transparent 0 46px,rgba(0,163,215,.08) 47px 49px),linear-gradient(145deg,#214a55,#071f2e)}.mq-inner-hero.assetmapper:before{content:"TTC ASSETS  •  CHANNELIZERS  •  SIGNS  •  ARROW BOARDS  •  BARRICADES";position:absolute;right:5%;bottom:40px;color:rgba(255,255,255,.35);font-size:.72rem;font-weight:800;letter-spacing:.12em}.mq-inner-hero .container{position:relative;z-index:2}.mq-inner-hero .hero-copy{max-width:700px}.mq-editable-cards{gap:20px}.mq-edit-card{height:100%;padding:28px;background:#fff;border-radius:16px;border:1px solid #dfe9ed;box-shadow:0 12px 30px rgba(8,54,77,.08)}.dark .mq-edit-card{background:#083b55;border-color:#116482;color:#fff}.mq-edit-card .sub{color:var(--mq-blue);font-weight:800}.dark .mq-edit-card .sub{color:#74def7}.mq-page-content .section>.wp-block-group__inner-container{width:min(1180px,calc(100% - 40px));margin:auto}.mq-page-content .section>.container{width:min(1180px,calc(100% - 40px));margin:auto}.mq-page-content .wp-block-columns{align-items:stretch}.mq-page-content .wp-block-column{margin-bottom:0}
@media(max-width:900px){.mq-home-hero-grid{grid-template-columns:1fr}.mq-css-workzone{height:340px}.mq-home-hero{min-height:auto}.mq-inner-hero{min-height:400px;padding:90px 0 70px}.mq-inner-hero:after{width:350px;height:350px;opacity:.6}}@media(max-width:600px){.mq-home-hero-grid{padding:65px 0}.mq-css-workzone{height:280px}.mq-inner-hero{padding:75px 0 58px}.mq-marker{font-size:.6rem}}


/* V2.2 production visual assets */
.mq-css-workzone{
  background-image:linear-gradient(90deg,rgba(3,31,48,.08),rgba(3,31,48,.12)),url('assets/images/home-hero.webp');
  background-size:cover;background-position:center;border-radius:24px;box-shadow:0 24px 60px rgba(0,0,0,.28);min-height:430px;
}
.mq-css-workzone:before,.mq-css-workzone:after{display:none!important}
.mq-inner-hero{position:relative;isolation:isolate;background-size:cover!important;background-position:center!important;overflow:hidden}
.mq-inner-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(3,31,48,.96) 0%,rgba(3,31,48,.82) 46%,rgba(3,31,48,.34) 100%)}
.mq-inner-hero:after{display:none!important}
.mq-inner-hero .container{position:relative;z-index:1;max-width:1200px}
.mq-inner-hero.cwz{background-image:url('assets/images/connected-work-zones.webp')!important}
.mq-inner-hero.workforce{background-image:url('assets/images/workforce-intelligence.webp')!important}
.mq-inner-hero.assetmapper{background-image:url('assets/images/assetmapper.webp')!important}
.mq-inner-hero.alerts{background-image:url('assets/images/worker-alerts.webp')!important}
.mq-inner-hero.technology{background-image:url('assets/images/technology.webp')!important}
.mq-inner-hero.about{background-image:url('assets/images/about-brand.webp')!important}
.mq-inner-hero.insights{background-image:url('assets/images/insights.webp')!important}
.mq-inner-hero.contact{background-image:url('assets/images/contact.webp')!important}
.mq-inner-hero h1,.mq-inner-hero .hero-copy{max-width:690px;text-shadow:0 2px 18px rgba(0,0,0,.25)}
.mq-home-hero{background:linear-gradient(135deg,#062f43,#0a4559 62%,#073246)}
@media(max-width:800px){.mq-css-workzone{min-height:300px}.mq-inner-hero:before{background:rgba(3,31,48,.78)}}


/* V2.3: image-led editable heroes and linked solution cards */
.mq-home-hero{position:relative;isolation:isolate;min-height:650px;display:flex;align-items:center;background-image:url('assets/images/home-hero.webp');background-size:cover;background-position:center}
.mq-home-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(3,31,48,.94) 0%,rgba(3,31,48,.78) 43%,rgba(3,31,48,.25) 75%,rgba(3,31,48,.10) 100%)}
.mq-home-hero-grid{display:block;padding:105px 0;position:relative}.mq-home-hero-grid>div:first-child{max-width:660px}.mq-home-hero .hero-copy{color:#f0f7fa}.mq-home-hero .mq-css-workzone{position:absolute;inset:0;box-shadow:none;background:none;pointer-events:none;overflow:visible}.mq-home-hero .mq-css-workzone:before,.mq-home-hero .mq-css-workzone:after{display:none}.mq-home-hero .mq-marker{box-shadow:0 8px 28px rgba(0,0,0,.25);backdrop-filter:blur(6px)}
.mq-home-hero .worker-marker{top:22%;left:auto;right:30%}.mq-home-hero .asset-marker{bottom:30%;left:auto;right:19%}.mq-home-hero .vehicle-marker{top:54%;right:5%}
.mq-solution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.mq-solution-card{position:relative;min-height:360px;border-radius:18px;overflow:hidden;background-size:cover;background-position:center;box-shadow:var(--shadow)}.mq-solution-card:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,31,48,.97) 0%,rgba(3,31,48,.72) 45%,rgba(3,31,48,.12) 85%)}.mq-solution-card__content{position:absolute;inset:auto 0 0;padding:28px;color:#fff;z-index:1}.mq-solution-card h3{margin-bottom:7px}.mq-solution-card .sub{color:#8de05d;font-weight:800}.mq-solution-card.mapper .sub{color:#5fd5fb}.mq-solution-card a{color:#fff;text-decoration:none;font-weight:800}.mq-solution-card a:after{content:" →"}.mq-solution-card.workforce{background-image:url('assets/images/workforce-intelligence.webp')}.mq-solution-card.mapper{background-image:url('assets/images/assetmapper.webp')}.mq-solution-card.alerts{background-image:url('assets/images/worker-alerts.webp')}
.site-logo-placeholder{display:flex;align-items:center;font-family:Montserrat,sans-serif;font-weight:800;font-size:1.55rem;color:#fff;letter-spacing:-.03em}.site-logo-placeholder small{display:none}
@media(max-width:900px){.mq-home-hero:before{background:rgba(3,31,48,.72)}.mq-home-hero-grid{padding:80px 0}.mq-home-hero .mq-css-workzone{display:none}.mq-solution-grid{grid-template-columns:1fr}.mq-solution-card{min-height:320px}}
.mq-inner-hero.intersections{background-image:url('assets/images/connected-intersections.webp')!important}
.mq-inner-hero.enduser{background-image:url('assets/images/end-user-experiences.webp')!important}

/* Bundled MobiQon brand logos */
.mq-brand-logo{display:inline-flex;align-items:center;text-decoration:none;line-height:0}
.mq-brand-logo img{display:block;width:auto;height:42px;max-width:220px}
.site-footer .mq-brand-logo img{height:46px;max-width:230px}
@media (max-width:700px){.mq-brand-logo img{height:36px;max-width:185px}.site-footer .mq-brand-logo img{height:40px}}


/* v2.5 layout refinements */
.nav-wrap{justify-content:flex-start}
.mq-brand-logo{margin-right:auto;flex:0 0 auto}
.mq-brand-logo img{display:block;max-width:220px;height:auto}
.main-nav{margin-left:auto}

/* Prevent ecosystem labels such as Infrastructure from breaking awkwardly */
.mq-edit-card h3,.mq-solution-card h3{overflow-wrap:normal;word-break:normal;hyphens:none}
.mq-editable-cards .wp-block-column{min-width:0}
.mq-editable-cards .mq-edit-card{height:100%}
@media(min-width:901px){
  .mq-editable-cards{gap:14px}
  .mq-editable-cards .mq-edit-card{padding:22px 16px}
  .mq-editable-cards .mq-edit-card h3{font-size:clamp(.94rem,1.12vw,1.08rem)}
}

/* Homepage hero callouts stay in the visual, away from the headline */
.mq-css-workzone .worker-marker{top:16%;left:8%}
.mq-css-workzone .asset-marker{bottom:13%;left:18%}
.mq-css-workzone .vehicle-marker{top:43%;right:6%;left:auto}
@media(max-width:900px){
  .mq-marker{font-size:.64rem;padding:7px 9px}
}

/* Let Connected Work Zone product imagery breathe instead of cropping */
.mq-solution-card{background-size:contain !important;background-repeat:no-repeat !important;background-position:center top !important}
.mq-solution-card__content{margin-top:220px}
@media(max-width:900px){
  .mq-solution-card__content{margin-top:190px}
}

/* Production video/project modules */
.mq-media-section{padding:88px 0;background:#f5f9fa}
.mq-media-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:center}
.mq-video-frame{aspect-ratio:16/9;border-radius:18px;overflow:hidden;background:#062b40;display:grid;place-items:center;color:#fff;box-shadow:0 20px 55px rgba(5,41,59,.14)}
.mq-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.mq-project-card{background:#fff;border:1px solid #dbe8ed;border-radius:16px;padding:26px}
@media(max-width:900px){.mq-media-grid,.mq-project-grid{grid-template-columns:1fr}}

/* v2.6 editable homepage media */
.mq-video-live iframe{width:100%;height:100%;border:0;display:block}
.mq-project-card{overflow:hidden;padding:0}
.mq-project-media{aspect-ratio:16/9;background-size:cover;background-position:center}
.mq-project-media--placeholder{display:grid;place-items:center;background:linear-gradient(135deg,#e8f1f4,#d8e8ed);color:#607d89;font-size:.78rem;font-weight:800;letter-spacing:.08em}
.mq-project-card__body{padding:24px}
.mq-project-logo{display:block;max-width:130px;max-height:42px;width:auto;height:auto;margin-bottom:18px}
.mq-project-logo-placeholder{width:90px;height:34px;border:1px dashed #9db5bf;border-radius:6px;display:grid;place-items:center;color:#7e98a2;font-size:.7rem;font-weight:800;margin-bottom:18px}

/* v2.7 hero, logo, solution image, and founder refinements */
.site-header .mq-brand-logo img{height:38px;width:auto;max-width:210px}
.site-header .mq-brand-logo{margin-right:auto;justify-content:flex-start}
.nav-wrap{max-width:1180px}

/* Hero: no floating callout boxes. Visual doubles as the short-loop video slot. */
.mq-hero-media{height:430px;position:relative;border-radius:22px;overflow:hidden;background:#082f43;box-shadow:0 25px 70px rgba(0,0,0,.25)}
.mq-hero-media--placeholder{
  background-image:linear-gradient(rgba(2,22,34,.08),rgba(2,22,34,.30)),url('assets/images/home-hero.webp');
  background-size:cover;
  background-position:center;
}
.mq-hero-loop{width:100%;height:100%;object-fit:cover;display:block}
.mq-hero-loop-badge{position:absolute;left:20px;bottom:20px;display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:999px;background:rgba(3,31,45,.78);border:1px solid rgba(255,255,255,.28);color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.05em;backdrop-filter:blur(8px)}
.mq-hero-loop-badge .play{width:26px;height:26px}
.mq-css-workzone,.mq-marker{display:none!important}

/* Connected Work Zone cards: preserve the image composition rather than cropping it. */
.mq-solution-card{
  min-height:0!important;
  background-size:100% auto!important;
  background-position:top center!important;
  background-repeat:no-repeat!important;
  background-color:#05293b!important;
  display:flex;
  flex-direction:column;
}
.mq-solution-card:before{display:none!important}
.mq-solution-card__content{
  position:relative!important;
  inset:auto!important;
  margin-top:clamp(185px,18vw,225px)!important;
  padding:26px!important;
  background:linear-gradient(180deg,#07384e,#05293b);
  min-height:235px;
}
@media(max-width:900px){
  .mq-solution-card__content{margin-top:clamp(220px,52vw,420px)!important;min-height:0}
  .mq-hero-media{height:360px}
}


/* v2.9 cleanup */
.mq-home-hero .hero-copy{max-width:620px}
.mq-home-hero-grid{gap:56px}
.mq-solution-grid{align-items:stretch}
.mq-solution-card__content{display:flex;flex-direction:column}
.mq-solution-card__content a{margin-top:auto;padding-top:18px}
.mq-project-card h3{margin-top:4px}
.mq-project-card p:last-child{margin-bottom:0}
.section-head{max-width:760px}
.site-footer .footer-grid{align-items:start}
@media(max-width:900px){
  .mq-home-hero-grid{gap:28px}
}

/* v3.0 homepage hero, platform links, accessibility and contrast */
.mq-home-hero{position:relative;min-height:520px;display:block;overflow:hidden;background:#041f2e}
.mq-hero-scene{position:absolute;inset:0;overflow:hidden}
.mq-hero-image{position:absolute;inset:0;background-image:url('assets/images/home-hero.webp');background-size:cover;background-position:center center;background-repeat:no-repeat}
.mq-hero-loop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mq-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,31,48,.96) 0%,rgba(3,31,48,.82) 38%,rgba(3,31,48,.32) 66%,rgba(3,31,48,.12) 100%)}
.mq-home-hero-copy{position:relative;z-index:3;min-height:520px;display:flex;align-items:center;padding:72px 0}
.mq-home-hero-copy>div{max-width:560px}
.mq-home-hero h1{font-size:clamp(3rem,5vw,5.3rem);line-height:.98;margin-bottom:24px}
.mq-hero-callouts{position:absolute;z-index:4;inset:0;pointer-events:none}
.mq-callout{position:absolute;display:flex;flex-direction:column;gap:2px;min-width:165px;padding:10px 13px;border-radius:8px;background:rgba(3,31,48,.88);border:1px solid rgba(0,163,215,.95);box-shadow:0 10px 25px rgba(0,0,0,.18);color:#fff;backdrop-filter:blur(8px)}
.mq-callout strong{font-size:.72rem;letter-spacing:.02em}
.mq-callout small{font-size:.64rem;color:#cbe5ee}
.callout-worker{top:25%;left:55%;border-color:rgba(76,175,80,.95)}
.callout-data{top:13%;right:14%}
.callout-asset{bottom:25%;left:59%}
.callout-alert{top:31%;right:4%;border-color:rgba(76,175,80,.95)}
.mq-hero-loop-badge{position:absolute;z-index:5;right:24px;bottom:22px}
@media(max-width:1000px){
.mq-home-hero-copy{align-items:flex-start;padding-top:70px}
.mq-hero-shade{background:linear-gradient(90deg,rgba(3,31,48,.96),rgba(3,31,48,.7))}
  .mq-callout{display:none}
}
@media(max-width:650px){
.mq-hero-image{background-position:60% center}
  .mq-home-hero h1{font-size:2.8rem}
}
/* Platform page solution links */
.mq-platform-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.mq-platform-link-card{display:flex;flex-direction:column;background:#083b55;border:1px solid #116482;border-radius:16px;padding:28px;color:#fff;min-height:260px}
.mq-platform-link-card .sub{color:#74def7;font-weight:800}
.mq-platform-link-card a{margin-top:auto;color:#fff;font-weight:800;text-decoration:none;padding-top:18px}
.mq-platform-link-card a:hover{text-decoration:underline}
@media(max-width:800px){.mq-platform-links{grid-template-columns:1fr}}
/* Stronger link contrast on dark Beyond Work Zones cards */
.dark .mq-edit-card a,.dark .mq-edit-card a:visited{color:#fff!important;text-decoration:underline;text-underline-offset:3px}
.dark .mq-edit-card a:hover{color:#8fe8ff!important}
/* 5-value-card layout */
.value-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:1000px){.value-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.value-grid{grid-template-columns:1fr}}

/* v3.1 information architecture and copy cleanup */
.mq-home-hero-copy .wp-block-buttons{justify-content:flex-start!important}
.mq-inner-hero .container{max-width:1180px}
.mq-inner-hero .container>p,.mq-inner-hero .container>h1,.mq-inner-hero .container>.wp-block-buttons{text-align:left}
.mq-project-partners{margin-top:34px;padding-top:24px;border-top:1px solid #dbe8ed}
.mq-project-partners-label{font-size:.74rem;font-weight:800;letter-spacing:.08em;color:#607d89;text-align:center;margin-bottom:16px}
.mq-project-partner-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.mq-project-partner-logo{min-height:76px;border-radius:10px;background:#fff;border:1px solid #dbe8ed;display:grid;place-items:center;padding:12px}
.mq-project-partner-logo img{max-width:150px;max-height:48px;width:auto;height:auto}
.mq-project-partner-logo--placeholder{border-style:dashed;color:#7d969f;font-size:.68rem;font-weight:800;letter-spacing:.08em}
.mq-beyond .mq-edit-card{background:#07354c;border-color:#1d6178;color:#fff}
.mq-beyond .mq-edit-card h3,.mq-beyond .mq-edit-card p{color:#fff}
.mq-beyond .mq-edit-card .sub{color:#8de05d}
.mq-beyond .mq-edit-card a,.mq-beyond .mq-edit-card a:visited{color:#fff!important;font-weight:800}
.mq-projects-section{background:#f8fbfc}
@media(max-width:800px){.mq-project-partner-row{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v3.2 typography and alignment consistency */
.mq-home-hero-copy{
  width:min(100% - 40px,1180px);
  margin:0 auto;
  padding-left:0!important;
  padding-right:0!important;
}
.mq-home-hero-copy>div{
  width:100%;
  max-width:620px!important;
  text-align:left!important;
}
.mq-home-hero-copy h1{
  font-size:clamp(3.25rem,4vw,4rem)!important;
  line-height:1.03!important;
  max-width:620px;
  text-align:left!important;
}
.mq-home-hero-copy .hero-copy{
  max-width:560px!important;
  font-size:1.08rem!important;
  line-height:1.65!important;
  text-align:left!important;
}
.mq-home-hero-copy .eyebrow{
  text-align:left!important;
}
.mq-home-hero-copy .wp-block-buttons{
  justify-content:flex-start!important;
}
.mq-inner-hero .container{
  width:min(100% - 40px,1180px);
  margin-inline:auto;
}
.mq-inner-hero h1{
  max-width:720px;
  font-size:clamp(2.6rem,3.25vw,3.5rem)!important;
  line-height:1.06!important;
}
.mq-inner-hero .hero-copy{
  max-width:650px;
  font-size:1.06rem;
  line-height:1.65;
}
@media(max-width:900px){
}
@media(max-width:600px){
.mq-home-hero-copy h1{font-size:2.65rem!important}
  .mq-inner-hero h1{font-size:2.35rem!important}
}

/* v3.4 navigation, standards, CTA, and project credibility */
.mq-login-btn{
  border:1px solid rgba(255,255,255,.55)!important;
  background:transparent!important;
  color:#fff!important;
}
.mq-login-btn:hover{
  background:rgba(255,255,255,.08)!important;
  transform:translateY(-1px);
}
.mq-standards-strip{
  background:#f5f9fa;
  border-top:1px solid #dbe8ed;
  border-bottom:1px solid #dbe8ed;
  padding:34px 0;
}
.mq-standards-inner{
  display:grid;
  grid-template-columns:1.1fr 1.4fr auto;
  gap:28px;
  align-items:center;
}
.mq-standards-inner h2{
  font-size:1.55rem;
  margin:2px 0 0;
}
.mq-standard-items{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.mq-standard-items span{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:8px 13px;
  border-radius:999px;
  background:#fff;
  border:1px solid #cfe0e6;
  color:#0a4559;
  font-weight:800;
  font-size:.8rem;
}
.mq-standards-inner>a{
  color:#0a4559;
  font-weight:800;
  text-decoration:none;
  white-space:nowrap;
}
.mq-standards-inner>a:hover{text-decoration:underline}
.mq-closing-cta{
  background:linear-gradient(120deg,#05293b,#0a4559);
  color:#fff;
  padding:64px 0;
}
.mq-closing-cta-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
}
.mq-closing-cta h2{color:#fff;margin-bottom:10px}
.mq-closing-cta p{margin-bottom:0;color:#d7e7ec}
.mq-projects-section{
  border-top:1px solid #e0ecef;
  border-bottom:1px solid #e0ecef;
}
.mq-project-partners{
  background:#fff;
  border-radius:14px;
  padding:22px;
}
.mq-project-partner-logo--placeholder{
  min-height:72px;
  background:#f8fbfc;
}
@media(max-width:1050px){
  .main-nav{gap:16px}
  .main-nav a{font-size:.84rem}
}
@media(max-width:900px){
  .mq-standards-inner{grid-template-columns:1fr}
  .mq-closing-cta-inner{display:block}
  .mq-closing-cta .btn{margin-top:20px}
}

/* v3.5 process icons, video preview, footer and header CTA refinement */
.mq-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.mq-process-card{background:#fff;border:1px solid #dbe8ed;border-radius:16px;padding:26px;box-shadow:0 8px 24px rgba(8,54,77,.05)}
.mq-process-icon{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:#eaf7fb;margin-bottom:20px}
.mq-process-icon svg{width:30px;height:30px;fill:none;stroke:#00a3d7;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.mq-process-card:nth-child(3) .mq-process-icon,.mq-process-card:nth-child(4) .mq-process-icon{background:#eef8ee}
.mq-process-card:nth-child(3) .mq-process-icon svg,.mq-process-card:nth-child(4) .mq-process-icon svg{stroke:#4caf50}
.mq-video-preview{background-image:linear-gradient(rgba(3,31,48,.25),rgba(3,31,48,.5)),url('assets/images/home-hero.webp');background-size:cover;background-position:center}
.mq-video-preview-inner{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#fff}
.mq-video-preview-label{font-weight:800;font-size:.82rem;letter-spacing:.04em}
.site-footer .footer-grid{grid-template-columns:1.25fr .9fr 1.1fr .8fr .8fr}
@media(max-width:950px){.mq-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.mq-process-grid,.site-footer .footer-grid{grid-template-columns:1fr}}

/* v3.6 ecosystem icons and technology layout */
.mq-ecosystem-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.mq-ecosystem-card{background:#fff;border:1px solid #dbe8ed;border-radius:16px;padding:24px;box-shadow:0 8px 24px rgba(8,54,77,.05)}
.mq-ecosystem-icon,.mq-technology-icon{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:#eaf7fb;margin-bottom:18px}
.mq-ecosystem-icon svg,.mq-technology-icon svg{width:30px;height:30px;fill:none;stroke:#00a3d7;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.mq-ecosystem-card:nth-child(2) .mq-ecosystem-icon,.mq-ecosystem-card:nth-child(5) .mq-ecosystem-icon{background:#eef8ee}
.mq-ecosystem-card:nth-child(2) .mq-ecosystem-icon svg,.mq-ecosystem-card:nth-child(5) .mq-ecosystem-icon svg{stroke:#4caf50}
.mq-ecosystem-card:nth-child(3){border-color:#9fdceb}
.mq-ecosystem-card:nth-child(3) .mq-ecosystem-icon{background:#0a4559}
.mq-ecosystem-card:nth-child(3) .mq-ecosystem-icon svg{stroke:#fff}

.mq-standards-inner{
  grid-template-columns:minmax(260px,.9fr) minmax(560px,1.8fr) auto!important;
  gap:32px!important;
}
.mq-standard-items{display:grid!important;grid-template-columns:repeat(5,max-content);gap:10px!important;align-items:center}
.mq-standard-items span{justify-content:center;white-space:nowrap}
.mq-standards-strip .container{max-width:1280px}

.mq-technology-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.mq-technology-card{background:#083b55;border:1px solid #116482;border-radius:16px;padding:26px;color:#fff}
.mq-technology-card h3,.mq-technology-card p{color:#fff}
.mq-technology-card .sub{color:#8fe8ff;font-weight:800}
.mq-technology-card:nth-child(4) .mq-technology-icon{background:#eef8ee}
.mq-technology-card:nth-child(4) .mq-technology-icon svg{stroke:#4caf50}

@media(max-width:1180px){
  .mq-ecosystem-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mq-standards-inner{grid-template-columns:1fr!important}
  .mq-standard-items{grid-template-columns:repeat(5,max-content)!important}
}
@media(max-width:900px){
  .mq-technology-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mq-standard-items{grid-template-columns:repeat(3,max-content)!important}
}
@media(max-width:650px){
  .mq-ecosystem-grid,.mq-technology-grid{grid-template-columns:1fr}
  .mq-standard-items{display:flex!important;flex-wrap:wrap!important}
}

/* v3.7 standardized icon system and homepage technology foundation */
.mq-process-icon svg,.mq-ecosystem-icon svg,.mq-technology-icon svg,.mq-home-tech-icon svg{
  width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;
  stroke-linecap:round;stroke-linejoin:round;
}
.mq-process-icon,.mq-ecosystem-icon,.mq-technology-icon,.mq-home-tech-icon{
  color:#00a3d7;
}
.mq-process-card:nth-child(3) .mq-process-icon,
.mq-process-card:nth-child(4) .mq-process-icon,
.mq-ecosystem-card:nth-child(2) .mq-ecosystem-icon,
.mq-ecosystem-card:nth-child(5) .mq-ecosystem-icon,
.mq-technology-card:nth-child(4) .mq-technology-icon{color:#4caf50}
.mq-ecosystem-card:nth-child(3) .mq-ecosystem-icon{color:#fff}

.mq-home-technology{
  background:#f5f9fa;
  border-top:1px solid #dbe8ed;
  border-bottom:1px solid #dbe8ed;
  padding:52px 0;
}
.mq-home-technology .container{max-width:1180px}
.mq-home-technology-head{
  display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:28px
}
.mq-home-technology-head h2{margin:2px 0 0;max-width:620px}
.mq-home-technology-head>a{
  color:#0a4559;font-weight:800;text-decoration:none;white-space:nowrap
}
.mq-home-technology-head>a:hover{text-decoration:underline}
.mq-home-tech-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px
}
.mq-home-tech-card{
  display:flex;align-items:flex-start;gap:14px;background:#fff;border:1px solid #dbe8ed;
  border-radius:14px;padding:20px;min-height:112px
}
.mq-home-tech-icon{
  flex:0 0 44px;width:44px;height:44px;border-radius:12px;background:#eaf7fb;
  display:grid;place-items:center
}
.mq-home-tech-card:nth-child(4) .mq-home-tech-icon{background:#eef8ee;color:#4caf50}
.mq-home-tech-card h3{font-size:1rem;margin:2px 0 5px}
.mq-home-tech-card p{font-size:.86rem;line-height:1.45;margin:0;color:#55727d}
@media(max-width:900px){
  .mq-home-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mq-home-technology-head{align-items:flex-start;flex-direction:column}
}
@media(max-width:560px){.mq-home-tech-grid{grid-template-columns:1fr}}

/* v3.8 Lucide icon system */
.lucide{width:24px!important;height:24px!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.mq-process-icon .lucide,.mq-ecosystem-icon .lucide,.mq-technology-icon .lucide{width:26px!important;height:26px!important}
.mq-home-tech-icon .lucide{width:24px!important;height:24px!important}

/* v3.9 Technology page depth */
.mq-tech-architecture{background:#f5f9fa}
.mq-tech-architecture-flow{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
  align-items:stretch;
}
.mq-tech-architecture-step{
  position:relative;
  background:#fff;
  border:1px solid #dbe8ed;
  border-radius:14px;
  padding:22px;
  min-height:190px;
}
.mq-tech-architecture-step:not(:last-child):after{
  content:"→";
  position:absolute;
  right:-13px;
  top:50%;
  transform:translateY(-50%);
  z-index:2;
  color:#7aa8b8;
  font-weight:800;
  font-size:1.25rem;
}
.mq-tech-architecture-number{
  width:34px;height:34px;border-radius:50%;
  display:grid;place-items:center;
  background:#eaf7fb;color:#00a3d7;
  font-weight:800;margin-bottom:16px;
}
.mq-tech-detail-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}
.mq-tech-detail-grid article{
  background:#fff;
  border:1px solid #dbe8ed;
  border-radius:14px;
  padding:26px;
}
.mq-tech-detail-grid h3{margin-top:0}
@media(max-width:1050px){
  .mq-tech-architecture-flow{grid-template-columns:1fr}
  .mq-tech-architecture-step:not(:last-child):after{
    content:"↓";
    right:auto;left:50%;top:auto;bottom:-20px;transform:translateX(-50%)
  }
}
@media(max-width:720px){
  .mq-tech-detail-grid{grid-template-columns:1fr}
}

/* v4.2 curated consolidation */
.mq-home-hero-copy,.mq-inner-hero .container{
  width:min(1180px,calc(100% - 40px))!important;max-width:1180px!important;
  margin-inline:auto!important;padding-inline:0!important;box-sizing:border-box
}
.mq-home-hero-copy>div{margin-left:0!important;margin-right:auto!important;text-align:left!important}
.mq-home-hero-copy .wp-block-buttons{justify-content:flex-start!important}

/* Solution imagery: fill the image region cleanly without the previous letterboxed/cut-off effect. */
.mq-solution-card{background-size:cover!important;background-repeat:no-repeat!important;background-position:center 34%!important}
.mq-solution-card.workforce{background-position:center 28%!important}
.mq-solution-card.mapper{background-position:center 42%!important}
.mq-solution-card.alerts{background-position:center 35%!important}

/* Connected mobility environments */
.mq-mobility-environments{background:#f5f9fa}
.mq-environment-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:22px}
.mq-environment-card{
  min-height:420px;border-radius:18px;overflow:hidden;display:flex;align-items:flex-end;
  background-size:cover;background-position:center;box-shadow:0 16px 38px rgba(8,54,77,.11)
}
.mq-environment-intersections{background-image:linear-gradient(0deg,rgba(3,31,48,.90),rgba(3,31,48,.10) 70%),url('assets/images/connected-intersections.webp')}
.mq-environment-enduser{background-image:linear-gradient(0deg,rgba(3,31,48,.90),rgba(3,31,48,.10) 70%),url('assets/images/end-user-experiences.webp')}
.mq-environment-copy{padding:28px;color:#fff;max-width:650px}
.mq-environment-copy h3,.mq-environment-copy p{color:#fff}
.mq-environment-copy a{color:#fff;font-weight:800}

/* Real supplied partner logos */
.mq-project-partner-row{
  display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:18px!important;align-items:center!important
}
.mq-project-partner-logo{
  min-height:108px!important;background:#fff!important;border:1px solid #e1eaee!important;
  border-radius:12px!important;padding:18px!important;display:flex!important;align-items:center!important;justify-content:center!important
}
.mq-project-partner-logo img{
  width:100%!important;height:68px!important;object-fit:contain!important;object-position:center!important
}
@media(max-width:900px){
  .mq-environment-grid{grid-template-columns:1fr}
  .mq-project-partner-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:560px){
  .mq-project-partner-row{grid-template-columns:1fr!important}
}

/* v4.3 corrective visual pass */
.mq-platform-environments{background:#fff}
.mq-platform-environment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.mq-platform-environment{
  min-height:360px;border-radius:18px;overflow:hidden;display:flex;align-items:flex-end;
  background-size:cover;background-position:center;box-shadow:0 14px 34px rgba(8,54,77,.10)
}
.mq-env-workzones{background-image:linear-gradient(0deg,rgba(3,31,48,.92),rgba(3,31,48,.12) 72%),url('assets/images/workforce-intelligence.webp')}
.mq-env-intersections{background-image:linear-gradient(0deg,rgba(3,31,48,.92),rgba(3,31,48,.12) 72%),url('assets/images/connected-intersections.webp')}
.mq-env-enduser{background-image:linear-gradient(0deg,rgba(3,31,48,.92),rgba(3,31,48,.12) 72%),url('assets/images/end-user-experiences.webp')}
.mq-env-copy{padding:24px;color:#fff}.mq-env-copy h3,.mq-env-copy p,.mq-env-copy a{color:#fff}
.mq-env-copy a{font-weight:800}

/* The solution cards use fresh 1600x1000 imagery and a fixed visual region. */
.mq-solution-card{
  background-size:100% auto!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
  background-color:#05293b!important;
}
.mq-solution-card__content{
  margin-top:clamp(205px,18vw,245px)!important;
  background:linear-gradient(180deg,#07384e,#05293b)!important;
}

/* Partner logos: use the actual available area instead of a tiny fixed-height treatment. */
.mq-project-partner-logo{min-height:118px!important;padding:14px 18px!important}
.mq-project-partner-logo img{
  width:auto!important;height:auto!important;
  max-width:92%!important;max-height:82px!important;
  object-fit:contain!important;display:block!important
}
/* Wider marks get more room. */
.mq-project-partner-logo:nth-child(2) img,
.mq-project-partner-logo:nth-child(7) img,
.mq-project-partner-logo:nth-child(9) img,
.mq-project-partner-logo:nth-child(10) img{max-width:98%!important;max-height:88px!important}
/* Compact marks can be taller. */
.mq-project-partner-logo:nth-child(1) img,
.mq-project-partner-logo:nth-child(4) img{max-height:94px!important}

@media(max-width:900px){
  .mq-platform-environment-grid{grid-template-columns:1fr}
  .mq-solution-card__content{margin-top:clamp(250px,55vw,460px)!important}
}

/* v4.3b make intersections and VRUs visually prominent */
.mq-mobility-environments{padding-top:76px!important;padding-bottom:76px!important}
.mq-mobility-environments .section-head{max-width:820px}
.mq-environment-grid{grid-template-columns:1.15fr .85fr!important}
.mq-environment-card{min-height:460px!important}
.mq-environment-intersections{outline:2px solid rgba(0,163,215,.22)}
@media(max-width:900px){.mq-environment-grid{grid-template-columns:1fr!important}}

/* v4.4 Connected Intersections refinement only */
.mq-intersection-apps{display:grid;gap:10px;margin:18px 0 20px}
.mq-intersection-apps>div{
  display:grid;grid-template-columns:92px 1fr;gap:12px;
  padding:11px 12px;border-radius:10px;
  background:rgba(255,255,255,.11);backdrop-filter:blur(3px)
}
.mq-intersection-apps strong{color:#fff}
.mq-intersection-apps span{color:rgba(255,255,255,.92);font-size:.92rem;line-height:1.4}
@media(max-width:560px){.mq-intersection-apps>div{grid-template-columns:1fr;gap:3px}}

/* v4.8 focused platform architecture updates */

/* Supplied MobiQon mark is the deliberate brand exception to the Lucide icon system. */
.mq-mobiqon-platform-mark{
  display:block;width:34px;height:34px;object-fit:contain
}
.mq-ecosystem-card:nth-child(3) .mq-ecosystem-icon{
  width:58px!important;height:58px!important;padding:0!important;overflow:hidden
}
.mq-ecosystem-card:nth-child(3) .mq-ecosystem-icon .mq-mobiqon-platform-mark{
  width:46px;height:46px
}

/* Header solutions dropdown */
.mq-nav-dropdown{position:relative;display:flex;align-items:center}
.mq-nav-dropdown-toggle{
  appearance:none;border:0;background:transparent;color:inherit;
  font:inherit;font-weight:inherit;padding:8px 0;cursor:pointer
}
.mq-nav-dropdown-menu{
  display:none;position:absolute;top:100%;left:-18px;min-width:245px;
  padding:10px;background:#fff;border:1px solid #dbe8ed;border-radius:12px;
  box-shadow:0 18px 40px rgba(3,31,48,.15);z-index:50
}
.mq-nav-dropdown:hover .mq-nav-dropdown-menu,
.mq-nav-dropdown:focus-within .mq-nav-dropdown-menu{display:block}
.mq-nav-dropdown-menu a{
  display:block!important;color:#0a4559!important;padding:11px 12px!important;
  border-radius:8px;text-decoration:none!important
}
.mq-nav-dropdown-menu a:hover{background:#f1f7f9}

/* Two peer solution environments */
.mq-environment-grid{grid-template-columns:1fr 1fr!important}
.mq-environment-workzones{
  background-image:linear-gradient(0deg,rgba(3,31,48,.92),rgba(3,31,48,.12) 72%),url('assets/images/workforce-intelligence.webp')
}
.mq-environment-intersections{
  background-image:linear-gradient(0deg,rgba(3,31,48,.92),rgba(3,31,48,.12) 72%),url('assets/images/connected-intersections.webp')
}

/* Platform software presentation area */
.mq-platform-software{background:#f5f9fa}
.mq-platform-software-grid{
  display:grid;grid-template-columns:.9fr 1.1fr;gap:42px;align-items:center
}
.mq-platform-screenshot-placeholder{
  min-height:390px;border:1px dashed #9fb8c2;border-radius:18px;
  background:linear-gradient(145deg,#eef5f7,#fff);
  display:grid;place-items:center;padding:30px;text-align:center;color:#617d88
}
.mq-platform-screenshot-placeholder>div{display:grid;gap:8px}
.mq-platform-screenshot-placeholder strong{color:#0a4559;letter-spacing:.06em}
.mq-platform-screenshot-placeholder span{max-width:420px}

/* Contact explicitly follows the preferred interior-hero alignment. */
.mq-inner-hero.contact>.container{
  width:min(1180px,calc(100% - 40px))!important;
  max-width:1180px!important;margin-inline:auto!important;
  padding-left:clamp(22px,3vw,46px)!important;padding-right:0!important
}
@media(max-width:900px){
  .mq-environment-grid,.mq-platform-software-grid{grid-template-columns:1fr!important}
}
@media(max-width:600px){
  .mq-inner-hero.contact>.container{width:min(1180px,calc(100% - 28px))!important;padding-left:14px!important}
}

/* v4.9 focused Platform architecture */
.mq-home-tech-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
@media(max-width:900px){
  .mq-home-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:600px){
  .mq-home-tech-grid{grid-template-columns:1fr!important}
}

/* v5.0 focused navigation, Work Zone links, and About additions */
.mq-linked-solution-card{display:flex;flex-direction:column}
.mq-linked-solution-card>a{margin-top:auto;padding-top:12px;font-weight:800}

/* v5.1 focused environment solution image cards */
.mq-environment-solution-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px
}
.mq-environment-solution-card{
  min-height:390px;border-radius:18px;overflow:hidden;
  background-size:cover;background-position:center;
  display:flex;align-items:flex-end;text-decoration:none!important;
  box-shadow:0 14px 34px rgba(8,54,77,.10);
  transition:transform .18s ease,box-shadow .18s ease
}
a.mq-environment-solution-card:hover{
  transform:translateY(-3px);box-shadow:0 18px 40px rgba(8,54,77,.16)
}
.mq-environment-solution-card>div{padding:24px;color:#fff}
.mq-environment-solution-card h3,
.mq-environment-solution-card p,
.mq-environment-solution-card span{color:#fff!important}
.mq-environment-solution-card h3{margin:0 0 7px}
.mq-environment-solution-card .mq-card-kicker{
  font-weight:800;margin:0 0 7px;opacity:.96
}
.mq-environment-solution-card p{margin:0 0 12px;line-height:1.5}
.mq-environment-solution-card span{font-weight:800}
@media(max-width:900px){
  .mq-environment-solution-grid{grid-template-columns:1fr}
  .mq-environment-solution-card{min-height:340px}
}

/* v5.2 focused Work Zones / Intersections page consistency */
.mq-env-capability-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px
}
.mq-env-capability{
  padding:22px;border:1px solid #dce9ed;border-radius:16px;background:#fff;
  box-shadow:0 10px 26px rgba(8,54,77,.06)
}
.mq-env-capability h3{margin:0 0 8px;color:#0a4559}
.mq-env-capability p{margin:0;line-height:1.55}
.mq-env-capabilities:nth-of-type(even){background:#f6fafb}
@media(max-width:900px){
  .mq-env-capability-grid{grid-template-columns:1fr}
}

/* v5.3 solution readiness indicators */
.mq-readiness-pill{
  display:inline-flex!important;width:auto!important;
  margin:0 0 12px!important;padding:5px 9px!important;
  border:1px solid rgba(255,255,255,.5)!important;border-radius:999px!important;
  background:rgba(3,31,48,.55)!important;color:#fff!important;
  font-size:11px!important;font-weight:800!important;line-height:1!important;
  letter-spacing:.06em!important;text-transform:uppercase!important;
  backdrop-filter:blur(5px)
}

.mq-environment-solution-card,
.mq-environment-card,
.mq-inner-hero{
  background-size:cover!important;
  background-repeat:no-repeat!important;
}
.mq-environment-solution-card{background-position:center!important}

/* v5.6 branded white header + mobile navigation fix */
.site-header{
  background:#fff!important;
  border-bottom:1px solid #dbe8ed!important;
  box-shadow:0 2px 14px rgba(5,41,59,.06)!important;
}
.site-header .main-nav>a{
  color:#0a4559!important;
}
.site-header .menu-toggle{
  color:#0a4559!important;
}
.site-header .mq-login-btn{
  color:#0a4559!important;
  border-color:#9bb6c0!important;
  background:#fff!important;
}
.site-header .mq-login-btn:hover{
  background:#f4f8f9!important;
}
.site-header .btn-primary{
  color:#fff!important;
}

/* The hamburger is enabled through 900px, so the open state must work through 900px too. */
@media(max-width:900px){
  .site-header{position:relative;z-index:100}
  .main-nav.open{
    display:flex!important;
    position:absolute!important;
    top:100%!important;
    left:0!important;
    right:0!important;
    z-index:99!important;
    padding:20px!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:8px!important;
    background:#fff!important;
    border-top:1px solid #dbe8ed!important;
    border-bottom:1px solid #dbe8ed!important;
    box-shadow:0 14px 28px rgba(5,41,59,.12)!important;
  }
  .main-nav.open>a{
    width:100%!important;
    color:#0a4559!important;
    padding:10px 4px!important;
  }
  .main-nav.open .mq-login-btn,
  .main-nav.open .btn-primary{
    width:auto!important;
    margin-top:6px!important;
  }
  .main-nav.open .btn-primary{
    color:#fff!important;
  }
}

/* Coming-soon placeholders should read as intentional, not unfinished admin text. */
.mq-platform-screenshot-placeholder strong,
.mq-project-media--placeholder span,
.mq-video-preview-label,
.mq-hero-loop-badge{
  letter-spacing:.06em;
}

/* News & Events */
.mq-news-events{background:#f5f9fa}
.mq-news-events-head{
  display:flex;justify-content:space-between;align-items:flex-end;
  gap:28px;margin-bottom:28px
}
.mq-news-events-head>div{max-width:720px}
.mq-news-events-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px
}
.mq-news-event-card{
  position:relative;padding:28px;border:1px solid #dbe8ed;border-radius:16px;
  background:#fff;box-shadow:0 10px 28px rgba(8,54,77,.06)
}
.mq-news-event-card h3{margin-top:4px}
.mq-coming-soon-pill{
  display:inline-flex;padding:5px 9px;margin-bottom:18px;border-radius:999px;
  background:#eaf7fb;color:#0a4559;font-size:11px;font-weight:800;
  letter-spacing:.06em;text-transform:uppercase
}
.mq-linkedin-btn{
  white-space:nowrap;color:#0a4559!important;border:1px solid #9db7c1!important;
  background:#fff!important
}
@media(max-width:800px){
  .mq-news-events-head{align-items:flex-start;flex-direction:column}
  .mq-news-events-grid{grid-template-columns:1fr}
}

/* v6.1 News & Events seeding + LinkedIn icon treatment */
.mq-linkedin-footer{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
}
.mq-linkedin-footer img{
  width:21px!important;
  height:21px!important;
  display:block!important;
}
.mq-linkedin-button{
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
}
.mq-linkedin-button img{
  width:22px!important;
  height:22px!important;
  display:block!important;
}

/* News & Events: two intentional, centered cards */
.mq-news-events-page-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
  max-width:900px;
  margin-inline:auto;
}
.mq-news-events-page-cards .section-head{
  max-width:900px;
  margin-inline:auto;
  text-align:center;
}
@media(max-width:720px){
  .mq-news-events-page-grid{grid-template-columns:1fr}
  .mq-news-events-page-cards .section-head{text-align:left}
}

/* v6.3 requested visual updates only */
.mq-home-hero{
  background-image:url('assets/images/home-hero-v63.webp')!important;
  background-size:cover!important;
  background-position:center!important;
}
.mq-home-hero .mq-hero-image{
  background-image:url('assets/images/home-hero-v63.webp')!important;
  background-size:cover!important;
  background-position:center!important;
}
.mq-inner-hero.cwz{
  background-image:url('assets/images/connected-work-zones-v63.webp')!important;
}
.mq-inner-hero.intersections{
  background-image:url('assets/images/connected-intersections-v63.webp')!important;
}
.mq-inner-hero.news-events{
  background-image:url('assets/images/news-events-v63.webp')!important;
}
.mq-platform-screenshot{
  border-radius:18px;
  overflow:hidden;
  background:#fff;
  border:1px solid #dbe8ed;
  box-shadow:0 18px 45px rgba(3,31,48,.12);
}
.mq-platform-screenshot img{
  display:block;
  width:100%;
  height:auto;
}
.mq-linkedin-button-wrap{
  text-align:center!important;
  margin-top:24px;
}
.mq-linkedin-button-wrap .mq-linkedin-button{
  display:inline-flex!important;
}
.mq-deployments-teaser{
  background:#f8fbfc;
  border-top:1px solid #e0ecef;
  border-bottom:1px solid #e0ecef;
}
.mq-deployments-teaser-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
}
.mq-deployments-teaser-inner>div{max-width:760px}
.mq-deployments-teaser-inner h2{margin-bottom:10px}
@media(max-width:760px){
  .mq-deployments-teaser-inner{display:block}
  .mq-deployments-teaser-inner .btn{display:inline-block;margin-top:20px}
}


/* v6.4 requested image swaps only */
/* Platform hero now matches the MobiQon-in-the-field video placeholder. */
.mq-home-hero,
.mq-home-hero .mq-hero-image{
  background-image:url('assets/images/home-hero.webp')!important;
  background-size:cover!important;
  background-position:center!important;
}

/* Platform environment cards use the current hero imagery from their dedicated pages. */
.mq-environment-workzones{
  background-image:linear-gradient(0deg,rgba(3,31,48,.92),rgba(3,31,48,.12) 72%),url('assets/images/connected-work-zones-v63.webp')!important;
}
.mq-environment-intersections{
  background-image:linear-gradient(0deg,rgba(3,31,48,.92),rgba(3,31,48,.12) 72%),url('assets/images/connected-intersections-v63.webp')!important;
}

/* Deployments uses the same connected-field visual as the Platform/video placeholder. */
.mq-inner-hero.deployments{
  background-image:url('assets/images/home-hero.webp')!important;
}

/* About receives the previous Platform hero; Contact receives the previous About visual. */
.mq-inner-hero.about{
  background-image:url('assets/images/home-hero-v63.webp')!important;
}
.mq-inner-hero.contact{
  background-image:url('assets/images/about-brand.webp')!important;
}


/* v6.5 compact Platform-page collaboration proof */
.mq-platform-partners{padding-top:48px!important;padding-bottom:52px!important;background:#fff}
.mq-platform-partners-head{text-align:center;max-width:760px;margin-left:auto;margin-right:auto}
.mq-platform-partner-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;align-items:stretch;margin-top:24px}
.mq-platform-partner-row>div{min-height:94px;border:1px solid #dbe8ed;border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:center;padding:14px}
.mq-platform-partner-row img{display:block;max-width:100%;max-height:62px;width:auto;height:auto;object-fit:contain}
.mq-platform-partners-link{text-align:center;margin:22px 0 0}
.mq-platform-partners-link a{font-weight:800}
@media(max-width:900px){.mq-platform-partner-row{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.mq-platform-partner-row{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* v6.6 merge collaboration proof into Projects & Deployments */
.mq-platform-partners{display:none!important}
.mq-deployments-with-partners .mq-deployments-partner-proof{border-top:1px solid #dbe8ed;margin-top:30px;padding-top:22px}
.mq-deployments-with-partners .mq-collab-label{text-align:center;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:800;color:#0a6aa0;margin:0 0 14px}
.mq-deployments-with-partners .mq-platform-partner-row{margin-top:0}


/* v6.7 partner logo optical sizing */
.mq-platform-partner-row>div,
.mq-partner-grid>div{overflow:hidden}
.mq-platform-partner-row img{max-width:92%!important;max-height:70px!important}
.mq-partner-grid img{max-width:88%!important;max-height:82px!important;object-fit:contain}


/* v6.9 Technology: concise data-to-experience layer */
.mq-data-experiences{background:#f5f9fa}
.mq-data-experiences .section-head{max-width:820px}
.mq-data-experience-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:28px}
.mq-data-experience-card{background:#fff;border:1px solid #dbe8ed;border-radius:16px;padding:26px 22px;box-shadow:0 8px 28px rgba(10,69,89,.06)}
.mq-data-experience-icon{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#edf8fb;color:#007fb2;margin-bottom:18px}
.mq-data-experience-icon svg{width:25px;height:25px}
.mq-data-experience-card h3{margin:0 0 8px}
.mq-data-experience-card p{margin:0}
@media(max-width:900px){.mq-data-experience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.mq-data-experience-grid{grid-template-columns:1fr}}

/* v6.10 expanded collaboration row */
.mq-deployments-with-partners .mq-platform-partner-row{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){.mq-deployments-with-partners .mq-platform-partner-row{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* v6.14 Platform hero intelligence callouts */
.mq-hero-callouts .callout-worker small,
.mq-hero-callouts .callout-asset small{font-weight:700}
.mq-hero-callouts .callout-data,
.mq-hero-callouts .callout-alert{border-color:rgba(0,163,215,.55)}


/* Worker in the active work-zone crew */
  .mq-hero-callouts .callout-worker{
    top:54%;
    left:42%;
    right:auto;
    bottom:auto;
  }
/* Channelizers / temporary traffic-control configuration */
  .mq-hero-callouts .callout-asset{
    top:69%;
    left:45%;
    right:auto;
    bottom:auto;
  }
/* Information delivered to a vehicle approaching the work zone */
  .mq-hero-callouts .callout-data{
    top:67%;
    left:59%;
    right:auto;
    bottom:auto;
  }
/* GLOSA-style guidance associated with a vehicle and connected signals */
  .mq-hero-callouts .callout-alert{
    top:46%;
    left:72%;
    right:auto;
    bottom:auto;
  }
.mq-hero-callouts .callout-asset::before{left:31px;bottom:-31px;color:#00a3d7}
.mq-hero-callouts .callout-alert::before{left:43%;bottom:-39px;color:#4caf50}
}

/* Keep the photo readable and avoid detached callouts on narrower layouts. */
@media(min-width:1001px) and (max-width:1250px){
  .mq-hero-callouts .mq-callout{transform:scale(.9);transform-origin:top left}
  .mq-hero-callouts .callout-worker{left:43%}
  .mq-hero-callouts .callout-asset{left:46%}
  .mq-hero-callouts .callout-data{left:60%}
  .mq-hero-callouts .callout-alert{left:73%}
}







/* v6.22 robust solution-card imagery for Work Zones and Intersections */
.mq-environment-solution-card{
  position:relative!important;
  min-height:390px;
  border-radius:18px;
  overflow:hidden;
  display:flex;
  align-items:flex-end;
  text-decoration:none!important;
  background:#0a4559!important;
}
.mq-environment-solution-image{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  z-index:0;
  display:block;
}
.mq-environment-solution-overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(0deg,rgba(3,31,48,.94) 0%,rgba(3,31,48,.60) 34%,rgba(3,31,48,.08) 74%);
  pointer-events:none;
}
.mq-environment-solution-copy{
  position:relative;
  z-index:2;
  padding:24px;
  color:#fff;
  width:100%;
}
.mq-environment-solution-copy h3,
.mq-environment-solution-copy p,
.mq-environment-solution-copy span{
  color:#fff!important;
}
@media(max-width:900px){
  .mq-environment-solution-card{min-height:340px}
}




/* v6.28 clean layout system */
:root{
  --mq-content-max:1180px;
  --mq-page-gutter:20px;
  --mq-hero-gutter:clamp(14px,1.8vw,28px);
  --mq-hero-height:480px;
}

.container{
  width:min(var(--mq-content-max),calc(100% - (2 * var(--mq-page-gutter))))!important;
  max-width:var(--mq-content-max)!important;
  margin-inline:auto!important;
  padding-inline:0!important;
  box-sizing:border-box!important;
}

/* All page heroes share one geometry. */
.mq-home-hero,
.mq-inner-hero{
  position:relative!important;
  isolation:isolate!important;
  min-height:var(--mq-hero-height)!important;
  overflow:hidden!important;
}

/* Hero copy intentionally uses a full-width hero gutter, consistently on every hero.
   This matches the current visual treatment of the interior pages without homepage-only offsets. */
.mq-home-hero .mq-home-hero-content,
.mq-inner-hero > .container{
  width:100%!important;
  max-width:none!important;
  min-height:var(--mq-hero-height)!important;
  margin:0!important;
  padding-left:var(--mq-hero-gutter)!important;
  padding-right:var(--mq-hero-gutter)!important;
  box-sizing:border-box!important;
  position:relative!important;
  z-index:10!important;
}

.mq-home-hero .mq-home-hero-content{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
}

.mq-inner-hero > .container{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
}

.mq-home-hero .mq-home-hero-content > .eyebrow,
.mq-home-hero .mq-home-hero-content > h1,
.mq-home-hero .mq-home-hero-content > .hero-copy,
.mq-home-hero .mq-home-hero-content > .wp-block-buttons,
.mq-inner-hero > .container > .eyebrow,
.mq-inner-hero > .container > h1,
.mq-inner-hero > .container > .hero-copy,
.mq-inner-hero > .container > .wp-block-buttons{
  margin-left:0!important;
  margin-right:0!important;
  text-align:left!important;
}

.mq-home-hero .mq-home-hero-content > h1{
  max-width:560px!important;
  font-size:clamp(3rem,4vw,4rem)!important;
  line-height:1.03!important;
  color:#fff!important;
}

.mq-home-hero .mq-home-hero-content > .hero-copy{
  max-width:520px!important;
  color:#f0f7fa!important;
}

.mq-home-hero .mq-home-hero-content > .wp-block-buttons,
.mq-inner-hero > .container > .wp-block-buttons{
  justify-content:flex-start!important;
}

/* Homepage intelligence cards occupy the right visual zone and do not drive layout. */
.mq-home-hero .mq-hero-scene{z-index:0!important}
.mq-home-hero .mq-hero-callouts{z-index:4!important}
.mq-hero-callouts .mq-callout::before,
.mq-hero-callouts .mq-callout::after{
  content:none!important;
  display:none!important;
}

@media(min-width:1001px){
  .mq-hero-callouts .callout-worker{top:30%!important;left:auto!important;right:39%!important;bottom:auto!important}
  .mq-hero-callouts .callout-asset{top:62%!important;left:auto!important;right:30%!important;bottom:auto!important}
  .mq-hero-callouts .callout-data{top:65%!important;left:auto!important;right:15%!important;bottom:auto!important}
  .mq-hero-callouts .callout-alert{top:45%!important;left:auto!important;right:3%!important;bottom:auto!important}
}

/* WordPress primary navigation is now the actual editable menu. */
.mq-primary-menu{
  display:flex;
  align-items:center;
  gap:28px;
  list-style:none;
  margin:0;
  padding:0;
}
.mq-primary-menu li{margin:0;padding:0}
.mq-primary-menu a{
  color:#0a4559;
  text-decoration:none;
  font-weight:650;
  font-size:.9rem;
}

@media(max-width:900px){
  :root{--mq-page-gutter:14px;--mq-hero-gutter:14px;--mq-hero-height:400px}
  .mq-primary-menu{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:0;
    width:100%;
  }
  .mq-primary-menu li,
  .mq-primary-menu a{width:100%}
  .mq-primary-menu a{display:block;padding:10px 4px}
}


/* v6.29 focused hero callout placement.
   Cards sit beside the roadway elements they describe and remain clear of the left copy area. */
@media(min-width:1001px){
  /* Worker / active work-zone personnel */
  .mq-hero-callouts .callout-worker{
    top:54%!important;
    left:40%!important;
    right:auto!important;
    bottom:auto!important;
  }

  /* TTC / channelizer field */
  .mq-hero-callouts .callout-asset{
    top:69%!important;
    left:48%!important;
    right:auto!important;
    bottom:auto!important;
  }

  /* Road-user message associated with an approaching vehicle */
  .mq-hero-callouts .callout-data{
    top:62%!important;
    left:66%!important;
    right:auto!important;
    bottom:auto!important;
  }

  /* GLOSA / signal-derived guidance in the intersection zone */
  .mq-hero-callouts .callout-alert{
    top:39%!important;
    left:auto!important;
    right:3%!important;
    bottom:auto!important;
  }
}

/* Boxes only: never draw leader lines or pinpoints. */
.mq-hero-callouts .mq-callout::before,
.mq-hero-callouts .mq-callout::after{
  content:none!important;
  display:none!important;
}


/* v6.30 Work Zone application hero imagery
   Use the sharper solution-specific visuals; framing keeps the relevant field context visible. */
.mq-inner-hero.workforce{
  background-image:url('assets/images/workforce-intelligence-card-v63.webp')!important;
  background-position:58% 48%!important;
}
.mq-inner-hero.assetmapper{
  background-image:url('assets/images/assetmapper-card-v63.webp')!important;
  background-position:62% 48%!important;
}
.mq-inner-hero.alerts{
  background-image:url('assets/images/worker-alerts-card-v63.webp')!important;
  background-position:66% 50%!important;
}

/* Preserve the common hero treatment while avoiding any extra zoom beyond cover. */
.mq-inner-hero.workforce,
.mq-inner-hero.assetmapper,
.mq-inner-hero.alerts{
  background-size:cover!important;
  background-repeat:no-repeat!important;
}

/* v6.31 editor-managed News & Events / Projects & Deployments */
.mq-news-index-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.mq-news-card{background:#fff;border:1px solid #dbe8ed;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px rgba(8,54,77,.08)}
.mq-card-link{display:block;color:inherit;text-decoration:none;height:100%}
.mq-news-card__media{aspect-ratio:16/9;background-size:cover;background-position:center}
.mq-news-card__body{padding:28px}.mq-news-card__body h2{font-size:1.5rem;margin:.25rem 0 .8rem}
.mq-news-card .eyebrow,.mq-project-card .eyebrow{font-size:.72rem;margin-bottom:8px}
.mq-text-link{display:inline-block;margin-top:8px;color:var(--mq-blue);font-weight:800}
.mq-project-card .mq-card-link:hover .mq-text-link,.mq-news-card .mq-card-link:hover .mq-text-link{text-decoration:underline}
.mq-single-article{max-width:820px;margin:0 auto}.mq-single-article .mq-single-meta{margin-bottom:18px}.mq-single-article .mq-single-image{width:100%;border-radius:16px;margin:0 0 30px}.mq-single-article .entry-content{font-size:1.06rem;line-height:1.75}.mq-single-back{margin-top:36px}
@media(max-width:760px){.mq-news-index-grid{grid-template-columns:1fr}}

/* v6.32 News & Events content/detail refinements */
.mq-news-index-grid{align-items:stretch}
.mq-news-card{height:100%}
.mq-news-card .mq-card-link{height:100%;display:flex;flex-direction:column}
.mq-news-card__media{aspect-ratio:16/9;background-position:center;background-color:#eef4f6}
.mq-news-card__body{display:flex;flex-direction:column;flex:1}
.mq-news-card__body .mq-text-link{margin-top:auto;padding-top:14px}
.mq-single-article .entry-content h2{margin-top:2rem;margin-bottom:.75rem;color:#0a4559;font-size:1.55rem}
.mq-single-article .entry-content p{margin:0 0 1.15rem}
.mq-single-image{aspect-ratio:16/9;object-fit:cover;object-position:center}
.mq-project-card{height:100%}
.mq-project-card .mq-card-link{height:100%;display:flex;flex-direction:column}
.mq-project-card__body{display:flex;flex-direction:column;flex:1}
.mq-project-card__body .mq-text-link{margin-top:auto;padding-top:14px}

/* v6.34 News / Project detail typography and balanced card imagery */
.mq-single-article h1{
  font-size:clamp(2.25rem,4vw,3.65rem)!important;
  line-height:1.05;
  letter-spacing:-.035em;
  max-width:900px;
  margin-bottom:24px;
}
.mq-single-article{max-width:900px}
.mq-single-article .mq-single-meta{font-size:.74rem}
.mq-news-card__media,
.mq-project-media{
  aspect-ratio:16/9;
  min-height:0;
  flex:0 0 auto;
}
.mq-news-card__media--placeholder{
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#edf5f7,#dbeaf0);
  color:#5b6f7e;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.08em;
}
.mq-news-card__body{padding:24px 26px 26px}
.mq-news-card__body h2{font-size:clamp(1.35rem,2vw,1.6rem);line-height:1.15}
.mq-news-card__body>p:not(.eyebrow){margin-bottom:0}
.mq-news-index-grid{grid-auto-rows:1fr}

@media(max-width:760px){
  .mq-single-article h1{font-size:clamp(2rem,8vw,2.65rem)!important}
}

/* v6.40: curated project/deployment collaborators */
.mq-deployments-with-partners .mq-platform-partner-row,
.mq-deployments-partners .mq-project-partner-row{grid-template-columns:repeat(6,minmax(0,1fr))!important}
.mq-deployments-partners{margin-top:48px!important}
.mq-deployments-partners .mq-project-partners-label{color:#0a6aa0}
@media(max-width:900px){
  .mq-deployments-with-partners .mq-platform-partner-row,
  .mq-deployments-partners .mq-project-partner-row{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:560px){
  .mq-deployments-with-partners .mq-platform-partner-row,
  .mq-deployments-partners .mq-project-partner-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}


/* v6.41: restore the original horizontal collaboration logo treatment */
.mq-deployments-partners .mq-platform-partner-row,
.mq-deployments-with-partners .mq-platform-partner-row{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:16px!important;
  align-items:stretch!important;
  margin-top:0!important;
}
.mq-deployments-partners .mq-platform-partner-row>div,
.mq-deployments-with-partners .mq-platform-partner-row>div{
  min-width:0!important;
  min-height:94px!important;
  border:1px solid #dbe8ed!important;
  border-radius:12px!important;
  background:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:14px!important;
}
.mq-deployments-partners .mq-platform-partner-row img,
.mq-deployments-with-partners .mq-platform-partner-row img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:92%!important;
  max-height:70px!important;
  object-fit:contain!important;
}
@media(max-width:900px){
  .mq-deployments-partners .mq-platform-partner-row,
  .mq-deployments-with-partners .mq-platform-partner-row{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:560px){
  .mq-deployments-partners .mq-platform-partner-row,
  .mq-deployments-with-partners .mq-platform-partner-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}


/* v6.54 focused homepage/project/Worker Alerts refinements. */
.mq-home-partners-section{padding:38px 0!important;background:var(--mq-bg)!important;border-top:1px solid #e1eaee;border-bottom:1px solid #e1eaee}
.mq-home-partners-section .section-head{margin-bottom:18px}
.mq-home-partners-section .section-head h2{font-size:clamp(1.55rem,2.2vw,2.1rem);margin-bottom:0}
.mq-home-partner-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:700px;margin:0 auto}
.mq-home-partner-row>div{min-height:88px;border:1px solid #dbe8ed;border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:center;padding:12px 16px}
.mq-home-partner-row img{display:block;max-width:90%;max-height:56px;width:auto;height:auto;object-fit:contain}
.mq-home-projects-section{background:#fff}
.mq-home-projects-section .mq-deployments-teaser-inner{margin-bottom:30px}
.mq-home-project-grid{grid-template-columns:minmax(0,760px)!important;justify-content:center}
.mq-project-collaborators{margin-top:18px;padding-top:14px;border-top:1px solid #e3ecef}
.mq-project-collaborators-label{display:block;color:#607684!important;font-size:.69rem!important;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-bottom:9px}
.mq-project-collaborator-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.mq-project-collaborator-logo{display:flex;align-items:center;justify-content:center;width:112px;height:42px;padding:5px 8px;border:1px solid #e1eaee;border-radius:8px;background:#fff}
.mq-project-collaborator-logo img{display:block;max-width:100%;max-height:30px;width:auto;height:auto;object-fit:contain}
.mq-hero-callouts .callout-worker-alert{border-color:rgba(232,106,37,.95)}
@media(min-width:1001px){.mq-hero-callouts .callout-worker-alert{top:72%!important;left:39%!important;right:auto!important;bottom:auto!important}}
@media(max-width:1000px){.mq-hero-callouts .callout-worker-alert{display:none}}
a.mq-environment-solution-card[href*="worker-alerts"]{overflow:hidden}
a.mq-environment-solution-card[href*="worker-alerts"] .mq-environment-solution-image{transform:scale(1.9)!important;transform-origin:50% 32%!important;object-position:50% 32%!important}
a.mq-environment-solution-card[href*="worker-alerts"]::after{content:"!";position:absolute;z-index:3;top:24px;left:51%;transform:translateX(-8%);width:36px;height:32px;display:grid;place-items:center;padding-top:4px;color:#fff;font-size:1.2rem;font-weight:900;line-height:1;background:#e86a25;clip-path:polygon(50% 0,100% 100%,0 100%);filter:drop-shadow(0 5px 10px rgba(0,0,0,.28));pointer-events:none}
@media(max-width:900px){.mq-home-project-grid{grid-template-columns:1fr!important}}
@media(max-width:560px){.mq-home-partner-row{grid-template-columns:1fr}}


/* v6.55 focused Platform section rhythm.
   Explicitly target only uniquely named homepage sections so saved page markup/content remains untouched. */
.mq-ecosystem-section{background:#fff!important}
.mq-home-partners-section{background:var(--mq-bg)!important}
.mq-process-section{background:#fff!important}
.mq-platform-software{background:var(--mq-bg)!important}
.mq-home-technology{background:#fff!important}
.mq-mobility-environments{background:var(--mq-bg)!important}
.mq-media-section{background:var(--mq-bg)!important}
.mq-home-projects-section{background:#fff!important}


/* v6.56 active primary-navigation state.
 * Keep the current section visible without turning the navigation into tabs. */
.mq-primary-menu a{position:relative;transition:color .18s ease}
.mq-primary-menu a:hover{color:var(--mq-blue)}
.mq-primary-menu li.current-menu-item>a,
.mq-primary-menu li.current_page_item>a,
.mq-primary-menu li.current-menu-ancestor>a,
.mq-primary-menu li.current_page_ancestor>a{
  color:var(--mq-blue);
}
@media(min-width:901px){
  .mq-primary-menu li.current-menu-item>a:after,
  .mq-primary-menu li.current_page_item>a:after,
  .mq-primary-menu li.current-menu-ancestor>a:after,
  .mq-primary-menu li.current_page_ancestor>a:after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:-10px;
    height:2px;
    border-radius:2px;
    background:var(--mq-blue);
  }
}
@media(max-width:900px){
  .mq-primary-menu li.current-menu-item>a,
  .mq-primary-menu li.current_page_item>a,
  .mq-primary-menu li.current-menu-ancestor>a,
  .mq-primary-menu li.current_page_ancestor>a{
    border-left:3px solid var(--mq-blue);
    padding-left:10px;
  }
}
