:root {
  --mactec-navy: #0043a6;
  --mactec-gold: #fc7711;
}

.mactec-topbar-wrapper {
  color: rgb(255, 255, 255);
  background: var(--mactec-navy) !important;
}

.mactec-topbar-container {
  min-height: 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
  font-size: 13px;
  letter-spacing: 0.01em;
}

.mactec-topbar-right,
 .mactec-topbar-item {
  display: flex;
  align-items: center;
  gap: 7px;
}

.mactec-topbar-right {
  gap: 14px;
}

.mactec-topbar-item {
  color: rgb(255, 255, 255) !important;
}

.mactec-topbar-item:hover {
  color: rgb(242, 196, 109) !important;
}

.action-button,
 .action-button:hover,
 .layout-block .ui-button {
  border-color: var(--mactec-gold) !important;
}

.action-button {
  background: var(--mactec-gold) !important;
  color: var(--mactec-navy) !important;
}

.action-button:hover {
  background: var(--mactec-navy) !important;
  color: rgb(255, 255, 255) !important;
}

.or2 .ui-icon-box-icon {
  background: var(--mactec-navy) !important;
}

.ui-icon-list-icon,
 .ui-icon-list-icon svg {
  color: var(--mactec-navy) !important;
  fill: var(--mactec-navy) !important;
}

.mactec-sec1-map-section {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background: linear-gradient(135deg, rgb(237, 244, 255), rgb(249, 251, 255) 55%, rgb(229, 237, 249)) !important;
}

.mactec-sec1-map-section::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0px;
  opacity: 0.15;
  background: url("../images/us-map-68c9218bac91a-scaled-2.webp") center center / 58% auto no-repeat;
}

.mactec-sec1-map-section .heading-seamless-facility-operations-consistent h2 {
  margin-inline: auto;
  color: var(--mactec-navy);
  text-align: center;
  max-width: 100% !important;
  white-space: nowrap !important;
  font-size: clamp(24px, 2.3vw, 36px) !important;
}

@media (max-width: 900px) {
.mactec-sec1-map-section .heading-seamless-facility-operations-consistent h2 {
  white-space: normal !important;
}
}

.mactec-sec1-map-section .section-centralized-management,
 .mactec-sec1-map-section .section-operational-expertise,
 .mactec-sec1-map-section .section-scalable-coverage,
 .home-layout .layout-block.section-scalable-coverage,
 .home-layout .mactec-sec1-map-section :is(.section-centralized-management, .section-operational-expertise, .section-scalable-coverage) {
  background: rgb(255, 255, 255) !important;
  border: 1px solid rgba(35, 38, 92, 0.12) !important;
  border-radius: 16px !important;
  box-shadow: rgba(20, 32, 71, 0.1) 0px 16px 34px !important;
}

.home-layout .layout-block.section-centralized-management:not(.ui-motion-effects-element-type-background),
 .home-layout .layout-block.section-operational-expertise:not(.ui-motion-effects-element-type-background),
 .home-layout .layout-block.section-scalable-coverage:not(.ui-motion-effects-element-type-background) {
  background: rgb(255, 255, 255) !important;
}

.mactec-sec1-map-section .ui-image-box-img {
  width: 58px !important;
  height: 58px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--mactec-navy) !important;
  border-radius: 14px !important;
  padding: 12px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  margin-bottom: 18px !important;
}

.mactec-sec1-map-section .ui-image-box-img img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  display: block !important;
  filter: brightness(0) invert(1) !important;
}

.mactec-sec1-map-section .ui-icon-list-item {
  align-items: flex-start !important;
}

.mactec-sec1-map-section .ui-icon-list-icon {
  margin-top: 4px !important;
  flex-shrink: 0 !important;
}

.section-streamlined-facility-management-for {
  background: rgb(247, 249, 253) !important;
}

.section-streamlined-facility-management-for .image-image-3 {
  position: relative;
  padding: 12px 0px 0px 12px;
}

.section-streamlined-facility-management-for .image-image-3::before {
  content: "";
  position: absolute;
  width: 74%;
  height: 78%;
  top: 0px;
  left: 0px;
  border: 4px solid var(--mactec-gold);
  border-radius: 26px 0px 0px;
}

.section-streamlined-facility-management-for .image-image-3 img {
  position: relative;
  z-index: 1;
  border-radius: 0px 28px 28px;
  box-shadow: rgba(35, 38, 92, 0.1) 18px 20px 0px;
}

.section-streamlined-facility-management-for .counter-counter {
  border: 5px solid rgb(255, 255, 255);
  border-radius: 20px;
  box-shadow: rgba(20, 32, 71, 0.24) 0px 14px 28px;
  background: var(--mactec-navy) !important;
  color: rgb(255, 255, 255) !important;
  padding: 20px 25px !important;
}

.section-streamlined-facility-management-for .counter-counter .ui-counter-title,
 .section-streamlined-facility-management-for .counter-counter .ui-counter-number-wrapper {
  color: rgb(255, 255, 255) !important;
}

.section-streamlined-facility-management-for .counter-counter .mactec-asterisk {
  font-size: 0.52em !important;
  vertical-align: 0.42em !important;
  display: inline-block !important;
  line-height: 0 !important;
  margin-left: 1px !important;
  font-weight: 700 !important;
}

.section-streamlined-facility-management-for .heading-streamlined-facility-management-for h3 {
  color: var(--mactec-navy);
}

.section-streamlined-facility-management-for .icon-list-icon-list-4 {
  border-left: 4px solid var(--mactec-gold);
  border-radius: 12px;
}

.section-industries {
  position: relative;
  overflow: hidden;
  background: radial-gradient(circle at 10% 20%, rgba(209, 157, 64, 0.26), transparent 27%), radial-gradient(circle at 90% 85%, rgba(74, 111, 177, 0.22), transparent 32%), linear-gradient(135deg, rgb(238, 243, 251), rgb(250, 252, 255)) !important;
}

