/* ==== sectors we work in — 4-per-row card grid ==== */
.sectors {
  padding: 100px 0 90px;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  .sectors {
    padding: 60px 0 30px;
  }
}
.sectors__grid {
  margin-top: 10px;
}
.sectors__card {
  position: relative;
  height: 100%;
  background-color: var(--white);
  border: 1px solid #ececec;
  border-radius: 20px;
  padding: 34px 26px 30px;
  overflow: hidden;
  -webkit-transition: var(--transition);
  transition: var(--transition);
}
.sectors__card:hover {
  border-color: transparent;
  -webkit-box-shadow: var(--shadow);
          box-shadow: var(--shadow);
  -webkit-transform: translateY(-6px);
      -ms-transform: translateY(-6px);
          transform: translateY(-6px);
}
.sectors__card-blob {
  position: absolute;
  top: -34px;
  right: -34px;
  width: 120px;
  height: 120px;
  border-radius: 0 20px 0 100%;
  opacity: 0.16;
  z-index: 0;
  -webkit-transition: var(--transition);
  transition: var(--transition);
}
.sectors__card:hover .sectors__card-blob {
  opacity: 0.28;
}
.sectors__card-thumb {
  position: relative;
  z-index: 1;
  width: 62px;
  height: 62px;
  border-radius: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 22px;
  -webkit-transition: var(--transition);
  transition: var(--transition);
}
.sectors__card-thumb i {
  font-size: 26px;
}
.sectors__card-content {
  position: relative;
  z-index: 1;
}
.sectors__card-content h6 {
  font-weight: 800;
  font-size: 15px;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--secondary-color);
  line-height: 22px;
  min-height: 44px;
}
.sectors__card-content h6 a {
  color: inherit;
}
.sectors__card-content h6:hover a {
  color: var(--hover-color);
}
.sectors__card-content p {
  font-size: 14px;
  line-height: 24px;
  margin-top: 12px;
  min-height: 72px;
}
.sectors__card-cta {
  position: relative;
  z-index: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  margin-top: 18px;
  padding: 6px 6px 6px 18px;
  border-radius: 30px;
  border: 1.5px solid;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  -webkit-transition: var(--transition);
  transition: var(--transition);
}
.sectors__card-cta-arrow {
  width: 26px;
  height: 26px;
  min-width: 26px;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: var(--white);
  font-size: 11px;
  -webkit-transition: var(--transition);
  transition: var(--transition);
}
.sectors__card-cta:hover {
  -webkit-transform: translateX(2px);
      -ms-transform: translateX(2px);
          transform: translateX(2px);
}

/* color variants */
.sectors__card--c1 .sectors__card-blob,
.sectors__card--c1 .sectors__card-thumb,
.sectors__card--c1 .sectors__card-cta-arrow {
  background-color: #046a58;
}
.sectors__card--c1 .sectors__card-thumb i,
.sectors__card--c1 .sectors__card-cta {
  color: #046a58;
  border-color: #046a58;
}
.sectors__card--c1 .sectors__card-thumb {
  background-color: rgba(4, 106, 88, 0.12);
}

.sectors__card--c2 .sectors__card-blob,
.sectors__card--c2 .sectors__card-thumb,
.sectors__card--c2 .sectors__card-cta-arrow {
  background-color: #ffc107;
}
.sectors__card--c2 .sectors__card-thumb i,
.sectors__card--c2 .sectors__card-cta {
  color: #b3810a;
  border-color: #ffc107;
}
.sectors__card--c2 .sectors__card-thumb {
  background-color: rgba(255, 193, 7, 0.16);
}

.sectors__card--c3 .sectors__card-blob,
.sectors__card--c3 .sectors__card-thumb,
.sectors__card--c3 .sectors__card-cta-arrow {
  background-color: #ff5528;
}
.sectors__card--c3 .sectors__card-thumb i,
.sectors__card--c3 .sectors__card-cta {
  color: #ff5528;
  border-color: #ff5528;
}
.sectors__card--c3 .sectors__card-thumb {
  background-color: rgba(255, 85, 40, 0.12);
}

