@charset "UTF-8";

/* =======================================
   VARIABLES
   ======================================= */
/* @import url('https://fonts.googleapis.com/css2?family=Saira:wght@400;500;600;700&display=swap'); */
/* =======================================
   IMPORTS
   ======================================= */
/* =======================================
   SIZES
   ======================================= */
/* =======================================
   FONTS
======================================= */
@font-face {
  font-family: "Font Name Here";
  font-weight: 400;
  font-style: normal;
  src: url(../fonts/Font.ttf) format("ttf"), url(../fonts/Font.woff) format("woff"), url(../fonts/Font.woff2) format("woff2");
}

/* ================================
   HEADER VARIABLES current
   ================================ */
/* ================================
   COMMON HEADER STYLES
   ================================ */
header#header1 {
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
}

header#header1 .main {
  width: 100%;
  display: flex;
  justify-content: center;
}

header#header1 .main .container {
  width: 100%;
  max-width: 1440px;
  height: 98px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px;
  box-sizing: border-box;
}

@media (min-width: 1025px) {
  header#header1 .main .container {
    padding-left: 56px;
    padding-right: 56px;
  }
}

@media (max-width: 1024px) {
  header#header1 .main .container {
    padding: 16px 24px;
  }
}

@media (max-width: 480px) {
  header#header1 .main .container {
    padding: 16px;
  }
}

header#header1 .main .container .logo {
  flex-shrink: 0;
  max-width: 150px;
}

header#header1 .main .container .logo img {
  width: 100%;
  height: auto;
  display: block;
}

@media (max-width: 480px) {
  header#header1 .main .container .logo {
    max-width: 80px;
  }
}

header#header1 .main .container #main-menu {
  flex-shrink: 0;
}

header#header1 .main .container #main-menu ul {
  display: flex;
  gap: 48px;
  list-style: none;
  margin: 0;
  padding: 0;
}

@media (max-width: 1200px) {
  header#header1 .main .container #main-menu ul {
    gap: 32px;
  }
}

header#header1 .main .container #main-menu ul li a {
  font-family: "Saira", sans-serif;
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 2.8px;
  color: #fcfdff;
  text-decoration: none;
  transition: color all 0.2s ease;
  white-space: nowrap;
}

header#header1 .main .container #main-menu ul li a:hover {
  color: #1aa3ff;
}

header#header1 .main .container #mobile-toggle {
  display: none;
  flex-shrink: 0;
}

@media (max-width: 1024px) {
  header#header1 .main .container #mobile-toggle {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 48px;
    height: 48px;
    cursor: pointer;
    border-radius: 100px;
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
  }

  header#header1 .main .container #mobile-toggle img {
    width: 24px;
    height: 24px;
  }
}

/* ================================
   HOME HEADER SPECIFIC
   ================================ */
header#header1.home-header {
  min-height: 745px;
  height: auto;
  background: url("../img/background_hero.webp") no-repeat center/cover;
}

header#header1.home-header #header_content {
  flex: 1 1 auto;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  padding: 0;
}

header#header1.home-header #header_content .container {
  width: 100%;
  max-width: 1440px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  position: relative;
  padding: 0 56px 0 56px;
  box-sizing: border-box;
}

@media (max-width: 1200px) {
  header#header1.home-header #header_content .container {
    padding: 0 40px 0 40px;
  }
}

@media (max-width: 1024px) {
  header#header1.home-header #header_content .container {
    padding: 0 32px 0 32px;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
}

@media (max-width: 768px) {
  header#header1.home-header #header_content .container {
    padding: 0 20px 0 20px;
    gap: 20px;
  }
}

@media (max-width: 480px) {
  header#header1.home-header #header_content .container {
    padding: 0 16px 0 16px;
    gap: 20px;
  }
}

header#header1.home-header #header_content .container .header_left {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  max-width: 518px;
  width: 100%;
  flex-shrink: 0;
  margin-bottom: 187px;
}

@media (max-width: 1024px) {
  header#header1.home-header #header_content .container .header_left {
    max-width: 100%;
    margin-bottom: 0;
  }
}

header#header1.home-header #header_content .container .header_left h1 {
  display: flex;
  flex-direction: column;
  margin: 0 0 24px 0;
  /*  @media (max-width: 768px) {
    .rooted,
    .in-purpose {
      font-size: 56px;
      line-height: 1.05;
    }
    .in-purpose {
      margin-top: 2px;
    }
  }

  @media (max-width: 480px) {
    .rooted,
    .in-purpose {
      font-size: 42px;
      line-height: 1.1;
    }
  } */
}

header#header1.home-header #header_content .container .header_left h1 .rooted,
header#header1.home-header #header_content .container .header_left h1 .in-purpose {
  display: block;
  font-family: "Saira", sans-serif;
  font-size: 72px;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1;
}

header#header1.home-header #header_content .container .header_left h1 .rooted {
  color: #1aa3ff;
}

header#header1.home-header #header_content .container .header_left h1 .in-purpose {
  color: #fcfdff;
}

header#header1.home-header #header_content .container .header_left .header-paragraph {
  font-family: "Saira", sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: #fcfdff;
  margin: 0 0 32px 0;
}

header#header1.home-header #header_content .container .header_left .header-paragraph p {
  margin: 0;
  /* font-size: 16px; */
}

@media (max-width: 480px) {
  header#header1.home-header #header_content .container .header_left .header-paragraph {
    margin-bottom: 24px;
  }
}

header#header1.home-header #header_content .container .header_left .btn-connect {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 12px 24px;
  font-family: "Saira", sans-serif;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2.1px;
  color: #fcfdff;
  border: 1px solid #fcfdff;
  border-radius: 5px;
  background: transparent;
  text-decoration: none;
  transition: all all 0.2s ease;
  /* @media (max-width: 768px) {
    padding: 10px 20px;
    font-size: 13px;
    letter-spacing: 1.5px;
  }

  @media (max-width: 480px) {
    padding: 10px 16px;
    font-size: 12px;
    letter-spacing: 1px;
  } */
}

header#header1.home-header #header_content .container .header_left .btn-connect:hover {
  background: #1aa3ff;
  color: #ffffff;
  border-color: #1aa3ff;
}

header#header1.home-header #header_content .container .header_right {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  flex: 1;
  max-width: 728px;
  width: 100%;
}

@media (max-width: 1024px) {
  header#header1.home-header #header_content .container .header_right {
    max-width: 100%;
    justify-content: center;
    align-self: center;
  }
}

header#header1.home-header #header_content .container .header_right .header-image {
  width: 100%;
  max-width: 728px;
  height: auto;
}

@media (max-width: 1200px) {
  header#header1.home-header #header_content .container .header_right .header-image {
    max-width: 600px;
  }
}

@media (max-width: 1024px) {
  header#header1.home-header #header_content .container .header_right .header-image {
    max-width: 540px;
  }
}

@media (max-width: 768px) {
  header#header1.home-header #header_content .container .header_right .header-image {
    max-width: 400px;
  }
}

@media (max-width: 480px) {
  header#header1.home-header #header_content .container .header_right .header-image {
    max-width: 100%;
  }
}

header#header1.home-header #header_content .container .header_right .header-image img {
  width: 100%;
  height: auto;
  object-fit: contain;
  display: block;
}

@media (max-width: 1024px) {
  header#header1.home-header {
    min-height: 600px;
  }
}

@media (max-width: 768px) {
  header#header1.home-header {
    min-height: 550px;
  }
}

@media (max-width: 480px) {
  header#header1.home-header {
    min-height: 650px;
  }
}

/* ================================
   INNER HEADER SPECIFIC
   ================================ */
header#header1.inner-header {
  position: relative;
  height: 300px;
  background: url("../img/background_hero2.webp") no-repeat center/cover;
}

header#header1.inner-header #title {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 1200px;
  padding: 0 clamp(16px, 5vw, 56px);
  box-sizing: border-box;
  text-align: center;
}

header#header1.inner-header #title .container {
  width: 100%;
}

header#header1.inner-header #title .container h1.inner-page-title {
  color: var(--Neutral-00, #fcfdff);
  font-family: Saira;
  font-size: 72px;
  font-weight: 700;
  line-height: 1.1;
  text-transform: uppercase;
  margin: 0 0 -16px 0;
  display: block;
  text-align: left;
}

@media (max-width: 768px) {
  header#header1.inner-header #title .container h1.inner-page-title {
    margin-bottom: 0;
  }
}

header#header1.inner-header #header_content {
  display: none;
}

@media (max-width: 768px) {
  header#header1.inner-header {
    height: 250px;
  }

  header#header1.inner-header #title {
    bottom: 20px;
  }
}

@media (max-width: 480px) {
  header#header1.inner-header {
    height: 200px;
  }

  header#header1.inner-header #title {
    bottom: 16px;
  }
}

/* ================================
   GLOBAL MOBILE MENU
   ================================ */
@media (max-width: 1024px) {
  #mobile-toggle {
    display: flex !important;
  }

  #main-menu {
    display: none !important;
  }

  #mobile-menu {
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100vh;
    background: rgba(24, 29, 38, 0.65);
    backdrop-filter: blur(30px);
    z-index: 10000;
    transform: translateX(100%);
    transition: transform 0.3s ease;
    overflow-y: auto;
  }

  #mobile-menu.active {
    transform: translateX(0) !important;
  }

  #mobile-menu .mobile-close-container {
    position: absolute;
    top: 25px;
    right: 17px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    width: auto;
    height: auto;
  }

  #mobile-menu .mobile-close {
    width: 48px;
    height: 48px;
    cursor: pointer;
    border-radius: 100px;
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
    display: flex;
    justify-content: center;
    align-items: center;
  }

  #mobile-menu .mobile-close img {
    width: 22px;
    height: 22px;
  }

  #mobile-menu .mobile-menu-links {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
    padding: 120px 20px 40px;
  }
}

@media (max-width: 1024px) and (max-width: 480px) {
  #mobile-menu .mobile-menu-links {
    gap: 32px;
    padding-top: 100px;
  }
}

@media (max-width: 1024px) {
  #mobile-menu .mobile-menu-links a {
    color: #fff;
    font-size: 28px;
    font-family: Saira, sans-serif;
    font-weight: 600;
    text-decoration: none;
    text-align: center;
  }
}

@media (max-width: 1024px) and (max-width: 480px) {
  #mobile-menu .mobile-menu-links a {
    font-size: 24px;
  }
}

@media (max-width: 1024px) {
  #mobile-menu .mobile-menu-links a:hover {
    color: #1aa3ff;
  }

  body.mobile-menu-active {
    overflow: hidden;
  }
}

/* Hide mobile menu above 1024px */
@media (min-width: 1025px) {
  #mobile-menu {
    display: none !important;
  }

  #mobile-toggle {
    display: none !important;
  }

  body.mobile-menu-active {
    overflow: auto !important;
  }
}

footer#footer1 {
  background: var(--Superior, #181d26);
  color: #fff;
  box-sizing: border-box;
  height: 281px;
  width: 100%;
  display: flex;
  flex-direction: column;
  /* ───── TOP menu ───── */
  /* ───── BOTTOM copyright ───── */
}

footer#footer1 .container {
  max-width: 1440px;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  height: 100%;
  box-sizing: border-box;
}

footer#footer1 .top {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 71px;
}

footer#footer1 .top .footer-menu-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  padding: 0;
}

footer#footer1 .top .footer-menu-wrapper ul.menu {
  display: inline-flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: 72px;
  padding: 0;
  margin: 0;
  list-style: none;
  min-width: max-content;
}

footer#footer1 .top .footer-menu-wrapper ul.menu li {
  display: inline-flex;
  align-items: center;
  margin: 0;
  padding: 0;
}

footer#footer1 .top .footer-menu-wrapper ul.menu li a {
  margin: 0;
  padding: 0;
  color: #fff;
  font-family: "Saira", sans-serif;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
}

footer#footer1 .top .footer-menu-wrapper ul.menu li a:hover,
footer#footer1 .top .footer-menu-wrapper ul.menu li a:focus {
  color: #ccc;
  text-decoration: underline;
}

footer#footer1 .bottom-content {
  width: 100%;
  text-align: center;
  margin-bottom: 28px;
}

footer#footer1 .bottom-content p.copyright {
  color: rgba(255, 255, 255, 0.5);
  font-family: "Saira", sans-serif;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  margin: 0;
  text-align: center;
}