.section-industries::before {
  content: "";
  position: absolute;
  inset: 0px;
  pointer-events: none;
  opacity: 0.35;
  background-image: linear-gradient(rgba(35, 38, 92, 0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(35, 38, 92, 0.06) 1px, transparent 1px);
  background-size: 46px 46px;
}

.section-industries .ui-heading-title {
  color: var(--mactec-navy);
}

.section-industries .heading-industries-2 .ui-heading-title {
  color: var(--mactec-gold);
}

.section-industries .ui-image-box-wrapper {
  border-radius: 16px;
  overflow: hidden;
  box-shadow: rgba(20, 32, 71, 0.12) 0px 12px 24px;
}

.section-one-strategic-partner-every {
  background: rgb(255, 255, 255) !important;
}

.section-one-strategic-partner-every .section-integrated-security-coordination-2,
 .section-one-strategic-partner-every .section-waste-recycling-coordination,
 .section-one-strategic-partner-every .section-fire-life-safety-coordination,
 .section-one-strategic-partner-every .section-hvac-services {
  min-width: 0px;
  border: 1px solid rgb(227, 232, 241);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: rgba(20, 32, 71, 0.08) 0px 10px 22px;
  transition: transform 0.25s, box-shadow 0.25s;
  flex: 0 1 calc(25% - 18px) !important;
}

.section-one-strategic-partner-every .section-integrated-security-coordination-2:hover,
 .section-one-strategic-partner-every .section-waste-recycling-coordination:hover,
 .section-one-strategic-partner-every .section-fire-life-safety-coordination:hover,
 .section-one-strategic-partner-every .section-hvac-services:hover {
  transform: translateY(-7px);
  box-shadow: rgba(20, 32, 71, 0.16) 0px 18px 30px;
}

.section-one-strategic-partner-every .ui-image-box-wrapper {
  display: block;
}

.section-one-strategic-partner-every .ui-image-box-img {
  width: 100% !important;
  margin: 0px !important;
}

.section-one-strategic-partner-every .ui-image-box-img img {
  display: block;
  object-fit: cover;
  width: 100% !important;
  height: 180px !important;
}

.section-one-strategic-partner-every .ui-image-box-content {
  padding: 22px 20px 24px;
}

.section-one-strategic-partner-every .ui-image-box-title a {
  color: var(--mactec-navy);
}

.section-one-strategic-partner-every .ui-image-box-description {
  line-height: 1.6;
}

@media (max-width: 1024px) {
.section-one-strategic-partner-every .section-integrated-security-coordination-2,
 .section-one-strategic-partner-every .section-waste-recycling-coordination,
 .section-one-strategic-partner-every .section-fire-life-safety-coordination,
 .section-one-strategic-partner-every .section-hvac-services {
  flex-basis: calc(50% - 14px) !important;
}
}

@media (max-width: 767px) {
.mactec-topbar-container {
  min-height: auto;
  padding-block: 10px;
  flex-direction: column;
  gap: 8px;
  text-align: center;
}

.mactec-topbar-right {
  flex-wrap: wrap;
  justify-content: center;
}

.mactec-sec1-map-section::before {
  background-size: 115% auto;
}

.section-one-strategic-partner-every .section-integrated-security-coordination-2,
 .section-one-strategic-partner-every .section-waste-recycling-coordination,
 .section-one-strategic-partner-every .section-fire-life-safety-coordination,
 .section-one-strategic-partner-every .section-hvac-services {
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0px !important;
}
}

header.mactec-header,
 .header-layout.mactec-header,
 .site-header {
  position: fixed !important;
  top: 0px !important;
  left: 0px !important;
  right: 0px !important;
  width: 100% !important;
  z-index: 99999 !important;
  overflow: visible !important;
  transition: box-shadow 0.25s !important;
  box-shadow: rgba(0, 43, 107, 0.06) 0px 2px 14px !important;
}

header.mactec-header.is-scrolled,
 .header-layout.mactec-header.is-scrolled {
  box-shadow: rgba(0, 43, 107, 0.14) 0px 8px 30px !important;
}

body {
  padding-top: 120px !important;
}

@media (max-width: 991px) {
body {
  padding-top: 80px !important;
}
}

.header-layout .header {
  border-bottom: 1px solid rgb(231, 237, 246);
  box-shadow: rgba(0, 43, 107, 0.08) 0px 7px 22px;
  position: relative !important;
  z-index: 99999 !important;
  overflow: visible !important;
  background: rgb(255, 255, 255) !important;
}

.header-layout .header > .container-inner {
  min-height: 84px;
  padding-block: 8px;
  gap: 24px;
  position: relative !important;
  overflow: visible !important;
  max-width: var(--container-max-width, 1220px) !important;
  width: 100% !important;
  margin-inline: auto !important;
  padding-inline: 0px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: nowrap !important;
}

@media (max-width: 1250px) {
.header-layout .header > .container-inner {
  padding-inline: 20px !important;
}
}

.header-layout .header-2 {
  min-width: 0px;
  flex: 0 0 auto !important;
}

.header-layout .image-image {
  text-align: left !important;
}

.header-layout .image-image img {
  display: block;
  max-width: 200px !important;
  max-height: 56px !important;
  width: auto !important;
  object-fit: contain !important;
}

.header-layout .header-home {
  min-width: 0px;
  position: relative !important;
  z-index: 99999 !important;
  overflow: visible !important;
  flex: 1 1 auto !important;
  display: flex !important;
  justify-content: flex-end !important;
  margin-left: 20px !important;
}

.header-layout .nav-menu-home,
 .header-layout .ui-widget-nav-menu,
 .ui-nav-menu--main {
  position: relative !important;
  z-index: 99999 !important;
  overflow: visible !important;
  width: 100% !important;
}

.header-layout .nav-menu-home .ui-nav-menu,
 .ui-nav-menu--main .ui-nav-menu {
  position: relative !important;
  z-index: 99999 !important;
  overflow: visible !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
  gap: clamp(8px, 1.25vw, 22px) !important;
  margin: 0px !important;
  padding: 0px !important;
  list-style: none !important;
}

.header-layout .nav-menu-home .ui-nav-menu > li,
 .ui-nav-menu--main .ui-nav-menu > li {
  margin: 0px !important;
  display: inline-flex !important;
  align-items: center !important;
  position: relative !important;
}

.header-layout .nav-menu-home .ui-nav-menu > li.menu-item-has-children,
 .ui-nav-menu--main .ui-nav-menu > li.menu-item-has-children {
  position: relative !important;
  z-index: 99999 !important;
}

.header-layout .nav-menu-home .ui-nav-menu > li > a {
  display: inline-flex !important;
  align-items: center !important;
  padding: 8px 0px !important;
  font-family: "Nunito Sans", sans-serif !important;
  font-size: clamp(13.5px, 1.05vw, 15.5px) !important;
  font-weight: 700 !important;
  color: rgb(16, 16, 16) !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  transition: color 0.2s !important;
}

.header-layout .nav-menu-home .ui-nav-menu > li > a:hover,
 .header-layout .nav-menu-home .ui-nav-menu > li.menu-item-has-children:hover > a {
  color: rgb(232, 114, 17) !important;
}

.header-layout .nav-menu-home .ui-nav-menu > li.current-menu-item > a,
 .header-layout .nav-menu-home .ui-nav-menu > li > a.ui-item-active,
 .header-layout .nav-menu-home .ui-nav-menu > li > a[aria-current="page"] {
  color: rgb(232, 114, 17) !important;
}

.ui-nav-menu--main .ui-nav-menu ul.sub-menu,
 .header-layout .nav-menu-home .ui-nav-menu ul.sub-menu,
 .ui-nav-menu--main ul.ui-nav-menu--dropdown,
 ul.sub-menu.ui-nav-menu--dropdown {
  position: absolute !important;
  top: calc(100% + 4px) !important;
  left: 0px !important;
  min-width: 360px !important;
  max-width: 440px !important;
  width: max-content !important;
  background: rgb(255, 255, 255) !important;
  border-width: 3.5px 1px 1px !important;
  border-style: solid !important;
  border-color: rgb(232, 114, 17) rgb(226, 232, 240) rgb(226, 232, 240) !important;
  border-image: none !important;
  border-radius: 0px 0px 14px 14px !important;
  box-shadow: rgba(11, 30, 54, 0.22) 0px 24px 50px -8px, rgba(0, 0, 0, 0.08) 0px 10px 20px -4px, rgba(0, 0, 0, 0.12) 0px 0px 1px !important;
  padding: 10px 8px !important;
  margin: 0px !important;
  z-index: 999999 !important;
  box-sizing: border-box !important;
  max-height: min(560px, -120px + 100vh) !important;
  overflow: hidden auto !important;
  list-style: none !important;
  transition: opacity 0.2s cubic-bezier(0.16, 1, 0.3, 1), transform 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.ui-nav-menu--main .ui-nav-menu ul.sub-menu::before,
 .header-layout .nav-menu-home .ui-nav-menu ul.sub-menu::before {
  content: "" !important;
  position: absolute !important;
  top: -14px !important;
  left: 0px !important;
  right: 0px !important;
  height: 14px !important;
  background: transparent !important;
  pointer-events: auto !important;
}

.ui-nav-menu--main .ui-nav-menu ul.sub-menu::-webkit-scrollbar {
  width: 5px;
}

.ui-nav-menu--main .ui-nav-menu ul.sub-menu::-webkit-scrollbar-track {
  background: rgb(248, 250, 252);
  border-radius: 4px;
}

.ui-nav-menu--main .ui-nav-menu ul.sub-menu::-webkit-scrollbar-thumb {
  background: rgb(203, 213, 225);
  border-radius: 4px;
}

.ui-nav-menu--main .ui-nav-menu ul.sub-menu::-webkit-scrollbar-thumb:hover {
  background: rgb(148, 163, 184);
}

@media (min-width: 1025px) {
.ui-nav-menu--main .ui-nav-menu > li.menu-item-has-children:hover > ul.sub-menu,
 .ui-nav-menu--main .ui-nav-menu > li.menu-item-has-children:focus-within > ul.sub-menu {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  animation: 0.22s cubic-bezier(0.16, 1, 0.3, 1) 0s 1 normal forwards running mactecDropdownFadeSlide !important;
}
}

.ui-nav-menu > li.menu-item-has-children.dropdown-closed > ul.sub-menu,
 .nav-item.dropdown-closed .dropdown-menu,
 ul.sub-menu.dropdown-closed,
 .dropdown-menu.dropdown-closed {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  animation: auto ease 0s 1 normal none running none !important;
}

.ui-nav-menu--main .ui-nav-menu ul.sub-menu > li,
 .header-layout .nav-menu-home .ui-nav-menu ul.sub-menu > li {
  display: block !important;
  width: 100% !important;
  margin: 0px 0px 2px !important;
  padding: 0px !important;
  list-style: none !important;
}

.ui-nav-menu--main .ui-nav-menu ul.sub-menu > li:last-child,
 .header-layout .nav-menu-home .ui-nav-menu ul.sub-menu > li:last-child {
  margin-bottom: 0px !important;
}

.ui-nav-menu--main .ui-nav-menu ul.sub-menu > li > a,
 .ui-nav-menu--main .ui-nav-menu ul.sub-menu a.ui-sub-item,
 .header-layout .nav-menu-home .ui-nav-menu ul.sub-menu > li > a {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 9.5px 14px !important;
  font-family: "Nunito Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  color: rgb(30, 41, 59) !important;
  text-decoration: none !important;
  background: transparent !important;
  border-radius: 8px !important;
  border-left: 3px solid transparent !important;
  transition: 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
  white-space: normal !important;
  text-shadow: none !important;
}

.ui-nav-menu--main .ui-nav-menu ul.sub-menu > li > a::after,
 .header-layout .nav-menu-home .ui-nav-menu ul.sub-menu > li > a::after {
  content: "→" !important;
  display: inline-block !important;
  font-family: inherit !important;
  font-size: 13.5px !important;
  font-weight: 800 !important;
  color: rgb(232, 114, 17) !important;
  opacity: 0 !important;
  transform: translateX(-6px) !important;
  transition: opacity 0.18s, transform 0.18s !important;
  margin-left: 12px !important;
  flex-shrink: 0 !important;
  line-height: 1 !important;
}

.ui-nav-menu--main .ui-nav-menu ul.sub-menu > li > a:hover,
 .ui-nav-menu--main .ui-nav-menu ul.sub-menu > li > a:focus,
 .ui-nav-menu--main .ui-nav-menu ul.sub-menu > li > a.ui-item-active,
 .header-layout .nav-menu-home .ui-nav-menu ul.sub-menu > li > a:hover {
  background: rgb(241, 245, 249) !important;
  color: rgb(0, 67, 166) !important;
  border-left-color: rgb(232, 114, 17) !important;
  padding-left: 18px !important;
}

.ui-nav-menu--main .ui-nav-menu ul.sub-menu > li > a:hover::after,
 .ui-nav-menu--main .ui-nav-menu ul.sub-menu > li > a:focus::after,
 .ui-nav-menu--main .ui-nav-menu ul.sub-menu > li > a.ui-item-active::after,
 .header-layout .nav-menu-home .ui-nav-menu ul.sub-menu > li > a:hover::after {
  opacity: 1 !important;
  transform: translateX(0px) !important;
}

.ui-nav-menu--main .ui-nav-menu ul.sub-menu > li.menu-item-type-custom,
 .header-layout .nav-menu-home .ui-nav-menu ul.sub-menu > li.menu-item-type-custom {
  margin-top: 6px !important;
  padding-top: 6px !important;
  border-top: 1px solid rgb(226, 232, 240) !important;
}

.ui-nav-menu--main .ui-nav-menu ul.sub-menu > li.menu-item-type-custom > a,
 .header-layout .nav-menu-home .ui-nav-menu ul.sub-menu > li.menu-item-type-custom > a {
  color: rgb(0, 67, 166) !important;
  font-weight: 700 !important;
  background: rgba(0, 67, 166, 0.05) !important;
  border-width: 1px 1px 1px 3px !important;
  border-style: dashed dashed dashed solid !important;
  border-color: rgba(0, 67, 166, 0.2) rgba(0, 67, 166, 0.2) rgba(0, 67, 166, 0.2) rgb(0, 67, 166) !important;
  border-image: none !important;
  padding: 10px 14px !important;
  border-radius: 8px !important;
}

.ui-nav-menu--main .ui-nav-menu ul.sub-menu > li.menu-item-type-custom > a:hover,
 .header-layout .nav-menu-home .ui-nav-menu ul.sub-menu > li.menu-item-type-custom > a:hover {
  background: rgb(0, 67, 166) !important;
  color: rgb(255, 255, 255) !important;
  border-color: rgb(0, 67, 166) !important;
  padding-left: 18px !important;
}

.ui-nav-menu--main .ui-nav-menu ul.sub-menu > li.menu-item-type-custom > a:hover::after,
 .header-layout .nav-menu-home .ui-nav-menu ul.sub-menu > li.menu-item-type-custom > a:hover::after {
  color: rgb(255, 255, 255) !important;
}

@media (max-width: 1024px) {
.ui-nav-menu--dropdown.ui-nav-menu__container {
  position: absolute !important;
  top: 100% !important;
  left: 0px !important;
  right: 0px !important;
  width: 100% !important;
  z-index: 999999 !important;
  background: rgb(255, 255, 255) !important;
  border-top: 3px solid rgb(232, 114, 17) !important;
  box-shadow: rgba(11, 30, 54, 0.2) 0px 20px 40px !important;
  padding: 16px 20px 24px !important;
  max-height: calc(-100px + 100vh) !important;
  overflow-y: auto !important;
}

.ui-nav-menu--dropdown.ui-nav-menu__container .ui-nav-menu {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  width: 100% !important;
}

.ui-nav-menu--dropdown.ui-nav-menu__container .ui-nav-menu > li {
  width: 100% !important;
  display: block !important;
}

.ui-nav-menu--dropdown.ui-nav-menu__container .ui-nav-menu > li > a {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 11px 16px !important;
  font-family: "Nunito Sans", sans-serif !important;
  font-size: 15.5px !important;
  font-weight: 700 !important;
  color: rgb(15, 23, 42) !important;
  border-radius: 8px !important;
  border-left: 3px solid transparent !important;
  transition: 0.2s !important;
  text-decoration: none !important;
}

.ui-nav-menu--dropdown.ui-nav-menu__container .ui-nav-menu > li > a:hover,
 .ui-nav-menu--dropdown.ui-nav-menu__container .ui-nav-menu > li > a.ui-item-active {
  background: rgb(241, 245, 249) !important;
  color: rgb(0, 67, 166) !important;
  border-left-color: rgb(232, 114, 17) !important;
}

.ui-nav-menu--dropdown.ui-nav-menu__container ul.sub-menu {
  position: static !important;
  box-shadow: none !important;
  border-width: medium medium medium 2px !important;
  border-style: none none none solid !important;
  border-color: currentcolor currentcolor currentcolor rgb(226, 232, 240) !important;
  border-image: none !important;
  border-radius: 0px !important;
  background: rgb(248, 250, 252) !important;
  margin: 4px 0px 8px 16px !important;
  padding: 6px 0px 6px 12px !important;
  min-width: 0px !important;
  width: auto !important;
  max-height: none !important;
}

.ui-nav-menu--dropdown.ui-nav-menu__container ul.sub-menu > li > a {
  font-size: 13.5px !important;
  font-weight: 600 !important;
  padding: 8px 12px !important;
  color: rgb(51, 65, 85) !important;
  border-radius: 6px !important;
}

.ui-nav-menu--dropdown.ui-nav-menu__container ul.sub-menu > li > a:hover {
  background: rgb(255, 255, 255) !important;
  color: rgb(0, 67, 166) !important;
}
}

.header-layout .header-3 {
  display: none !important;
}

.header-layout .header-3::after {
  content: none !important;
  display: none !important;
}

.header-layout .icon {
  position: static !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0px !important;
  padding: 0px !important;
}

.header-layout .icon .ui-icon-wrapper {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.header-layout .icon .ui-icon {
  width: 44px !important;
  height: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 10px !important;
  background: rgb(35, 38, 92) !important;
  color: rgb(255, 255, 255) !important;
  padding: 0px !important;
  text-decoration: none !important;
  transition: background 0.2s, transform 0.2s !important;
}

.header-layout .icon .ui-icon:hover {
  background: rgb(25, 28, 71) !important;
  transform: scale(1.05) !important;
}

.header-layout .icon .ui-icon i {
  display: inline-block !important;
  font-size: 20px !important;
  line-height: 1 !important;
  color: rgb(255, 255, 255) !important;
}

.header-layout .text-editor-contact-us {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  margin: 0px !important;
  padding: 0px !important;
  line-height: 1.2 !important;
}

.header-layout .text-editor-contact-us p {
  margin: 0px !important;
  padding: 0px !important;
  line-height: 1.25 !important;
  white-space: nowrap !important;
  font-family: "Nunito Sans", sans-serif !important;
}

.header-layout .text-editor-contact-us a {
  text-decoration: none !important;
}

.header-layout .text-editor-contact-us b {
  display: block !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  color: rgb(16, 16, 16) !important;
  line-height: 1.2 !important;
  margin-bottom: 2px !important;
  transition: color 0.2s !important;
}

.header-layout .text-editor-contact-us strong {
  display: block !important;
  line-height: 1.2 !important;
}

.header-layout .text-editor-contact-us strong a {
  display: block !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: rgb(35, 38, 92) !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  transition: color 0.2s !important;
}

.header-layout .text-editor-contact-us a:hover b,
 .header-layout .text-editor-contact-us strong a:hover {
  color: rgb(232, 114, 17) !important;
}

@media (max-width: 1350px) and (min-width: 1025px) {
.header-layout .header > .container-inner {
  padding-inline: 16px !important;
  gap: 12px !important;
}

.header-layout .nav-menu-home .ui-nav-menu {
  gap: 14px !important;
}

.header-layout .nav-menu-home .ui-nav-menu > li > a {
  font-size: 15.5px !important;
  font-weight: 700 !important;
}

.header-layout .header-3 {
  margin-left: 6px !important;
  gap: 8px !important;
}

.header-layout .text-editor-contact-us strong a {
  font-size: 15px !important;
}
}

.mactec-topbar-wrapper > .mactec-topbar-container {
  max-width: var(--container-max-width, 1220px) !important;
  width: 100% !important;
  margin-inline: auto !important;
  padding-inline: 0px !important;
}

@media (max-width: 1250px) {
.mactec-topbar-wrapper > .mactec-topbar-container {
  padding-inline: 20px !important;
}
}

.mactec-topbar-left {
  margin-right: auto;
}

.mactec-topbar-right {
  margin-left: auto;
}

.section-integrated-facility-management-for .action-button {
  align-items: center;
  justify-content: center;
  min-width: 244px;
  min-height: 48px;
  white-space: nowrap;
  display: inline-flex !important;
  color: rgb(255, 255, 255) !important;
}

.section-integrated-facility-management-for .action-button:hover {
  color: rgb(255, 255, 255) !important;
  background: var(--mactec-navy) !important;
}

.section-integrated-facility-management-for .ui-widget-elementskit-button {
  width: auto !important;
}

.section-integrated-facility-management-for .section-integrated-facility-management-for-2 {
  gap: 12px 14px;
  align-items: flex-start;
  flex-flow: wrap !important;
}

.section-integrated-facility-management-for .heading-integrated-facility-management-for,
 .section-integrated-facility-management-for .text-editor-text-editor-4 {
  flex: 0 0 100% !important;
}

.section-integrated-facility-management-for .button-get-a-free-assessment,
 .section-integrated-facility-management-for .button-call-1-346-563 {
  flex: 0 0 auto !important;
  width: auto !important;
  margin: 0px !important;
}

.section-integrated-facility-management-for .button-get-a-free-assessment .action-button,
 .section-integrated-facility-management-for .button-call-1-346-563 .action-button {
  min-width: 212px;
}

.section-industries {
  background: linear-gradient(135deg, rgb(0, 43, 107) 0%, rgb(0, 67, 166) 52%, rgb(0, 43, 107) 100%) !important;
}

.section-industries::before {
  opacity: 0.2;
  background-image: radial-gradient(circle at 20% 15%, rgb(255, 255, 255) 0px, rgb(255, 255, 255) 1px, transparent 1.5px), radial-gradient(circle at 80% 75%, rgb(255, 255, 255) 0px, rgb(255, 255, 255) 1px, transparent 1.5px);
  background-size: 46px 46px, 64px 64px;
}

.section-industries .ui-heading-title {
  color: rgb(255, 255, 255) !important;
}

.section-industries .heading-industries-2 .ui-heading-title {
  color: rgb(255, 210, 179) !important;
}

.section-industries .logo-sl .swiper-wrapper img.swiper-slide-image {
  border: 1px solid rgba(255, 255, 255, 0.45);
  box-shadow: rgba(0, 17, 61, 0.28) 0px 12px 26px;
}

.section-industries .ui-image-box-wrapper {
  background: rgb(255, 255, 255);
  border: 1px solid rgba(255, 255, 255, 0.45);
  box-shadow: rgba(0, 17, 61, 0.24) 0px 18px 36px;
}

.section-industries .ui-image-box-title {
  color: var(--mactec-navy) !important;
}

.section-one-strategic-partner-every > .container-inner {
  max-width: 1440px !important;
}

.section-one-strategic-partner-every .section-integrated-security-coordination-2,
 .section-one-strategic-partner-every .section-waste-recycling-coordination,
 .section-one-strategic-partner-every .section-fire-life-safety-coordination,
 .section-one-strategic-partner-every .section-hvac-services {
  background: rgb(255, 255, 255);
  min-height: 460px;
  flex: 0 1 calc(25% - 18px) !important;
}

.section-one-strategic-partner-every .ui-image-box-img img {
  height: 158px !important;
}

.section-one-strategic-partner-every .ui-image-box-title {
  margin: 0px 0px 10px !important;
}

.section-one-strategic-partner-every .ui-image-box-title a {
  font-size: 20px;
  line-height: 1.22;
}

.section-one-strategic-partner-every .ui-image-box-description {
  font-size: 15px;
  line-height: 1.55;
}

footer .image-image-2 {
  display: inline-flex !important;
  background: transparent !important;
  border-radius: 0px !important;
  padding: 0px !important;
  margin-bottom: 18px !important;
  border-width: medium !important;
  border-style: none !important;
  border-color: currentcolor !important;
  border-image: none !important;
  box-shadow: none !important;
}

footer .image-image-2 img {
  display: block !important;
  width: 215px !important;
  max-width: 215px !important;
  height: auto !important;
  max-height: none !important;
}

@media (max-width: 1024px) {
.header-layout .header-3 {
  display: none !important;
}

.header-layout .nav-menu-home .menu-item-35 {
  display: list-item !important;
}
}

@media (max-width: 767px) {
.mactec-topbar-wrapper > .mactec-topbar-container {
  padding-inline: 18px !important;
}

.section-integrated-facility-management-for .section-integrated-facility-management-for-2 {
  flex-direction: column !important;
}

.section-integrated-facility-management-for .button-get-a-free-assessment,
 .section-integrated-facility-management-for .button-call-1-346-563 {
  width: 100% !important;
}

.section-integrated-facility-management-for .action-button {
  min-width: 220px;
}

.section-one-strategic-partner-every .section-integrated-security-coordination-2,
 .section-one-strategic-partner-every .section-waste-recycling-coordination,
 .section-one-strategic-partner-every .section-fire-life-safety-coordination,
 .section-one-strategic-partner-every .section-hvac-services {
  min-height: 0px;
}
}

.section-one-strategic-partner-every .ui-widget-image-box .ui-image-box-wrapper {
  height: 100%;
  display: flex !important;
  flex-direction: column !important;
}

.section-one-strategic-partner-every .ui-widget-image-box .ui-image-box-img {
  order: 0;
  flex: 0 0 auto;
  display: block !important;
  width: 100% !important;
  margin: 0px !important;
}

.section-one-strategic-partner-every .ui-widget-image-box .ui-image-box-img > a,
 .section-one-strategic-partner-every .ui-widget-image-box .ui-image-box-img img {
  display: block;
  width: 100% !important;
}

.section-one-strategic-partner-every .ui-widget-image-box .ui-image-box-img img {
  object-fit: cover;
  height: 174px !important;
}

.section-one-strategic-partner-every .ui-widget-image-box .ui-image-box-content {
  order: 1;
  flex: 1 1 0%;
  text-align: left;
  padding: 22px !important;
}

.section-one-strategic-partner-every .ui-image-box-title a {
  font-size: 19px !important;
  line-height: 1.25 !important;
}

.action-button,
 .ui-button {
  color: rgb(255, 255, 255) !important;
}

.action-button:hover,
 .ui-button:hover {
  color: rgb(255, 255, 255) !important;
}

.home-layout .layout-block.section-integrated-facility-management-for::before {
  background-image: linear-gradient(105deg, rgba(0, 43, 107, 0.58) 0%, rgba(0, 67, 166, 0.38) 38%, rgba(0, 67, 166, 0.06) 74%, transparent 100%) !important;
}

.section-industries {
  background: linear-gradient(rgb(247, 250, 255) 0%, rgb(238, 245, 255) 100%) !important;
}

.section-industries::before {
  opacity: 1;
  background: radial-gradient(circle at 8% 15%, rgba(252, 119, 17, 0.12), transparent 18%), radial-gradient(circle at 92% 80%, rgba(0, 67, 166, 0.1), transparent 22%);
}

.section-industries .ui-heading-title {
  color: var(--mactec-navy) !important;
}

.section-industries .heading-industries-2 .ui-heading-title {
  color: var(--mactec-gold) !important;
}

.section-industries .logo-sl .swiper-wrapper img.swiper-slide-image {
  height: 94px;
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgb(223, 233, 247);
  border-radius: 14px;
  box-shadow: rgba(0, 43, 107, 0.07) 0px 8px 18px;
}

.section-industries .ui-image-box-wrapper {
  background: rgb(255, 255, 255);
  border: 1px solid rgb(224, 233, 245);
  border-radius: 14px;
  box-shadow: rgba(0, 43, 107, 0.08) 0px 12px 25px;
  transition: transform 0.2s, box-shadow 0.2s;
}

.section-industries .ui-image-box-wrapper:hover {
  transform: translateY(-4px);
  box-shadow: rgba(0, 43, 107, 0.13) 0px 18px 30px;
}

.section-industries .ui-image-box-title {
  color: var(--mactec-navy) !important;
}

.home-layout .layout-block.text-editor-our-facility-management p:first-of-type,
 .text-editor-our-facility-management p:first-of-type {
  margin-bottom: 20px !important;
}

.mactec-parent-note {
  font-size: 13.5px !important;
  color: rgb(85, 85, 85) !important;
  font-style: italic !important;
  line-height: 1.55 !important;
  margin-top: 10px !important;
  margin-bottom: 22px !important;
}

.mactec-services-heading {
  font-family: "Nunito Sans", sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--mactec-navy) !important;
  margin: 0px 0px 14px !important;
  line-height: 1.3 !important;
}

.home-layout .layout-block.section-let-s-discuss-your {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: nowrap !important;
  gap: 16px !important;
}

.home-layout .layout-block.button-property-facility-support {
  flex-shrink: 0 !important;
}

.home-layout .layout-block.button-property-facility-support .action-button {
  padding: 13px 20px !important;
  white-space: nowrap !important;
  font-size: 16.5px !important;
}

.home-layout .layout-block.icon-box-let-s-discuss {
  flex-shrink: 0 !important;
}

.home-layout .layout-block.icon-box-let-s-discuss .ui-icon-box-wrapper {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.home-layout .layout-block.icon-box-let-s-discuss .ui-icon-box-title,
 .home-layout .layout-block.icon-box-let-s-discuss .ui-icon-box-title a {
  white-space: nowrap !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  display: inline-block !important;
}

.home-layout .layout-block.icon-box-let-s-discuss .ui-icon-box-description,
 .home-layout .layout-block.icon-box-let-s-discuss .ui-icon-box-description a {
  white-space: nowrap !important;
  font-size: 15px !important;
  line-height: 1.3 !important;
  margin-top: 2px !important;
}

@media (max-width: 640px) {
.home-layout .layout-block.section-let-s-discuss-your {
  flex-wrap: wrap !important;
}
}

.home-layout .layout-block.section-multi-location-footprints {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  justify-content: space-between !important;
  gap: 24px !important;
}

.home-layout .layout-block.section-multi-location-footprints > .layout-container {
  flex: 1 1 0px !important;
  width: auto !important;
  min-width: 0px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  text-align: left !important;
}

.home-layout .layout-block.section-multi-location-footprints .ui-image-box-wrapper {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  text-align: left !important;
  width: 100% !important;
}

.home-layout .layout-block.section-multi-location-footprints .ui-image-box-content {
  text-align: left !important;
  width: 100% !important;
}

.home-layout .layout-block.section-multi-location-footprints .ui-image-box-title {
  margin-top: 0px !important;
  margin-bottom: 14px !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: rgb(232, 114, 17) !important;
  text-align: left !important;
  line-height: 1.3 !important;
}

.home-layout .layout-block.section-multi-location-footprints .ui-image-box-description {
  font-size: 15px !important;
  line-height: 1.6 !important;
  color: rgb(255, 255, 255) !important;
  text-align: left !important;
  margin: 0px !important;
}

@media (max-width: 767px) {
.home-layout .layout-block.section-multi-location-footprints {
  flex-direction: column !important;
  gap: 20px !important;
}
}

.mactec-footer-connect {
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
  margin-top: 14px !important;
}

.mactec-footer-connect .mactec-office-card {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  background: transparent !important;
  border-width: medium !important;
  border-style: none !important;
  border-color: currentcolor !important;
  border-image: none !important;
  border-radius: 0px !important;
  padding: 0px !important;
  box-shadow: none !important;
  margin-bottom: 0px !important;
  transform: none !important;
}

.mactec-footer-connect .mactec-office-card:hover {
  background: transparent !important;
  border-width: medium !important;
  border-style: none !important;
  border-color: currentcolor !important;
  border-image: none !important;
  box-shadow: none !important;
  transform: none !important;
}

.mactec-office-tag {
  display: inline-block !important;
  font-family: "Nunito Sans", sans-serif !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  color: rgb(232, 114, 17) !important;
  margin-bottom: 6px !important;
  padding-bottom: 2px !important;
  border-bottom: 2px solid rgba(209, 157, 64, 0.5) !important;
  width: fit-content !important;
}

.mactec-office-title {
  font-family: "Nunito Sans", sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 800 !important;
  color: rgb(255, 255, 255) !important;
  margin: 0px 0px 6px !important;
  line-height: 1.35 !important;
}

.mactec-office-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 8px !important;
  margin-bottom: 6px !important;
  font-size: 13.5px !important;
  line-height: 1.45 !important;
}

.mactec-office-detail {
  color: rgb(203, 213, 225) !important;
  font-size: 13.5px !important;
  line-height: 1.45 !important;
}

.mactec-office-links {
  list-style: none !important;
  padding: 0px !important;
  margin: 0px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
}

.mactec-office-links li {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.mactec-office-links li a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 13.5px !important;
  color: rgb(226, 232, 240) !important;
  line-height: 1.45 !important;
  text-decoration: none !important;
  transition: color 0.2s !important;
}

.mactec-office-links li a:hover {
  color: rgb(232, 114, 17) !important;
}

.mactec-footer-svg-icon {
  flex-shrink: 0 !important;
  stroke: rgb(232, 114, 17) !important;
  vertical-align: middle !important;
}

.mactec-page-hero {
  position: relative;
  background: linear-gradient(135deg, rgb(11, 30, 54) 0%, rgb(21, 56, 97) 60%, rgb(29, 77, 130) 100%);
  padding: 84px 24px 64px;
  color: rgb(255, 255, 255);
  text-align: center;
  overflow: hidden;
}

.mactec-page-hero::before {
  content: "";
  position: absolute;
  inset: 0px;
  background: radial-gradient(circle at 80% 20%, rgba(209, 157, 64, 0.15) 0%, transparent 60%);
  pointer-events: none;
}

.mactec-hero-inner {
  position: relative;
  max-width: 1000px;
  margin: 0px auto;
  z-index: 2;
}

.mactec-hero-badge {
  display: inline-block;
  background: rgba(209, 157, 64, 0.18);
  color: rgb(232, 114, 17);
  border: 1px solid rgba(209, 157, 64, 0.45);
  padding: 6px 16px;
  border-radius: 50px;
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: 16px;
}

.mactec-hero-title {
  font-family: "Nunito Sans", sans-serif;
  font-size: clamp(30px, 4.2vw, 48px);
  font-weight: 900;
  line-height: 1.2;
  margin: 0px 0px 16px;
  letter-spacing: -0.015em;
  color: rgb(255, 255, 255) !important;
}

.mactec-hero-subtitle {
  font-size: clamp(16px, 1.3vw, 19px);
  line-height: 1.6;
  max-width: 780px;
  margin: 0px auto 20px;
  color: rgb(226, 232, 240) !important;
}

.mactec-breadcrumbs {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: rgb(203, 213, 225);
}

.mactec-breadcrumbs a {
  color: rgb(203, 213, 225);
  text-decoration: none;
  transition: color 0.2s;
}

.mactec-breadcrumbs a:hover {
  color: rgb(232, 114, 17);
}

.mactec-breadcrumbs span.sep {
  color: rgb(100, 116, 139);
}

.mactec-breadcrumbs span.current {
  color: rgb(232, 114, 17);
  font-weight: 700;
}

.mactec-page-section {
  padding: 72px 24px;
  background: rgb(255, 255, 255);
}

.mactec-page-section.bg-alt {
  background: rgb(248, 250, 252);
}

.mactec-inner-wrap {
  max-width: 1240px;
  margin: 0px auto;
}

.mactec-section-header {
  text-align: center;
  max-width: 840px;
  margin: 0px auto 52px;
}

.mactec-subheading {
  color: rgb(232, 114, 17);
  font-size: 14px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 10px;
  display: block;
}

.mactec-section-title {
  font-family: "Nunito Sans", sans-serif;
  font-size: clamp(26px, 2.8vw, 38px);
  font-weight: 800;
  color: rgb(11, 30, 54);
  line-height: 1.25;
  margin: 0px 0px 16px;
}

.mactec-section-desc {
  font-size: 16.5px;
  line-height: 1.7;
  color: rgb(71, 85, 105);
  margin: 0px auto;
}

.mactec-overview-grid {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 48px;
  align-items: center;
  margin-bottom: 64px;
}

@media (max-width: 991px) {
.mactec-overview-grid {
  grid-template-columns: 1fr;
  gap: 36px;
}
}

.mactec-overview-text p {
  font-size: 16px;
  line-height: 1.75;
  color: rgb(51, 65, 85);
  margin-bottom: 18px;
}

.mactec-industry-bullets {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin: 24px 0px 28px;
  list-style: none;
  padding: 0px;
}

.mactec-industry-bullets li {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 15px;
  font-weight: 700;
  color: rgb(11, 30, 54);
  background: rgb(241, 245, 249);
  padding: 10px 16px;
  border-radius: 8px;
  border-left: 3px solid rgb(0, 67, 166);
}

.mactec-overview-card {
  background: linear-gradient(145deg, rgb(11, 30, 54), rgb(22, 62, 110));
  color: rgb(255, 255, 255);
  padding: 40px 32px;
  border-radius: 16px;
  box-shadow: rgba(11, 30, 54, 0.12) 0px 16px 36px;
  border: 1px solid rgba(209, 157, 64, 0.25);
}

.mactec-overview-card p {
  color: rgb(226, 232, 240);
  font-size: 15px;
  line-height: 1.7;
  margin-bottom: 20px;
}

.mactec-hub-badges {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.mactec-hub-item {
  display: flex;
  align-items: center;
  gap: 12px;
  background: rgba(255, 255, 255, 0.08);
  padding: 12px 18px;
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.mactec-hub-item strong {
  color: rgb(255, 255, 255);
  font-size: 14.5px;
}

.mactec-hub-item span {
  color: rgb(203, 213, 225);
  font-size: 13.5px;
  margin-left: auto;
}

.mactec-team-group-header {
  margin: 48px 0px 28px;
  padding-bottom: 12px;
  border-bottom: 2px solid rgb(226, 232, 240);
}

.mactec-team-group-header h3 {
  font-size: 24px;
  font-weight: 800;
  color: rgb(0, 67, 166);
  margin: 0px 0px 6px;
}

.mactec-team-group-header p {
  color: rgb(100, 116, 139);
  font-size: 15px;
  margin: 0px;
}

.mactec-leadership-grid {
  display: flex;
  flex-direction: column;
  gap: 32px;
  width: 100%;
}

.mactec-leader-card {
  background: rgb(255, 255, 255);
  border-radius: 14px;
  box-shadow: rgba(11, 30, 54, 0.06) 0px 8px 24px;
  border: 1px solid rgb(226, 232, 240);
  overflow: hidden;
  transition: transform 0.25s, box-shadow 0.25s;
  display: flex;
  flex-direction: row;
  align-items: stretch;
  width: 100%;
}

.mactec-leader-card:hover {
  transform: translateY(-4px);
  box-shadow: rgba(11, 30, 54, 0.12) 0px 16px 36px;
  border-color: rgb(232, 114, 17);
}

.mactec-leader-photo-wrap {
  flex: 0 0 280px;
  width: 280px;
  min-width: 280px;
  background: rgb(248, 250, 252);
  position: relative;
  overflow: hidden;
  display: flex;
  align-self: stretch;
  padding: 0px;
  border-right: 1px solid rgb(238, 242, 246);
  border-bottom-width: medium;
  border-bottom-style: none;
  border-bottom-color: currentcolor;
  height: auto;
  min-height: 100%;
}

.mactec-leader-photo-wrap img {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: none;
  object-fit: cover;
  object-position: center top;
  border-radius: 0px;
  box-shadow: none;
  transition: transform 0.3s;
}

.mactec-leader-card:hover .mactec-leader-photo-wrap img {
  transform: scale(1.03);
}

.mactec-leader-body {
  padding: 32px 36px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex-grow: 1;
}

.mactec-leader-company-tag {
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: rgb(0, 67, 166);
  margin-bottom: 6px;
}

.mactec-leader-name {
  font-family: "Nunito Sans", sans-serif;
  font-size: 24px;
  font-weight: 800;
  color: rgb(11, 30, 54);
  margin: 0px 0px 4px;
}

.mactec-leader-title {
  color: rgb(232, 114, 17);
  font-size: 15.5px;
  font-weight: 700;
  margin-bottom: 14px;
  display: block;
}

.mactec-leader-bio {
  font-size: 15px;
  line-height: 1.7;
  color: rgb(71, 85, 105);
  margin: 0px;
}

@media (max-width: 900px) and (min-width: 768px) {
.mactec-leader-photo-wrap {
  flex: 0 0 220px;
  width: 220px;
  min-width: 220px;
  padding: 0px;
  height: auto;
}

.mactec-leader-body {
  padding: 24px 28px;
}
}

@media (max-width: 767px) {
.mactec-leader-card {
  flex-direction: column;
}

.mactec-leader-photo-wrap {
  flex: 0 0 auto;
  width: 100%;
  min-width: 0px;
  height: auto;
  min-height: 0px;
  border-right-width: medium;
  border-right-style: none;
  border-right-color: currentcolor;
  border-bottom: 1px solid rgb(238, 242, 246);
  padding: 20px 16px;
  background: rgb(248, 250, 252);
  display: flex;
  align-items: center;
  justify-content: center;
}

.mactec-leader-photo-wrap img {
  position: static;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 320px;
  object-fit: contain;
  object-position: center center;
  border-radius: 12px;
  box-shadow: rgba(11, 30, 54, 0.08) 0px 4px 16px;
  display: block;
  margin: 0px auto;
}

.mactec-leader-body {
  padding: 24px 20px;
}
}

.mactec-mission-vision-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
  margin-bottom: 40px;
}

@media (max-width: 767px) {
.mactec-mission-vision-grid {
  grid-template-columns: 1fr;
}
}

.mactec-mv-card {
  background: rgb(255, 255, 255);
  border-radius: 14px;
  padding: 36px;
  box-shadow: rgba(11, 30, 54, 0.06) 0px 8px 24px;
  border-top: 4px solid rgb(0, 67, 166);
}

.mactec-mv-card.vision {
  border-top-color: rgb(232, 114, 17);
}

.mactec-mv-icon {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  background: rgba(0, 67, 166, 0.1);
  color: rgb(0, 67, 166);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
}

.mactec-mv-card.vision .mactec-mv-icon {
  background: rgba(209, 157, 64, 0.15);
  color: rgb(232, 114, 17);
}

.mactec-mv-title {
  font-size: 22px;
  font-weight: 800;
  color: rgb(11, 30, 54);
  margin: 0px 0px 12px;
}

.mactec-mv-text {
  font-size: 15.5px;
  line-height: 1.7;
  color: rgb(71, 85, 105);
  margin: 0px;
}

.mactec-values-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}

@media (max-width: 991px) {
.mactec-values-grid {
  grid-template-columns: repeat(2, 1fr);
}
}

@media (max-width: 575px) {
.mactec-values-grid {
  grid-template-columns: 1fr;
}
}

.mactec-value-card {
  background: rgb(255, 255, 255);
  border-radius: 12px;
  padding: 28px 22px;
  box-shadow: rgba(11, 30, 54, 0.05) 0px 6px 20px;
  border: 1px solid rgb(226, 232, 240);
  transition: transform 0.2s;
}

.mactec-value-card:hover {
  transform: translateY(-4px);
  border-color: rgb(232, 114, 17);
}

.mactec-value-num {
  font-size: 28px;
  font-weight: 900;
  color: rgb(232, 114, 17);
  line-height: 1;
  margin-bottom: 12px;
  opacity: 0.9;
}

.mactec-value-name {
  font-size: 18px;
  font-weight: 800;
  color: rgb(0, 67, 166);
  margin: 0px 0px 10px;
}

.mactec-value-desc {
  font-size: 14px;
  line-height: 1.6;
  color: rgb(71, 85, 105);
  margin: 0px;
}

.mactec-items-grid {
  display: flex;
  flex-direction: column;
  gap: 36px;
  width: 100%;
}

.mactec-item-card {
  background: rgb(255, 255, 255);
  border-radius: 16px;
  box-shadow: rgba(11, 30, 54, 0.06) 0px 8px 24px;
  border: 1px solid rgb(226, 232, 240);
  padding: 0px;
  overflow: hidden;
  transition: transform 0.25s, box-shadow 0.25s, border-color 0.25s;
  display: flex;
  flex-direction: row;
  align-items: stretch;
  width: 100%;
}

.mactec-item-card:hover {
  transform: translateY(-4px);
  box-shadow: rgba(11, 30, 54, 0.1) 0px 16px 36px;
  border-color: rgb(0, 67, 166);
}

.mactec-item-card .mactec-item-img-wrap {
  flex: 0 0 380px;
  width: 380px;
  min-width: 380px;
  height: auto;
  min-height: 100%;
  border-radius: 0px;
  overflow: hidden;
  background: rgb(241, 245, 249);
  position: relative;
  margin: 0px;
  display: flex;
  align-self: stretch;
}

.mactec-item-card .mactec-item-img-wrap img {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.35s;
}

.mactec-item-card:hover .mactec-item-img-wrap img {
  transform: scale(1.04);
}

.mactec-item-content {
  flex: 1 1 0%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0px;
  padding: 36px 40px;
}

@media (max-width: 991px) and (min-width: 768px) {
.mactec-item-card {
  padding: 0px;
}

.mactec-item-card .mactec-item-img-wrap {
  flex: 0 0 300px;
  width: 300px;
  min-width: 300px;
  height: auto;
}

.mactec-item-content {
  padding: 28px;
}
}

@media (max-width: 767px) {
.mactec-item-card {
  flex-direction: column;
  padding: 0px;
}

.mactec-item-card .mactec-item-img-wrap {
  flex: 0 0 auto;
  width: 100%;
  min-width: 0px;
  height: 250px;
  min-height: 250px;
}

.mactec-item-card .mactec-item-img-wrap img {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mactec-item-content {
  padding: 26px 20px;
}
}

.mactec-item-header {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 18px;
}

.mactec-item-icon-box {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  background: rgb(240, 246, 255);
  color: rgb(0, 67, 166);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.mactec-item-title {
  font-size: 21px;
  font-weight: 800;
  color: rgb(11, 30, 54);
  margin: 0px;
  line-height: 1.3;
}

.mactec-item-subheading {
  font-size: 14px;
  font-weight: 700;
  color: rgb(0, 67, 166);
  margin: 8px 0px 14px;
  line-height: 1.4;
}

.mactec-item-p {
  font-size: 15px;
  line-height: 1.7;
  color: rgb(71, 85, 105);
  margin-bottom: 16px;
}

.mactec-bullet-list {
  list-style: none;
  padding: 0px;
  margin: 16px 0px 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.mactec-bullet-list li {
  font-size: 14.5px;
  line-height: 1.6;
  color: rgb(51, 65, 85);
  position: relative;
  padding-left: 24px;
}

.mactec-bullet-list li::before {
  content: "✓";
  position: absolute;
  left: 0px;
  top: 0px;
  color: rgb(232, 114, 17);
  font-weight: 900;
  font-size: 15px;
}

.mactec-tabs-container {
  background: rgb(255, 255, 255);
  border-radius: 16px;
  box-shadow: rgba(11, 30, 54, 0.07) 0px 10px 30px;
  border: 1px solid rgb(226, 232, 240);
  overflow: hidden;
}

.mactec-tab-nav {
  display: flex;
  background: rgb(248, 250, 252);
  border-bottom: 1px solid rgb(226, 232, 240);
}

.mactec-tab-btn {
  flex: 1 1 0%;
  padding: 20px 24px;
  font-family: "Nunito Sans", sans-serif;
  font-size: 16.5px;
  font-weight: 800;
  color: rgb(100, 116, 139);
  background: transparent;
  border-width: medium medium 3px;
  border-style: none none solid;
  border-color: currentcolor currentcolor transparent;
  border-image: none;
  cursor: pointer;
  text-align: center;
  transition: 0.2s;
}

.mactec-tab-btn:hover {
  color: rgb(0, 67, 166);
  background: rgb(255, 255, 255);
}

.mactec-tab-btn.active {
  color: rgb(0, 67, 166);
  background: rgb(255, 255, 255);
  border-bottom-color: rgb(232, 114, 17);
}

.mactec-location-card-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 36px;
}

@media (max-width: 991px) {
.mactec-location-card-grid {
  grid-template-columns: 1fr;
}
}

.mactec-locations-stat-strip {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin: 0px 0px 36px;
}

@media (max-width: 991px) {
.mactec-locations-stat-strip {
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}
}

@media (max-width: 575px) {
.mactec-locations-stat-strip {
  grid-template-columns: 1fr;
}
}

.mactec-loc-stat-card {
  background: rgb(255, 255, 255);
  border: 1px solid rgb(226, 232, 240);
  border-radius: 12px;
  padding: 20px 18px;
  box-shadow: rgba(11, 30, 54, 0.04) 0px 4px 16px;
  display: flex;
  align-items: flex-start;
  gap: 14px;
  transition: transform 0.25s, box-shadow 0.25s, border-color 0.25s;
}

.mactec-loc-stat-card:hover {
  transform: translateY(-3px);
  box-shadow: rgba(11, 30, 54, 0.08) 0px 10px 24px;
  border-color: rgb(232, 114, 17);
}

.mactec-loc-stat-icon {
  width: 42px;
  height: 42px;
  min-width: 42px;
  border-radius: 10px;
  background: linear-gradient(135deg, rgb(0, 67, 166), rgb(11, 30, 54));
  color: rgb(255, 255, 255);
  display: flex;
  align-items: center;
  justify-content: center;
}

.mactec-loc-stat-icon svg {
  width: 20px;
  height: 20px;
}

.mactec-loc-stat-content h4 {
  font-size: 15px;
  font-weight: 800;
  color: rgb(11, 30, 54);
  margin: 0px 0px 3px;
}

.mactec-loc-stat-content p {
  font-size: 12.5px;
  color: rgb(100, 116, 139);
  line-height: 1.45;
  margin: 0px;
}

.mactec-location-box {
  background: rgb(255, 255, 255);
  border-radius: 14px;
  padding: 0px;
  overflow: hidden;
  border: 1px solid rgb(226, 232, 240);
  box-shadow: rgba(11, 30, 54, 0.05) 0px 4px 20px;
  display: flex;
  flex-direction: column;
  transition: transform 0.25s, box-shadow 0.25s, border-color 0.25s;
}

.mactec-location-box:hover {
  transform: translateY(-4px);
  box-shadow: rgba(11, 30, 54, 0.1) 0px 16px 36px;
  border-color: rgb(203, 213, 225);
}

.mactec-location-box .mactec-item-img-wrap {
  position: relative;
  width: 100%;
  height: 280px;
  margin: 0px;
  border-radius: 0px;
  overflow: hidden;
  background: rgb(11, 30, 54);
}

.mactec-location-box .mactec-item-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s;
}

.mactec-location-box:hover .mactec-item-img-wrap img {
  transform: scale(1.04);
}

.mactec-loc-status-pill {
  position: absolute;
  top: 14px;
  left: 14px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 5px 12px;
  border-radius: 50px;
  font-size: 11.5px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  backdrop-filter: blur(8px);
  box-shadow: rgba(0, 0, 0, 0.25) 0px 4px 12px;
  z-index: 2;
}

.mactec-loc-status-pill.active-office {
  background: rgba(0, 67, 166, 0.92);
  color: rgb(255, 255, 255);
  border: 1px solid rgba(255, 255, 255, 0.35);
}

.mactec-loc-status-pill.active-center {
  background: rgba(209, 157, 64, 0.95);
  color: rgb(11, 30, 54);
  border: 1px solid rgba(255, 255, 255, 0.45);
}

.mactec-loc-status-pill.upcoming {
  background: rgba(11, 30, 54, 0.88);
  color: rgb(56, 189, 248);
  border: 1px solid rgba(56, 189, 248, 0.4);
}

.mactec-loc-status-pill .status-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: rgb(34, 197, 94);
  display: inline-block;
}

.mactec-loc-status-pill.upcoming .status-dot {
  background: rgb(56, 189, 248);
}

.mactec-loc-card-body {
  padding: 24px 26px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.mactec-loc-header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 4px;
  flex-wrap: wrap;
}

.mactec-loc-city {
  font-size: 22px;
  font-weight: 800;
  color: rgb(11, 30, 54);
  margin: 0px;
}

.mactec-loc-company {
  font-size: 13.5px;
  font-weight: 700;
  color: rgb(232, 114, 17);
  margin-bottom: 14px;
}

.mactec-loc-caps {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 16px;
}

.mactec-loc-cap-tag {
  font-size: 11px;
  font-weight: 600;
  background: rgb(241, 245, 249);
  color: rgb(51, 65, 85);
  padding: 3px 9px;
  border-radius: 4px;
  border: 1px solid rgb(226, 232, 240);
}

.mactec-loc-desc {
  font-size: 13.5px;
  line-height: 1.6;
  color: rgb(71, 85, 105);
  margin-bottom: 16px;
}

.mactec-loc-detail-list {
  list-style: none;
  padding: 14px 0px 0px;
  margin: 0px 0px 20px;
  display: flex;
  flex-direction: column;
  gap: 11px;
  border-top: 1px solid rgb(241, 245, 249);
}

.mactec-loc-detail-list li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 13.5px;
  color: rgb(51, 65, 85);
  line-height: 1.5;
}

.mactec-loc-detail-list li svg {
  flex-shrink: 0;
  margin-top: 2px;
}

.mactec-loc-detail-list li a {
  color: rgb(0, 67, 166);
  text-decoration: none;
  font-weight: 600;
  transition: color 0.2s;
}

.mactec-loc-detail-list li a:hover {
  color: rgb(232, 114, 17);
}

.mactec-loc-card-actions {
  margin-top: auto;
  display: flex;
  gap: 10px;
  padding-top: 16px;
  border-top: 1px solid rgb(241, 245, 249);
}

.mactec-loc-act-btn {
  flex: 1 1 0%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 14px;
  font-size: 13px;
  font-weight: 700;
  border-radius: 8px;
  text-decoration: none;
  transition: 0.2s;
  text-align: center;
}

.mactec-loc-act-btn.primary {
  background: rgb(0, 67, 166);
  color: rgb(255, 255, 255);
  border: 1px solid rgb(0, 67, 166);
}

.mactec-loc-act-btn.primary:hover {
  background: rgb(0, 51, 128);
  border-color: rgb(0, 51, 128);
  color: rgb(255, 255, 255);
}

.mactec-loc-act-btn.secondary {
  background: rgb(248, 250, 252);
  color: rgb(11, 30, 54);
  border: 1px solid rgb(203, 213, 225);
}

.mactec-loc-act-btn.secondary:hover {
  background: rgb(226, 232, 240);
  color: rgb(0, 67, 166);
}

.mactec-synergy-wrap {
  margin-top: 50px;
  background: linear-gradient(145deg, rgb(11, 30, 54) 0%, rgb(17, 45, 82) 100%);
  border-radius: 16px;
  padding: 40px 32px;
  color: rgb(255, 255, 255);
  border: 1px solid rgba(209, 157, 64, 0.3);
  box-shadow: rgba(11, 30, 54, 0.12) 0px 16px 36px;
}

.mactec-synergy-header {
  text-align: center;
  max-width: 720px;
  margin: 0px auto 32px;
}

.mactec-synergy-header h3 {
  font-size: 24px;
  font-weight: 800;
  color: rgb(255, 255, 255);
  margin: 0px 0px 8px;
}

.mactec-synergy-header p {
  font-size: 14.5px;
  color: rgb(203, 213, 225);
  line-height: 1.6;
  margin: 0px;
}

.mactec-synergy-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

@media (max-width: 991px) {
.mactec-synergy-grid {
  grid-template-columns: 1fr;
}
}

.mactec-synergy-item {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 12px;
  padding: 24px 20px;
  transition: background 0.25s, transform 0.25s;
}

.mactec-synergy-item:hover {
  background: rgba(255, 255, 255, 0.1);
  transform: translateY(-3px);
}

.mactec-synergy-item h4 {
  font-size: 16px;
  font-weight: 700;
  color: rgb(232, 114, 17);
  margin: 0px 0px 8px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.mactec-synergy-item p {
  font-size: 13.5px;
  color: rgb(226, 232, 240);
  line-height: 1.6;
  margin: 0px;
}

.mactec-form-wrapper {
  background: rgb(255, 255, 255);
  border-radius: 16px;
  box-shadow: rgba(11, 30, 54, 0.08) 0px 12px 36px;
  border: 1px solid rgb(226, 232, 240);
  padding: 48px;
  max-width: 920px;
  margin: 0px auto;
}

@media (max-width: 767px) {
.mactec-form-wrapper {
  padding: 28px 20px;
}
}

.mactec-form-step-title {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 20px;
  font-weight: 800;
  color: rgb(0, 67, 166);
  margin: 36px 0px 20px;
  padding-bottom: 10px;
  border-bottom: 2px solid rgb(241, 245, 249);
}

.mactec-step-num {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: rgb(0, 67, 166);
  color: rgb(255, 255, 255);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 800;
}

.mactec-form-row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  margin-bottom: 20px;
}

@media (max-width: 767px) {
.mactec-form-row {
  grid-template-columns: 1fr;
  gap: 16px;
}
}

.mactec-field-group {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 20px;
}

.mactec-field-group label {
  font-size: 14.5px;
  font-weight: 700;
  color: rgb(30, 41, 59);
}

.mactec-field-group input[type="text"],
 .mactec-field-group input[type="email"],
 .mactec-field-group input[type="tel"],
 .mactec-field-group select,
 .mactec-field-group textarea {
  width: 100%;
  padding: 12px 16px;
  border: 1px solid rgb(203, 213, 225);
  border-radius: 8px;
  font-size: 14.5px;
  color: rgb(15, 23, 42);
  background: rgb(248, 250, 252);
  transition: 0.2s;
  outline: none;
  font-family: inherit;
}

.mactec-field-group input:focus,
 .mactec-field-group select:focus,
 .mactec-field-group textarea:focus {
  border-color: rgb(0, 67, 166);
  background: rgb(255, 255, 255);
  box-shadow: rgba(0, 67, 166, 0.12) 0px 0px 0px 3px;
}

.mactec-radio-options,
 .mactec-checkbox-options {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin-top: 6px;
}

@media (max-width: 767px) {
.mactec-radio-options,
 .mactec-checkbox-options {
  grid-template-columns: 1fr;
}
}

.mactec-choice-label {
  display: flex;
  align-items: center;
  gap: 10px;
  background: rgb(248, 250, 252);
  border: 1px solid rgb(226, 232, 240);
  padding: 12px 16px;
  border-radius: 8px;
  cursor: pointer;
  font-size: 14px;
  font-weight: 600;
  color: rgb(51, 65, 85);
  transition: 0.2s;
}

.mactec-choice-label:hover {
  background: rgb(241, 245, 249);
  border-color: rgb(203, 213, 225);
}

.mactec-choice-label input[type="radio"],
 .mactec-choice-label input[type="checkbox"] {
  accent-color: rgb(0, 67, 166);
  width: 17px;
  height: 17px;
}

.mactec-btn-primary {
  background: linear-gradient(135deg, rgb(0, 67, 166), rgb(0, 45, 114));
  color: rgb(255, 255, 255);
  font-family: "Nunito Sans", sans-serif;
  font-size: 16px;
  font-weight: 800;
  padding: 15px 36px;
  border-radius: 8px;
  border-width: medium;
  border-style: none;
  border-color: currentcolor;
  border-image: none;
  cursor: pointer;
  transition: 0.25s;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  box-shadow: rgba(0, 67, 166, 0.25) 0px 6px 18px;
}

.mactec-btn-primary:hover {
  background: linear-gradient(135deg, rgb(232, 114, 17), rgb(184, 131, 42));
  box-shadow: rgba(209, 157, 64, 0.35) 0px 8px 22px;
  transform: translateY(-2px);
  color: rgb(255, 255, 255);
}

.mactec-btn-primary.btn-large {
  width: 100%;
  padding: 16px 24px;
  font-size: 17px;
}

.mactec-btn-primary.is-submitting {
  cursor: wait;
  opacity: 0.82;
  transform: none;
}

.mactec-form-spinner {
  width: 18px;
  height: 18px;
  border: 2px solid rgba(255, 255, 255, 0.42);
  border-top-color: #ffffff;
  border-radius: 50%;
  animation: mactec-form-spin 0.75s linear infinite;
}

@keyframes mactec-form-spin {
  to { transform: rotate(360deg); }
}

.mactec-contact-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
}