.sectors__card--c4 .sectors__card-blob,
.sectors__card--c4 .sectors__card-thumb,
.sectors__card--c4 .sectors__card-cta-arrow {
  background-color: #122f2a;
}
.sectors__card--c4 .sectors__card-thumb i,
.sectors__card--c4 .sectors__card-cta {
  color: #122f2a;
  border-color: #122f2a;
}
.sectors__card--c4 .sectors__card-thumb {
  background-color: rgba(18, 47, 42, 0.1);
}

.sectors__card--c5 .sectors__card-blob,
.sectors__card--c5 .sectors__card-thumb,
.sectors__card--c5 .sectors__card-cta-arrow {
  background-color: #8b5cf6;
}
.sectors__card--c5 .sectors__card-thumb i,
.sectors__card--c5 .sectors__card-cta {
  color: #8b5cf6;
  border-color: #8b5cf6;
}
.sectors__card--c5 .sectors__card-thumb {
  background-color: rgba(139, 92, 246, 0.12);
}

.sectors__card--c6 .sectors__card-blob,
.sectors__card--c6 .sectors__card-thumb,
.sectors__card--c6 .sectors__card-cta-arrow {
  background-color: #ff6b81;
}
.sectors__card--c6 .sectors__card-thumb i,
.sectors__card--c6 .sectors__card-cta {
  color: #ff6b81;
  border-color: #ff6b81;
}
.sectors__card--c6 .sectors__card-thumb {
  background-color: rgba(255, 107, 129, 0.12);
}

.sectors__card:hover .sectors__card-cta {
  color: var(--white);
}
.sectors__card--c1:hover .sectors__card-cta {
  background-color: #046a58;
}
.sectors__card--c2:hover .sectors__card-cta {
  background-color: #ffc107;
  color: #4a3600;
}
.sectors__card--c3:hover .sectors__card-cta {
  background-color: #ff5528;
}
.sectors__card--c4:hover .sectors__card-cta {
  background-color: #122f2a;
}
.sectors__card--c5:hover .sectors__card-cta {
  background-color: #8b5cf6;
}
.sectors__card--c6:hover .sectors__card-cta {
  background-color: #ff6b81;
}

/* ==== sectors mega menu (header nav) ==== */
/* icon chip — unscoped so it also renders correctly inside the mobile accordion menu */
.mega-sectors__icon {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 30px;
  height: 30px;
  min-width: 30px;
  border-radius: 8px;
  margin-inline-end: 12px;
  font-size: 13px;
}
.mega-sectors__icon--c1 {
  background-color: rgba(4, 106, 88, 0.12);
  color: #046a58;
}
.mega-sectors__icon--c2 {
  background-color: rgba(255, 193, 7, 0.18);
  color: #b3810a;
}
.mega-sectors__icon--c3 {
  background-color: rgba(255, 85, 40, 0.12);
  color: #ff5528;
}
.mega-sectors__icon--c4 {
  background-color: rgba(18, 47, 42, 0.1);
  color: #122f2a;
}
.mega-sectors__icon--c5 {
  background-color: rgba(139, 92, 246, 0.12);
  color: #8b5cf6;
}
.mega-sectors__icon--c6 {
  background-color: rgba(255, 107, 129, 0.12);
  color: #ff6b81;
}

/* desktop mega-panel layout — scoped under .header so mobile accordion keeps its own default styling */
.header .navbar__sub-menu.mega-sectors {
  min-width: 1040px !important;
  max-width: 1040px !important;
  inset-inline-start: 50% !important;
  padding: 24px 0px !important;
  -webkit-transform: translate(-50%, 30px);
      -ms-transform: translate(-50%, 30px);
          transform: translate(-50%, 30px);
  max-height: 78vh;
  overflow: hidden;
}
.header .navbar__item--has-children:hover > .navbar__sub-menu.mega-sectors {
  -webkit-transform: translate(-50%, 0px);
      -ms-transform: translate(-50%, 0px);
          transform: translate(-50%, 0px);
}
.header .navbar__sub-menu.mega-sectors .mega-sectors__title {
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: var(--template-color);
  padding: 0px 28px 16px;
  border-bottom: 1px solid rgba(228, 218, 218, 0.4784313725);
  margin-bottom: 4px;
}
.header .navbar__sub-menu.mega-sectors .mega-sectors__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  padding: 0px !important;
}