/* ───── MOBILE adjustments ───── */
@media (max-width: 600px) {
  footer#footer1 {
    height: 400px;
    padding: 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
  }

  footer#footer1 .container {
    width: 100%;
    height: 100%;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding-top: 56px;
    box-sizing: border-box;
  }

  footer#footer1 .top {
    margin-top: 0;
  }

  footer#footer1 .top .footer-menu-wrapper ul.menu {
    flex-direction: column;
    gap: 32px;
    align-items: center;
    justify-content: flex-start;
  }

  footer#footer1 .bottom-content {
    margin-bottom: 24px;
    width: 100%;
  }

  footer#footer1 .bottom-content p.copyright {
    text-align: center;
  }
}

/* @import "_header2.scss";
@import "_footer2.scss";
@import "_header3.scss";
@import "_footer3.scss";
@import "_footer4.scss"; */
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before,
.slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir=rtl] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.banner {
  padding: 56px 16px;
  /* -------------------------------
     Tablet scaling (width only)
     ------------------------------- */
  /* -------------------------------
     Mobile (≤480px)
     ------------------------------- */
}

.banner .container {
  display: flex;
  justify-content: center;
  width: 100%;
}

.banner .banner-cta {
  position: relative;
  width: 100%;
  max-width: 1328px;
  height: 357px;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 0 15%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border-radius: 20px;
  overflow: hidden;
  background: var(--desktop-bg) lightgray 50%/cover no-repeat;
}

.banner .banner-cta .banner-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 461px;
  width: 100%;
  text-align: center;
  color: #fff;
}

.banner .banner-cta .banner-content h3 {
  font-family: "Saira", sans-serif;
  font-size: 30px;
  font-weight: 600;
  line-height: 38px;
  margin: 0;
}

.banner .banner-cta .banner-content p {
  font-family: "Saira", sans-serif;
  font-size: 16px;
  font-weight: 400;
  margin-top: 0;
  margin-bottom: 30px;
}

.banner .banner-cta .btn {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4px;
  padding: 12px 24px;
  border-radius: 5px;
  border: 1px solid #fcfdff;
  background-color: transparent;
  color: #fcfdff;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 2.1px;
  text-transform: uppercase;
  text-decoration: none;
}

.banner .banner-cta .btn:hover {
  background-color: #1aa3ff;
  color: #fff;
  border-color: #1aa3ff;
}

@media (max-width: 1024px) {
  .banner .banner-cta {
    padding: 0 10%;
  }
}

@media (max-width: 768px) {
  .banner .banner-cta {
    padding: 0 6%;
  }
}

@media (max-width: 480px) {
  .banner .banner-cta {
    width: 100%;
    padding: 0 16px;
    border-radius: 20px;
    height: 357px;
    /* Mobile background image */
    background: var(--mobile-bg) lightgray 50%/cover no-repeat;
  }

  .banner .banner-cta .banner-content {
    width: 100%;
    text-align: center;
  }

  .banner .banner-cta .banner-content h3 {
    font-size: 30px;
  }

  .banner .banner-cta .banner-content p {
    font-size: 16px;
  }

  .banner .banner-cta .btn {
    width: auto;
    padding: 12px 24px;
  }
}

/* --- Shared Button Style --- */
/* --- Intro Section --- */
.companies-intro {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 80px clamp(16px, 19.4vw - 0.4rem, 280px);
  max-width: 1440px;
  margin: 0 auto;
  box-sizing: border-box;
  /* ---------- Mobile adjustments ---------- */
}

.companies-intro .container {
  max-width: 880px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  width: 100%;
  box-sizing: border-box;
}

.companies-intro .section-divider {
  width: 56px;
  height: 4px;
  background: #1aa3ff;
}

.companies-intro h2 {
  font-size: 48px;
  font-weight: 700;
  margin: 24px 0;
  line-height: 1.2;
}

.companies-intro p {
  font-size: 16px;
  line-height: 1.5;
  color: #333;
  margin: 0;
}

@media (max-width: 480px) {
  .companies-intro {
    /* reduce the massive horizontal padding from clamp() */
    padding-block: 40px;
    padding-inline: 16px;
    width: 100%;
    max-width: 100vw;
  }

  .companies-intro .container {
    max-width: 100%;
    padding-inline: 0;
    /* prevent double side padding */
  }

  .companies-intro .section-divider {
    width: 40px;
  }
}

/* --- Company List Section --- */
.companies-list {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 80px clamp(16px, 10vw, 168px);
  gap: 120px;
  align-self: stretch;
  background: var(--Neutral-100, #f5f5f7);
  /* Desktop adjustment: stack visual below content at <=1103px */
  /* Tablet / Mobile */
  /* Small mobile */
}

.companies-list .company-item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 1104px;
  gap: 54px;
}

.companies-list .company-item.reverse {
  flex-direction: row-reverse;
}

.companies-list .company-item .company-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 500px;
  flex-shrink: 0;
}

.companies-list .company-item .company-content .company-logo {
  width: 300px;
  height: 73px;
}

.companies-list .company-item .company-content .company-logo img {
  width: 300px;
  height: 100%;
  object-fit: contain;
}

.companies-list .company-item .company-content .company-description {
  font-size: 16px;
  line-height: 1.6;
  color: #1e1f1f;
  font-family: "Saira", sans-serif;
  font-weight: 400;
  margin: 24px 0 24px 0;
}

.companies-list .company-item .company-content .services-title {
  font-size: 18px;
  font-weight: 600;
  color: #1e1f1f;
  font-family: "Saira", sans-serif;
  margin: 0;
}

.companies-list .company-item .company-content .services-list {
  display: flex;
  gap: 32px;
  width: 100%;
}

.companies-list .company-item .company-content .services-list .services-column {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  flex: 1 0 0;
}

.companies-list .company-item .company-content .services-list .services-column .service {
  color: var(--Neutral-600, #62646b);
  font-family: "Saira", sans-serif;
  font-size: 16px;
  font-weight: 400;
}

.companies-list .company-item .company-visual {
  display: flex;
  flex-direction: column;
  width: 550px;
  flex-shrink: 0;
  position: relative;
  /* Desktop: overlay banner */
}

.companies-list .company-item .company-visual .company-photo {
  position: relative;
  display: flex;
  width: 100%;
  border-radius: 20px;
}

.companies-list .company-item .company-visual .company-photo img {
  width: 100%;
  height: auto;
  border-radius: 20px;
  box-shadow: 171px 160px 65px 0 rgba(0, 0, 0, 0), 109px 102px 60px 0 rgba(0, 0, 0, 0.01), 61px 58px 51px 0 rgba(0, 0, 0, 0.02), 27px 26px 37px 0 rgba(0, 0, 0, 0.1);
}

.companies-list .company-item .company-visual .company-banner {
  display: flex;
  width: calc(100% - 55px);
  padding: 16px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.75);
  position: absolute;
  bottom: 16px;
  left: 50%;
  transform: translateX(-50%);
  justify-content: space-between;
  align-items: center;
}

.companies-list .company-item .company-visual .company-banner .banner-profile {
  display: flex;
  align-items: center;
  gap: 16px;
}

.companies-list .company-item .company-visual .company-banner .banner-profile .profile-photo {
  width: 73px;
  height: 73px;
  flex-shrink: 0;
  border-radius: 5px;
  object-fit: cover;
}

.companies-list .company-item .company-visual .company-banner .banner-profile .profile-info {
  display: flex;
  flex-direction: column;
}

.companies-list .company-item .company-visual .company-banner .banner-profile .profile-info .profile-name {
  color: #000;
  font-family: "Saira", sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: normal;
  margin: 0;
}

.companies-list .company-item .company-visual .company-banner .banner-profile .profile-info .profile-title {
  color: #000;
  font-family: "Saira", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: normal;
  margin: 0;
}

.companies-list .company-item .company-visual .company-banner .banner-link {
  display: flex;
  padding: 12px 24px;
  justify-content: center;
  align-items: center;
  gap: 4px;
  border-radius: 5px;
  border: 1px solid #1aa3ff;
  background: #fff;
  color: var(--Neutral-900, #202023);
  font-family: "Saira", sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 2.1px;
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
  transition: all 0.2s ease;
}

.companies-list .company-item .company-visual .company-banner .banner-link:hover {
  background: #1aa3ff;
  color: #fff;
}

.companies-list .company-item .company-visual .company-banner .banner-link .icon-arrow {
  display: inline-block;
  /* ensures the span is visible */
  width: 16px;
  /* adjust to your arrow size */
  height: 16px;
  background: url("../img/external_link_icon.webp") no-repeat center center;
  background-size: contain;
  /* scale the arrow to fit */
  vertical-align: middle;
  /* aligns with text */
}

@media (max-width: 1103px) {
  .companies-list .company-item {
    flex-direction: column;
    width: 100%;
    gap: 40px;
  }

  .companies-list .company-item.reverse {
    flex-direction: column;
  }

  .companies-list .company-item .company-content {
    width: 100%;
  }

  .companies-list .company-item .company-visual {
    width: 100%;
  }

  .companies-list .company-item .company-visual .company-banner {
    position: absolute;
    /* keep overlay */
    bottom: 16px;
    left: 50%;
    transform: translateX(-50%);
  }
}

@media (max-width: 768px) {
  .companies-list {
    padding: 40px 16px;
    gap: 80px;
  }

  .companies-list .company-item {
    flex-direction: column;
    gap: 24px;
    width: 100%;
    max-width: 100%;
  }

  .companies-list .company-item .company-content {
    width: 100%;
  }

  .companies-list .company-item .company-content .services-list {
    gap: 12px;
    flex-direction: column;
  }

  .companies-list .company-item .company-content .services-list .services-column {
    width: 100%;
    gap: 12px;
  }

  .companies-list .company-item .company-visual {
    width: 100%;
    /* Mobile: banner below image */
  }

  .companies-list .company-item .company-visual .company-photo {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
  }

  .companies-list .company-item .company-visual .company-photo img {
    width: 100%;
    height: auto;
    border-radius: 20px;
  }

  .companies-list .company-item .company-visual .company-banner {
    position: static;
    transform: none;
    width: 100%;
    max-width: 100%;
    margin-top: 16px;
    padding: 16px;
    background: #e9eaf0;
    border-radius: 20px;
    flex-direction: column;
    gap: 16px;
    align-items: flex-start;
    box-sizing: border-box;
  }

  .companies-list .company-item .company-visual .company-banner .banner-profile {
    display: flex;
    align-items: center;
    gap: 16px;
  }

  .companies-list .company-item .company-visual .company-banner .banner-profile .profile-photo {
    width: 73px;
    height: 73px;
  }

  .companies-list .company-item .company-visual .company-banner .banner-link {
    display: flex;
    width: 100%;
    padding: 8px 0;
    text-align: center;
    letter-spacing: 0.5px;
  }
}

@media (max-width: 480px) {
  .companies-list {
    padding: 32px 12px;
  }

  .companies-list .company-item {
    gap: 16px;
    width: 100%;
    max-width: 100%;
  }

  .companies-list .company-item .company-content .company-logo {
    width: 150px;
    height: auto;
  }

  .companies-list .company-item .company-content .services-list {
    flex-direction: column;
    gap: 8px;
  }

  .companies-list .company-item .company-content .services-list .services-column {
    width: 100%;
    gap: 8px;
  }

  .companies-list .company-item .company-visual .company-banner {
    padding: 10px 12px;
    gap: 10px;
    border-radius: 12px;
  }

  .companies-list .company-item .company-visual .company-banner .banner-profile {
    gap: 16px;
  }

  .companies-list .company-item .company-visual .company-banner .banner-profile .profile-photo {
    width: 73px;
    height: 73px;
  }

  .companies-list .company-item .company-visual .company-banner .banner-link {
    padding: 6px 0;
    letter-spacing: 0px;
  }
}

/* --- Section: Banner --- */
.aboutus-banner {
  padding: 56px 16px;
  background-color: #fafafa;
}

.aboutus-banner .banner-cta {
  position: relative;
  max-width: 1328px;
  width: 100%;
  min-height: 369px;
  margin: 0 auto;
  /* padding: 0px 10%; */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  border-radius: 20px;
  overflow: hidden;
  background: linear-gradient(rgba(31, 47, 79, 0.15), rgba(31, 47, 79, 0.15)), var(--desktop-bg, #333) center center/cover no-repeat;
}

@media (max-width: 480px) {
  .aboutus-banner .banner-cta {
    background: linear-gradient(rgba(31, 47, 79, 0.15), rgba(31, 47, 79, 0.15)), var(--mobile-bg, #333) center center/cover no-repeat;
  }
}

.aboutus-banner .banner-content {
  max-width: 461px;
  width: 100%;
  color: #fcfdff;
}

.aboutus-banner .banner-content h2,
.aboutus-banner .banner-content h3 {
  font-family: "Saira", sans-serif;
  font-size: 30px;
  font-weight: 600;
  line-height: 38px;
  margin: 0 0 10px 0;
}

.aboutus-banner .banner-content p {
  font-family: "Saira", sans-serif;
  font-size: 16px;
  font-weight: 400;
  margin: 0 0 30px 0;
}

.hero {
  padding: 64px 0;
}

.hero .container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 64px;
}

@media (max-width: 1120px) {
  .hero .container {
    padding: 0 16px;
  }
}

@media (max-width: 1120px) {
  .hero .container {
    flex-wrap: wrap;
    gap: 32px;
  }

  .hero .container .left,
  .hero .container .right {
    width: 100%;
    text-align: center;
  }
}

.general .container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
}

@media (max-width: 1120px) {
  .general .container {
    padding: 0 16px;
  }
}

.general .container .column {
  width: 100%;
  /* .module:not(:last-of-type) {
    margin-bottom: $padding;
  } */
}

.general .container .column img,
.general .container .column iframe {
  max-width: 100%;
}

.general .container.halves .column {
  width: calc(50% - 16px);
}

@media (max-width: 600px) {
  .general .container.halves .column {
    width: 100% !important;
  }
}

.general .container.smallleft .column:first-of-type {
  width: calc(40% - 16px);
}

.general .container.smallleft .column:last-of-type {
  width: calc(60% - 16px);
}

@media (max-width: 600px) {
  .general .container.smallleft .column {
    width: 100% !important;
  }
}

.general .container.smallright .column:first-of-type {
  width: calc(60% - 16px);
}

.general .container.smallright .column:last-of-type {
  width: calc(40% - 16px);
}

@media (max-width: 600px) {
  .general .container.smallright .column {
    width: 100% !important;
  }
}

.general .container.thirds .column {
  width: calc(33.3333% - 21.3328px);
}

@media (max-width: 600px) {
  .general .container.thirds .column {
    width: 100%;
  }
}

.general .container.fourths .column {
  width: calc(25% - 16px - 8px);
}

@media (max-width: 1120px) {
  .general .container.fourths .column {
    width: calc(50% - 16px);
  }
}

@media (max-width: 600px) {
  .general .container.fourths .column {
    width: 100%;
  }
}

.general.small .container {
  max-width: 1050px;
}

.posts {
  padding: 64px 0;
}

.posts .container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  max-width: 1050px;
}