@media (max-width: 991px) {
.mactec-contact-grid {
  grid-template-columns: 1fr;
  gap: 40px;
}
}

.mactec-contact-grid .mactec-office-card {
  background: rgb(255, 255, 255);
  border-radius: 16px;
  padding: 28px 30px;
  border: 1px solid rgb(226, 232, 240);
  box-shadow: rgba(11, 30, 54, 0.06) 0px 4px 20px;
  display: flex;
  flex-direction: column;
  margin-bottom: 24px;
  transition: transform 0.25s, box-shadow 0.25s, border-color 0.25s;
}

.mactec-contact-grid .mactec-office-card:hover {
  transform: translateY(-3px);
  box-shadow: rgba(11, 30, 54, 0.1) 0px 12px 32px;
  border-color: rgb(203, 213, 225);
}

.mactec-office-card-header {
  display: flex;
  flex-direction: column;
  margin-bottom: 6px;
}

.mactec-office-top-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.mactec-office-badge {
  display: inline-flex;
  align-items: center;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  padding: 4px 10px;
  border-radius: 6px;
  text-transform: uppercase;
  line-height: 1.2;
  color: rgb(255, 255, 255);
  background: rgb(0, 67, 166);
}

.mactec-office-badge.badge-usa {
  background: rgb(0, 67, 166);
  color: rgb(255, 255, 255);
}

