:root {
	--primary-color:#172D60;
  --primar-hovery-color:#1b336c;
	--link-color:#0054A6;
	--white-color:#ffffff;
}

/*
  font-family: "Sora", sans-serif;
  font-family: "Roboto", sans-serif;
*/
body {   font-family: "Roboto", sans-serif; color:var(--white-color); font-size:16px; line-height:24px; 
background: linear-gradient(91deg, #0B0C0C 17.22%, #202021 67.35%);  }
* { margin:0px; padding:0px; }
h1, 
h2,
h3,
h4,
h5,
h6 { margin:0px 0px 15px; font-family: "Roboto", sans-serif; font-weight: 600;  }
h1 { font-family: "Sora", sans-serif; font-size:56px; font-weight: 700; line-height: 1.2; margin: 0px 0px 10px; } 
h2 { font-family: "Sora", sans-serif; font-size:48px; font-weight: 700; line-height: 1.2; margin: 0px 0px 10px; }
ol, ul { padding: 0; margin: 0; }
strong { font-weight: 400; }
p { margin:0px 0px 20px; font-size: 16px; line-height: 1.5; }

img { max-width:100%; }
.white-color { color: var(--white-color); }
.container { max-width:1380px; width: 100%; }
.logo { max-width: 128px; }
.header-left { min-width: 140px; }
.nav-container { position: relative; display: flex; justify-content: center; width: 100%;   }
.nav-container ul { margin:0px; padding:0px; }
.nav-container ul li { list-style:none; display:inline-block; padding:10px 15px; position:relative;  
font-size: 16px; font-weight: 400; text-transform: uppercase; }
.nav-container ul li a { color:#fff; display:block; text-decoration:none; outline: none; position: relative; }
.nav-container ul li.active a ,.nav-container li.current_page_item a { color: var(--white-color);  }
.nav-container ul li.active a:before,.nav-container li.current_page_item a:before { content: ""; height: 2px; width: 100%; background:var(--white-color); border-radius: 10px; 
position: absolute; bottom: -6px; left: 0; }
.header-top { display: flex; align-items: center; justify-content: space-between; padding: 20px 0px; position: relative; }

.header-top .container:before,
.header-top .container:after { display: none; }
.header-right { display: flex; align-items: center; justify-content: space-between; gap: 30px; width: 100%; }

.nav-container li .sub-menu { display:none; position:absolute; left:0px; top:100%; min-width:230px; z-index:9; ;
padding: 20px 24px; border-radius:12px; 
background: linear-gradient(167.25deg, rgba(255, 255, 255, 0.5) 23.64%, rgba(0, 21, 130, 0.03) 147.78%), rgba(250, 252, 255, 0.8);
box-shadow: 0px 4px 7.8px rgba(0, 0, 0, 0.25); }
.nav-container li .sub-menu li { display:block; padding:8px 0; text-align: left; font-weight: 400; }

.nav-container li .sub-menu li:after { display: none; }
.nav-container ul li.menu-item-has-children > a:after { content: "\f107"; font: 22px/1 FontAwesome; line-height: 1;
  margin: 0 0 0 8px; position: relative; top: 2px; }
.nav-container li .sub-menu li a { color:#000; }
.nav-container li .sub-menu li:last-child { margin-bottom: 0; border-bottom: 0; }
.nav-container li .sub-menu li:hover a { color: #000; }
.mob-menu { display: none; }
.header a { outline: none; }
.header-left li { list-style:none; }
.header ul { margin:0px; }
.header { padding:0px; width: 100%; display: inline-block; 
background: linear-gradient(91deg, #0B0C0C 17.22%, #202021 67.35%); }

.header-btn a { white-space: nowrap;background: #B2B3B5; border-radius:5px;}
.sub-menu-toggle { display: none; }

.banner-container .banner-text { position:absolute; left:0px; right: 0; text-align:left; width: 100%; top: 50%; transform: translateY(-50%);
z-index: 2; text-align: center;  }
.banner-text h1 { color: #fff;max-width: 595px;margin: 0 auto 30px;font-size: 42px; }
.banner-container { position: relative; }
.banner-img img { width: 100%; }
.banner-container .banner-btn { display: flex; flex-wrap: wrap; gap:16px; justify-content: center; }

.secondary-btn { background: rgba(109, 109, 110, 0.22); border: 2px solid #B2B3B5; padding: 10px 24px; text-align: center;
 color: #fff; line-height: 18px; text-decoration: none; 
height: 48px; display: inline-flex; align-items: center; justify-content: center; border-radius: 0px; font-weight: 700; font-size: 16px; 
backdrop-filter: blur(7.05px); }
.secondary-btn:hover { text-decoration: none; color: var(--white-color); background-color: var(--primary-color);
border-color: var(--primary-color);  }

.primary-btn { background: var(--primary-color); padding: 10px 24px; text-align: center; 
 color: var(--white-color); line-height: 18px; border: 1px solid #172d60; text-decoration: none; font-weight: 700; font-size: 16px;
height: 48px; display: inline-flex; align-items: center; justify-content: center; border-radius: 0px; }
.primary-btn:hover { text-decoration: none; color: var(--white-color); background-color: var(--primar-hovery-color); border-color: var(--primar-hovery-color); }

.white-btn { background: var(--white-color); padding: 10px 24px; text-align: center; 
 color: #000; line-height: 18px; border: 0; text-decoration: none; font-weight: 700; font-size: 16px;
height: 48px; display: inline-flex; align-items: center; justify-content: center; border-radius: 0px; }
.white-btn:hover { color: var(--link-color); }
.section-title h3 { font-size:22px;}
h2.service-title { width:60%;margin: 0px auto;}
.achieve-section { padding: 50px 0 50px; }
.achieve-section ul { display: grid; grid-template-columns: repeat(3, 1fr); text-align: center; list-style: none; }
.achieve-section h3 { font-family: "Sora", sans-serif; font-size:56px; font-weight: 700; line-height: 1.2; margin: 0px 0px 10px;
background: radial-gradient(48.98% 114.57% at 4.06% -19.79%, #001582 25.48%, #0079CF 100%) /* warning: gradient uses a rotation that is not supported by CSS and may not behave as expected */, #000000;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text; text-fill-color: transparent;  }
.achieve-section p { font-size: 20px; font-weight: 700; margin: 0; }
.achieve-section li { padding: 0 20px; }
.achieve-section li:not(:last-child) { border-right: 1px solid #C3C3C8; }

.whoWeAre-section { padding: 80px 0; background:url(../images/whoweare-bg1.svg) 0 -60px no-repeat;
background-size: 100% auto; position: relative; }
.whoWeAre-section:after { content: ""; 
background:url(../images/whoweare-bg2.svg) 0 0px no-repeat; background-size: 100% auto; 
background-size: contain; width: 220px; height: 550px; position: absolute; top: 0; right: 0; 
z-index: -1; }

.section-title { text-align: center; max-width: 870px; margin: 0 auto 40px; }
.section-title p { font-size: 18px; }
.subtitle { font-size: 16px; color: #2693ED; }
.whoWeAre-items { display: grid; grid-template-columns: repeat(3, 1fr); gap: 60px; padding: 70px 0; position: relative; }
.whoWeAre-item { background: linear-gradient(335.62deg, rgba(76, 79, 85, 0.3) -31.94%, #383E4A 117.87%), #FFFFFF;
box-shadow: 0px 3px 9.8px rgba(0, 0, 0, 0.15); position: relative;
border-radius: 7px; min-height: 360px; transition:0.3s ease; }
.whoWeAre-img img { border-radius: 7px 7px 0 0; }
.whoWeAre-content { padding: 24px 24px 50px; }
.service-logo { max-width: 200px; margin-bottom: 16px; }
.whoWeAre-content .subtext { color: #000; font-weight: 600; margin-bottom: 8px; display: none; }
.whoWeAre-content p { color: #000;
display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
text-overflow: ellipsis; }
.viewMore-link { position: absolute; bottom: 22px; left: 24px; }
.viewMore-link a { font-weight: 700; font-size: 16px; color: var(--link-color); text-decoration: none;
display: inline-flex; gap:12px; }
.viewMore-link a:after { content: "\f105"; font: 22px/1 FontAwesome; }
.whoWeAre-img { display: block; }
.whoWeAre-item.show-img .whoWeAre-img { display: block; }
.whoWeAre-item.show-img .subtext { display: block; }
.whoWeAre-item.show-img p { -webkit-line-clamp: 3; }
.whoWeAre-item.show-img { margin: -35px 0; }
.whoWeAre-item.show-img .whoWeAre-content { /*padding-bottom: 20px;*/ }

.services-section { padding: 30px 0 0; position: relative; }
.services-section:before {  content: ""; pointer-events: none;
background:url(../images/bg-patern1.svg) right 0px no-repeat; background-size: 100% auto; 
background-size: cover; width: 60%; height: 840px; position: absolute; top: 180px; right: 0; 
z-index: -1; }
.services-section:after {  content: ""; pointer-events: none;
background:url(../images/bg-patern2.png) 0 0px no-repeat; 
background-size: contain; width: 500px; height: 1100px; position: absolute; top: 65%; left: 0; }
.services-section .section-title { margin-bottom: 0; }
.features-content h2 span { 
background: radial-gradient(24.92% 69.44% at 4.06% -19.79%, #001582 25.48%, #0079CF 100%) /* warning: gradient uses a rotation that is not supported by CSS and may not behave as expected */, #000000;
-webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
text-fill-color: transparent; }

h1 span, h2 span, h3 span, h4 span, h5 span, h6 span, p span { 
background: radial-gradient(24.92% 69.44% at 4.06% -19.79%, #001582 25.48%, #0079CF 100%) /* warning: gradient uses a rotation that is not supported by CSS and may not behave as expected */, #000000;
-webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
text-fill-color: transparent; }


/****/
.project-section { padding: 70px 0; }
.image-content-box { display: grid; grid-template-columns: 1fr 1fr; padding:30px 0px; flex-wrap: wrap; gap:0px; 
position: relative; align-items: center; }
.features-image img { width: 100%; }
.features-image { position: relative; padding: 0px; z-index: 1; }
.features-content { padding: 0px 80px; display: flex; flex-direction: column; position: relative;
z-index: 1;  }
.image-content-box .features-content:first-child { padding-left: 0; }
.image-content-box .features-content:last-child { padding-right: 0; }
.image-content-box:last-child { background: linear-gradient(91deg, #0B0C0C 17.22%, #202021 67.35%); }

.image-content-box h2 { margin: 0 0 20px; position: relative; font-size: 40px; }
.image-content-box p { font-size: 18px; line-height: 1.5; margin-bottom: 30px; }
.image-content-box p:last-child { margin-bottom: 0; }
.image-content-box ul { padding-bottom: 30px; }
.image-content-box ul li { background:url(../images/box-icon.svg) 0 3px no-repeat; margin-bottom: 20px; list-style: none;padding: 0 0 0 30px; }

.talkTeam-section { padding: 30px; position: relative; }
.talkTeam-box { background: conic-gradient(from 208.56deg at 50% 23.7%, #001582 0deg, #000000 360deg), #070E2A; 
position: relative; padding: 40px; }
.talkTeam-box:before { background:url(../images/dots.png) 4px 2px repeat; position: absolute; top: 0; left: 0; right: 0; bottom: 0;
content: ""; }
.talkTeam-text { text-align: center; padding: 90px 50px;
background: rgba(26, 25, 25, 0.13); backdrop-filter: blur(72.1px); }
.talkTeam-text h2 { margin-bottom: 30px; font-size: 40px; }

/** about page **/
.our-unique-section { padding:80px 0px 50px 0px;}
.our-unique-section h2 span { background: radial-gradient(24.92% 69.44% at 4.06% -19.79%, #001582 25.48%, #0079CF 100%), #000000;-webkit-background-clip: text;-webkit-text-fill-color: transparent;background-clip: text;text-fill-color: transparent;}
.our-unique-section h2 {text-align: center;color:#fff;font-size: 50px; }
.our-unique-section p {text-align: center; color: #fff; width: 65%;margin: 0px auto; }

.unique-approach-section {padding: 60px 0;color: #fff;position: relative; }
.unique-approach-section:before { content: "";pointer-events: none;background: url(../images/about-bg.png) right 0px no-repeat;background-size: 100% auto;background-size: cover;width: 100%;height:700px;position: absolute;top: 150px;right: 0;z-index: -1; }
.approach-text { border-radius: 12px;padding: 20px 0px;}
.approach-text img { width: 100%;border-radius: 8px;margin-bottom: 20px; }
.approach-text h2 { font-size: 27px;font-weight: 600;margin-bottom: 15px;color: #fff; }
.approach-text p { font-size: 16px;line-height: 1.6;color: #ccc;font-weight:bold;margin-bottom: 0px; }
.approach-text p span { background: radial-gradient(24.92% 69.44% at 4.06% -19.79%, #001582 25.48%, #0079CF 100%), #000000;-webkit-background-clip: text;-webkit-text-fill-color: transparent;background-clip: text;text-fill-color: transparent;}
.reorder-md-2 .team-card { margin-left: 20px; margin-right: 20px; }

.apex-team-section { padding:40px 0px 100px 0px;color:#fff;}
.apex-team-content { display: flex;flex-wrap: wrap;margin-top: 30px;  }
.apex-team-content h2 { font-size: 20px;margin: 0 0 10px;font-weight: 600;color: #fff;flex: 1 1 auto; }
.apex-team-content p { font-size: 16px;color: #ccc; margin: 0;flex: 1 1 60%; }
.view-our-team-link { margin-top: -65px; }

/** Services Page **/
.our-focus-section { padding: 30px 0px;position:relative; }
.page-id-60 .our-focus-section:before {content: ""; pointer-events: none; background: url(../images/our-focus-bg.png) right 0px no-repeat;
    background-size: 100% auto;width: 100%; height: 700px;background-size: cover;position: absolute;top: 150px;right: 0;z-index: -1;}
.page-id-62 .our-focus-section:before {content: ""; pointer-events: none; background: url(../images/apex-west-focus-bg.png) right 0px no-repeat;
    background-size: 100% auto;width: 100%; height: 700px;background-size: cover;position: absolute;top: 150px;right: 0;z-index: -1;}
.page-id-64 .our-focus-section:before {content: ""; pointer-events: none; background: url(../images/apex-engineering-our-focus.png) right 0px no-repeat;
    background-size: 100% auto;width: 100%; height: 700px;background-size: cover;position: absolute;top: 150px;right: 0;z-index: -1;}
.specialities-section {padding: 30px 0px; }
.specialities-text {border-radius: 12px;padding: 20px 0px; }
.foucs-section-title p ,.specialities-section-title p  { font-size:18px;}
.buidling-section {padding: 60px 0px 30px 0px; }
.buidling-text {border-radius: 12px;padding: 20px 0px; }
.buidling-content { /*position: relative;padding-top: 90px; */ }
.buidling-content h2 { font-size:36px;margin: 0 0 20px;}
.buidling-content ul { margin: 0 0 35px;}
.buidling-content ul li { background: url(../images/box-icon.svg) 0 3px no-repeat;margin-bottom: 20px;list-style: none;margin-bottom: 15px;padding: 0 0 0 30px; }
.buidling-btns { display:flex;flex-direction:row;gap:20px;margin-top: 35px;}
.buidling-content p { margin: 0px 0px 35px;}
.buidling-apex-img { text-align:center;margin-bottom: 50px;}

.strong-foundation-description ul { margin: 0 0 35px;}
.strong-foundation-description ul li { background: url(../images/box-icon.svg) 0 3px no-repeat;margin-bottom: 20px;list-style: none;margin-bottom: 15px;padding: 0 0 0 30px; }
.strong-foundation-btns { display:flex;flex-direction:row;gap:20px;margin-top: 35px;}
.strong-foundation-section.mobile-hide { padding: 0px 0px 60px 0px; }
.strong-foundation-section .section-text strong { color:#2693ED;text-decoration: underline;}
.strong-foundation-section .section-text p { width:75%;}

/** careers page **/
.careers-section { background-color: #0e0e0e;color: #ffffff;padding: 80px 0; }
.careers-section .section-title { font-size: 36px;font-weight: bold;text-align: center;margin-bottom: 20px; }
.careers-subtitle { text-align: center; }
.careers-subtitle p {margin: 0 auto 50px;font-size: 18px;color: #fff; }
.job-card { border-bottom: 1px solid #FFFFFF;padding: 30px 0; }
.job-card:last-child { border-bottom: none; }
.job-header { display: flex;align-items: center;gap: 15px; }
.job-title { font-size: 24px;font-weight: 600; margin: 0; }
.job-department { background-color: #5069B3;font-size: 14px;color: #fff;padding: 3px 10px;}
.job-description { font-size: 20px;color: #fff; margin: 15px 0; }
.job-meta { display: flex;gap: 40px;font-size: 14px;margin-bottom: 25px;color: #fff; }
.job-location span { font-size:18px; margin-left: 5px; }
.job-contract span { font-size:18px; margin-left: 10px; }
.job-location svg , .job-contract svg { margin-bottom:6px;}
.career-section-listing { margin: 0px auto;}

/** Contact page **/
.contact-us-section { padding:50px 0px 10px 0px;}
.contact-form-section { padding: 10px 0px 80px 0px; }
.contact-title h3 { font-size:16px;}
.contact-form .gform_footer.top_label { margin-top: 0px !important;padding-top: 0px !important; }
.contact-form .gform_wrapper.gravity-theme { width: 100%;max-width: 100%; }
.contact-form .gform_wrapper.gravity-theme .gfield_checkbox label { color: #ffffff !important; }
.contact-form .gform_wrapper.gravity-theme .gfield input.large { color: #ffffff;background-color: transparent !important;padding: 10px;font-size: 16px;border: 1px solid #FFFFFF;width: 100%; }
.contact-form .gform_wrapper.gravity-theme .gfield textarea.large {color: #ffffff;background-color: transparent !important;padding:10px;font-size:16px;border:1px solid #FFFFFF;width: 100%;max-height: 120px;}
.contact-form .gform_footer input, .gform_wrapper.gravity-theme .gform_page_footer button, .gform_wrapper.gravity-theme .gform_page_footer input
{ background: var(--white-color);padding: 10px 24px;color: #000;line-height: 18px;border: 0;margin-top: 20px;text-decoration: none;font-weight: 700;font-size: 16px;height: 48px; }
.contact-form .gform_footer input:hover {color: var(--link-color); }
.contact-email-content h2 { font-size:18px;font-weight:bold;}
.contact-email-content h3 { font-size:14px;font-weight: normal;}
.contact-email-content p { max-width: 250px;}
.contact-email-content img { margin-bottom:20px}

.contact-location-content { margin-top: 40px; }
.contact-location-content h2 { font-size:18px;font-weight:bold;}
.contact-location-content h3 { font-size:14px;font-weight: normal;}
.contact-location-content p { max-width: 250px;}
.contact-location-content img { margin-bottom:20px}
.contact-directions-link a { font-weight: normal;font-size: 16px;color: #ffff;text-decoration: none;display: inline-flex;gap: 12px; }
.contact-directions-link a:after { content: "\f105";font: 22px / 1 FontAwesome; }
.contact-form-info { margin-left:20px;}

/** Our Team page **/
.our-team-section { padding:60px 0px 0px 0px;position:relative;}
.our-team-section-title h2 span,
.span-blue{ background: radial-gradient(24.92% 69.44% at 4.06% -19.79%, #001582 25.48%, #0079CF 100%), #000000;-webkit-background-clip: text;-webkit-text-fill-color: transparent;background-clip: text;text-fill-color: transparent; }
.our-team-section-title h2 { text-align:center;font-size: 42px; margin-bottom: 50px;}
.our-team-section:before { content: "";pointer-events: none;background: url(../images/our-team-bg.png) right 0px no-repeat;background-size: 100% auto;background-size: cover;width: 100%;height: 700px;position: absolute;top: 265px;left: -542px;z-index: -1; }
.image-info-box { margin-bottom: 40px; }
.image-info-box img { /* width: 100%;height: 100%;object-fit: cover; */ border-radius: 10px; }
.team-card { color: #fff;padding: 50px 0px;border-radius: 10px;height: 100%;padding-top: 150px;  }
.team-card h2 { font-size: 32px;font-weight: normal;margin-bottom: 10px; }
.team-card h2 strong { font-weight: bold;}
.team-text { font-size: 15px;color: #ccc; }
.image-info-box { margin-bottom: 0; }
.team-row { display: flex;flex-wrap: wrap;  }
.elite-team-section { padding:100px 0px 40px 0px;}
.elite-teams-items { display: grid;grid-template-columns: repeat(2, 1fr);gap: 32px;padding: 40px 0;}
.elite-team-item {padding: 55px; background: radial-gradient(219.8% 126.34% at 10.61% -12.33%, rgba(12, 12, 12, 0.30) 0%, rgba(0, 21, 130, 0.30) 8.97%, rgba(0, 121, 207, 0.30) 100%), #0C0C0C;;box-shadow: 0px 3px 9.8px rgba(0, 0, 0, 0.15);border-radius: 5px;color:#fff;}
.elite-team-section-title { text-align:center;}
.elite-team-item h3 { font-size: 38px; }
.our-info-title p { text-align:center;margin-bottom: 60px;}
.our-info-title h2 { text-align:center;font-size: 42px; margin-bottom: 30px;}
.our-info-title h2 span { background: radial-gradient(24.92% 69.44% at 4.06% -19.79%, #001582 25.48%, #0079CF 100%), #000000;-webkit-background-clip: text;-webkit-text-fill-color: transparent;background-clip: text;text-fill-color: transparent; }
.our-info-section {padding:60px 0px; }
.apex-team-image-wrapper img { width: auto;}
.page-template-page-specialities .apex-team-image-wrapper img { width: auto; }

/** apex engineering landing **/
.apex-landing-banner-section { padding: 0px 0px 30px 0px ;}
.page-id-459 .strong-foundation-section , .page-id-461 .strong-foundation-section { padding:20px 0px 50px 0px;}
.apex-landing-contact-box { background: linear-gradient(90deg, #101532 0%, #0054A6 100%);padding: 40px 50px;border-radius: 30px; }
.apex-landing-contact-section { padding: 60px 80px 60px 80px; }
.speciality-header-title h3 { font-size:16px;font-weight: normal;}
.page-id-461 .specialities-section:before , .page-id-459 .specialities-section:before 
 { content: "";pointer-events: none;background: url(../images/landing-constructor-specialities.png) right 0px no-repeat;background-size: 100% auto;width: 100%;height: 700px;background-size: cover;position: absolute;z-index: -1; }

.page-id-461 .our-focus-section:before , .page-id-459 .our-focus-section:before 
 { content: "";pointer-events: none;background: url(../images/apex-landing-focus-bg.png) right 0px no-repeat;background-size: 100% auto;width: 100%;height: 700px;background-size: cover;position: absolute;z-index: -1; }

.footer-container { font-size: 16px; color: #fff; position: relative; background: radial-gradient(35.23% 61.28% at -18.13% 144.85%, #383C46 1.64%, #0C0C0C 100%);box-shadow: 0px -8px 21.3px rgba(0, 0, 0, 0.15); }
.footer-top { background: url(../images/footer-bg.png) right center no-repeat; padding: 60px 0;
background-size: contain; }
.footer-text p { margin: 0 0 0px; color: #fff; max-width: 400px; }
.footer-container h3 { margin: 0 0 14px; font-size: 22px; color: var(--white-color); font-weight: 600; }
.footer-container h3 span { background: radial-gradient(48.98% 114.57% at 4.06% -19.79%, #001582 25.48%, #0079CF 100%), #000000;
-webkit-background-clip: text; -webkit-text-fill-color: transparent;
background-clip: text; text-fill-color: transparent;   }
.footer-logo { margin-bottom: 12px; max-width: 130px; }
.footer-container ul { margin: 0; padding: 0; list-style: none; }
.footer-container ul li a:hover { color: var(--white-color); opacity: 0.8; }
.footer-links li a { color: #fff; text-decoration: none; font-weight: 600; }
.footer-links li { margin-bottom: 15px;  }
.contact-info li { margin-bottom: 30px; }
.contact-info li a { color: #fff; text-decoration:none; word-break: break-all; }
.contact-info li label { display: block; font-weight: 700; margin-bottom: 6px; }
.contact-info li label img { vertical-align: middle; margin-right: 3px; }

.contact-info ul.contact-list { display: flex;gap:30px;margin: 0;padding: 0;list-style: none; }
.contact-info ul.contact-list li { margin: 0; }

.footer-form ul { list-style: none; }
.footer-form li { margin-bottom: 17px; }
.footer-form .gform_wrapper.gravity-theme .gfield input.large { width: 100%; border: 0; border-radius: 5px;
height: 47px; padding: 8px 15px; outline: none; background: #E4F2FB; }
.footer-form .gform_wrapper.gravity-theme .gfield textarea.large{ padding: 8px 15px;height: 83px; resize: none;height: 83px;resize: none;width: 100%;border: 0;border-radius: 5px;outline: none;background: #E4F2FB; }
.footer-form li.submit-btn { text-align: center; }
.footer-form .primary-btn { width: 100%; border-radius: 10px;}
.footer-form { padding-left: 140px; border-left: 2px solid rgba(152, 152, 152, 0.3); 
margin-left: 50px; min-height: 100%; }
.footer-form .gform_footer.top_label { text-align: center; }
.footer-form .gform_footer input, .gform_wrapper.gravity-theme .gform_page_footer button, .gform_wrapper.gravity-theme .gform_page_footer input{background: var(--white-color);
  background: var(--white-color);padding: 10px 24px;text-align: center;color: #000;line-height: 18px;border: 0;text-decoration: none;font-weight: 700;font-size: 16px;height: 48px;display: inline-flex;align-items: center;justify-content: center;border-radius: 0px;} 
.footer-form h3 { margin-bottom: 30px; }
.footer-bottom p { font-size: 18px; max-width: 100%; margin: 0; font-family: "Sora", sans-serif; color: #fff; }
.footer-bottom { background: #232323; padding: 16px 0; }
.mobile-hide { display: none; }
body.page-template-page-home .whoWeAre-content .service-logo + p img{
	width:100%; }
.apex-cols {gap: 60px; padding: 70px 0; position: relative;  }
.page-id-461 .banner-text-img img { max-width:100%;}
	
}
@media (prefers-reduced-motion: no-preference) {
  :root {
    scroll-behavior: smooth;
  }
}
.page-template-page-home  .whoWeAre-img,
.page-template-page-home .whoWeAre-item .subtext,
.whoWeAre-items.opened-whoWeAre-items .whoWeAre-img,
.whoWeAre-items.opened-whoWeAre-items .whoWeAre-item .subtext{
	display:block !important;
}

.banner-text-img img {
    width: 100%;
    max-width: 550px;
}
.banner-text-img{
	margin-bottom:50px;
}
.whoWeAre-img img{
	/*height:180px;*/
	width: 100%;
}
.image-info-box .team-row .team-row-col.reorder-md-1 {
    width: max-content;
    flex: 0 0 auto;
}
.image-info-box .team-row .team-row-col.reorder-md-2 {
    flex: 1;
    width: max-content;
}
.whoWeAre-video-section {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  max-height: 600px;
  overflow: hidden;
  background: #000;
}

.whoWeAre-video-section video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}


/************** responsive *********************/

@media(min-width: 1280px) {

}
@media(min-width: 1400px) {

}

@media(min-width: 1280px) and (max-width: 1400px) {
h1 { font-size: 36px; }
h2 { font-size: 32px; }
.footer-form { padding-left: 100px; }

}

@media(min-width: 1024px) and (max-width: 1279px) {

h1 { font-size: 36px; line-height: 1.2; }
h2 { font-size: 32px; line-height: 1.2; }

.nav-container ul li { font-size: 15px; }
.achieve-section h3 { font-size: 36px; }
.achieve-section p { font-size: 17px; }
.features-content { padding: 0 40px; }
.image-content-box h2 { font-size: 28px; }
.services-section::before { height: 650px; }
.talkTeam-box { padding-right: 46px; }
.footer-form { padding-left: 30px; margin-left: 0; }
.footer-bottom p { font-size: 15px; }
.whoWeAre-section::after { width: 180px; height: 470px; }

}

@media (max-width: 1279px) {
.container { padding-left: 20px; padding-right: 20px; }  
}

@media (max-width: 1023px) {
.container { width: 100%; } 	
}
@media(min-width: 768px) {
.desktop-hide { display: none !important; }
.mobile-hide { display: block !important; }
.image-content-box:first-child { position: sticky; top: 0; }
.header { position: sticky; top: 0; z-index: 9; }
.whoWeAre-items{
display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.whoWeAre-item{
width: calc(100% / 3 - 40px);
width: calc((100% - (60px * (var(--column-numbers, 3) - 1))) / var(--column-numbers, 3));
}
.apex-cols {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }
.apex-cols-item{
width: calc(100% / 3 - 40px);
width: calc((100% - (60px * (var(--column-numbers, 3) - 1))) / var(--column-numbers, 3));
}
.banner-container.with-banner-logo .banner-text{
	top:43%;
}
	body.page-id-64 .whoWeAre-items,
	body.page-id-459 .whoWeAre-items{
		gap:50px;
	}
	body.page-id-64 .whoWeAre-items .whoWeAre-item,
	body.page-id-459 .whoWeAre-items .whoWeAre-item{
        width: calc(100% / 5 - 40px);
		min-height: 275px;
        height: 100%;
		width: calc((100% - (50px * (var(--column-numbers, 5) - 1))) / var(--column-numbers, 5));
    }
	body.page-id-64 .whoWeAre-item.show-img .whoWeAre-content p,
	body.page-id-64 .whoWeAre-item.show-img .whoWeAre-img,
	body.page-id-459 .whoWeAre-item.show-img .whoWeAre-content p,
	body.page-id-459 .whoWeAre-item.show-img .whoWeAre-img{
		display:none;
	}
	body.page-id-64 .whoWeAre-item .whoWeAre-content p,
	body.page-id-459 .whoWeAre-item .whoWeAre-content p{
		margin-bottom:0;
	}
	body.page-id-64 .whoWeAre-item .whoWeAre-content,
	body.page-id-459 .whoWeAre-item .whoWeAre-content{
		padding:24px;
	}
}

@media(min-width: 768px) and (max-width: 1023px) {
.header-left { min-width: 130px; }
.nav-container ul li { padding: 10px 8px; }
.header-right { gap: 15px; }
h1 { font-size: 32px; line-height: 1.2; }
h2 { font-size: 30px; line-height: 1.2; }
body { font-size: 15px; }
p { font-size: 15px; }

.image-content-box ul li { margin-bottom: 10px; }
.image-content-box ul { padding-bottom: 15px; }
.talkTeam-section { padding: 20px; }
.talkTeam-box::before { background-size: 40px auto; }
.project-section { padding: 40px 0; }
.image-content-box h2 { line-height: 1.2; font-size: 21px; }
.features-content { padding: 20px; }
.image-content-box p { font-size: 14px; margin-bottom: 15px; }
.achieve-section li { padding: 0 10px; }
.whoWeAre-section { background-position: 0 -30px; }
.section-title p { font-size: 16px; }
.whoWeAre-items { gap:15px; }
.whoWeAre-item { min-height: 300px; }
.whoWeAre-section { padding: 30px 0; }

.achieve-section h3 { font-size: 30px; }
.achieve-section p { font-size: 15px; }
.features-content { padding: 0 30px; }
.image-content-box h2 { font-size: 22px; }
.services-section::before { height: 400px; }
.whoWeAre-section::after { width: 150px; height: 400px; }
.talkTeam-text { padding: 40px; }
.talkTeam-text h2 { font-size: 22px; }
.talkTeam-box { padding:30px; }
.footer-form { padding-left: 30px; margin-left: 0; }
.footer-bottom p { font-size: 15px; }

}
@media(min-width: 768px) and (max-width: 991px) {
.footer-links { margin-bottom: 0px; }
.footer-form { border-left: 0; border-top: 2px solid rgba(152, 152, 152, 0.3);
padding: 30px 0 0; margin-top: 30px; }
.footer-top { padding: 50px 0 30px; }

}

@media(min-width: 1024px){
.nav-container li:hover .sub-menu { display:block; }
.nav-container li s.nav-icon { display: none; }
.nav-container li .sub-menu li:hover a { color: #000; }
.mobile-menu-logo { display: none; }

}

@media(max-width: 1023px){
/*menu*/
.mob-menu { display:block; background:url(../images/mob-icon.svg) center center no-repeat; padding:10px 12px; font-size:16px; color:#000; border-radius:0px; cursor:pointer; text-align:left; 
font-size: 0; line-height: 0; cursor: pointer; width: 40px; height: 30px; position: absolute; top: 50%; right: 0px; transform: translateY(-50%); }
.header-right { position: fixed; top: 0; left:0px; text-align: left; z-index: 9; display: block; 
background: #101010; width: 100%; max-width: 400px; height: 100vh; overflow: auto;
transition: all .4s; transform: translateX(-100%); }
.header-right.active { transform: translateX(0); -webkit-transform: translateX(0);
  -moz-transform: translateX(0); -o-transform: translateX(0); } 
.nav-container ul li.active a::before { display: none; }
.nav-container ul { margin:0px; padding:0px 0px; width: 100%; }
.nav-container ul li { display:block; padding:0px 0px; margin:0px 0 5px; font-size:18px; width:100%; }
.nav-container ul li a { border-radius:0px; padding:10px 0px; }
.request-consultation .primary-btn:hover { background-color:var(--primary-color); }
.nav-container ul li .sub-menu { padding:0px; display:none; position:static; width:100%; box-shadow: none; border-radius: 0; }
.nav-container ul li .sub-menu li a { padding:12px 20px;  border-bottom:1px solid rgba(255,255,255,0.2); color: #fff; }
.nav-container ul li .sub-menu li:last-child a { border-bottom: 0; }
.nav-container .nav-icon { position: absolute;  right: 0px; top: 0px; width: 45px;  height: 40px; background-repeat: no-repeat; cursor:pointer; z-index:99;}
.nav-container .nav-icon.open {  background: url(../images/menu-plus.png) center center no-repeat; }
.nav-container .nav-icon.close {  background: url(../images/menu-minus.png) center center no-repeat; opacity:1; }
.nav-container li .sub-menu li { border-bottom:0px; padding:0px; background:#070707; border-radius: 0;
margin: 0; } 
.nav-container li .sub-menu li a { padding-bottom:8px; }
.nav-container li .sub-menu li:hover a {  background-color:var(--primary-color); }
.nav-container .menu-main-menu-container { display:none; text-align:left;  }
.mobile-menu-logo { display: flex; align-items: center; justify-content: space-between; padding: 40px 24px 40px; }
.close-menu { cursor: pointer; }
.nav-container { flex-direction: column; padding: 0 45px 30px; }
.header-btn { flex-direction: column; padding: 0 45px 30px; }
.header-btn a { width: 100%; }


}

@media(max-width: 767px){
.header-left { min-width: 130px; }
.header-right { gap: 15px; }
h1 { font-size: 32px; line-height: 1.2; }
h2 { font-size: 30px; line-height: 1.2; }
body { font-size: 15px; }
p { font-size: 15px; }
.banner-text h1 {font-size: 32px;}
.banner-img img { height: 700px; object-fit: cover; }
.banner-container .banner-text { transform: none; top: auto; bottom: 80px; text-align: left; }
.banner-container .banner-btn { justify-content: flex-start; }
.image-content-box ul li { margin-bottom: 10px; }
.image-content-box ul { padding-bottom: 15px; }
.talkTeam-section { padding:0px; }
.talkTeam-box::before { background-size: 40px auto; }
.project-section { padding: 40px 0; }
.image-content-box h2 { line-height: 1.2; font-size: 21px; }
.features-content { padding: 20px; }
.image-content-box p { font-size: 14px; margin-bottom: 15px; }
.achieve-section li { padding: 0 10px; }
.section-title p { font-size: 18px; }
h2.service-title { margin:0px;font-size:30px;font-size: 32px; width: 100%;}
.whoWeAre-items { gap:30px; grid-template-columns: repeat(1, 1fr); padding: 0; }
.whoWeAre-item.show-img { margin: 0; }
.whoWeAre-content p { display: block; -webkit-line-clamp: none; }
.whoWeAre-img { display: block; }
.whoWeAre-item { min-height: 300px; }
.whoWeAre-section { padding: 80px 0; background:none;  }
.section-title { text-align: left; }
.whoWeAre-section::after { display: none; }
.whoWeAre-section::before { display: none; }
.whoWeAre-content .subtext { display:block;}
.achieve-section h3 { font-size: 30px; }
.achieve-section p { font-size: 15px; }
.features-content { padding: 0 30px; }
.services-section::before { display: none; }
.talkTeam-text { padding: 18px; }
.talkTeam-text h2 { font-size: 28px; }
.talkTeam-box { padding:15px; }
.footer-bottom p { font-size: 16px; text-align: center; }

.image-content-box { grid-template-columns: 1fr; padding: 25px 0px; }
.image-content-box h2 { line-height: 1.2; font-size: 28px;margin-bottom: 0px; }
.features-content { order: -1; padding: 10px 0 48px; }
.image-content-box p { font-size: 16px; margin-bottom: 24px; font-weight: 600; }

.footer-form { border:0; padding:0 0 50px; margin: 0px; }
.achieve-section { display: none; }
.services-section::after { display: none; }
.footer-top .col-xl-5 { order: -1; }
.footer-top .container { background: url(../images/footer-bg1.png) 0 0px no-repeat; padding-top: 80px; }
.footer-top { background: url(../images/footer-bg2.png) 0 bottom no-repeat; background-size: 100% auto; 
padding: 0px 0 20px; }
.footer-links li { margin-bottom: 8px; }
.footer-links { margin-bottom: 30px; }
.header-top { padding: 24px 0px; }
.achieve-mobile ul { display: grid; grid-template-columns: repeat(3, 1fr); margin:0 -10px 10px; }
.achieve-mobile li { padding: 0 10px; list-style: none; }
.achieve-mobile li:not(:last-child) { border-right: 1px solid #C3C3C8; list-style: none; }
.achieve-mobile h3 { margin: 0 0 5px; color: #2693ED; font-size: 20px; font-weight: 700; }
.achieve-mobile p { margin: 0; font-size: 14px; font-weight: 700; color: #fff; }

.unique-approach-section { padding:15px 0px 0px 0px;}
.apex-team-section {padding: 40px 0px 40px 0px; }
.our-unique-section { padding: 30px 0px 0px 0px;}
.elite-teams-items  { grid-template-columns: repeat(1, 1fr);padding: 20px 0;}
.elite-team-section-title h2 { font-size:16px;color:#2693ED;}
.team-row {display: flex; flex-direction: column-reverse; }
.team-card { padding: 20px 0px;padding-top:0px;}
.elite-team-item { padding: 30px;}
.elite-team-item h3 { font-size: 26px; }
.elite-team-section { padding:35px 0; }
.team-card h2 { font-size:24px; }
.reorder-md-1 { order: 2; }
.reorder-md-2 {order: 1; }
.image-info-box img { margin-bottom: 25px;}
.our-info-title h2 { font-size:32px;}
.our-info-section { padding:30px 0;}
.our-unique-section .subtitle { text-align:center;}
.our-unique-section h2 {font-size: 32px;text-align:left; }
.approach-text { padding: 25px 0px 40px 0px;}
.our-team-section { padding: 30px 0px 0px 0px;}
.our-team-section-title h2 { text-align: center;font-size: 36px;margin-bottom: 20px;}
.team-text p { margin-bottom:0px;}
.buidling-content h2 { font-size: 24px;}
.job-title {font-size: 20px; }
.job-location span , .job-contract span { font-size:16px;}
.careers-section .section-title {font-size: 33px; }
.page-id-60 .buidling-content:before {content: ""; pointer-events: none; background: url(../images/apex-constructor-media-bg.png) right 0px no-repeat;
  width: 100%; height: 1062px;background-size: contain;position: absolute;top: -292px;right: 0;z-index: -1;}
.page-id-62 .buidling-content:before {content: ""; pointer-events: none; background: url(../images/apex-west-building-media-bg.png) right 0px no-repeat;
  width: 100%; height: 1038px;background-size: contain;position: absolute;top: -250px;right: 0;z-index: -1;}
.page-id-64 .buidling-content:before {content: ""; pointer-events: none; background: url(../images/apex-engineering-building-media-bg.png) right 0px no-repeat;
  width: 100%; height: 1038px;background-size: contain;position: absolute;top: -348px;right: 28px;z-index: -1;}
.specialities-section img { width:100%;}
.apex-landing-contact-section { padding:0px;}
.page-id-461 .strong-foundation-section:before,.page-id-459 .strong-foundation-section:before
 {content: ""; pointer-events: none; background: url(../images/landing-building-content.png) right 0px no-repeat;
  width: 100%; height: 1038px;background-size: contain;position: absolute;right: 28px;z-index: -1;}
.page-id-461 .strong-foundation-section,.page-id-459 .strong-foundation-section { position:relative;}
.contact-info ul.contact-list { display:block;}
.page-id-459 .header-top , .page-id-461 .header-top { display:block;}
	
  .whoWeAre-video-section {
    aspect-ratio: 9 / 16; /* taller for mobile screens */
    max-height: none;     /* allow full vertical space */
  }

  .whoWeAre-video-section video {
    object-fit: contain;  /* ensures full video visible on tall screens */
  }

}
@media(max-width:575px){
  .order-md-1 { order: 2; }
.order-md-2 {order: 1; }
.contact-info ul.contact-list { display:block;}
}

@media(max-width: 479px) {
 .whoWeAre-video-section {
    aspect-ratio: 1 / 1;  /* square layout for very small screens */
  }
}

@media(max-width: 400px) {
.footer-top .container { background-size: 100% auto; }  
}
.strong-foundation-section ul li { margin-left: 15px; }