@media (max-width: 1120px) {
  .posts .container {
    padding: 0 16px;
  }
}

.posts .container h2 {
  margin: 0;
  max-width: 650px;
}

.posts .container .viewall {
  color: #131515;
  text-decoration: none;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 16px;
  line-height: 34px;
  letter-spacing: 1.28px;
  font-family: "Saira", sans-serif;
  margin-left: auto;
  display: inline-block;
  margin-top: 24px;
}

.posts .container .viewall:hover {
  text-decoration: underline;
}

.posts .container .columns {
  display: flex;
  gap: 48px;
  margin-top: 24px;
  flex-wrap: wrap;
}

.posts .container .columns .post {
  width: calc(33.3333% - 32px);
  max-width: 320px;
  background: #ffffff;
  text-decoration: none;
  color: #000000;
}

.posts .container .columns .post .thumbnail {
  max-width: 320px;
  height: 160px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
}

.posts .container .columns .post .thumbnail img {
  max-width: 100%;
  height: auto;
  transition: all 0.2s ease;
}

.posts .container .columns .post .content {
  padding: 32px;
}

.posts .container .columns .post .content h4 {
  margin: 0 0 16px;
}

.posts .container .columns .post .content .date {
  margin-bottom: 16px;
  font-weight: 500;
}

.posts .container .columns .post:hover .thumbnail {
  border-color: #131515;
}

.posts .container .columns .post:hover .thumbnail img {
  transform: scale(1.05);
}

@media (max-width: 1120px) {
  .posts .container .columns .post {
    width: calc(50% - 32px) !important;
    max-width: 100%;
  }

  .posts .container .columns .post .thumbnail {
    width: 100%;
    max-width: 100%;
  }
}

@media (max-width: 600px) {
  .posts .container .columns .post {
    width: 100% !important;
  }
}

.posts.notop {
  padding-top: 0;
}

.posts.nobottom {
  padding-bottom: 0;
}

.posts.noposts {
  margin-bottom: 64px !important;
}

.accordion {
  padding: 64px 0;
}

.accordion .container {
  max-width: 1200px;
  margin: 0 auto;
}

@media (max-width: 1120px) {
  .accordion .container {
    padding: 0 16px;
  }
}

.accordion .container .accordionItems .accordionItem {
  background: #ffffff;
  margin-bottom: 24px;
}

.accordion .container .accordionItems .accordionItem .accordionTitle {
  font-size: 20px;
  font-weight: 500;
  line-height: 28px;
  padding: 16px;
  display: flex;
  align-items: center;
  cursor: pointer;
  transition: all 0.2s ease;
}

.accordion .container .accordionItems .accordionItem .accordionTitle:hover {
  color: #131515;
}

.accordion .container .accordionItems .accordionItem .accordionTitle::before {
  content: "";
  display: inline-block;
  background: url(../img/plus.svg) no-repeat center/contain;
  width: 32px;
  height: 32px;
  margin-right: 16px;
  transition: all 0.2s ease;
}

.accordion .container .accordionItems .accordionItem .accordionTitle.active {
  display: flex;
}

.accordion .container .accordionItems .accordionItem .accordionTitle.active::before {
  background: url(../img/minus.svg) no-repeat center/contain;
}

.accordion .container .accordionItems .accordionItem .accordionCopy {
  display: none;
  padding: 16px 16px 16px 57px;
}

.accordion .container .accordionItems .accordionItem .accordionCopy p:first-of-type {
  margin-top: 0;
}

.accordion .container .accordionItems .accordionItem .accordionCopy ::marker {
  color: #131515;
}

.testimonial {
  max-width: 100% !important;
  overflow: hidden;
  padding: 64px 0;
}

.testimonial .container {
  max-width: 1200px;
  margin: 0 auto;
  max-width: 1050px;
}

@media (max-width: 1120px) {
  .testimonial .container {
    padding: 0 16px;
  }
}

.testimonial.single .container {
  display: flex;
  max-width: 900px;
  gap: 48px;
  align-items: center;
}

.testimonial.single .container .image {
  width: 33%;
}

.testimonial.single .container .image img {
  display: block;
}

.testimonial.single .container .content {
  padding: 48px 0;
  width: 66%;
}

.testimonial.single .container .content blockquote {
  font-size: 24px;
  font-weight: 300;
  font-style: italic;
  color: #000000;
  letter-spacing: 0.48px;
  line-height: 38px;
  padding: 0;
  margin: 0;
  display: block;
}

.testimonial.single .container .content blockquote::before {
  content: "";
  display: block;
  background: url(../img/quote.svg) no-repeat center/contain;
  width: 50px;
  height: 36px;
  margin-bottom: 16px;
}

.testimonial.single .container .content .author {
  display: inline-block;
  margin-top: 16px;
}

.testimonial.single .container .content .author p {
  margin: 4px 0;
}

.testimonial.single .container .content .author a {
  color: #131515;
  text-decoration: none;
}

.testimonial.single .container .content .author a:hover {
  text-decoration: underline;
}

@media (max-width: 1120px) {
  .testimonial.single .container {
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

  .testimonial.single .container .image {
    width: 100%;
    max-width: 100%;
    display: flex;
    justify-content: center;
    margin-top: 16px;
  }

  .testimonial.single .container .content {
    padding-top: 0;
    display: flex;
    flex-direction: column;
    width: 100%;
  }
}

.testimonial.multi .slide {
  display: flex !important;
  max-width: 900px;
  gap: 48px;
  align-items: center;
  margin: 0 auto;
}

.testimonial.multi .slide .image {
  width: 33%;
}

.testimonial.multi .slide .image img {
  max-width: 100%;
  height: auto;
  display: block;
}

.testimonial.multi .slide .content {
  padding: 48px 0;
  width: 66%;
}

.testimonial.multi .slide .content blockquote {
  font-size: 24px;
  font-weight: 300;
  font-style: italic;
  color: #000000;
  letter-spacing: 0.48px;
  line-height: 38px;
  padding: 0;
  margin: 0;
  display: block;
}

.testimonial.multi .slide .content blockquote::before {
  content: "";
  display: block;
  background: url(../img/quote.svg) no-repeat center/contain;
  width: 50px;
  height: 36px;
  margin-bottom: 16px;
}

.testimonial.multi .slide .content .author {
  display: inline-block;
  margin-top: 16px;
}

.testimonial.multi .slide .content .author p {
  margin: 4px 0;
}

.testimonial.multi .slide .content .author a {
  color: #131515;
  text-decoration: none;
}

.testimonial.multi .slide .content .author a:hover {
  text-decoration: underline;
}

@media (max-width: 1120px) {
  .testimonial.multi .slide {
    flex-direction: column;
    gap: 0px;
    align-items: flex-start;
  }

  .testimonial.multi .slide .image {
    width: 100%;
  }

  .testimonial.multi .slide .image img {
    margin: 0 auto;
  }

  .testimonial.multi .slide .content {
    width: 100%;
  }
}

.testimonial.multi .testimonialSlider {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.testimonial.multi .testimonialSlider .slick-list {
  max-width: calc(100% - 92px);
}

.testimonial.multi .testimonialSlider .slick-slide {
  z-index: 900 !important;
}

.cards {
  width: 100%;
  padding: 80px 56px;
  box-sizing: border-box;
  /* Section Header */
  /* Intro */
  /* Cards Row */
  /* Individual card */
  /* Desktop / Mobile button visibility */
  /* ===== MOBILE ===== */
}

.cards .container {
  width: 100%;
  max-width: 1328px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 29px;
}

.cards .section-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
  /* Button inside header (desktop only) */
}

.cards .section-header .header-left {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.cards .section-header .header-left .section-divider {
  width: 56px;
  height: 4px;
  background: #1aa3ff;
  margin-bottom: 12px;
}

.cards .section-header .header-left h2 {
  margin: 0;
  color: #1e1f1f;
  font-family: "Saira", sans-serif;
  font-size: 48px;
  font-weight: 700;
  line-height: 50px;
}

.cards .section-header .button {
  display: flex;
  width: 138px;
  height: 22px;
  padding: 12px 24px;
  justify-content: center;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
  border-radius: 5px;
  border: 1px solid #1aa3ff;
  background: #fff;
  text-decoration: none;
  color: var(--Neutral-900, #202023);
  font-family: "Saira", sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 2.1px;
  text-transform: uppercase;
}

.cards .section-header .button:hover {
  background: #1aa3ff;
  color: #fff;
}

.cards .intro {
  font-size: 1.125rem;
  line-height: 1.5;
  text-align: center;
  width: 100%;
  max-width: 880px;
}

.cards .cards-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 16px;
  width: 100%;
}

.cards .card {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 320px;
  height: 300px;
  border-radius: 20px;
  background: #fff;
  box-shadow: 171px 160px 65px 0 rgba(0, 0, 0, 0), 109px 102px 60px 0 rgba(0, 0, 0, 0.01), 61px 58px 51px 0 rgba(0, 0, 0, 0.02), 27px 26px 37px 0 rgba(0, 0, 0, 0.05);
  flex-shrink: 0;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  /* Hover arrow */
}

.cards .card .card-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 12px;
  padding: 0 45px;
  text-align: center;
}

.cards .card .card-content .logo {
  width: 230px;
  height: 56px;
  object-fit: contain;
  flex-shrink: 0;
}

.cards .card .card-content p {
  margin: 0;
  line-height: 1.2;
}

.cards .card .arrow {
  position: absolute;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-color: #f5f5f5;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
}

.cards .card .arrow::before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  border: solid #c8c8c8;
  border-width: 0 3px 3px 0;
  transform: translateX(-2px) rotate(-45deg);
}