.mactec-office-badge.badge-india {
  background: rgb(232, 114, 17);
  color: rgb(255, 255, 255);
}

.mactec-office-city {
  font-size: 21px;
  font-weight: 800;
  color: rgb(11, 30, 54);
  margin: 0px;
  line-height: 1.25;
}

.mactec-office-role {
  font-size: 11px;
  font-weight: 700;
  color: rgb(100, 116, 139);
  background: rgb(248, 250, 252);
  border: 1px solid rgb(226, 232, 240);
  padding: 4px 10px;
  border-radius: 50px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  white-space: nowrap;
}

.mactec-office-company {
  font-size: 13px;
  font-weight: 700;
  color: rgb(232, 114, 17);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  margin-bottom: 16px;
}

.mactec-office-details {
  list-style: none;
  padding: 16px 0px 0px;
  margin: 0px;
  border-top: 1px solid rgb(241, 245, 249);
  display: flex;
  flex-direction: column;
  gap: 13px;
}

.mactec-office-details li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-size: 14.5px;
  color: rgb(51, 65, 85);
  line-height: 1.55;
}

.mactec-office-icon {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: rgba(209, 157, 64, 0.1);
  border: 1px solid rgba(209, 157, 64, 0.22);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: rgb(232, 114, 17);
  margin-top: 1px;
}