/* left column: scrollable list of 22 sectors */
.header .navbar__sub-menu.mega-sectors .mega-sectors__list {
  width: 330px;
  min-width: 330px;
  max-height: calc(78vh - 90px);
  overflow-y: auto;
  padding: 8px 12px;
  border-inline-end: 1px solid rgba(228, 218, 218, 0.4784313725);
}
.header .navbar__sub-menu.mega-sectors a.mega-sectors__list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 9px 10px !important;
  border-bottom: 0px !important;
  border-radius: 8px;
  color: var(--black);
  font-size: 14px;
}
.header .navbar__sub-menu.mega-sectors a.mega-sectors__list-item::before {
  content: none !important;
}
.header .navbar__sub-menu.mega-sectors .mega-sectors__list-text {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.header .navbar__sub-menu.mega-sectors .mega-sectors__list-arrow {
  font-size: 11px;
  opacity: 0;
  color: var(--primary-color);
  -webkit-transition: var(--transition);
  transition: var(--transition);
  -webkit-transform: translateX(-4px);
      -ms-transform: translateX(-4px);
          transform: translateX(-4px);
}
.header .navbar__sub-menu.mega-sectors a.mega-sectors__list-item:hover,
.header .navbar__sub-menu.mega-sectors a.mega-sectors__list-item.active {
  padding-inline-start: 10px !important;
  background-color: #f7f7f5;
}
.header .navbar__sub-menu.mega-sectors a.mega-sectors__list-item:hover .mega-sectors__list-arrow,
.header .navbar__sub-menu.mega-sectors a.mega-sectors__list-item.active .mega-sectors__list-arrow {
  opacity: 1;
  -webkit-transform: translateX(0px);
      -ms-transform: translateX(0px);
          transform: translateX(0px);
}

/* right column: sub-sectors for the hovered / active item */
.header .navbar__sub-menu.mega-sectors .mega-sectors__panel {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  max-height: calc(78vh - 90px);
  overflow-y: auto;
  padding: 4px 28px;
}
.header .navbar__sub-menu.mega-sectors .mega-sectors__sub {
  display: none;
}
.header .navbar__sub-menu.mega-sectors .mega-sectors__sub.active {
  display: block;
}
.header .navbar__sub-menu.mega-sectors .mega-sectors__sub-title {
  font-size: 16px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: var(--primary-color);
  margin-top: 16px;
  margin-bottom: 16px;
}
.header .navbar__sub-menu.mega-sectors .mega-sectors__sub-grid {
  display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2px 20px;
}
.header .navbar__sub-menu.mega-sectors .mega-sectors__sub-grid a {
  padding: 7px 10px !important;
  border-bottom: 0px !important;
  border-radius: 6px;
  font-size: 13.5px;
  line-height: 20px;
  color: var(--template-color);
}
.header .navbar__sub-menu.mega-sectors .mega-sectors__sub-grid a::before {
  content: none !important;
}
.header .navbar__sub-menu.mega-sectors .mega-sectors__sub-grid a:hover {
  padding-inline-start: 10px !important;
  background-color: #f7f7f5;
  color: var(--hover-color);
}

/* ==== reclaim horizontal space in the nav pill so the extra "Sectors" item
   doesn't force the header row to wrap onto separate lines ==== */
.header-secondary .navbar__menu-wrapper {
  gap: 16px;
}
.header-secondary .navbar__menu {
  padding-inline-end: 30px;
}
.header-secondary .navbar__item > a {
  padding-left: 12px;
  padding-right: 12px;
}
.header-secondary .contact-btn {
  padding: 16px 30px;
}
@media only screen and (max-width: 1399px) {
  .header-secondary .navbar__item > a {
    padding-left: 9px;
    padding-right: 9px;
    font-size: 15px;
  }
  .header-secondary .contact-btn {
    padding: 16px 20px;
  }
  .header-secondary .contact-btn::before,
  .header-secondary .contact-btn::after {
    width: 16px;
  }
}