.cards .card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
}

.cards .card:hover .arrow {
  opacity: 1;
}

.cards .desktop-only {
  display: inline-flex;
}

.cards .mobile-only {
  display: none;
}

@media (max-width: 768px) {
  .cards {
    padding: 56px 16px;
    /* Hide desktop button on mobile */
    /* Show mobile button below cards with identical styling */
  }

  .cards .section-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }

  .cards .cards-row {
    flex-direction: column;
    width: 100%;
    align-items: center;
  }

  .cards .card {
    width: 320px;
    height: 300px;
  }

  .cards .desktop-only {
    display: none !important;
  }

  .cards .mobile-only {
    display: flex !important;
    justify-content: center;
    align-items: center;
    margin-top: 32px;
    width: 138px;
    height: 22px;
    padding: 12px 24px;
    border-radius: 5px;
    border: 1px solid #1aa3ff;
    background: #fff;
    color: var(--Neutral-900, #202023);
    font-family: "Saira", sans-serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 2.1px;
    text-transform: uppercase;
    text-decoration: none;
  }

  .cards .mobile-only:hover {
    background: #1aa3ff;
    color: #fff;
  }
}

/* .form {
    padding: $quadpadding 0;

    .container {
        @include container;
        max-width: 600px;

        .intro {
            width: 100%;
            margin-bottom: $triplepadding;
        }
    }

    &.withside {
        .container {
            display: flex;
            flex-wrap: wrap;
            max-width: $smallsize;
            gap: $doublepadding 180px;

            .gForm {
                flex-grow: 1;
            }

            .sidebar {
                width: 350px;
                margin-left: auto;

                .block {
                    background: $darkgray;
                    color: $white;
                    padding: $padding $triplepadding;
                    margin-bottom: $doublepadding;

                    h1, h2, h3, h4, h5, h6 {
                        margin: $padding 0;
                    }
                }
            }

            @include respond-to('tablet') {
                gap: $quadpadding;
            }

            @include respond-to('med') {
                flex-direction: column;

                .sidebar {
                    width: 100%;
                }
            }
        }
    }
}

.gform_wrapper.gravity-theme {

    input[type=radio], input[type=checkbox] {
        display: none;
    }

    .gfield_radio, .gfield_checkbox {
        .gchoice {

            label {
                display: inline-flex !important;
                align-items: center;
                cursor: pointer;

                &::before {
                    content: "";
                    display: inline-block;
                    width: 15px;
                    height: 15px;
                    margin-top: -3px;
                    margin-right: $halfpadding;
                }
            }

            input[type="radio"]:checked + label::before, input[type="checkbox"]:checked + label::before {
                background: $darkgray;
            }
        }
    }

    .gfield_radio .gchoice label::before {
        border-radius: 100%;
    }

    .gfield_label {
        color: $black;
        font-size: 18px !important;
        line-height: 26px;
        text-transform: uppercase;
    }

    .gfield_required {
        color: $black;
        font-size: 18px !important;
        padding-left: 0px;
    }

    .gfield:not(:last-child), fieldset:not(:last-child) {
        margin-bottom: $padding;
    }

    .gform_footer {
        justify-content: flex-end;
    }

    .button {
        background: $gray;
        font-size: 16px;
        line-height: 22px;
        letter-spacing: 0.48px;
        border-color: $darkgray;
        transition: $transition;
        cursor: pointer;

        &::after {
            content: "";
            display: inline-block;
            width: 6px;
            height: 11px;
            background: url(../img/chevron.svg) no-repeat center/contain;
            margin-left: $padding;
            transition: $transition;
        }

        &:hover {
            border-color: $darkgray;
            color: $darkgray;
        }
    }

    .gform_validation_errors {
        border-color: #E3405F;
        background-color: $white;
    }
    .gform_validation_errors>h2 {
        color: #E3405F;
        font-family: $fontbody;
        text-transform: none;
        font-size: 16px;
    }

    .gfield_error {
        label, .gfield_required, .validation_message {
            color: #E3405F;
        }
        input, textarea {
            border-color: #E3405F;
        }
        .validation_message {
            border: none;
            padding: 0;
            background: transparent;
        }
    }
}

input[type=text], input[type=email], input[type=tel], textarea, select {
    border: $bordergray 1px solid;
    padding: calc(16px - 5px) $midpadding !important;
    font-size: 18px;
    line-height: 26px;
    color: $black;
    font-family: $fontbody;

    &:focus, &:focus-visible {
        border-color: $black;
        outline: none;
    }
} */
.newsletter {
  padding: 64px 0;
}

.newsletter .container {
  max-width: 1200px;
  margin: 0 auto;
  max-width: 900px;
  display: flex;
  gap: 120px;
  align-items: flex-end;
}

@media (max-width: 1120px) {
  .newsletter .container {
    padding: 0 16px;
  }
}

.newsletter .container .left,
.newsletter .container .right {
  width: 50%;
}

@media (max-width: 1120px) {
  .newsletter .container {
    flex-direction: column;
    gap: 32px;
  }

  .newsletter .container .left,
  .newsletter .container .right {
    width: 100%;
  }
}

form#gform_1 {
  display: flex;
  align-items: flex-end;
}

form#gform_1 .gform_body {
  flex-grow: 1;
}

form#gform_1 .gform_footer {
  padding: 0;
}

form#gform_1 .gfield_required {
  display: none;
}

form#gform_1 .button {
  margin-bottom: 0;
  height: 50px;
  width: 50px;
  text-indent: -9999px;
  padding: 0;
  background: #ffffff url(../img/arrow-right-large.svg) no-repeat center/19px;
  margin-left: 16px;
  border: #707070 1px solid;
}

section.cta:not(.hero) {
  padding: 64px 0;
}

section.cta:not(.hero) .container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  gap: 128px;
  align-items: center;
}

@media (max-width: 1120px) {
  section.cta:not(.hero) .container {
    padding: 0 16px;
  }
}

section.cta:not(.hero) .container .left,
section.cta:not(.hero) .container .right {
  width: 50%;
}

section.cta:not(.hero) .container .left {
  max-width: 470px;
}

section.cta:not(.hero) .container .left h2 {
  margin-top: 0;
}

section.cta:not(.hero) .container .left p {
  line-height: 26px;
}

section.cta:not(.hero) .container .left .buttons {
  display: flex;
  margin-top: 32px;
  gap: 24px;
}

section.cta:not(.hero) .container .left.noimage {
  max-width: 100%;
  text-align: center;
  width: 100%;
}

section.cta:not(.hero) .container .left.noimage .buttons {
  justify-content: center;
}

section.cta:not(.hero) .container .right {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  max-width: 50%;
  margin-left: auto;
}

section.cta:not(.hero) .container .right img {
  width: 100%;
  height: auto;
}

@media (max-width: 1120px) {
  section.cta:not(.hero) .container {
    flex-direction: column;
    gap: 0px;
  }

  section.cta:not(.hero) .container .left {
    width: 100%;
    max-width: 100%;
  }

  section.cta:not(.hero) .container .right {
    max-width: calc(100% + 32px);
    width: calc(100% + 32px);
    margin-left: 0;
    padding-bottom: 64px;
  }

  section.cta:not(.hero) .container .right::before {
    display: none;
  }
}

section.cta:not(.hero).notop .left {
  padding-top: 0;
}

section.cta:not(.hero).nobottom .left {
  padding-bottom: 0;
}

.comparison {
  padding: 64px 0;
}

.comparison .container {
  max-width: 1200px;
  margin: 0 auto;
  max-width: 1050px;
}

@media (max-width: 1120px) {
  .comparison .container {
    padding: 0 16px;
  }
}

.comparison .container .intro {
  max-width: 600px;
  padding-bottom: 32px;
}

.comparison .container .comparisonTable {
  display: flex;
  gap: 48px;
  justify-content: center;
}

@media (max-width: 1120px) {
  .comparison .container .comparisonTable {
    flex-wrap: wrap;
  }
}

.comparison .container .comparisonTable .tableItem {
  width: 33.3333%;
  background: #EDEFF0;
  display: flex;
  flex-direction: column;
}

@media (max-width: 1120px) {
  .comparison .container .comparisonTable .tableItem {
    width: calc(50% - 64px);
  }
}

@media (max-width: 600px) {
  .comparison .container .comparisonTable .tableItem {
    width: 100%;
  }
}

.comparison .container .comparisonTable .tableItem .heading {
  background: #DEDEDE;
  padding: 16px 32px;
  min-height: 68px;
}

.comparison .container .comparisonTable .tableItem .heading h3 {
  margin: 0;
  max-width: 80%;
}

.comparison .container .comparisonTable .tableItem.flagged .heading {
  position: relative;
}

.comparison .container .comparisonTable .tableItem.flagged .heading::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 32px;
  height: 46px;
  background: #131515;
  mask-image: url(../img/banner.svg);
  -webkit-mask-image: url(../img/banner.svg);
  mask-size: cover;
  -webkit-mask-size: cover;
  top: 0;
  right: 16px;
}

.comparison .container .comparisonTable .tableItem:first-of-type .heading {
  border-color: #131515;
}

.comparison .container .comparisonTable .tableItem:first-of-type .heading::after {
  background: #131515;
}

.comparison .container .comparisonTable .tableItem:nth-child(3) .heading {
  border-color: #131515;
}

.comparison .container .comparisonTable .tableItem:nth-child(3) .heading::after {
  background: #131515;
}

.comparison .container .comparisonTable .tableItem .content {
  display: flex;
  height: 100%;
  flex-direction: column;
}

.comparison .container .comparisonTable .tableItem .content .tableItems {
  padding: 16px 32px;
}

.comparison .container .comparisonTable .tableItem .content .tableItems .item {
  padding: 16px 0;
}

.comparison .container .comparisonTable .tableItem .content .tableItems .item.small {
  font-size: 16px;
  color: #000000;
  line-height: 26px;
  letter-spacing: 0.32px;
}

.comparison .container .comparisonTable .tableItem .content .tableItems .item span {
  display: block;
  font-size: 20px;
  line-height: 26px;
  letter-spacing: 0.4px;
  color: #000000;
  font-weight: 500;
}

.comparison .container .comparisonTable .tableItem .content .cta {
  margin-top: auto;
  padding: 16px 32px 32px;
}

.comparison .disclaimer {
  margin-top: -100px;
  padding: 132px 0 32px;
  background: rgba(0, 0, 0, 0.1);
  text-align: center;
  font-size: 16px;
  line-height: 21px;
  letter-spacing: 0.32px;
  font-style: italic;
}

.comparison .disclaimer p {
  max-width: 700px;
  margin: 16px auto;
}

.slider {
  padding: 64px 0;
}

.slider .container {
  max-width: 1200px;
  margin: 0 auto;
}

@media (max-width: 1120px) {
  .slider .container {
    padding: 0 16px;
  }
}

.slider .container img {
  max-width: 100%;
}

.slider .container .slider-single {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
}

.slider .container .slider-single .slick-list {
  width: calc(100% - 100px);
}

.slider .container .slider-single .slide {
  display: flex !important;
  align-items: center;
  gap: 48px;
}

.slider .container .slider-single .slide .button {
  margin-top: 32px;
}

.slider .container .slider-single .slide img {
  width: 33.333%;
}

@media (max-width: 1120px) {
  .slider .container .slider-single .slide {
    flex-direction: column;
  }

  .slider .container .slider-single .slide img {
    margin-right: 0;
    width: 100%;
  }

  .slider .container .slider-single .slide .content {
    margin-top: 16px;
    text-align: center;
  }
}

@media (max-width: 1120px) {
  .slider .container .slider-single {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
  }

  .slider .container .slider-single .slick-list {
    max-width: calc(100% - 92px);
  }
}