.mactec-office-detail-text {
  flex-grow: 1;
  word-break: break-word;
}

.mactec-office-detail-text a {
  color: rgb(11, 30, 54);
  font-weight: 600;
  text-decoration: none;
  transition: color 0.2s;
}

.mactec-office-detail-text a:hover {
  color: rgb(0, 67, 166);
  text-decoration: underline;
}

@media (max-width: 576px) {
.mactec-contact-grid .mactec-office-card {
  padding: 22px 18px;
}

.mactec-office-top-row {
  flex-wrap: wrap;
  gap: 8px;
}

.mactec-office-role {
  font-size: 10px;
  padding: 3px 8px;
  white-space: normal;
}

.mactec-office-city {
  font-size: 19px;
}
}

.mactec-location-box .mactec-item-img-wrap {
  width: 100%;
  height: 280px;
  margin: 0px;
  border-radius: 0px;
  overflow: hidden;
  background: rgb(11, 30, 54);
}

.mactec-location-box .mactec-item-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.35s;
}

.mactec-loc-slider-wrap {
  position: relative;
  width: 100%;
  height: 280px;
  overflow: hidden;
}

.mactec-loc-slider-track {
  position: relative;
  width: 100%;
  height: 100%;
}

.mactec-loc-slide {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.7s cubic-bezier(0.4, 0, 0.2, 1), transform 0.7s cubic-bezier(0.4, 0, 0.2, 1);
  transform: scale(1.03);
  z-index: 1;
}

