
/* CQM Exact Approved Design — based on the first approved CQM theme */
:root{
 --navy:#062c4f;--navy2:#0a3c67;--blue:#0d6fbe;--cyan:#45bfdc;
 --ink:#10243a;--muted:#64748b;--line:#dce6ef;--soft:#f4f8fb;--white:#fff;
}
html,body{overflow-x:hidden}
body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}
body.elementor-page .elementor-section.elementor-section-boxed>.elementor-container{width:100%!important;max-width:1480px!important;margin:auto!important}

/* top */
body.elementor-page .cqm-topbar{background:#032540!important;color:#d7e8f4!important}
body.elementor-page .cqm-topbar>.elementor-container{min-height:34px!important;align-items:center!important}
body.elementor-page .cqm-topbar p{margin:0!important;color:#d7e8f4!important;font-size:12px!important}

/* header */
body.elementor-page .cqm-header{background:#fff!important;box-shadow:0 6px 24px rgba(7,41,74,.08)!important;position:relative!important;z-index:20!important}
body.elementor-page .cqm-header>.elementor-container{min-height:84px!important;align-items:center!important}
body.elementor-page .cqm-logo img{width:190px!important;max-height:58px!important;object-fit:contain!important;object-position:left center!important}
body.elementor-page .cqm-desktop-nav{display:block!important}
body.elementor-page .cqm-desktop-nav>.elementor-container{display:flex!important;justify-content:flex-end!important;align-items:center!important;flex-wrap:nowrap!important}
body.elementor-page .cqm-desktop-nav .elementor-column{width:auto!important;flex:0 0 auto!important}
body.elementor-page .cqm-nav .elementor-button{background:transparent!important;color:var(--ink)!important;border:0!important;border-bottom:2px solid transparent!important;border-radius:0!important;padding:31px 14px 27px!important;font-size:14px!important;font-weight:750!important}
body.elementor-page .cqm-nav .elementor-button:hover,body.elementor-page .cqm-nav.is-active .elementor-button{color:var(--blue)!important;border-bottom-color:var(--blue)!important}
body.elementor-page .cqm-search-button .elementor-button{font-size:19px!important;padding-left:10px!important;padding-right:10px!important}
body.elementor-page .cqm-menu-toggle,body.elementor-page .cqm-mobile-nav{display:none!important}

/* HERO — exact first-approved composition */
body.elementor-page .cqm-hero{position:relative!important;overflow:hidden!important;background-color:#082f50!important;color:#fff!important}
body.elementor-page .cqm-hero:before{content:""!important;position:absolute!important;inset:0!important;background:linear-gradient(90deg,rgba(4,31,54,.96) 0%,rgba(4,31,54,.79) 40%,rgba(4,31,54,.24) 72%,rgba(4,31,54,.25) 100%)!important;z-index:1!important;pointer-events:none!important}
body.elementor-page .cqm-hero>.elementor-container{min-height:680px!important;align-items:center!important;position:relative!important;z-index:2!important}
body.elementor-page .cqm-hero-copy>.elementor-widget-wrap{padding:76px 0 70px!important;align-content:center!important}
body.elementor-page .cqm-kicker .elementor-heading-title{font-size:13px!important;text-transform:uppercase!important;letter-spacing:2.4px!important;color:#d8ebf4!important;font-weight:800!important}
body.elementor-page .cqm-hero-title .elementor-heading-title{font-size:72px!important;line-height:1!important;letter-spacing:-2.7px!important;color:#fff!important;font-weight:800!important;max-width:650px!important}
body.elementor-page .cqm-hero-text,body.elementor-page .cqm-hero-text p{font-size:17px!important;line-height:1.65!important;color:#fff!important;max-width:620px!important}
body.elementor-page .cqm-hero-actions>.elementor-container{max-width:420px!important;margin-left:0!important}
body.elementor-page .cqm-primary .elementor-button{background:var(--blue)!important;color:#fff!important;border:1px solid var(--blue)!important;border-radius:3px!important;padding:15px 24px!important;font-size:14px!important;font-weight:800!important}
body.elementor-page .cqm-outline .elementor-button{background:transparent!important;color:#fff!important;border:1px solid rgba(255,255,255,.75)!important;border-radius:3px!important;padding:15px 24px!important;font-size:14px!important;font-weight:800!important}
body.elementor-page .cqm-hero-slides p{margin-top:26px!important;color:#dbeaf2!important;font-size:12px!important;letter-spacing:4px!important}

/* About */
body.elementor-page .cqm-about-section{padding:58px 0 72px!important;background:#fff!important}
body.elementor-page .cqm-about-section>.elementor-container{align-items:center!important}
body.elementor-page .cqm-about-images{position:relative!important;min-height:430px!important}
body.elementor-page .cqm-about-images>.elementor-widget-wrap{position:relative!important;min-height:430px!important}
body.elementor-page .cqm-about-main-image{position:absolute!important;left:0!important;top:0!important;width:88%!important}
body.elementor-page .cqm-about-main-image img{height:365px!important;width:100%!important;object-fit:cover!important}
body.elementor-page .cqm-about-small-image{position:absolute!important;right:0!important;bottom:0!important;width:60%!important;border:8px solid #fff!important;box-shadow:0 16px 38px rgba(7,41,74,.15)!important}
body.elementor-page .cqm-about-small-image img{height:205px!important;width:100%!important;object-fit:cover!important}
body.elementor-page .cqm-eyebrow .elementor-heading-title{font-size:12px!important;text-transform:uppercase!important;letter-spacing:2px!important;color:var(--blue)!important;font-weight:800!important}
body.elementor-page .cqm-title .elementor-heading-title{font-size:44px!important;line-height:1.07!important;letter-spacing:-1.4px!important;color:var(--navy)!important;font-weight:800!important}
body.elementor-page .cqm-body,body.elementor-page .cqm-body p{font-size:15px!important;line-height:1.72!important;color:var(--muted)!important}
body.elementor-page .cqm-about-copy>.elementor-widget-wrap{padding:16px 28px!important}
body.elementor-page .cqm-about-stats>.elementor-widget-wrap{padding-left:12px!important}
body.elementor-page .cqm-stat{border:1px solid var(--line)!important;background:#fff!important;text-align:center!important}
body.elementor-page .cqm-stat>.elementor-widget-wrap{padding:22px 10px!important}
body.elementor-page .cqm-stat-icon .elementor-heading-title{font-size:25px!important;color:var(--blue)!important}
body.elementor-page .cqm-stat-number .elementor-heading-title{font-size:30px!important;color:var(--navy)!important;font-weight:800!important}
body.elementor-page .cqm-stat-label p{font-size:11px!important;color:var(--muted)!important;margin:0!important}

/* services */
body.elementor-page .cqm-services-section{background:var(--soft)!important}
body.elementor-page .cqm-services-head{padding:65px 0 22px!important}
body.elementor-page .cqm-services-head .cqm-eyebrow{text-align:center!important}
body.elementor-page .cqm-services-head .cqm-eyebrow .elementor-heading-title{text-align:center!important}
body.elementor-page .cqm-center-title .elementor-heading-title{text-align:center!important}
body.elementor-page .cqm-services-lead p{max-width:820px!important;margin:0 auto!important;color:var(--muted)!important;font-size:14px!important;line-height:1.6!important}
body.elementor-page .cqm-services-body{padding:0 0 68px!important}
body.elementor-page .cqm-services-image img{height:360px!important;width:100%!important;object-fit:cover!important}
body.elementor-page .cqm-services-cards>.elementor-container{gap:18px!important}
body.elementor-page .cqm-service-card{background:#fff!important;border:1px solid var(--line)!important;min-height:280px!important}
body.elementor-page .cqm-service-card>.elementor-widget-wrap{padding:28px!important}
body.elementor-page .cqm-service-icon .elementor-heading-title{font-size:30px!important;color:var(--navy)!important}
body.elementor-page .cqm-service-title .elementor-heading-title{font-size:21px!important;color:var(--navy)!important;font-weight:800!important}
body.elementor-page .cqm-service-text p{font-size:14px!important;line-height:1.55!important;color:var(--muted)!important}
body.elementor-page .cqm-text-link .elementor-button{background:transparent!important;color:var(--blue)!important;border:0!important;padding:4px 0!important;font-weight:800!important;font-size:13px!important}

/* projects — dark strip as first design */
body.elementor-page .cqm-projects-home{background:var(--navy)!important;padding:65px 0 72px!important;color:#fff!important}
body.elementor-page .cqm-projects-home .cqm-eyebrow .elementor-heading-title{color:#8ce0f1!important}
body.elementor-page .cqm-projects-home .cqm-title .elementor-heading-title{color:#fff!important}
body.elementor-page .cqm-project-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}
body.elementor-page .cqm-project-card{position:relative!important;display:flex!important;align-items:flex-end!important;min-height:340px!important;overflow:hidden!important;background:#0d3b61!important;text-decoration:none!important}
body.elementor-page .cqm-project-card img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;transition:.35s!important}
body.elementor-page .cqm-project-card:after{content:""!important;position:absolute!important;inset:0!important;background:linear-gradient(180deg,transparent 40%,rgba(3,24,42,.94))!important}
body.elementor-page .cqm-project-meta{position:relative!important;z-index:2!important;padding:24px!important}
body.elementor-page .cqm-project-cat{font-size:11px!important;text-transform:uppercase!important;letter-spacing:1.4px!important;color:#84d9ee!important}
body.elementor-page .cqm-project-name{font-size:20px!important;line-height:1.25!important;color:#fff!important;font-weight:800!important}

/* logo bands */
body.elementor-page .cqm-logo-band{padding:48px 0!important;background:#fff!important}
body.elementor-page .cqm-logo-band-partners{border-top:1px solid var(--line)!important}
body.elementor-page .cqm-logo-band-title .elementor-heading-title{font-size:24px!important;color:var(--navy)!important;font-weight:800!important}
body.elementor-page .cqm-logo-row>.elementor-container{gap:12px!important}
body.elementor-page .cqm-logo-cell{border:1px solid var(--line)!important;min-height:86px!important;display:flex!important;align-items:center!important;justify-content:center!important}
body.elementor-page .cqm-logo-cell>.elementor-widget-wrap{align-content:center!important;justify-content:center!important}
body.elementor-page .cqm-logo-placeholder .elementor-heading-title{font-size:11px!important;letter-spacing:1.4px!important;text-transform:uppercase!important;color:#7c8fa1!important;text-align:center!important}

/* page hero and generic inner page style */
body.elementor-page .cqm-page-hero{background:linear-gradient(90deg,#062c4f,#0a4976)!important;padding:90px 0 72px!important}
body.elementor-page .cqm-page-title .elementor-heading-title{font-size:64px!important;color:#fff!important;font-weight:800!important}
body.elementor-page .cqm-page-lead p{font-size:16px!important;color:#c8dce9!important;max-width:760px!important}
body.elementor-page .cqm-pad{padding:82px 0!important}
body.elementor-page .cqm-soft{background:var(--soft)!important}
body.elementor-page .cqm-info-card,body.elementor-page .cqm-career-panel{background:#fff!important;border:1px solid var(--line)!important;padding:30px!important}

/* project filters */
body.elementor-page .cqm-project-toolbar{display:flex!important;justify-content:space-between!important;gap:14px!important;flex-wrap:wrap!important;margin-bottom:26px!important}
body.elementor-page .cqm-project-filters{display:flex!important;gap:8px!important;flex-wrap:wrap!important}
body.elementor-page .cqm-filter-btn{border:1px solid var(--line)!important;background:#fff!important;color:#314b61!important;padding:10px 13px!important;font-size:12px!important;font-weight:800!important}
body.elementor-page .cqm-filter-btn.active,body.elementor-page .cqm-filter-btn:hover{background:var(--navy)!important;color:#fff!important;border-color:var(--navy)!important}
body.elementor-page .cqm-project-search{border:1px solid var(--line)!important;padding:11px 13px!important;min-width:260px!important}

/* footer */
body.elementor-page .cqm-cta{background:linear-gradient(95deg,#083454,#0b446c)!important;color:#fff!important;padding:32px 0!important}
body.elementor-page .cqm-cta .elementor-heading-title{color:#fff!important;font-size:28px!important}
body.elementor-page .cqm-cta p{color:#d1e3ee!important;font-size:14px!important}
body.elementor-page .cqm-footer{background:#032540!important;color:#c7dae7!important;padding:54px 0 12px!important}
body.elementor-page .cqm-footer-logo img{width:175px!important}
body.elementor-page .cqm-footer h3.elementor-heading-title{color:#fff!important;font-size:13px!important;text-transform:uppercase!important;letter-spacing:1.4px!important}
body.elementor-page .cqm-footer p{color:#b9cfdd!important;font-size:13px!important}
body.elementor-page .cqm-footer .elementor-button{background:transparent!important;color:#c7dae7!important;border:0!important;padding:4px 0!important;font-size:13px!important}
body.elementor-page .cqm-footer-bottom{border-top:1px solid rgba(255,255,255,.1)!important;padding-top:15px!important;margin-top:20px!important}

/* wide screens should look like first design, not zoomed out */
@media(min-width:1600px){
 body.elementor-page .elementor-section.elementor-section-boxed>.elementor-container{max-width:1520px!important}
 body.elementor-page .cqm-hero-title .elementor-heading-title{font-size:80px!important}
 body.elementor-page .cqm-hero>.elementor-container{min-height:720px!important}
 body.elementor-page .cqm-title .elementor-heading-title{font-size:49px!important}
}

/* tablet */
@media(max-width:1024px){
 body.elementor-page .elementor-section.elementor-section-boxed>.elementor-container{max-width:100%!important;padding-left:28px!important;padding-right:28px!important}
 body.elementor-page .cqm-desktop-nav{display:none!important}
 body.elementor-page .cqm-menu-toggle{display:block!important;text-align:right!important}
 body.elementor-page .cqm-menu-toggle .elementor-button{background:transparent!important;color:var(--navy)!important;border:0!important;font-size:22px!important}
 body.elementor-page .cqm-mobile-nav.is-open{display:block!important;background:#fff!important}
 body.elementor-page .cqm-mobile-nav .elementor-column{width:100%!important}
 body.elementor-page .cqm-mobile-nav .elementor-button{width:100%!important;text-align:left!important;background:#fff!important;color:var(--ink)!important;border:0!important;border-bottom:1px solid #edf2f5!important;padding:13px 20px!important}
 body.elementor-page .cqm-hero-title .elementor-heading-title{font-size:58px!important}
 body.elementor-page .cqm-hero>.elementor-container{min-height:610px!important}
 body.elementor-page .cqm-about-section>.elementor-container{flex-wrap:wrap!important}
 body.elementor-page .cqm-about-images{width:50%!important}
 body.elementor-page .cqm-about-copy{width:50%!important}
 body.elementor-page .cqm-about-stats{width:100%!important;margin-top:30px!important}
 body.elementor-page .cqm-services-image img{height:330px!important}
 body.elementor-page .cqm-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* mobile */
@media(max-width:767px){
 body.elementor-page .elementor-section.elementor-section-boxed>.elementor-container{padding-left:20px!important;padding-right:20px!important}
 body.elementor-page .cqm-topbar .elementor-column:last-child{display:none!important}
 body.elementor-page .cqm-topbar .elementor-column{width:100%!important}
 body.elementor-page .cqm-logo img{width:145px!important}
 body.elementor-page .cqm-hero>.elementor-container{min-height:570px!important}
 body.elementor-page .cqm-hero-space{display:none!important}
 body.elementor-page .cqm-hero-copy{width:100%!important}
 body.elementor-page .cqm-hero-title .elementor-heading-title{font-size:46px!important}
 body.elementor-page .cqm-hero-copy>.elementor-widget-wrap{padding:55px 0!important}
 body.elementor-page .cqm-about-images,body.elementor-page .cqm-about-copy,body.elementor-page .cqm-about-stats{width:100%!important}
 body.elementor-page .cqm-about-images{min-height:360px!important}
 body.elementor-page .cqm-about-main-image img{height:300px!important}
 body.elementor-page .cqm-about-small-image{width:55%!important}
 body.elementor-page .cqm-about-small-image img{height:150px!important}
 body.elementor-page .cqm-about-copy>.elementor-widget-wrap{padding:30px 0 10px!important}
 body.elementor-page .cqm-title .elementor-heading-title{font-size:34px!important}
 body.elementor-page .cqm-services-body>.elementor-container{flex-wrap:wrap!important}
 body.elementor-page .cqm-services-body .elementor-column{width:100%!important}
 body.elementor-page .cqm-services-cards>.elementor-container{flex-wrap:wrap!important}
 body.elementor-page .cqm-service-card{width:100%!important;min-height:auto!important;margin-top:12px!important}
 body.elementor-page .cqm-project-grid{grid-template-columns:1fr!important}
 body.elementor-page .cqm-logo-row>.elementor-container{flex-wrap:wrap!important}
 body.elementor-page .cqm-logo-cell{width:48%!important}
 body.elementor-page .cqm-page-title .elementor-heading-title{font-size:42px!important}
}