.slider .container .slider-multi {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.slider .container .slider-multi .slick-list {
  max-width: calc(100% - 92px);
}

.slider .container .slider-multi a {
  text-decoration: none !important;
}

.slider .container .slider-multi .slide {
  padding: 0 8px;
  width: calc(100% - 16px) !important;
}

.slider .container .slider-multi .slide .content {
  margin-top: 16px;
}

.slider .container .slider-multi .slide .content p {
  font-size: 16px;
}

.slick-arrow {
  background: url(../img/chevron.svg) no-repeat center/cover;
  border: none;
  font-size: 0;
  width: 28px;
  min-width: 28px;
  height: 47px;
  cursor: pointer;
}

.slick-prev {
  transform: rotate(180deg);
  margin-right: 16px;
}

.slick-next {
  margin-left: 16px;
}

.slick-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 32px;
  padding: 0;
  width: 100%;
}

.slick-dots li {
  list-style: none;
  margin: 0 5px;
}

.slick-dots li button {
  font-size: 0;
  display: inline-block;
  height: 9px;
  width: 9px;
  border-radius: 100%;
  border: none;
  background-color: #000000;
  padding: 0;
  cursor: pointer;
  transition: all 0.2s ease;
}

.slick-dots li.slick-active button {
  background-color: #131515;
}

.videoCarousel {
  position: inherit !important;
  padding: 64px 0;
}

.videoCarousel .container {
  max-width: 1200px;
  margin: 0 auto;
}

@media (max-width: 1120px) {
  .videoCarousel .container {
    padding: 0 16px;
  }
}

.videoCarousel .container .buttons {
  text-align: center;
}

.videoCarousel .container .buttons.left {
  text-align: left;
}

.videoCarousel .container .slide .thumbnail {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.videoCarousel .container .slide .thumbnail img {
  max-width: 100%;
  height: auto;
  margin-bottom: 15px;
}

.videoCarousel .container .slide .thumbnail svg {
  position: absolute;
  max-width: 50px;
  max-height: 50px;
}

.videoCarousel .video-slider {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.videoCarousel .video-slider .slick-list {
  max-width: calc(100% - 92px);
  margin: 0 -20px;
}

.videoCarousel .video-slider .slick-list .slick-slide {
  margin: 0 20px;
}

.videoCarousel .popup {
  position: fixed;
  left: 50%;
  top: 50%;
  -ms-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.8);
  align-items: center;
  justify-content: center;
  display: none;
  z-index: 2;
}

.videoCarousel .popup .loading {
  position: absolute;
  z-index: 1;
  width: 50px;
  height: 50px;
}

.videoCarousel .popup.active {
  display: flex;
}

.videoCarousel .popup .close {
  margin-left: auto;
  cursor: pointer;
  position: relative;
  width: 34px;
  height: 34px;
}

.videoCarousel .popup .content {
  z-index: 2;
  max-width: 90%;
}

.videoCarousel .popup .content iframe {
  max-width: 100%;
}

.videoCarousel .st0 {
  fill: none;
}

.videoCarousel .st1 {
  fill: #ffffff;
}

.videoCarousel .st2 {
  fill: #131515;
}

/* .tabs {
    padding: $quadpadding 0;

    .container {
        @include container;

        .tabItems {

            .topTabs {
                display: flex;
                justify-content: center;

                @include respond-to('tablet') {
                    flex-direction: column;
                }

                .tabTitle {
                    text-transform: uppercase;
                    flex-grow: 1;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    padding: $halfpadding;
                    cursor: pointer;
                    transition: $transition;

                    &:hover {
                        color: $black;
                        font-weight: bold;
                    }

                    &.active {
                        color: $darkgray;
                        font-weight: bold;
                    }
                }
            }

            &.side {
                display: flex;
                align-items: center;

                .sideTabs {
                    width: 50%;
                    margin-right: $doublepadding;
                    display: flex;
                    gap: $padding;
                    flex-direction: column;

                    @include respond-to('mobile') {
                        width: 100%;
                        margin: 0;
                    }

                    .tabTitle {
                        display: flex;
                        cursor: pointer;

                        &:not(:last-of-type) {
                            margin-bottom: $padding;
                        }

                        a {
                            font-weight: 600;
                            text-decoration: none;
                            text-transform: uppercase;
                        }

                        .icon {
                            background: $white;
                            overflow: hidden;
                            width: $doublepadding;
                            height: $doublepadding;
                            display: flex;
                            align-items: center;
                            justify-content: center;
                            margin-right: $padding;
                            transition: $transition;
                            padding: $halfpadding;

                            @include respond-to('mobile') {
                                width: calc(calc(16px * 2) + calc(16px / 2));
                                height: calc(calc(16px * 2) + calc(16px / 2));
                            }

                            img {
                                max-width: 100%;
                                max-height: 100%;
                            }
                        }

                        .tabTitleContent {
                            width: calc(100% - calc(16px * 3));
                        }

                        span {
                            font-size: 24px;
                            font-weight: 600;
                            line-height: 22px;
                            margin-bottom: $halfpadding;
                            display: block;
                            transition: $transition;
                        }
                    }
                }

                .tabContent {
                    width: 50%;
                    display: flex;

                    @include respond-to('mobile') {
                        display: none;
                    }

                    .tabCopy {
                        display: flex;
                        align-items: center;
                        justify-content: center;

                        img {
                            max-width: 100%;
                        }
                    }
                }
            }

            &.right {
                .sideTabs {
                    order: 2;
                    margin-right: 0;
                    margin-left: $doublepadding;

                    @include respond-to('mobile') {
                        margin-left: 0;
                        margin-top: $padding;
                    }
                }

                .tabContent {
                    order: 1;
                }
            }

            .tabContent {
                display: flex;
                overflow: hidden;

                .tabCopy {
                    width: 100%;
                    margin-top: $padding;
                    padding-bottom: $padding;
                    margin-right: -100%;
                    visibility: hidden;
                    opacity: 0;
                    transition: $transition;

                    &.active {
                        opacity: 1;
                        visibility: visible;
                    }
                }

                &.top {

                    .flex {
                        display: flex;
                        align-items: center;
                        gap: $triplepadding;

                        @include respond-to('tablet') {
                            flex-wrap: wrap;
                        }

                        img.left {
                            order: 1;
                        }

                        .content {
                            order: 2;
                            width: 50%;

                            @include respond-to('tablet') {
                                width: 100%;
                            }
                        }

                        img.right {
                            order: 3;
                            margin-left: $padding;
                        }

                        img {
                            width: 50%;

                            @include respond-to('tablet') {
                                width: 100%;
                                order: 3 !important;
                                margin: $padding 0 0;
                            }
                        }
                    }

                    .tabCopy.full .content {
                        width: 100% !important;
                    }
                }
            }
        }
    }
} */
/* .gallery {
    padding: $quadpadding 0;

    .container {
        @include container;

        .images {
            margin-top: $triplepadding;
            display: flex;
            flex-wrap: wrap;
            gap: $doublepadding;

            .image {
                width: calc(33.3333% - (16px * 1.3333));

                img {
                    max-width: 100%;
                    min-width: 50%;
                    height: auto;
                    margin: 0 auto;
                }

                figcaption {
                    margin-top: $padding;
                    font-size: 16px;
                    font-style: italic;
                }
            }

            &.four .image {
                width: calc(25% - calc(16px * 1.5));
            }

            &.five .image {
                width: calc(20% - (16px * 1.6));
            }

            @include respond-to('tablet') {
                &.four .image, &.five .image {
                    width: calc(33.3333% - (16px * 1.3333));
                }
            }
            @include respond-to('mobile') {
                .image {
                    width: 100% !important;
                }
            }
        }
    }
} */
/* --- Shared Button Style --- */
/* --- Intro Section --- */
.companies-intro {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 80px clamp(16px, 19.4vw - 0.4rem, 280px);
  max-width: 1440px;
  margin: 0 auto;
  box-sizing: border-box;
  /* ---------- Mobile adjustments ---------- */
}

.companies-intro .container {
  max-width: 880px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  width: 100%;
  box-sizing: border-box;
}

.companies-intro .section-divider {
  width: 56px;
  height: 4px;
  background: #1aa3ff;
}

.companies-intro h2 {
  font-size: 48px;
  font-weight: 700;
  margin: 24px 0;
  line-height: 1.2;
}

.companies-intro p {
  font-size: 16px;
  line-height: 1.5;
  color: #333;
  margin: 0;
}

@media (max-width: 480px) {
  .companies-intro {
    /* reduce the massive horizontal padding from clamp() */
    padding-block: 40px;
    padding-inline: 16px;
    width: 100%;
    max-width: 100vw;
  }

  .companies-intro .container {
    max-width: 100%;
    padding-inline: 0;
    /* prevent double side padding */
  }

  .companies-intro .section-divider {
    width: 40px;
  }
}

/* --- Company List Section --- */
.companies-list {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 80px clamp(16px, 10vw, 168px);
  gap: 120px;
  align-self: stretch;
  background: var(--Neutral-100, #f5f5f7);
  /* Desktop adjustment: stack visual below content at <=1103px */
  /* Tablet / Mobile */
  /* Small mobile */
}

.companies-list .company-item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 1104px;
  gap: 54px;
}

.companies-list .company-item.reverse {
  flex-direction: row-reverse;
}

.companies-list .company-item .company-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 500px;
  flex-shrink: 0;
}

.companies-list .company-item .company-content .company-logo {
  width: 300px;
  height: 73px;
}

.companies-list .company-item .company-content .company-logo img {
  width: 300px;
  height: 100%;
  object-fit: contain;
}

.companies-list .company-item .company-content .company-description {
  font-size: 16px;
  line-height: 1.6;
  color: #1e1f1f;
  font-family: "Saira", sans-serif;
  font-weight: 400;
  margin: 24px 0 24px 0;
}

.companies-list .company-item .company-content .services-title {
  font-size: 18px;
  font-weight: 600;
  color: #1e1f1f;
  font-family: "Saira", sans-serif;
  margin: 0;
}

.companies-list .company-item .company-content .services-list {
  display: flex;
  gap: 32px;
  width: 100%;
}

.companies-list .company-item .company-content .services-list .services-column {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  flex: 1 0 0;
}

.companies-list .company-item .company-content .services-list .services-column .service {
  color: var(--Neutral-600, #62646b);
  font-family: "Saira", sans-serif;
  font-size: 16px;
  font-weight: 400;
}

.companies-list .company-item .company-visual {
  display: flex;
  flex-direction: column;
  width: 550px;
  flex-shrink: 0;
  position: relative;
  /* Desktop: overlay banner */
}

.companies-list .company-item .company-visual .company-photo {
  position: relative;
  display: flex;
  width: 100%;
  border-radius: 20px;
}

.companies-list .company-item .company-visual .company-photo img {
  width: 100%;
  height: auto;
  border-radius: 20px;
  box-shadow: 171px 160px 65px 0 rgba(0, 0, 0, 0), 109px 102px 60px 0 rgba(0, 0, 0, 0.01), 61px 58px 51px 0 rgba(0, 0, 0, 0.02), 27px 26px 37px 0 rgba(0, 0, 0, 0.1);
}

.companies-list .company-item .company-visual .company-banner {
  display: flex;
  width: calc(100% - 55px);
  padding: 16px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.75);
  position: absolute;
  bottom: 16px;
  left: 50%;
  transform: translateX(-50%);
  justify-content: space-between;
  align-items: center;
}

.companies-list .company-item .company-visual .company-banner .banner-profile {
  display: flex;
  align-items: center;
  gap: 16px;
}

.companies-list .company-item .company-visual .company-banner .banner-profile .profile-photo {
  width: 73px;
  height: 73px;
  flex-shrink: 0;
  border-radius: 5px;
  object-fit: cover;
}

.companies-list .company-item .company-visual .company-banner .banner-profile .profile-info {
  display: flex;
  flex-direction: column;
}

.companies-list .company-item .company-visual .company-banner .banner-profile .profile-info .profile-name {
  color: #000;
  font-family: "Saira", sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: normal;
  margin: 0;
}

.companies-list .company-item .company-visual .company-banner .banner-profile .profile-info .profile-title {
  color: #000;
  font-family: "Saira", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: normal;
  margin: 0;
}