.mactec-loc-slide.active {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
  z-index: 2;
}

.mactec-loc-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.mactec-loc-slider-wrap .mactec-loc-status-pill {
  z-index: 10;
}

.mactec-slider-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(11, 30, 54, 0.7);
  backdrop-filter: blur(4px);
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: rgb(255, 255, 255);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 8;
  opacity: 0;
  transition: opacity 0.25s, background 0.2s, transform 0.2s;
  padding: 0px;
}

.mactec-loc-slider-wrap:hover .mactec-slider-nav {
  opacity: 0.9;
}

.mactec-slider-nav:hover {
  background: rgb(0, 67, 166);
  border-color: rgb(56, 189, 248);
  transform: translateY(-50%) scale(1.08);
  opacity: 1 !important;
}

.mactec-slider-nav.prev {
  left: 12px;
}

.mactec-slider-nav.next {
  right: 12px;
}

.mactec-slider-dots {
  position: absolute;
  bottom: 12px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 7px;
  z-index: 9;
  padding: 5px 12px;
  border-radius: 20px;
  background: rgba(11, 30, 54, 0.6);
  backdrop-filter: blur(4px);
  border: 1px solid rgba(255, 255, 255, 0.15);
}

.mactec-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.4);
  cursor: pointer;
  transition: 0.3s;
}

.mactec-dot.active {
  width: 24px;
  border-radius: 12px;
  background: rgb(56, 189, 248);
  box-shadow: rgba(56, 189, 248, 0.9) 0px 0px 10px;
}

@media (max-width: 575px) {
.mactec-location-box .mactec-item-img-wrap,
 .mactec-loc-slider-wrap {
  height: 230px !important;
}

.mactec-slider-nav {
  opacity: 0.8;
}
}

.home-layout .layout-block.section-one-partner-every-location-2,
 .layout-block.section-one-partner-every-location-2 {
  --width: 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  align-self: stretch !important;
}

.home-layout .layout-block.heading-one-partner-every-location,
 .layout-block.heading-one-partner-every-location {
  width: 100% !important;
  max-width: 100% !important;
}

.mactec-items-grid.single-item-active {
  min-height: calc(-160px + 100vh);
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
}

.mactec-items-grid.single-item-active > .mactec-item-card {
  display: none !important;
}

.mactec-items-grid.single-item-active > .mactec-item-card.is-active {
  animation: 0.35s ease-out 0s 1 normal none running mactecCardFadeIn;
  display: flex !important;
  min-height: calc(-180px + 100vh) !important;
  width: 100% !important;
  margin-bottom: 24px !important;
}

@media (min-width: 992px) {
.mactec-items-grid.single-item-active > .mactec-item-card.is-active {
  flex-direction: row !important;
  align-items: stretch !important;
}

.mactec-items-grid.single-item-active > .mactec-item-card.is-active .mactec-item-img-wrap {
  flex: 0 0 45% !important;
  width: 45% !important;
  min-width: 45% !important;
  min-height: 100% !important;
  height: auto !important;
  position: relative !important;
}

.mactec-items-grid.single-item-active > .mactec-item-card.is-active .mactec-item-content {
  flex: 1 1 0% !important;
  padding: 44px 48px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

.mactec-items-grid.single-item-active > .mactec-item-card.is-active .mactec-item-title {
  font-size: 26px !important;
  line-height: 1.25 !important;
}
}

@media (max-width: 991px) {
.mactec-items-grid.single-item-active > .mactec-item-card.is-active {
  flex-direction: column !important;
  min-height: auto !important;
}

.mactec-items-grid.single-item-active > .mactec-item-card.is-active .mactec-item-img-wrap {
  flex: 0 0 auto !important;
  width: 100% !important;
  height: 320px !important;
  min-height: 320px !important;
}

.mactec-items-grid.single-item-active > .mactec-item-card.is-active .mactec-item-content {
  padding: 32px 24px !important;
}
}

.mactec-filter-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  background: rgb(255, 255, 255);
  border-width: 1px 1px 1px 5px;
  border-style: solid;
  border-color: rgb(220, 228, 238) rgb(220, 228, 238) rgb(220, 228, 238) rgb(0, 67, 166);
  border-image: none;
  border-radius: 12px;
  padding: 14px 22px;
  margin-bottom: 24px;
  box-shadow: rgba(0, 43, 107, 0.06) 0px 4px 16px;
  animation: 0.3s ease-out 0s 1 normal none running mactecCardFadeIn;
}

.mactec-filter-info {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.mactec-filter-badge {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 6px;
  background: rgb(234, 241, 252);
  color: rgb(0, 67, 166);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.mactec-filter-name {
  font-size: 18px;
  font-weight: 800;
  color: rgb(12, 26, 48);
}

.mactec-filter-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.mactec-btn-nav {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 14px;
  border-radius: 8px;
  border: 1px solid rgb(203, 213, 225);
  background: rgb(255, 255, 255);
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  text-decoration: none;
  transition: 0.2s;
  color: rgb(30, 41, 59) !important;
}

.mactec-btn-nav:hover {
  background: rgb(241, 245, 249);
  border-color: rgb(0, 67, 166);
  color: rgb(0, 67, 166) !important;
}

.mactec-btn-view-all {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 18px;
  border-radius: 8px;
  background: rgb(0, 67, 166);
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  border-width: medium;
  border-style: none;
  border-color: currentcolor;
  border-image: none;
  cursor: pointer;
  transition: background 0.2s, transform 0.15s;
  color: rgb(255, 255, 255) !important;
}

.mactec-btn-view-all:hover {
  background: rgb(0, 51, 128);
  transform: translateY(-1px);
  color: rgb(255, 255, 255) !important;
}

.mactec-single-actions {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px solid rgb(226, 232, 240);
  flex-wrap: wrap;
}

.mactec-action-btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 22px;
  border-radius: 8px;
  background: rgb(252, 119, 17);
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
  color: rgb(255, 255, 255) !important;
}

.mactec-action-btn-primary:hover {
  background: rgb(224, 99, 6);
  transform: translateY(-1px);
  color: rgb(255, 255, 255) !important;
}

.mactec-action-btn-secondary {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 18px;
  border-radius: 8px;
  border: 1px solid rgb(203, 213, 225);
  background: rgb(255, 255, 255);
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  cursor: pointer;
  transition: 0.2s;
  color: rgb(51, 65, 85) !important;
}

.mactec-action-btn-secondary:hover {
  background: rgb(248, 250, 252);
  border-color: rgb(0, 67, 166);
  color: rgb(0, 67, 166) !important;
}

.mactec-scroll-top {
  position: fixed !important;
  bottom: 30px !important;
  right: 30px !important;
  width: 48px !important;
  height: 48px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, rgb(0, 67, 166) 0%, rgb(0, 43, 107) 100%) !important;
  color: rgb(255, 255, 255) !important;
  border: 2px solid rgba(255, 255, 255, 0.25) !important;
  box-shadow: rgba(0, 43, 107, 0.3) 0px 8px 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 99998 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(20px) scale(0.85) !important;
  transition: opacity 0.3s, transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.3s, background 0.25s, box-shadow 0.25s !important;
  outline: none !important;
  padding: 0px !important;
}

.mactec-scroll-top.is-visible {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0px) scale(1) !important;
}

.mactec-scroll-top:hover {
  background: linear-gradient(135deg, rgb(252, 119, 17) 0%, rgb(216, 92, 0) 100%) !important;
  transform: translateY(-4px) scale(1.08) !important;
  box-shadow: rgba(252, 119, 17, 0.45) 0px 12px 28px !important;
  color: rgb(255, 255, 255) !important;
}

.mactec-scroll-top:active {
  transform: translateY(-1px) scale(0.96) !important;
}

.mactec-scroll-top svg {
  width: 22px !important;
  height: 22px !important;
  stroke: currentcolor !important;
  stroke-width: 2.5 !important;
  fill: none !important;
  transition: transform 0.2s !important;
}

.mactec-scroll-top:hover svg {
  transform: translateY(-2px) !important;
}

@media (max-width: 767px) {
.mactec-scroll-top {
  bottom: 20px !important;
  right: 20px !important;
  width: 42px !important;
  height: 42px !important;
}

.mactec-scroll-top svg {
  width: 18px !important;
  height: 18px !important;
}
}

/*
 * The exported pages retain the animation marker that WordPress/Elementor
 * normally removes after its frontend runtime initializes. This static build
 * intentionally does not load that runtime, so without this fallback every
 * marked content block remains hidden forever.
 */
.ui-invisible,
footer.mactec-footer .footer-quick-links,
footer.mactec-footer .ui-invisible {
  visibility: visible !important;
  opacity: 1 !important;
}

/* Static-build repairs for the homepage components previously supplied by
   the page-builder runtime. */
@font-face {
  font-family: "elementskit";
  src: url("../fonts/elementskit.woff") format("woff");
  font-display: block;
}

.icon {
  /* Icon codepoints in the exported markup are defined by component.woff.
     Using elementskit.woff renders missing-glyph squares instead. */
  font-family: component !important;
  font-style: normal;
  font-weight: normal;
  line-height: 1;
}

/* Preserve the photographic background and give text a dependable contrast
   layer now that lazy-loading scripts are no longer present. */
.home-layout .section-why-leading-companies-choose {
  position: relative;
  isolation: isolate;
  background-color: #073a83 !important;
  background-image: linear-gradient(100deg, rgba(0, 43, 107, 0.88), rgba(0, 67, 166, 0.7)), url("../images/mactec/security.webp") !important;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.home-layout .section-why-leading-companies-choose::before {
  content: none !important;
}

.home-layout .section-why-leading-companies-choose .ui-image-box-title,
.home-layout .section-why-leading-companies-choose .ui-image-box-description {
  color: #ffffff !important;
}

.home-layout .section-why-leading-companies-choose .ui-image-carousel-wrapper {
  padding-inline: 34px;
}

.home-layout .section-why-leading-companies-choose .swiper-slide {
  flex: 0 0 calc(100% / 7) !important;
  max-width: calc(100% / 7) !important;
  padding: 6px;
  box-sizing: border-box;
}

.home-layout .section-why-leading-companies-choose .swiper-slide-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 82px;
  padding: 12px;
  background: #ffffff;
  border-radius: 10px;
}

.home-layout .posts-8-high-risk-metro .ui-post__thumbnail {
  aspect-ratio: 16 / 9;
  height: auto;
  padding-bottom: 0 !important;
}

.home-layout .posts-8-high-risk-metro .ui-post__thumbnail img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}

.home-layout .posts-8-high-risk-metro .ui-post__thumbnail__link {
  margin-bottom: 0 !important;
}

@media (max-width: 767px) {
  .home-layout .section-why-leading-companies-choose .swiper-slide {
    flex-basis: 50% !important;
    max-width: 50% !important;
  }
}

.partner-logo-slider {
  overflow: visible !important;
}

.partner-logo-slider .partner-slider-viewport {
  overflow: hidden !important;
  width: 100% !important;
}

body .site-main,
 main.site-main {
  max-width: 100% !important;
  width: 100% !important;
  margin-inline: 0px !important;
  padding-left: 0px !important;
  padding-right: 0px !important;
}

.mactec-world-map-container {
  background: radial-gradient(circle at 50% 20%, rgb(13, 34, 58) 0%, rgb(7, 21, 38) 100%);
  border: 1px solid rgba(56, 189, 248, 0.25);
  border-radius: 16px;
  padding: 24px 24px 20px;
  margin: 0px 0px 32px;
  box-shadow: rgba(7, 21, 38, 0.16) 0px 16px 40px;
  position: relative;
  overflow: hidden;
}

.mactec-world-map-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 20px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.mactec-map-title-box {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}

.mactec-map-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: rgba(0, 67, 166, 0.45);
  border: 1px solid rgba(56, 189, 248, 0.4);
  color: rgb(56, 189, 248);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  padding: 4px 12px;
  border-radius: 999px;
  text-transform: uppercase;
}

.mactec-live-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: rgb(56, 189, 248);
  box-shadow: rgb(56, 189, 248) 0px 0px 8px;
  animation: 1.8s ease 0s infinite normal none running mactec-pulse;
}

.mactec-map-heading {
  margin: 0px;
  font-size: 20px;
  font-weight: 800;
  letter-spacing: -0.01em;
  color: rgb(255, 255, 255) !important;
}

.mactec-map-pills {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.mactec-map-pill {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 6px 12px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  font-size: 12px;
  color: rgb(226, 232, 240);
}

.mactec-map-pill .dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
}

.mactec-map-pill.usa .dot {
  background: rgb(56, 189, 248);
  box-shadow: rgb(56, 189, 248) 0px 0px 6px;
}

.mactec-map-pill.global .dot {
  background: rgb(251, 191, 36);
  box-shadow: rgb(251, 191, 36) 0px 0px 6px;
}

.mactec-map-pill.upcoming .dot {
  background: rgb(168, 85, 247);
  box-shadow: rgb(168, 85, 247) 0px 0px 6px;
}

.mactec-map-pill .label {
  font-weight: 700;
  color: rgb(255, 255, 255);
}

.mactec-map-pill .val {
  color: rgb(148, 163, 184);
  font-family: monospace;
  font-size: 11.5px;
}

.mactec-world-map-viewport {
  width: 100%;
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  background: rgb(8, 22, 40);
}

.mactec-world-map-img {
  width: 100%;
  height: auto;
  display: block;
}

@media (max-width: 768px) {
.mactec-world-map-container {
  padding: 16px 12px 14px !important;
  margin: 0px 0px 24px !important;
  border-radius: 12px !important;
}

.mactec-world-map-header {
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 12px !important;
  padding-bottom: 14px !important;
  margin-bottom: 14px !important;
}

.mactec-map-title-box {
  gap: 8px !important;
  width: 100% !important;
}

.mactec-map-heading {
  font-size: 16.5px !important;
  line-height: 1.3 !important;
}

.mactec-map-pills {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  width: 100% !important;
}

.mactec-map-pill {
  width: 100% !important;
  box-sizing: border-box !important;
  justify-content: flex-start !important;
  padding: 6px 10px !important;
  font-size: 11px !important;
}

.mactec-world-map-viewport {
  border-radius: 8px !important;
}
}