.companies-list .company-item .company-visual .company-banner .banner-link {
  display: flex;
  padding: 12px 24px;
  justify-content: center;
  align-items: center;
  gap: 4px;
  border-radius: 5px;
  border: 1px solid #1aa3ff;
  background: #fff;
  color: var(--Neutral-900, #202023);
  font-family: "Saira", sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 2.1px;
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
  transition: all 0.2s ease;
}

.companies-list .company-item .company-visual .company-banner .banner-link:hover {
  background: #1aa3ff;
  color: #fff;
}

.companies-list .company-item .company-visual .company-banner .banner-link .icon-arrow {
  display: inline-block;
  /* ensures the span is visible */
  width: 16px;
  /* adjust to your arrow size */
  height: 16px;
  background: url("../img/external_link_icon.webp") no-repeat center center;
  background-size: contain;
  /* scale the arrow to fit */
  vertical-align: middle;
  /* aligns with text */
}

@media (max-width: 1103px) {
  .companies-list .company-item {
    flex-direction: column;
    width: 100%;
    gap: 40px;
  }

  .companies-list .company-item.reverse {
    flex-direction: column;
  }

  .companies-list .company-item .company-content {
    width: 100%;
  }

  .companies-list .company-item .company-visual {
    width: 100%;
  }

  .companies-list .company-item .company-visual .company-banner {
    position: absolute;
    /* keep overlay */
    bottom: 16px;
    left: 50%;
    transform: translateX(-50%);
  }
}

@media (max-width: 768px) {
  .companies-list {
    padding: 40px 16px;
    gap: 80px;
  }

  .companies-list .company-item {
    flex-direction: column;
    gap: 24px;
    width: 100%;
    max-width: 100%;
  }

  .companies-list .company-item .company-content {
    width: 100%;
  }

  .companies-list .company-item .company-content .services-list {
    gap: 12px;
    flex-direction: column;
  }

  .companies-list .company-item .company-content .services-list .services-column {
    width: 100%;
    gap: 12px;
  }

  .companies-list .company-item .company-visual {
    width: 100%;
    /* Mobile: banner below image */
  }

  .companies-list .company-item .company-visual .company-photo {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
  }

  .companies-list .company-item .company-visual .company-photo img {
    width: 100%;
    height: auto;
    border-radius: 20px;
  }

  .companies-list .company-item .company-visual .company-banner {
    position: static;
    transform: none;
    width: 100%;
    max-width: 100%;
    margin-top: 16px;
    padding: 16px;
    background: #e9eaf0;
    border-radius: 20px;
    flex-direction: column;
    gap: 16px;
    align-items: flex-start;
    box-sizing: border-box;
  }

  .companies-list .company-item .company-visual .company-banner .banner-profile {
    display: flex;
    align-items: center;
    gap: 16px;
  }

  .companies-list .company-item .company-visual .company-banner .banner-profile .profile-photo {
    width: 73px;
    height: 73px;
  }

  .companies-list .company-item .company-visual .company-banner .banner-link {
    display: flex;
    width: 100%;
    padding: 8px 0;
    text-align: center;
    letter-spacing: 0.5px;
  }
}

@media (max-width: 480px) {
  .companies-list {
    padding: 32px 12px;
  }

  .companies-list .company-item {
    gap: 16px;
    width: 100%;
    max-width: 100%;
  }

  .companies-list .company-item .company-content .company-logo {
    width: 150px;
    height: auto;
  }

  .companies-list .company-item .company-content .services-list {
    flex-direction: column;
    gap: 8px;
  }

  .companies-list .company-item .company-content .services-list .services-column {
    width: 100%;
    gap: 8px;
  }

  .companies-list .company-item .company-visual .company-banner {
    padding: 10px 12px;
    gap: 10px;
    border-radius: 12px;
  }

  .companies-list .company-item .company-visual .company-banner .banner-profile {
    gap: 16px;
  }

  .companies-list .company-item .company-visual .company-banner .banner-profile .profile-photo {
    width: 73px;
    height: 73px;
  }

  .companies-list .company-item .company-visual .company-banner .banner-link {
    padding: 6px 0;
    letter-spacing: 0px;
  }
}

/* --- Section: Banner --- */
.aboutus-banner {
  padding: 56px 16px;
  background-color: #fafafa;
}

.aboutus-banner .banner-cta {
  position: relative;
  max-width: 1328px;
  width: 100%;
  min-height: 369px;
  margin: 0 auto;
  /* padding: 0px 10%; */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  border-radius: 20px;
  overflow: hidden;
  background: linear-gradient(rgba(31, 47, 79, 0.15), rgba(31, 47, 79, 0.15)), var(--desktop-bg, #333) center center/cover no-repeat;
}

@media (max-width: 480px) {
  .aboutus-banner .banner-cta {
    background: linear-gradient(rgba(31, 47, 79, 0.15), rgba(31, 47, 79, 0.15)), var(--mobile-bg, #333) center center/cover no-repeat;
  }
}

.aboutus-banner .banner-content {
  max-width: 461px;
  width: 100%;
  color: #fcfdff;
}

.aboutus-banner .banner-content h2,
.aboutus-banner .banner-content h3 {
  font-family: "Saira", sans-serif;
  font-size: 30px;
  font-weight: 600;
  line-height: 38px;
  margin: 0 0 10px 0;
}

.aboutus-banner .banner-content p {
  font-family: "Saira", sans-serif;
  font-size: 16px;
  font-weight: 400;
  margin: 0 0 30px 0;
}

/* ==========================================================================
   About Us Page Styles
   ========================================================================== */
/* --- Theme Variables --- */
/* --- Reusable Components --- */
.button-dark,
.aboutus-banner .button,
.button-light,
.aboutus-images .info-container .button,
.aboutus-main .button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 12px 24px;
  border-radius: 5px;
  text-decoration: none;
  font-family: "Saira", sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 2.1px;
  text-transform: uppercase;
  transition: all 0.2s ease;
}

.button-light,
.aboutus-images .info-container .button,
.aboutus-main .button {
  border: 1px solid #1aa3ff;
  background: #fff;
  color: #202023;
}

.button-light:hover,
.aboutus-images .info-container .button:hover,
.aboutus-main .button:hover {
  background: #1aa3ff;
  color: #fcfdff;
}

.button-dark,
.aboutus-banner .button {
  border: 1px solid #fcfdff;
  background-color: transparent;
  color: #fcfdff;
}

.button-dark:hover,
.aboutus-banner .button:hover {
  background-color: #1aa3ff;
  border-color: #1aa3ff;
}

/* --- Section: Main --- */
.aboutus-main {
  padding: 80px 16px 40px;
  background-color: #fafafa;
}

.aboutus-main .container {
  max-width: 880px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
}

.aboutus-main .divider {
  width: 56px;
  height: 4px;
  background: #1aa3ff;
  margin-bottom: 22px;
}

.aboutus-main .main-header {
  font-family: "Saira", sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.2;
  color: #1e1f1f;
  margin: 0 0 24px 0;
}

@media (min-width: 1025px) {
  .aboutus-main .main-header {
    font-size: 48px;
    line-height: 50px;
  }
}

.aboutus-main .main-content {
  font-family: "Saira", sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: #333;
  margin-bottom: 32px;
}

.aboutus-main .main-content h3 {
  color: #1e1f1f;
  font-size: 30px;
  font-weight: 600;
  line-height: 1.4;
  margin: 24px 0 16px 0;
}

.aboutus-main .main-content p {
  color: #1e1f1f;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  margin: 0 0 16px 0;
}

/* --- Section: Images --- */
.aboutus-images {
  background-color: #fafafa;
  padding: 40px 16px 80px;
}

.aboutus-images .container {
  max-width: 880px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
}

@media (min-width: 1025px) {
  .aboutus-images .container {
    flex-direction: row;
    align-items: center;
    gap: 80px;
  }
}

.aboutus-images .image-group {
  flex-shrink: 0;
  width: 100%;
  max-width: 376px;
  height: 469px;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 27px 26px 37px rgba(0, 0, 0, 0.1);
  display: grid;
}

.aboutus-images .image-group img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  grid-area: 1/1;
}

.aboutus-images .info-container {
  flex: 1;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 32px;
}

.aboutus-images .info-container .text-group h3 {
  font-family: "Saira", sans-serif;
  font-size: 30px;
  font-weight: 600;
  line-height: 38px;
  margin: 0 0 16px 0;
  color: #1e1f1f;
}

.aboutus-images .info-container .text-group p {
  font-family: "Saira", sans-serif;
  font-size: 16px;
  line-height: 1.5;
  margin: 0;
  color: #1e1f1f;
}

/* --- Section: Banner --- */
.aboutus-banner {
  padding: 56px 16px;
  background-color: #fafafa;
}

.aboutus-banner .banner-cta {
  position: relative;
  max-width: 1328px;
  width: 100%;
  min-height: 369px;
  margin: 0 auto;
  /* padding: 0px 10%; */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  border-radius: 20px;
  overflow: hidden;
  background: linear-gradient(rgba(31, 47, 79, 0.15), rgba(31, 47, 79, 0.15)), var(--desktop-bg, #333) center center/cover no-repeat;
}

@media (max-width: 480px) {
  .aboutus-banner .banner-cta {
    background: linear-gradient(rgba(31, 47, 79, 0.15), rgba(31, 47, 79, 0.15)), var(--mobile-bg, #333) center center/cover no-repeat;
  }
}

.aboutus-banner .banner-content {
  max-width: 461px;
  width: 100%;
  color: #fcfdff;
}

.aboutus-banner .banner-content h2,
.aboutus-banner .banner-content h3 {
  font-family: "Saira", sans-serif;
  font-size: 30px;
  font-weight: 600;
  line-height: 38px;
  margin: 0 0 10px 0;
}

.aboutus-banner .banner-content p {
  font-family: "Saira", sans-serif;
  font-size: 16px;
  font-weight: 400;
  margin: 0 0 30px 0;
}

/* --- Button Mixin for Reusability --- */
/* --- Culture Main Section --- */
.culture-main {
  padding: 80px 16px;
  display: flex;
  justify-content: center;
  background-color: #fafafa;
}

.culture-main .container {
  max-width: 880px;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.culture-main h2,
.culture-main h3,
.culture-main h4,
.culture-main p {
  margin: 0;
}

.culture-main .section-header .divider {
  width: 56px;
  height: 4px;
  background: #1aa3ff;
  margin-bottom: 24px;
}

.culture-main .section-header h2 {
  font-family: "Saira", sans-serif;
  font-size: 48px;
  font-weight: 700;
  line-height: 50px;
  color: #1e1f1f;
  margin-bottom: 40px;
}

.culture-main .section-subtitle {
  font-size: 30px;
  font-weight: 600;
  line-height: 38px;
  color: #1e1f1f;
  margin-bottom: 16px;
}

.culture-main .section-body {
  font-size: 16px;
  font-weight: 400;
  color: #1e1f1f;
  margin-bottom: 40px;
}

.culture-main .culture-features {
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin-bottom: 40px;
}

@media (min-width: 768px) {
  .culture-main .culture-features {
    flex-direction: row;
  }
}

.culture-main .culture-features .feature {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.culture-main .culture-features .feature img {
  width: 72px;
  height: 72px;
}

.culture-main .culture-features .feature h4 {
  font-size: 18px;
  font-weight: 600;
}

.culture-main .culture-features .feature .feature-description {
  font-size: 16px;
  font-weight: 400;
}

.culture-main .culture-cta {
  display: flex;
}

.culture-main .culture-cta .button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 12px 24px;
  border-radius: 5px;
  text-decoration: none;
  font-family: "Saira", sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 2.1px;
  text-transform: uppercase;
  transition: all 0.2s ease;
  border: 1px solid #1aa3ff;
  background: #fff;
  color: var(--Neutral-900, #202023);
}

.culture-main .culture-cta .button:hover {
  background-color: #1aa3ff;
  color: #fff;
  border-color: #1aa3ff;
}

/* --- Section: Banner --- */
.aboutus-banner {
  padding: 56px 16px;
  background-color: #fafafa;
}

.aboutus-banner .banner-cta {
  position: relative;
  max-width: 1328px;
  width: 100%;
  min-height: 369px;
  margin: 0 auto;
  /* padding: 0px 10%; */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  border-radius: 20px;
  overflow: hidden;
  background: linear-gradient(rgba(31, 47, 79, 0.15), rgba(31, 47, 79, 0.15)), var(--desktop-bg, #333) center center/cover no-repeat;
}

@media (max-width: 480px) {
  .aboutus-banner .banner-cta {
    background: linear-gradient(rgba(31, 47, 79, 0.15), rgba(31, 47, 79, 0.15)), var(--mobile-bg, #333) center center/cover no-repeat;
  }
}

.aboutus-banner .banner-content {
  max-width: 461px;
  width: 100%;
  color: #fcfdff;
}

.aboutus-banner .banner-content h2,
.aboutus-banner .banner-content h3 {
  font-family: "Saira", sans-serif;
  font-size: 30px;
  font-weight: 600;
  line-height: 38px;
  margin: 0 0 10px 0;
}

.aboutus-banner .banner-content p {
  font-family: "Saira", sans-serif;
  font-size: 16px;
  font-weight: 400;
  margin: 0 0 30px 0;
}

/* ==========================================================================
   Leadership Page Styles (1440px Boxed Layout)
   ========================================================================== */
/* --- Theme Variables --- */
/* --- General Section & Container Structure --- */
.leadership-main,
.leadership-section-2,
.leadership-section-3,
.leadership-banner {
  padding-top: 80px;
  padding-bottom: 80px;
}

.leadership-main .container,
.leadership-section-2 .container,
.leadership-section-3 .container,
.leadership-banner .container {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 16px;
  box-sizing: border-box;
}

/* --- Leadership Main Section (Section 1) --- */
.leadership-main {
  background-color: #fafafa;
}

.leadership-main .section-header {
  max-width: 880px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 24px;
  text-align: left;
}

@media (min-width: 768px) {
  .leadership-main .section-header {
    text-align: left;
  }
}

.leadership-main .divider {
  width: 56px;
  height: 4px;
  background: #1aa3ff;
  margin: 0;
}

@media (min-width: 768px) {
  .leadership-main .divider {
    margin: 0;
  }
}

.leadership-main h2 {
  font-family: "Saira", sans-serif;
  font-weight: 700;
  font-size: 48px;
  line-height: 50px;
  color: #1e1f1f;
  margin: 0;
}

.leadership-main .section-subtitle {
  font-family: "Saira", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.5;
  color: #1e1f1f;
  margin: 0;
}

/* --- Leadership Section 2 (Profiles) --- */
.leadership-section-2 {
  background-color: #f5f5f7;
}

.leadership-section-2 .container {
  display: flex;
  flex-direction: column;
  gap: 80px;
}

.leadership-section-2 .profile {
  max-width: 880px;
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 40px;
}

@media (min-width: 992px) {
  .leadership-section-2 .profile {
    flex-direction: row;
    align-items: flex-start;
    text-align: left;
    gap: 80px;
  }
}

.leadership-section-2 .profile .profile-image {
  width: 100%;
  max-width: 376px;
  height: 470px;
  border-radius: 20px;
  box-shadow: 20px 20px 30px rgba(0, 0, 0, 0.08);
  object-fit: cover;
  flex-shrink: 0;
}

.leadership-section-2 .profile .profile-content {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
  flex: 1;
}

.leadership-section-2 .profile .profile-content .profile-header {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.leadership-section-2 .profile .profile-content .profile-header .profile-name {
  font-size: 30px;
  font-weight: 600;
  line-height: 38px;
  color: #1e1f1f;
}

.leadership-section-2 .profile .profile-content .profile-header .profile-title {
  font-size: 20px;
  font-weight: 400;
  color: #62646b;
}

.leadership-section-2 .profile .profile-content .profile-bio {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  text-align: left;
  color: #1e1f1f;
  /* remove to center text */
}

/* --- Leadership Section 3 (Management) --- */
.leadership-section-3 {
  background-color: #e9eaf0;
  text-align: center;
}

.leadership-section-3 .section-title {
  font-size: 38px;
  font-weight: 700;
  line-height: 50px;
  color: #1e1f1f;
  margin: 0 0 40px 0;
}

.leadership-section-3 .management-grid {
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 40px;
}

.leadership-section-3 .management-grid .management-item {
  flex-basis: calc(50% - 20px);
  max-width: 300px;
}

@media (min-width: 992px) {
  .leadership-section-3 .management-grid .management-item {
    flex-basis: calc(33.333% - 27px);
  }
}

@media (min-width: 1200px) {
  .leadership-section-3 .management-grid .management-item {
    flex-basis: calc(25% - 30px);
  }
}

.leadership-section-3 .management-grid .management-item .management-name {
  font-size: 24px;
  font-weight: 300;
  color: #000;
  margin-bottom: 4px;
}

.leadership-section-3 .management-grid .management-item .management-title {
  font-size: 16px;
  font-weight: 400;
  color: #4a4b52;
}

/* --- Section: Banner --- */
.aboutus-banner {
  padding: 56px 16px;
  background-color: #fafafa;
}

.aboutus-banner .banner-cta {
  position: relative;
  max-width: 1328px;
  width: 100%;
  min-height: 369px;
  margin: 0 auto;
  /* padding: 0px 10%; */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  border-radius: 20px;
  overflow: hidden;
  background: linear-gradient(rgba(31, 47, 79, 0.15), rgba(31, 47, 79, 0.15)), var(--desktop-bg, #333) center center/cover no-repeat;
}

@media (max-width: 480px) {
  .aboutus-banner .banner-cta {
    background: linear-gradient(rgba(31, 47, 79, 0.15), rgba(31, 47, 79, 0.15)), var(--mobile-bg, #333) center center/cover no-repeat;
  }
}

.aboutus-banner .banner-content {
  max-width: 461px;
  width: 100%;
  color: #fcfdff;
}

.aboutus-banner .banner-content h2,
.aboutus-banner .banner-content h3 {
  font-family: "Saira", sans-serif;
  font-size: 30px;
  font-weight: 600;
  line-height: 38px;
  margin: 0 0 10px 0;
}

.aboutus-banner .banner-content p {
  font-family: "Saira", sans-serif;
  font-size: 16px;
  font-weight: 400;
  margin: 0 0 30px 0;
}

.contact-main {
  padding: 80px 168px;
  /* LEFT COLUMN */
  /* RIGHT COLUMN: FORM */
  /* Responsive breakpoints */
}

.contact-main .container {
  width: 1104px;
  margin: 0 auto;
  display: flex;
  gap: 104px;
  align-items: flex-start;
}

.contact-main .contact-content {
  width: 500px;
  display: flex;
  flex-direction: column;
}

.contact-main .contact-content .divider {
  width: 56px;
  height: 4px;
  background: #1aa3ff;
  margin-bottom: 24px;
}

.contact-main .contact-content .section {
  display: flex;
  flex-direction: column;
}

.contact-main .contact-content .section h1 {
  margin: 0 0 46px 0;
  font-family: Saira, sans-serif;
  font-weight: 700;
  font-size: 48px;
  line-height: 50px;
  color: #1e1f1f;
}

.contact-main .contact-content .section h3 {
  margin: 0 0 16px 0;
  font-family: Saira, sans-serif;
  font-weight: 600;
  font-size: 30px;
  line-height: 38px;
  color: #1e1f1f;
}

.contact-main .contact-content .section p {
  margin: 0 0 24px 0;
  font-family: Saira, sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  color: #1e1f1f;
}

.contact-main .contact-content .section a.career-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-family: Saira, sans-serif;
  font-weight: 700;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 2.1px;
  color: #1aa3ff;
  text-decoration: none;
}

.contact-main .contact-content .section.career-opportunities .career-link-wrapper {
  margin-bottom: 16px;
}

.contact-main .contact-content .section.career-opportunities .career-link-wrapper .career-link .icon-arrow {
  display: inline-block;
  width: 16px;
  height: 16px;
  background: url("../img/external_link_icon.webp") no-repeat center center;
  background-size: contain;
}

.contact-main .contact-content .section:first-of-type h3+p {
  margin-bottom: 46px;
}

.contact-main .contact-form {
  width: 420px;
  padding: 40px;
  background: #f5f5f7;
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  box-sizing: border-box;
}

.contact-main .contact-form form {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0 !important;
  padding: 0 !important;
}

.contact-main .contact-form form .gfield {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0 !important;
  padding: 0 !important;
}

.contact-main .contact-form form .gfield label {
  font-family: Saira, sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: black;
  margin: 0;
  padding: 0;
}

.contact-main .contact-form form .gfield input[type=text],
.contact-main .contact-form form .gfield input[type=email],
.contact-main .contact-form form .gfield input[type=tel] {
  width: 100% !important;
  max-width: 100% !important;
  height: 52px !important;
  padding: 12px;
  font-family: Saira, sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: black;
  border: 1px solid #dadbe0;
  border-radius: 10px;
  box-sizing: border-box;
}

.contact-main .contact-form form .gfield textarea {
  width: 100% !important;
  max-width: 100% !important;
  height: 120px !important;
  padding: 12px;
  font-family: Saira, sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: black;
  border: 1px solid #dadbe0;
  border-radius: 10px;
  box-sizing: border-box;
  resize: none;
}

.contact-main .contact-form form .gform_footer {
  display: flex;
  align-items: center;
  gap: 32px;
  margin: 0 !important;
  padding: 0 !important;
}

.contact-main .contact-form form .gform_footer input[type=submit] {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 46px;
  padding: 12px 24px;
  gap: 4px;
  border-radius: 5px;
  border: 1px solid #1aa3ff;
  background: #fff;
  color: #202023;
  font-family: Saira, sans-serif;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2.1px;
  cursor: pointer;
  margin: 0 !important;
}

.contact-main .contact-form form .gform_footer input[type=submit]:hover {
  background-color: #1aa3ff;
  color: #fff;
  border-color: #1aa3ff;
}

@media (max-width: 1440px) {
  .contact-main {
    padding: 80px 80px;
  }

  .contact-main .container {
    width: 100%;
    max-width: 1104px;
  }
}

@media (max-width: 1200px) {
  .contact-main {
    padding: 60px 40px;
  }

  .contact-main .container {
    gap: 60px;
  }

  .contact-main .contact-content {
    width: 450px;
  }

  .contact-main .contact-form {
    width: 380px;
  }
}

@media (max-width: 1024px) {
  .contact-main {
    padding: 60px 40px;
  }

  .contact-main .container {
    flex-direction: column;
    gap: 40px;
    width: 100%;
  }

  .contact-main .contact-content {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
  }

  .contact-main .contact-form {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    padding: 40px;
  }
}

@media (max-width: 768px) {
  .contact-main {
    padding: 40px 20px;
  }

  .contact-main .container {
    gap: 32px;
  }

  .contact-main .contact-content {
    max-width: 100%;
  }

  .contact-main .contact-content .section h1 {
    font-size: 36px;
    line-height: 42px;
    margin-bottom: 32px;
  }

  .contact-main .contact-content .section h3 {
    font-size: 24px;
    line-height: 32px;
    margin-bottom: 12px;
  }

  .contact-main .contact-content .section p {
    font-size: 15px;
    line-height: 22px;
    margin-bottom: 20px;
  }

  .contact-main .contact-content .section a.career-link {
    font-size: 13px;
    letter-spacing: 1.5px;
  }

  .contact-main .contact-content .section:first-of-type h3+p {
    margin-bottom: 32px;
  }

  .contact-main .contact-form {
    max-width: 100%;
    padding: 32px 20px;
  }

  .contact-main .contact-form form .gfield label {
    font-size: 15px;
  }

  .contact-main .contact-form form .gfield input[type=text],
  .contact-main .contact-form form .gfield input[type=email],
  .contact-main .contact-form form .gfield input[type=tel] {
    height: 48px !important;
    font-size: 15px;
  }

  .contact-main .contact-form form .gfield textarea {
    height: 100px !important;
    font-size: 15px;
  }

  .contact-main .contact-form form .gform_footer {
    gap: 20px;
  }

  .contact-main .contact-form form .gform_footer input[type=submit] {
    height: 42px;
    padding: 10px 20px;
    font-size: 13px;
    letter-spacing: 1.5px;
  }
}

@media (max-width: 480px) {
  .contact-main {
    padding: 80px 16px;
  }

  .contact-main .container {
    gap: 24px;
  }

  .contact-main .contact-content .divider {
    width: 40px;
    height: 3px;
    margin-bottom: 16px;
  }

  .contact-main .contact-content .section h1 {
    font-size: 28px;
    line-height: 34px;
    margin-bottom: 24px;
  }

  .contact-main .contact-content .section h3 {
    font-size: 20px;
    line-height: 28px;
    margin-bottom: 10px;
  }

  .contact-main .contact-content .section p {
    font-size: 14px;
    line-height: 20px;
    margin-bottom: 16px;
  }

  .contact-main .contact-content .section a.career-link {
    font-size: 12px;
    letter-spacing: 1px;
  }

  .contact-main .contact-content .section:first-of-type h3+p {
    margin-bottom: 24px;
  }

  .contact-main .contact-content .section.career-opportunities .career-link-wrapper {
    margin-bottom: 12px;
  }

  .contact-main .contact-form {
    padding: 24px 16px;
  }

  .contact-main .contact-form form {
    gap: 6px;
  }

  .contact-main .contact-form form .gfield {
    gap: 6px;
  }

  .contact-main .contact-form form .gfield label {
    font-size: 14px;
  }

  .contact-main .contact-form form .gfield input[type=text],
  .contact-main .contact-form form .gfield input[type=email],
  .contact-main .contact-form form .gfield input[type=tel] {
    height: 44px !important;
    padding: 10px;
    font-size: 14px;
  }

  .contact-main .contact-form form .gfield textarea {
    height: 90px !important;
    padding: 10px;
    font-size: 14px;
  }

  .contact-main .contact-form form .gform_footer {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }

  .contact-main .contact-form form .gform_footer input[type=submit] {
    width: 100%;
    height: 40px;
    padding: 8px 16px;
    font-size: 12px;
    letter-spacing: 1px;
  }
}

/* BOTTOM IMAGE */
.contact-image {
  width: 100%;
  height: 465px;
  margin: 0;
  padding: 0;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

@media (max-width: 768px) {
  .contact-image {
    height: 300px;
  }
}

@media (max-width: 480px) {
  .contact-image {
    height: 200px;
  }
}

/* FORM CONFIRMATION */
.contact-confirmation {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.contact-confirmation h3 {
  margin: 0;
  font-family: "Saira", sans-serif;
  font-weight: 700;
  font-size: 30px;
  line-height: 38px;
  color: #1e1f1f;
}

.contact-confirmation p {
  margin: 0;
  font-family: "Saira", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  color: #1e1f1f;
}

.contact-confirmation a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 12px 24px;
  border-radius: 5px;
  border: 1px solid #1aa3ff;
  background: #fff;
  text-decoration: none;
  color: #202023;
  font-family: "Saira", sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 2.1px;
  text-transform: uppercase;
  margin-top: 0;
}

.contact-confirmation a:hover {
  background-color: #1aa3ff;
  color: #fff;
  border-color: #1aa3ff;
}

.contact-confirmation img {
  max-width: 300px;
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}

@media (max-width: 768px) {
  .contact-confirmation {
    gap: 12px;
  }

  .contact-confirmation h3 {
    font-size: 24px;
    line-height: 32px;
  }

  .contact-confirmation p {
    font-size: 15px;
    line-height: 22px;
  }

  .contact-confirmation a {
    padding: 10px 20px;
    font-size: 13px;
    letter-spacing: 1.5px;
  }

  .contact-confirmation img {
    max-width: 250px;
  }
}

@media (max-width: 480px) {
  .contact-confirmation {
    gap: 10px;
  }

  .contact-confirmation h3 {
    font-size: 20px;
    line-height: 28px;
  }

  .contact-confirmation p {
    font-size: 14px;
    line-height: 20px;
  }

  .contact-confirmation a {
    padding: 8px 16px;
    font-size: 12px;
    letter-spacing: 1px;
  }

  .contact-confirmation img {
    max-width: 200px;
  }
}

/* --- Careers Page Styles --- */
.open-positions {
  max-width: 1200px;
  /* min-height: 400px; */
  margin: 0 auto;
  padding: 0 20px 30px 30px;
}

.career-listing {
  padding: 10px 0;
  border-bottom: 1px solid #ccced3;
}

.position-title {
  color: #242424;
  font-size: 24px;
  font-weight: 600;
  display: block;
  margin-bottom: 8px;
  text-decoration: none;
}

.type-location {
  font-size: 18px;
  color: #242424;
  display: block;
}

.title-link {
  text-decoration: none;
}

.title-link:hover .position-title {
  text-decoration: underline;
}

.careers-content {
  max-width: 1200px;
  margin: 0 auto 30px;
  padding: 0;
}

.careers-content p {
  margin: 0 0 16px;
}

.careers-content h2 {
  margin: 24px 0 12px;
}

/* --- Other Career Opportunities Section (High Specificity) --- */
.wrapper .other-career-opportunities {
  max-width: 1200px;
  margin: 60px auto 60px;
  padding: 0 20px 60px 30px;
}

.wrapper .other-career-opportunities .inner-page-holder {
  width: 100%;
}

.wrapper .other-career-opportunities .opportunities-text {
  margin-bottom: 32px;
}

.wrapper .other-career-opportunities .opportunities-text p {
  margin: 0 0 16px;
  color: #242424;
  font-size: 18px;
  line-height: 1.6;
}

.wrapper .other-career-opportunities .opportunity-links {
  display: flex;
  flex-direction: column;
  gap: 16px 32px;
}

.wrapper .other-career-opportunities .company-link-wrapper {
  display: flex;
  align-items: center;
  gap: 8px;
}

.wrapper .other-career-opportunities .opportunity-link {
  color: #242424;
  font-size: 18px;
  font-weight: 600;
  text-decoration: none;
  transition: text-decoration 0.2s ease;
}

.wrapper .other-career-opportunities .opportunity-link:hover {
  text-decoration: underline;
}

.wrapper .other-career-opportunities .icon-arrow {
  display: inline-block;
  width: 10px;
  height: 10px;
  background: url("/path/to/arrow-icon.svg") no-repeat center center;
  background-size: contain;
  flex-shrink: 0;
}

/* Responsive */
@media (max-width: 768px) {
  .wrapper .other-career-opportunities {
    padding: 0 20px 40px;
  }

  .wrapper .other-career-opportunities .opportunity-links {
    flex-direction: column;
    gap: 12px;
  }

  .wrapper .other-career-opportunities .opportunity-link {
    font-size: 16px;
  }
}


/* --- Single Career Post Styles --- */
.career-single {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px 60px;
}

.career-single .inner-page-holder {
  max-width: 1100px;
  margin: 0 auto;
}

.blog-title {
  color: #242424;
  font-size: 32px;
  font-weight: 600;
  margin-bottom: 16px;
}

.type-place {
  font-size: 18px;
  color: #242424;
  margin-bottom: 32px;
}

.info-area {
  font-size: 16px;
  line-height: 1.6;
  color: #333;
  margin-bottom: 40px;
}

/* .disclaimer {
  font-size: 14px;
  color: #666;
  border-top: 1px solid #ccced3;
  margin-top: 40px;
  padding-top: 20px;
} */
/* --- Apply Now Button --- */
.apply-now-button {
  margin-bottom: 32px;
}

.apply-now-button .button,
.bottom-buttons .left-side .button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 4px;
  padding: 12px 24px;
  background-color: #1aa3ff;
  /* background: #fff; */
  border: 1px solid #1aa3ff;
  border-radius: 5px;
  text-transform: uppercase;
  font-family: "Saira", sans-serif;
  font-weight: 700;
  font-size: 14px;
  letter-spacing: 2.1px;
  color: var(--Neutral-900, #202023);
  text-decoration: none;
  transition: background-color 0.2s ease;
}

.apply-now-button .button:hover,
.bottom-buttons .left-side .button:hover {
  /* background-color: #1aa3ff; */
  color: #fff;
}

/* --- Bottom buttons section --- */
.bottom-buttons {
  display: flex;
  justify-content: space-between;
  align-items: center;
  /* border-top: 1px solid #ccced3; */
  padding-top: 24px;
  margin-top: 40px;
}

.bottom-buttons .right-side a {
  color: #242424;
  font-size: 16px;
  text-decoration: underline;
}

.bottom-buttons .right-side a:hover {
  text-decoration: none;
}

/* @import "_team.scss";
@import "_blog.scss"; */
/* =======================================
   GLOBAL STYLES
   ======================================= */
#header1 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  background: transparent;
  box-shadow: none;
}

.hero-bg {
  position: relative;
  min-height: 100vh;
  display: flex;
  align-items: center;
  background-image: url("../img/background_hero.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 120px 0;
}

.hero-bg::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  z-index: 0;
}

.hero-bg .container {
  position: relative;
  z-index: 2;
}

.hero-bg h1 {
  color: #fff;
}

.hero-bg .buttons a {
  margin-right: 1rem;
}

body {
  font-family: "Saira", sans-serif;
  margin: 0;
  /* font-size: 18px; */
  background: #ffffff;
  /* --------- GLOBAL TEXT STYLES --------- */
  /* h3 {
    align-self: stretch;
    color: #1e1f1f;

    font-family: Saira;
    font-size: 30px;
    font-style: normal;
    font-weight: 600;
    line-height: 38px;
    margin: 0;
  } */
  /* p {
    align-self: stretch;
    color: #1e1f1f;


    font-family: Saira;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin: 0;
  }  */
  /* --------- LINKS --------- */
  /* .button {
    display: inline-block;
    padding: $halfpadding $doublepadding;
    text-decoration: none;
    text-transform: uppercase;
    border: 1px solid;

    &.primary {
      background: $gray;
      color: $black;
      border-color: $darkgray;

      &:hover {
        background: $darkgray;
        border-color: $darkgray;
        color: $white;
      }
    }

    &.secondary {
      background: $white;
      color: $darkgray;
      border-color: $darkgray;

      &:hover {
        background: $darkgray;
        border-color: $darkgray;
        color: $white;
      }
    }
  } */
  /* --------- GLOBAL SECTION STYLES --------- */
  /*  section { */
  /* padding: 0 $padding; */
  /* *:first-child {
      margin-top: 0;
    }

    *:last-child {
      margin-bottom: 0;
    } */
  /* &.gray {
      background: $lightgray;
    }

    &.notop {
      padding-top: 0;
    }

    &.nobottom {
      padding-bottom: 0;
    } */
  /* img {
      display: block;
    } */
  /* } */
  /* --------- LIST STYLES --------- */
  /* --------- BREADCRUMBS --------- */
}

body.active {
  overflow-y: hidden;
}

body h1,
body h2,
body h3 {
  font-family: "Saira", sans-serif;
}

body h1 {
  font-size: 40px;
  text-transform: uppercase;
}

body h2 {
  font-size: 35px;
}

body a {
  color: #1aa3ff;
  transition: all 0.2s ease;
}

body hr.anchor {
  border: none;
  margin: 0;
}

body .checklist {
  padding: 0;
  list-style: none;
}

body .checklist li {
  display: flex;
  align-items: flex-start;
  margin-bottom: 24px;
  font-weight: 500;
}

body .checklist li::before {
  content: "";
  display: inline-block;
  background: url(../img/check.svg);
  min-width: 24px;
  min-height: 24px;
  width: 24px;
  height: 24px;
  margin-right: 8px;
  margin-top: -2px;
}

body ol,
body ul {
  padding-left: 20px;
}

body ol.two,
body ul.two {
  columns: 2;
}

body ol.three,
body ul.three {
  columns: 3;
}

body .breadcrumbWrapper {
  max-width: 1200px;
  margin: 0 auto;
}

@media (max-width: 1120px) {
  body .breadcrumbWrapper {
    padding: 0 16px;
  }
}

/* .our-companies {
  padding: 60px 0;
} */
.our-companies .top-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 40px;
}

/* .our-companies h2 {
  margin: 0;
  font-size: 2rem;
} */
.our-companies .wp-block-button {
  margin: 0;
}

#footer1 .top {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  justify-content: flex-start;
  align-items: center;
}

#footer1 .top a {
  text-decoration: none;
  color: #131515;
  margin-right: 1.5rem;
}

#footer1 .top a:hover {
  color: #000000;
}

#footer1 .bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 2rem;
}

#footer1 .bottom p,
#footer1 .bottom .copy-disclaimer {
  margin: 0;
}

html {
  scroll-behavior: smooth;
}

/* ================================
   INNER PAGE TITLE
   ================================ */
/* header#header1.inner-header #title .container h1.inner-page-title {
  color: var(--Neutral-00, #fcfdff);
  font-family: Saira;
  font-size: 60px;
  font-style: normal;
  font-weight: 700;
  line-height: 56px; 
  text-transform: uppercase;
  margin: 0;
} */
/*# sourceMappingURL=styles 2.css.map */