html,
 body {
  position: relative;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

body .site-main,
 main.site-main {
  max-width: 100% !important;
  overflow-x: hidden !important;
}

@media (max-width: 900px) {
.mactec-locations-stat-strip {
  grid-template-columns: 1fr !important;
  gap: 14px !important;
  margin-bottom: 28px !important;
}
}

@media (max-width: 767px) {
.mactec-page-section {
  padding: 44px 16px !important;
}

.mactec-page-hero {
  padding: 56px 16px 40px !important;
}

.mactec-hero-title {
  font-size: 28px !important;
  line-height: 1.25 !important;
}

.mactec-hero-subtitle {
  font-size: 15px !important;
  line-height: 1.55 !important;
}

.mactec-section-header {
  margin-bottom: 28px !important;
}

.mactec-section-title {
  font-size: 24px !important;
  line-height: 1.3 !important;
  word-break: break-word !important;
  overflow-wrap: break-word !important;
}

.mactec-section-desc {
  font-size: 14.5px !important;
  line-height: 1.55 !important;
}

.mactec-tabs-container {
  border-radius: 12px !important;
  margin-top: 0px !important;
}

.mactec-tab-nav {
  display: flex !important;
  overflow-x: auto !important;
  scrollbar-width: none !important;
  background: rgb(248, 250, 252) !important;
  border-bottom: 2px solid rgb(226, 232, 240) !important;
  width: 100% !important;
}

.mactec-tab-nav::-webkit-scrollbar {
  display: none !important;
}

.mactec-tab-btn {
  flex: 1 0 auto !important;
  padding: 13px 14px !important;
  font-size: 13.5px !important;
  white-space: nowrap !important;
  text-align: center !important;
}

.mactec-location-card-grid {
  grid-template-columns: 1fr !important;
  gap: 24px !important;
  margin-top: 20px !important;
  padding: 16px 12px !important;
}

.mactec-location-box {
  border-radius: 12px !important;
}

.mactec-loc-card-body {
  padding: 20px 16px !important;
}

.mactec-loc-city {
  font-size: 20px !important;
}

.mactec-loc-card-actions {
  flex-direction: column !important;
  gap: 10px !important;
  width: 100% !important;
}

.mactec-loc-act-btn {
  width: 100% !important;
  padding: 12px 16px !important;
  font-size: 13.5px !important;
}

.mactec-location-box .mactec-item-img-wrap,
 .mactec-loc-slider-wrap {
  height: 240px !important;
}

.mactec-slider-nav {
  opacity: 0.85 !important;
  width: 32px !important;
  height: 32px !important;
}

.mactec-slider-dots {
  bottom: 8px !important;
  padding: 4px 10px !important;
}

.mactec-synergy-wrap {
  margin-top: 32px !important;
  padding: 24px 16px !important;
  border-radius: 12px !important;
}

.mactec-synergy-header h3 {
  font-size: 20px !important;
  line-height: 1.3 !important;
}

.mactec-synergy-header p {
  font-size: 13.5px !important;
}

.mactec-synergy-grid {
  grid-template-columns: 1fr !important;
  gap: 14px !important;
}

.mactec-synergy-item {
  padding: 18px 16px !important;
}

.mactec-topbar-container {
  padding: 8px 16px !important;
  font-size: 11.5px !important;
}
}

@media (max-width: 480px) {
.mactec-tab-btn {
  padding: 12px 10px !important;
  font-size: 12.5px !important;
}

.mactec-location-box .mactec-item-img-wrap,
 .mactec-loc-slider-wrap {
  height: 220px !important;
}
}

@media (max-width: 767px) {
.mactec-topbar-wrapper,
 .header-layout .layout-block.header-info-mactecglobal-com,
 .layout-block.header-info-mactecglobal-com {
  padding: 5px 12px !important;
  min-height: 36px !important;
  width: 100% !important;
}

.mactec-topbar-container,
 .header-info-mactecglobal-com > .container-inner {
  display: flex !important;
  flex-flow: row !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 100% !important;
  gap: 6px !important;
  min-height: 36px !important;
  margin: 0px !important;
  padding: 0px !important;
}

.mactec-topbar-left,
 .mactec-topbar-right {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  flex: 0 1 auto !important;
  min-width: 0px !important;
  margin: 0px !important;
  padding: 0px !important;
  gap: 4px !important;
}

.mactec-topbar-item {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  font-size: clamp(10px, 2.75vw, 12px) !important;
  color: rgb(255, 255, 255) !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  line-height: 1 !important;
}

.mactec-topbar-item svg,
 .mactec-icon {
  width: 12px !important;
  height: 12px !important;
  flex-shrink: 0 !important;
}
}

@media (max-width: 991px) {
.header-layout .layout-block.header,
 .layout-block.header {
  padding: 0px !important;
  width: 100% !important;
}

.header-layout .layout-block.header > .container-inner,
 .layout-block.header > .container-inner {
  display: flex !important;
  flex-flow: row !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 8px 16px !important;
  margin: 0px !important;
  box-sizing: border-box !important;
}

.header-layout .layout-block.header-2,
 .layout-block.header-2 {
  width: auto !important;
  max-width: none !important;
  flex: 0 0 auto !important;
  margin: 0px !important;
  padding: 0px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

.header-layout .layout-block.image-image,
 .layout-block.image-image {
  margin: 0px !important;
  padding: 0px !important;
  display: flex !important;
  align-items: center !important;
}

.header-layout .layout-block.image-image img,
 .layout-block.image-image img {
  max-height: 42px !important;
  width: auto !important;
  object-fit: contain !important;
  display: block !important;
}

.header-layout .layout-block.header-home,
 .layout-block.header-home {
  width: auto !important;
  max-width: none !important;
  flex: 0 0 auto !important;
  margin: 0px 0px 0px auto !important;
  padding: 0px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
}

.header-layout .layout-block.nav-menu-home,
 .layout-block.nav-menu-home {
  width: auto !important;
  margin: 0px !important;
  display: flex !important;
  justify-content: flex-end !important;
}

.header-layout .layout-block.nav-menu-home .ui-menu-toggle,
 .ui-menu-toggle {
  margin: 0px !important;
  padding: 6px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border-width: medium !important;
  border-style: none !important;
  border-color: currentcolor !important;
  border-image: none !important;
  cursor: pointer !important;
  color: var(--mactec-navy, #0043a6) !important;
  width: 44px !important;
  height: 44px !important;
}

.ui-menu-toggle svg {
  width: 28px !important;
  height: 28px !important;
  fill: var(--mactec-navy, #0043a6) !important;
}

.ui-nav-menu--dropdown.ui-nav-menu__container {
  display: none !important;
}
}

.mactec-drawer-overlay {
  position: fixed;
  inset: 0px;
  background: rgba(15, 23, 42, 0.6);
  backdrop-filter: blur(3px);
  z-index: 99998;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.35s, visibility 0.35s;
  pointer-events: none;
}

.mactec-drawer-overlay.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.mactec-mobile-drawer {
  position: fixed;
  top: 0px;
  right: 0px;
  bottom: 0px;
  width: min(340px, 86vw);
  height: 100dvh;
  background: rgb(255, 255, 255);
  z-index: 99999;
  box-shadow: rgba(0, 0, 0, 0.25) -8px 0px 32px;
  display: flex;
  flex-direction: column;
  transform: translateX(105%);
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.35s;
  visibility: hidden;
  box-sizing: border-box;
}

.mactec-mobile-drawer.is-open {
  transform: translateX(0px);
  visibility: visible;
}

.mactec-drawer-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  background: rgb(255, 255, 255);
  border-bottom: 1px solid rgb(229, 231, 235);
  flex-shrink: 0;
}

.mactec-drawer-logo img {
  display: block;
  max-height: 38px;
  width: auto;
}

.mactec-drawer-close {
  background: rgb(241, 245, 249);
  border-width: medium;
  border-style: none;
  border-color: currentcolor;
  border-image: none;
  border-radius: 8px;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgb(15, 23, 42);
  cursor: pointer;
  transition: background 0.2s, color 0.2s, transform 0.2s;
  padding: 0px;
}

.mactec-drawer-close:hover,
 .mactec-drawer-close:focus {
  background: rgb(226, 232, 240);
  color: rgb(220, 38, 38);
  transform: scale(1.05);
}

.mactec-drawer-close svg {
  width: 22px;
  height: 22px;
  stroke: currentcolor;
}

.mactec-drawer-body {
  flex: 1 1 auto;
  overflow-y: auto;
  padding: 10px 0px;
}

.mactec-mobile-nav {
  list-style: none !important;
  margin: 0px !important;
  padding: 0px !important;
}

.mactec-mobile-nav-item {
  border-bottom: 1px solid rgb(241, 245, 249);
  margin: 0px !important;
  padding: 0px !important;
}

.mactec-mobile-nav-link {
  display: block;
  padding: 13px 20px;
  font-size: 15.5px;
  font-weight: 600;
  transition: color 0.2s, background 0.2s;
  color: rgb(30, 41, 59) !important;
  text-decoration: none !important;
}

.mactec-mobile-nav-link:hover,
 .mactec-mobile-nav-item.is-active > .mactec-mobile-nav-link,
 .mactec-mobile-nav-item.is-active > .mactec-mobile-nav-row > .mactec-mobile-nav-link {
  background: rgb(248, 250, 252);
  color: var(--mactec-navy, #0043a6) !important;
}

.mactec-mobile-nav-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.mactec-mobile-nav-row .mactec-mobile-nav-link {
  flex: 1 1 auto;
}

.mactec-accordion-toggle {
  background: transparent;
  border-width: medium;
  border-style: none;
  border-color: currentcolor;
  border-image: none;
  padding: 13px 20px;
  cursor: pointer;
  color: rgb(100, 116, 139);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 0.2s;
}

.mactec-accordion-toggle svg {
  transition: transform 0.25s;
}

.mactec-mobile-nav-item.is-expanded > .mactec-mobile-nav-row .mactec-accordion-toggle svg {
  transform: rotate(180deg);
}

.mactec-mobile-submenu {
  background: rgb(248, 250, 252);
  display: none;
  list-style: none !important;
  margin: 0px !important;
  padding: 4px 0px 10px !important;
}

.mactec-mobile-nav-item.is-expanded > .mactec-mobile-submenu {
  display: block;
}

.mactec-mobile-submenu li a {
  display: block;
  padding: 9px 20px 9px 34px;
  font-size: 13.5px;
  font-weight: 500;
  transition: color 0.2s;
  color: rgb(71, 85, 105) !important;
  text-decoration: none !important;
}

.mactec-mobile-submenu li a:hover {
  color: var(--mactec-navy, #0043a6) !important;
}

.mactec-mobile-submenu li.view-all a {
  font-weight: 700;
  color: var(--mactec-gold, #fc7711) !important;
}

.mactec-drawer-footer {
  flex-shrink: 0;
  background: rgb(248, 250, 252);
  border-top: 1px solid rgb(226, 232, 240);
  padding: 16px 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.mactec-drawer-contact-title {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: rgb(148, 163, 184);
  margin-bottom: 2px;
}

.mactec-drawer-contact-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 12px;
  background: rgb(255, 255, 255);
  border: 1px solid rgb(226, 232, 240);
  border-radius: 8px;
  transition: border-color 0.2s, transform 0.15s;
  text-decoration: none !important;
}

.mactec-drawer-contact-item:hover {
  border-color: var(--mactec-navy, #0043a6);
  transform: translateY(-1px);
}

.mactec-drawer-contact-icon {
  width: 32px;
  height: 32px;
  border-radius: 6px;
  background: rgba(0, 67, 166, 0.1);
  color: var(--mactec-navy, #0043a6);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.mactec-drawer-contact-icon svg {
  fill: currentcolor;
}

.mactec-drawer-contact-info {
  display: flex;
  flex-direction: column;
}

.mactec-drawer-contact-label {
  font-size: 11px;
  color: rgb(100, 116, 139);
  font-weight: 500;
}

.mactec-drawer-contact-val {
  font-size: 13.5px;
  color: rgb(15, 23, 42);
  font-weight: 700;
}

.mactec-drawer-quote-btn {
  display: block;
  text-align: center;
  background: var(--mactec-gold, #fc7711);
  padding: 11px 16px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 700;
  margin-top: 4px;
  box-shadow: rgba(252, 119, 17, 0.25) 0px 4px 12px;
  transition: background 0.2s, transform 0.15s;
  color: rgb(255, 255, 255) !important;
  text-decoration: none !important;
}

.mactec-drawer-quote-btn:hover {
  background: rgb(230, 102, 6);
  transform: translateY(-1px);
}

@media (max-width: 767px) {
.home-layout .layout-block.section-integrated-security-coordination,
 .layout-block.section-integrated-security-coordination {
  display: flex !important;
  flex-flow: column !important;
  --flex-wrap: nowrap !important;
  width: 100% !important;
  max-width: 100% !important;
  gap: 20px !important;
  padding-inline: 0px !important;
  margin-inline: 0px !important;
  height: auto !important;
  min-height: 0px !important;
  align-items: stretch !important;
}

.home-layout .layout-block.section-integrated-security-coordination > .layout-container,
 .layout-block.section-integrated-security-coordination > .layout-container,
 .home-layout .layout-block.section-integrated-security-coordination-2,
 .home-layout .layout-block.section-waste-recycling-coordination,
 .home-layout .layout-block.section-fire-life-safety-coordination,
 .home-layout .layout-block.section-hvac-services,
 .layout-block.section-integrated-security-coordination-2,
 .layout-block.section-waste-recycling-coordination,
 .layout-block.section-fire-life-safety-coordination,
 .layout-block.section-hvac-services {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0px !important;
  flex: 0 0 auto !important;
  --width: 100% !important;
  --flex-basis: auto !important;
  height: auto !important;
  min-height: 0px !important;
  margin: 0px !important;
  background: rgb(255, 255, 255) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  box-shadow: rgba(20, 32, 71, 0.08) 0px 4px 18px !important;
  border: 1px solid rgba(0, 43, 107, 0.08) !important;
}

.section-integrated-security-coordination .ui-widget-image-box {
  width: 100% !important;
  height: auto !important;
}

.section-integrated-security-coordination .ui-image-box-wrapper {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0px !important;
  text-align: left !important;
}

.section-integrated-security-coordination .ui-image-box-img {
  width: 100% !important;
  max-width: 100% !important;
  height: 200px !important;
  min-height: 200px !important;
  max-height: 200px !important;
  flex: 0 0 200px !important;
  margin: 0px !important;
  overflow: hidden !important;
}

.section-integrated-security-coordination .ui-image-box-img a {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}

.section-integrated-security-coordination .ui-image-box-img img {
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  border-radius: 0px !important;
}

.section-one-strategic-partner-every .section-integrated-security-coordination .ui-widget-image-box .ui-image-box-content,
 .section-integrated-security-coordination .ui-widget-image-box .ui-image-box-content,
 .section-integrated-security-coordination .ui-image-box-content {
  padding: 22px 20px !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0px !important;
  flex: 0 0 auto !important;
  box-sizing: border-box !important;
}

.section-integrated-security-coordination .ui-image-box-title {
  font-size: 19px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
  margin: 0px 0px 10px !important;
  color: var(--mactec-navy, #0043a6) !important;
}

.section-integrated-security-coordination .ui-image-box-title a {
  color: var(--mactec-navy, #0043a6) !important;
}

.section-integrated-security-coordination .ui-image-box-description {
  font-size: 14.5px !important;
  line-height: 1.65 !important;
  color: rgb(71, 85, 105) !important;
  margin: 0px !important;
}
}

@media (max-width: 767px) {
.home-layout .section-industries .indus,
 .home-layout .indus,
 .layout-block.indus,
 .indus {
  display: flex !important;
  flex-direction: column !important;
  grid-template-columns: 1fr !important;
  width: 100% !important;
  max-width: 100% !important;
  gap: 16px !important;
}

.home-layout .section-industries .indus > .layout-container,
 .home-layout .indus > .layout-container,
 .layout-block.indus > .layout-container,
 .indus > .layout-container {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0px !important;
  flex: 0 0 auto !important;
  --width: 100% !important;
  height: auto !important;
  min-height: 0px !important;
  margin: 0px !important;
  box-sizing: border-box !important;
}

.home-layout .section-industries .indus .ui-widget-image-box,
 .home-layout .indus .ui-widget-image-box,
 .indus .ui-widget-image-box {
  width: 100% !important;
  height: auto !important;
}

.home-layout .section-industries .indus .ui-image-box-wrapper,
 .home-layout .indus .ui-image-box-wrapper,
 .indus .ui-image-box-wrapper {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: auto !important;
}

.home-layout .section-industries .indus .ui-image-box-img,
 .home-layout .indus .ui-image-box-img,
 .indus .ui-image-box-img {
  display: block !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 200px !important;
  min-height: 200px !important;
  max-height: 200px !important;
  margin: 0px !important;
}

.home-layout .section-industries .indus .ui-image-box-img img,
 .home-layout .indus .ui-image-box-img img,
 .indus .ui-image-box-img img {
  width: 100% !important;
  height: 200px !important;
  min-height: 200px !important;
  max-height: 200px !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  border-radius: 0px !important;
}

.home-layout .section-industries .indus .ui-image-box-content,
 .home-layout .indus .ui-image-box-content,
 .indus .ui-image-box-content {
  padding: 20px 18px !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: auto !important;
  flex: 0 0 auto !important;
  box-sizing: border-box !important;
}

.home-layout .section-industries .indus .ui-image-box-title,
 .home-layout .indus .ui-image-box-title,
 .indus .ui-image-box-title {
  font-size: 18px !important;
  font-weight: 800 !important;
  margin: 0px 0px 8px !important;
  line-height: 1.3 !important;
}

.home-layout .section-industries .indus .ui-image-box-description,
 .home-layout .indus .ui-image-box-description,
 .indus .ui-image-box-description {
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: rgb(83, 93, 106) !important;
  margin: 0px !important;
}
}

@media (max-width: 767px) {
.home-layout .layout-block.section-streamlined-facility-management-for,
 .layout-block.section-streamlined-facility-management-for {
  --flex-direction: column !important;
  display: flex !important;
  flex-direction: column !important;
}

.home-layout .layout-block.section-streamlined-facility-management-for > .container-inner,
 .layout-block.section-streamlined-facility-management-for > .container-inner {
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
  width: 100% !important;
}

.home-layout .layout-block.section-section-2,
 .layout-block.section-section-2 {
  order: 1 !important;
  width: 100% !important;
  max-width: 100% !important;
  position: relative !important;
  margin-bottom: 34px !important;
}

.home-layout .layout-block.section-streamlined-facility-management-for-2,
 .layout-block.section-streamlined-facility-management-for-2 {
  order: 2 !important;
  width: 100% !important;
  max-width: 100% !important;
}

.home-layout .layout-block.section-streamlined-facility-management-for .image-image-3,
 .layout-block.section-streamlined-facility-management-for .image-image-3 {
  width: 100% !important;
  height: auto !important;
  padding: 0px !important;
  position: relative !important;
  display: block !important;
}

.home-layout .layout-block.section-streamlined-facility-management-for .image-image-3::before,
 .layout-block.section-streamlined-facility-management-for .image-image-3::before {
  display: none !important;
}

.home-layout .layout-block.section-streamlined-facility-management-for .image-image-3 img,
 .layout-block.section-streamlined-facility-management-for .image-image-3 img {
  width: 100% !important;
  height: auto !important;
  min-height: 240px !important;
  max-height: none !important;
  display: block !important;
  object-fit: cover !important;
  border-radius: 16px !important;
  box-shadow: rgba(20, 32, 71, 0.12) 0px 10px 26px !important;
}

.home-layout .layout-block.section-streamlined-facility-management-for .counter-counter,
 .layout-block.section-streamlined-facility-management-for .counter-counter {
  position: absolute !important;
  inset: auto 14px -18px auto !important;
  transform: none !important;
  z-index: 10 !important;
  margin: 0px !important;
  padding: 14px 18px !important;
  border-radius: 16px !important;
  border: 4px solid rgb(255, 255, 255) !important;
  box-shadow: rgba(20, 32, 71, 0.22) 0px 10px 24px !important;
  max-width: calc(100% - 28px) !important;
}

.home-layout .layout-block.section-streamlined-facility-management-for .counter-counter .ui-counter-title {
  font-size: 13px !important;
  line-height: 1.25 !important;
  white-space: nowrap !important;
  margin-bottom: 2px !important;
}

.home-layout .layout-block.section-streamlined-facility-management-for .counter-counter .ui-counter-number-wrapper {
  font-size: 26px !important;
  line-height: 1.1 !important;
}

.home-layout .layout-block.section-section-2 .ui-widget-spacer,
 .layout-block.section-section-2 .ui-widget-spacer {
  display: none !important;
}
}

@keyframes mactecDropdownFadeSlide { 
  0% { opacity: 0; transform: translateY(8px); }
  100% { opacity: 1; transform: translateY(0px); }
}

@keyframes mactecCardFadeIn { 
  0% { opacity: 0; transform: translateY(18px); }
  100% { opacity: 1; transform: translateY(0px); }
}

@keyframes mactec-pulse { 
  0% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.4; transform: scale(1.3); }
  100% { opacity: 1; transform: scale(1); }
}
