/* =Root Variables
========================================================================================*/
:root {
  --primary: #0275d8;
  --dark: #1d1d1d;
  --text: #2a2a2a;
  --muted: #74818d;
  --muted-text: #5d666d;
  --body-text: #404951;
  --page-bg: #ececec;
  --light-bg: #f4f4f4;
  --section-bg: #f6f6f6;
  --nav-bg: #f2f2f2;
  --off-white: #fbfbfb;
  --white: #ffffff;
  --black: #000;
  --border: #ddd;
  --border-light: #e6e6e6;
  --footer-divider: #85919a;
  --social-bg: #323232;
  --store-bg: #2f2f2f;
  --input-bg: #e9e9e9;
  --star: #f89d00;
  --color-error: #EF4444;
  --color-success: #16A34A;
  --color-warning: #FACC15;
  --wrap: 1548px;
  --wrapspace: 90px;
  --radius-default: 2px;
  --font-primary: "Inter", sans-serif;
  --font-secondary: "Inter", sans-serif;
  --font-cta-button: "Inter", sans-serif;
  --transition-default: 300ms ease;
}


/* =Base
========================================================================================*/
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: auto;
}

body {
  font-family: var(--font-secondary);
  background: var(--page-bg);
  color: var(--dark);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

img {
  width: 100%;
  height: auto;
  display: block;
}

a {
  color: inherit;
  text-decoration: none;
  transition: opacity var(--transition-default), color var(--transition-default);
}

button {
  font-family: inherit;
  cursor: pointer;
  border: none;
  background: none;
}

ul {
  list-style: none;
}

.site-main {
  width: 100%;
  /* overflow-x: hidden; */
}

.wrap {
  max-width: calc(var(--wrap) + (var(--wrapspace) * 2));
  width: 100%;
  margin: 0 auto;
  padding-left: var(--wrapspace);
  padding-right: var(--wrapspace);
}

.icon-row {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
}

.row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 40px;
}

.content-area {
  flex: 1;
  min-width: 0;
}

.image-area {
  flex-shrink: 0;
}

.heading-row {
  margin-bottom: 20px;
}

.section-heading {
  font-family: var(--font-primary);
  font-size: clamp(2rem, 1.4rem + 1.8vw, 2.875rem);
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: -0.92px;
  color: var(--text);
}

.sub-heading {
  font-family: var(--font-primary);
  font-size: 18px;
  font-weight: 600;
  color: var(--dark);
  margin-bottom: 20px;
}

.section-lead {
  font-size: clamp(1.125rem, 1rem + 0.5vw, 1.625rem);
  line-height: 1.5;
  color: var(--dark);
}

.section-divider {
  height: 1px;
  background: var(--border);
  margin: 80px 0;
}

.section-row {
  padding: 120px 0;
}

.section-row-sm {
  padding: 100px 0;
}

.section-row-sm-top {
  padding-top: 100px;
}

.section-row-sm-bottom {
  padding-bottom: 100px;
}

@media screen and (max-width: 1200px) {
  .section-row {
    padding: 80px 0;
  }

  .section-row-sm {
    padding: 65px 0;
  }

  .section-row-sm-top {
    padding-top: 65px;
  }

  .section-row-sm-bottom {
    padding-bottom: 65px;
  }
}

@media screen and (max-width: 767px) {
  .section-row {
    padding: 60px 0;
  }

  .section-row-sm {
    padding: 50px 0;
  }

  .section-row-sm-top {
    padding-top: 50px;
  }

  .section-row-sm-bottom {
    padding-bottom: 50px;
  }
}


.pt-0 {
  padding-top: 0;
}

.pb-0 {
  padding-bottom: 0;
}

/* =Scroll Reveal
========================================================================================*/
.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition:
    opacity 700ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 700ms cubic-bezier(0.22, 1, 0.36, 1);
}

.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.reveal-delay-1 {
  transition-delay: 100ms;
}

.reveal-delay-2 {
  transition-delay: 200ms;
}

.reveal-delay-3 {
  transition-delay: 300ms;
}

.reveal-delay-4 {
  transition-delay: 400ms;
}


/* =Buttons
========================================================================================*/
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 21px 32px;
  border-radius: var(--radius-default);
  font-family: var(--font-cta-button);
  font-size: 20px;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  background: var(--primary);
  color: var(--white);
  transition: all 300ms ease;
}

.button:hover {
  background: var(--dark);
}

.button img {
  width: 15px;
  height: 15px;
  flex-shrink: 0;
  object-fit: contain;
  transition: all 300ms ease;
  /* margin-top: 2px; */
}

.button.btn-secondary {
  background: var(--dark);
  font-weight: 500;
}

.button.btn-secondary:hover {
  background: var(--primary);
}

.button.btn-outline {
  background: transparent;
  color: var(--dark);
  box-shadow: none;
}

.button.btn-outline:hover {
  color: var(--primary);
}

.button.btn-outline:hover img,
.button.btn-light:hover img {
  transform: translateX(2px);
}

.button.btn-light {
  background: transparent;
  color: var(--white);
  padding-left: 0;
  padding-right: 0;
}

.button.btn-light:hover {
  box-shadow: none;
  opacity: 0.85;
}

.button.btn-hero-primary {
  padding: 16px 20px;
  font-size: 16px;
  font-weight: 500;
}

.button.button-sm {
  padding: 10px 12px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.28px;
}

.btn-group {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
}

.button.login-btn {
  padding: 14px 20px;
  font-size: 16px;
  font-weight: 500;
  gap: 10px;
  background-color: #DBDBDB;
  color: #1D1D1D;
}

.button.login-btn:hover {
  background-color: #fff;
}

.button.login-btn img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  margin-top: 1px;
}


/* =Header
========================================================================================*/
/* top body padding */
body {
  padding-top: 109px;
}


.header-section {
  background: var(--nav-bg);
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 200;
  border-bottom: 1px solid var(--border);
  overflow: visible;
  transition:
    background var(--transition-default),
    box-shadow var(--transition-default);
}

.header-section.header-scrolled {
  background: rgba(242, 242, 242, 0.97);
  backdrop-filter: blur(8px);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}

.header-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 30px 0;
  position: relative;
  transition: all 350ms ease;
}

.header-section.header-scrolled .header-row {
  padding: 16px 0;
}

.header-logo img {
  width: 187px;
  height: 33px;
  object-fit: contain;
  object-position: left center;
}

.nav-menu {
  display: flex;
  align-items: center;
  gap: 82px;
}

.nav-dropdown-item {
  position: relative;
}

.nav-trigger,
.nav-link {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 17px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.34px;
  padding: 6px 0;
  color: var(--dark);
  transition: color var(--transition-default);
}

.nav-trigger:hover,
.nav-link:hover {
  color: var(--primary);
}

.nav-chevron {
  width: 13px;
  height: 7px;
  object-fit: contain;
  transform: rotate(180deg);
  transition: transform var(--transition-default);
}

.nav-dropdown-item.is-open .nav-chevron {
  transform: rotate(0deg);
}

.nav-dropdown {
  position: absolute;
  top: calc(100% + 50px);
  left: 50%;
  transform: translateX(-50%) translateY(8px);
  min-width: 200px;
  background: var(--white);
  background: linear-gradient(180deg, #CADFF2 0%, #F2F2F2 20.19%);
  border: 1px solid var(--border);
  border-radius: 5px;
  box-shadow: 0px 4px 34px 0px #00000040;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition:
    opacity var(--transition-default),
    transform var(--transition-default),
    visibility var(--transition-default);
  z-index: 300;
}

.nav-dropdown-item.is-open .nav-dropdown {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}

.nav-dropdown a {
  display: block;
  padding: 20px 24px;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
  text-transform: none;
  letter-spacing: 0.02em;
  color: var(--dark);
  border-bottom: 1px solid #DDDDDD;
  transition: background var(--transition-default), color var(--transition-default);
}

.nav-dropdown a:hover {
  background: var(--light-bg);
  color: var(--primary);
  opacity: 1;
}

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

.header-search-wrap {
  position: relative;
}

.header-search {
  width: 26px;
  height: 26px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform var(--transition-default);
}

.header-search:hover {
  transform: scale(1.08);
}

.header-search.is-active {
  transform: scale(1.08);
}

.header-search img {
  width: 26px;
  height: 26px;
  object-fit: contain;
}

.header-search-popup {
  position: absolute;
  top: calc(100% + 14px);
  right: 0;
  width: 350px;
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 4px;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
  padding: 10px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(8px);
  transition:
    opacity var(--transition-default),
    transform var(--transition-default),
    visibility var(--transition-default);
  z-index: 350;
}

.header-search-popup.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

.header-search-form {
  display: flex;
  align-items: center;
  gap: 8px;
}

.header-search-form input {
  flex: 1;
  min-width: 0;
  height: 40px;
  padding: 0 12px;
  border: 1px solid var(--border);
  border-radius: 2px;
  font-size: 15px;
  font-family: inherit;
  color: var(--dark);
  background: var(--white);
}

.header-search-form input::placeholder {
  color: #757575;
}

.header-search-form input:focus {
  outline: none;
  border-color: var(--primary);
}

.header-search-submit {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--primary);
  border: none;
  border-radius: 2px;
  cursor: pointer;
  transition: background var(--transition-default);
}

.header-search-submit:hover {
  background: #0268c4;
}

.header-search-submit img {
  width: 18px;
  height: 18px;
  object-fit: contain;
  filter: brightness(0) invert(1);
}

.menu-toggle {
  display: none;
  flex-direction: column;
  gap: 5px;
  padding: 8px;
}

.menu-toggle span {
  display: block;
  width: 24px;
  height: 2px;
  background: var(--dark);
}


/* =Hero
========================================================================================*/
.hero-section {
  position: relative;
  min-height: 1180px;
  overflow: hidden;
  background: var(--white);
}

.hero-section .wrap {
  max-width: calc(var(--wrap) + (var(--wrapspace) * 2));
}

.hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.6;
}

.hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,
      rgba(2, 117, 216, 0.2) 0%,
      rgba(255, 255, 255, 0.7) 40%,
      rgb(219, 219, 219) 88.46%,
      rgb(213, 224, 233) 100%);
}

.hero-row {
  position: relative;
  z-index: 1;
  align-items: center;
  min-height: 1180px;
  padding-bottom: 230px;
  max-width: 1920px;
  margin: 0 auto;

}

.hero-content {
  /* padding-left: 90px;
  max-width: 50%; */
  padding-left: 70px;
  max-width: 827px;
  margin-left: auto;
}

.hero-title {
  font-family: var(--font-primary);
  font-size: 58px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -0.58px;
  color: #000;
  margin-bottom: 30px;
}

.hero-title strong {
  font-weight: 700;
}

.hero-sub {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.4;
  opacity: 0.8;
  max-width: 619px;
  margin-bottom: 108px;
}

.hero-content .btn-group {
  margin-top: 0;
}

.hero-image-wrap {
  /* width: 631px; */
  width: 840px;
  max-width: 45%;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
}

.hero-image-wrap img {
  width: 100%;
  max-width: 631px;
  max-height: 708px;
  object-fit: contain;
  /* margin-left: auto; */
  margin: 0 auto;

}

.hero-image-wrap::after {
  content: "";
  background-image: url('../assets/images/hero-shape.webp');
  width: 840px;
  height: 736px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}

body.home .hero-image-wrap::after {
  content: "";
  background-image: url('../images/hero-shape.webp');
}

/* =Market Shift (includes Trusted bar)
========================================================================================*/
.market-shift-section {
  position: relative;
  z-index: 5;
  margin-top: -265px;
  padding-bottom: 0;
}

.market-shift-box {
  /* max-width: var(--wrap); */
  margin: 0 auto;
  /* background: var(--white); */
}

.trusted-inner {
  display: flex;
  align-items: center;
  background: var(--white);
  border-bottom: 1px solid var(--border);
  min-height: 122px;
}

.trusted-label {
  flex-shrink: 0;
  width: 387px;
  padding: 50px 60px;
  border-right: 1px solid var(--border-light);
  font-size: 18px;
  font-weight: 500;
  text-align: center;
  color: #0c0c0c;
}

.trusted-marquee {
  flex: 1;
  overflow: hidden;
  padding: 38px 0;
  mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
}

.trusted-track {
  display: flex;
  width: max-content;
  animation: marquee-scroll 35s linear infinite;
}

.trusted-track:hover {
  animation-play-state: paused;
}

.trusted-logos {
  display: flex;
  align-items: center;
  gap: 89px;
  padding: 0 40px;
  flex-shrink: 0;
}

.trusted-logos img {
  width: auto;
  height: 45px;
  max-width: 221px;
  object-fit: contain;
  flex-shrink: 0;
}

@keyframes marquee-scroll {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-50%);
  }
}

.market-shift-intro {
  background: var(--section-bg);
  padding: 100px 90px 0;
}

.market-shift-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: start;
  gap: 20px;
  margin-top: 20px;
  padding-bottom: 100px;
}

.market-shift-row .content-area {
  flex: 0 0 50%;
  max-width: 684px;
}

.market-shift-row .section-heading {
  font-size: 46px;
  letter-spacing: -0.92px;
  color: var(--dark);
}

.market-shift-row .section-lead {
  font-size: 28px;
  line-height: 1.4;
  font-weight: 400;
}

.market-shift-row .section-lead strong {
  font-weight: 600;
}

.pillars-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  justify-content: stretch;
  border-top: 1px solid var(--border);
}

.pillars-grid .feature-card {
  background: var(--light-bg);
  padding: 100px 60px;
  min-height: 455px;
  border-right: 1px solid var(--border);
}

.pillars-grid .feature-card:last-child {
  border-right: none;
}


/* =Feature Card
========================================================================================*/
.feature-card {
  display: flex;
  flex-direction: column;
  gap: 35px;
}

.feature-icon {
  width: 60px;
  height: 60px;
  object-fit: contain;
  flex-shrink: 0;
}

.pillars-grid .feature-icon {
  width: 50px;
  height: 50px;
  border-radius: 100px;
}

.feature-title {
  font-size: 26px;
  font-weight: 500;
  line-height: 1.2;
  color: var(--dark);
}

.pillars-grid .feature-title {
  font-size: 28px;
}

.feature-text {
  font-size: 18px;
  line-height: 1.5;
  color: var(--dark);
}


/* =Acquisition
========================================================================================*/
.acquisition-section {
  padding: 0;
  /* background: var(--white); */
}

.acquisition-section .wrap {
  max-width: calc(var(--wrap) + (var(--wrapspace) * 2));
}

.acquisition-row,
.stats-row,
.resources-row,
.subscribe-row,
.cta-row {
  display: grid;
  justify-content: initial;
  gap: 0;
}

.acquisition-row {
  grid-template-columns: 774px 774px;
  max-width: var(--wrap);
  margin: 0 auto;
  align-items: stretch;
}

.acquisition-content {
  padding: 160px 120px 160px 90px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 40px;
  min-height: 942px;
}

.acquisition-content .sub-heading {
  font-weight: 500;
}

.acquisition-content .section-heading {
  margin-bottom: 40px;
}

.acquisition-content .section-lead {
  color: #000;
  font-weight: 400;
}

.acquisition-section .features-grid {
  display: grid;
  grid-template-columns: 387px 387px;
  grid-template-rows: auto auto;
}

.acquisition-section .feature-card {
  padding: 160px 50px 50px;
  gap: 30px;
}

.acquisition-section .feature-card:nth-child(3),
.acquisition-section .feature-card:nth-child(4) {
  padding-top: 70px;
  padding-bottom: 160px;
}


/* =Process
========================================================================================*/
.process-section {
  margin: 0;
  padding: 0;
}

.process-section .wrap {
  max-width: calc(var(--wrap) + (var(--wrapspace) * 2));
}

.process-inner-box {
  background: var(--light-bg);
  padding-top: 120px;
  padding-left: var(--wrapspace);
  padding-right: var(--wrapspace);
  border-bottom: 1px solid var(--border);
}

.process-heading {
  display: grid;
  grid-template-columns: 664px 664px;
  gap: 40px;
  align-items: end;
  margin-bottom: 80px;
  padding-top: 40px;
}

.process-heading .section-lead {
  font-weight: 400;
}

.process-steps-grid {
  display: grid;
  grid-template-columns: repeat(4, 297px);
  gap: 60px;
  padding-bottom: 80px;
}

.process-step {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.step-number {
  width: 35px;
  height: 35px;
  border-radius: 50%;
  background: var(--primary);
  color: var(--white);
  font-size: 19px;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
}

.step-title {
  font-size: 32px;
  font-weight: 500;
  color: var(--dark);
}

.step-text {
  font-size: 20px;
  line-height: 1.5;
  color: var(--dark);
  font-weight: 400;
}


/* =Dealership
========================================================================================*/
.dealership-section {
  margin: 0;
  padding: 0;
  margin-bottom: 120px;
}

.dealership-section .wrap {
  max-width: calc(var(--wrap) + (var(--wrapspace) * 2));
}

.dealership-inner-box {
  background: var(--light-bg);
  padding-top: 80px;
  padding-left: var(--wrapspace);
  padding-right: var(--wrapspace);
  padding-bottom: 120px;
}

.dealership-heading {
  margin-bottom: 20px;
}

.dealership-grid {
  display: grid;
  grid-template-columns: repeat(2, 644px);
  gap: 80px;
  row-gap: 80px;
  padding-top: 60px;
}

.dealership-card {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.dealership-image-wrap {
  height: 290px;
  overflow: hidden;
}

.dealership-image-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.dealership-title {
  font-size: 26px;
  font-weight: 500;
  color: var(--dark);
}

.dealership-text {
  font-size: 21px;
  line-height: 1.5;
  padding-right: 30px;
  color: var(--dark);
}


/* =Stats
========================================================================================*/
.stats-section {
  padding: 0;
  /* background: var(--light-bg); */
}

.stats-section .wrap {
  max-width: calc(var(--wrap) + (var(--wrapspace) * 2));
}

.stats-row {
  display: grid;
  grid-template-columns: 770px 778px;
  max-width: var(--wrap);
  margin: 0 auto;
  align-items: stretch;
  background: var(--light-bg);
}

.stats-content {
  background: var(--off-white);
  padding: 100px 90px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 54.5px;
  min-height: 650px;
}

.stats-section .sub-heading {
  font-weight: 500;
}

.stats-section .section-heading {
  margin-bottom: 54.5px;
}

.stats-section .section-lead {
  font-weight: 400;
  color: #000;
}

.stats-section .heading-row {
  margin: 0;
}

.stats-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
}

.stat-card {
  background: var(--light-bg);
  padding: 113px 54px 60px 60px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 10px;
  border-bottom: 1px solid var(--border);
}

.stat-card:nth-child(odd) {
  border-right: 1px solid var(--border);
}

.stat-card:nth-child(3),
.stat-card:nth-child(4) {
  border-bottom: none;
}

.stat-value {
  font-family: var(--font-primary);
  font-size: 66px;
  font-weight: 700;
  color: #222;
  letter-spacing: -3.3px;
  line-height: 1;
  width: 164px;
}

.stat-label {
  font-size: 26px;
  font-weight: 500;
  line-height: 1.2;
  color: var(--dark);
}


/* =Resources
========================================================================================*/
.resources-section {
  padding: 0 0 130px;
  /* background: var(--white); */
}

.resources-section .wrap {
  max-width: calc(var(--wrap) + (var(--wrapspace) * 2));
}

.resources-row {
  display: grid;
  grid-template-columns: 774px 774px;
  max-width: var(--wrap);
  margin: 0 auto;
  align-items: start;
}

.resources-content {
  padding: 0 120px 100px 90px;
  display: flex;
  flex-direction: column;
  gap: 110px;
}

.resources-section .sub-heading {
  margin-bottom: 10px;
  font-weight: 500;
}

.resources-section .section-heading {
  margin-bottom: 40px;
}

.resources-section .section-lead {
  color: #000;
  font-weight: 400;
}

.resources-section .heading-row {
  margin: 0;
}

.resources-section .btn-group .button {
  padding: 21px 28px;
  font-family: "Inria Sans", sans-serif;
  font-weight: 700;
  text-transform: capitalize;
  letter-spacing: 0;
}

.resources-actions {
  justify-content: space-between;
  width: 100%;
}

.resources-swiper {
  /* padding: 160px 0 100px; */
  padding: 0 0 100px;
  /* min-height: 780px; */
}

.swiper-navigation {
  display: flex;
  gap: 20px;
}

.swiper-nav-btn {
  width: 40px;
  height: 40px;
  padding: 0;
  border-radius: 50%;
  transition: transform var(--transition-default);
}

.swiper-nav-btn:hover {
  background-color: var(--black);
}

.swiper-nav-btn img {
  width: 40px;
  height: 40px;
  object-fit: contain;
}

.swiper {
  flex: 1;
  min-width: 0;
}

.swiper-viewport {
  overflow: hidden;
}

.swiper-wrapper {
  display: flex;
  transition: transform 500ms cubic-bezier(0.22, 1, 0.36, 1);
}

.swiper-slide {
  min-width: 100%;
  flex: 0 0 100%;
}

.resource-card {
  position: relative;
  min-height: 520px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 30px;
  gap: 30px;
  overflow: hidden;
}

.resource-card .button {
  max-width: 110px;
  box-shadow: 0px 2px 6px 2px #293B9B0F;
}

.resource-card-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.resource-card-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(0.9);
}

.resource-card-overlay {
  position: absolute;
  inset: 0;
  background: rgba(29, 29, 29, 0.5);
  z-index: 1;
}

.resource-card-overlay::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgb(29 29 29 / 50%);
  mix-blend-mode: color;
}

.resource-card-title,
.resource-card .button {
  position: relative;
  z-index: 2;
}

.resource-card-title {
  font-size: 26px;
  font-weight: 400;
  color: var(--white);
  line-height: 1.3;
}

.subscribe-row {
  display: grid;
  grid-template-columns: 774px 774px;
  max-width: var(--wrap);
  margin: 0 auto;
  align-items: stretch;
}

.newsletter-block {
  background: var(--off-white);
  padding: 90px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 35px;
  min-height: 345px;
}

.newsletter-title {
  font-size: 28px;
  font-weight: 400;
  letter-spacing: -0.84px;
  line-height: 1.2;
  color: var(--dark);
}

.newsletter-form {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px 0;
}

.newsletter-form input {
  flex: 1;
  background: var(--input-bg);
  border: none;
  padding: 20px 28px;
  font-size: 18px;
  font-family: inherit;
  color: var(--dark);
  min-width: 0;
  width: 100%;
  /* height: 100%; */
}

.newsletter-form input::placeholder {
  color: var(--dark);
}

.newsletter-form .button {
  flex-shrink: 0;
  font-weight: 500;
}

.testimonial-swiper {
  background: var(--light-bg);
  border-radius: 6px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  min-height: 345px;
}

.testimonial-card {
  background: transparent;
  padding: 60px 90px;
  margin: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 20px;
  min-height: 345px;
}

.stars-rating {
  width: 158px;
  height: 26px;
  flex-shrink: 0;
}

.stars-rating img {
  width: 158px;
  height: 26px;
  object-fit: contain;
}

.testimonial-quote {
  font-size: 20px;
  font-weight: 500;
  color: var(--muted-text);
  line-height: 1.6;
}

.testimonial-card .person-info {
  margin: 0;
}

.person-info {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-top: 10px;
}

.person-avatar {
  width: 61px;
  height: 61px;
  border-radius: 50%;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  font-weight: 700;
  color: var(--white);
  background: linear-gradient(135deg, #74818d 0%, #5d666d 100%);
}

.person-avatar-alt {
  background: linear-gradient(135deg, var(--primary) 0%, #025aa5 100%);
}

.person-avatar-alt2 {
  background: linear-gradient(135deg, var(--text) 0%, var(--dark) 100%);
}

.person-name {
  font-size: 20px;
  font-weight: 700;
  color: var(--body-text);
  line-height: 1.6;
}

.person-role {
  font-size: 20px;
  font-weight: 500;
  color: var(--body-text);
}

.swiper-pagination {
  display: flex;
  justify-content: center;
  gap: 10px;
  padding: 0 0 24px;
}

.swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #c5c5c5;
  padding: 0;
  transition:
    background var(--transition-default),
    transform var(--transition-default);
}

.swiper-pagination-bullet.is-active {
  background: var(--primary);
  transform: scale(1.2);
}


/* =CTA
========================================================================================*/
.cta-section {
  position: relative;
  overflow: hidden;
  margin-bottom: 120px;
}

.cta-section .cta_inner {
  position: relative;
}

.cta-section .wrap {
  max-width: calc(var(--wrap) + (var(--wrapspace) * 2));
}

.cta-bg {
  position: absolute;
  inset: 0;
  background: var(--primary);
  z-index: 0;
}

.cta-bg img {
  position: absolute;
  right: 0;
  top: 0;
  width: 75%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center right;
  opacity: 0.40;
}

.cta-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, var(--primary) 26%, rgba(2, 117, 216, 0.35) 75%, rgba(2, 117, 216, 0) 100%);
  z-index: 1;
}

.cta-row {
  position: relative;
  z-index: 2;
  grid-template-columns: 774px 774px;
  max-width: var(--wrap);
  margin: 0 auto;
  align-items: end;
  min-height: 629px;
  overflow: hidden;
}

.cta-block {
  padding: 120px 90px;
  color: var(--white);
  max-width: 774px;
}

.cta-title {
  font-family: "Inria Sans", sans-serif;
  font-size: 46px;
  font-weight: 400;
  letter-spacing: -1.38px;
  line-height: 1.2;
  color: var(--white);
  margin-bottom: 50px;
  padding-right: 20px;
}

.cta-text {
  font-size: 26px;
  line-height: 1.5;
  color: var(--white);
  margin-bottom: 50px;
}

.cta-block .button {
  padding: 19px 44.5px 19px 6.5px;
  font-family: "Inria Sans", sans-serif;
  font-weight: 700;
  text-transform: capitalize;
}


.image-area.cta-image-wrap {
  display: flex;
  gap: clamp(20px, 4vw, 54px);
  align-items: flex-end;
  padding-right: clamp(0px, 3vw, 40px);
  margin-bottom: -136px;
}

.cta-phone-dashboard {
  width: min(330px, 100%);
  height: auto;
  display: block;
}

.cta-phone-mobile {
  width: min(312px, 100%);
  height: auto;
  display: block;
  margin-bottom: -40px;

}

/* =Footer
========================================================================================*/
.footer-section {
  background: var(--light-bg);
  border-top: 1px solid #d8d8d8;
  width: 100%;
}

.footer-section .wrap {
  max-width: calc(var(--wrap) + (var(--wrapspace) * 2));
}

.footer-main-row {
  padding: 40px 0;
  align-items: flex-start;
  display: flex;
  justify-content: space-between;
  gap: 40px;
  margin: 110px 0;

}

.footer-columns {
  display: flex;
  gap: 80px;
  flex-wrap: wrap;
  flex: 1;
}

.footer-heading {
  font-size: 18px;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 16px;
  line-height: 26px;
}

.footer-links {
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding: 6px 0;
}

.footer-links a {
  font-size: 20px;
  font-weight: 500;
  color: var(--muted);
}

.footer-links a:hover {
  color: var(--dark);
  opacity: 1;
}

.footer-col-contact {
  width: 330px;
  max-width: 100%;
}

.footer-contact-row {
  display: flex;
  gap: 15px;
  align-items: flex-start;
  margin-bottom: 20px;
}

.footer-contact-row:last-child {
  margin-bottom: 0;
}

.icon-row.footer-contact-row:hover a {
  color: var(--dark);
}

.footer-icon-wrap {
  width: 20px;
  min-width: 20px;
  height: 20px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 5px;
}

.footer-icon-location {
  height: 24px;
  min-height: 24px;
}

.footer-icon-wrap img {
  width: 20px;
  height: 20px;
  object-fit: contain;
}

.footer-icon-location img {
  height: 24px;
}

.footer-contact-row a,
.footer-contact-row span {
  font-size: 20px;
  font-weight: 500;
  color: var(--muted);
  line-height: 1.4;
  transition: all 300ms ease;

}

.footer-aside {
  width: 386px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 30px;
}

.footer-social-row {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  gap: 5px;
}

.footer-apps-row {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  gap: 24px;
}

.social-icon-link {
  width: 38px;
  height: 38px;
  background: var(--social-bg);
  border-radius: var(--radius-default);
  display: flex;
  align-items: center;
  justify-content: center;
  transition:
    transform var(--transition-default),
    background var(--transition-default);
}

.social-icon-link:hover {
  background: var(--primary);
  opacity: 1;
}

.social-icon-link img {
  width: auto;
  height: auto;
  max-width: 20px;
  max-height: 18px;
  object-fit: contain;
}

.footer-apps-row a {
  background: var(--store-bg);
  padding: 15px;
  border-radius: var(--radius-default);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 181px;
  transition:
    transform var(--transition-default),
    background var(--transition-default);
}

.footer-apps-row a:hover {
  background: var(--primary);
  opacity: 1;
}

.footer-apps-row img {
  width: 140px;
  height: 35px;
  object-fit: contain;
}

.footer-bar {
  border-top: 1px solid var(--footer-divider);
}

.footer-bar-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 150px;
  flex-wrap: wrap;
  gap: 20px;
}

.footer-bar-left {
  display: flex;
  align-items: center;
  gap: 30px;
}

.footer-brand-logo {
  width: 123px;
  height: 22px;
  object-fit: contain;
  object-position: left center;
  flex-shrink: 0;
}

.footer-bar-left span,
.footer-legal a {
  font-size: 19.8px;
  font-weight: 500;
  color: var(--muted);
  line-height: 36px;
}

.footer-legal {
  display: flex;
  gap: 35px;
}

.footer-legal a:hover {
  color: var(--dark);
  opacity: 1;
}


/* =Products Page — Hero
========================================================================================*/
.products-hero-section {
  position: relative;
  overflow: hidden;
  background: var(--white);
}

.products-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.products-hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.6;
}

.products-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,
      rgba(2, 117, 216, 0.2) 0%,
      rgba(255, 255, 255, 0.7) 40%,
      rgb(219, 219, 219) 88.46%,
      rgb(213, 224, 233) 100%);
}

.products-hero-row {
  position: relative;
  z-index: 1;
  align-items: flex-end;
  padding: 140px 0;
  min-height: 768px;
}

.products-hero-content {
  max-width: 640px;
  display: flex;
  flex-direction: column;
  gap: 34px;
}

.products-hero-title {
  font-family: var(--font-primary);
  font-size: 58px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -0.5px;
  color: var(--dark);
}

.products-hero-title strong {
  font-weight: 700;
}

.products-hero-lead {
  font-size: 20px;
  line-height: 1.55;
  color: rgba(29, 29, 29, 0.75);
  max-width: 620px;
}

.check-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.check-list-item {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 17px;
  font-weight: 500;
  color: rgba(29, 29, 29, 0.8);
}

.check-icon {
  width: 20px;
  height: 20px;
  background: var(--primary);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.check-icon img {
  width: 10px;
  height: 8px;
  object-fit: contain;
}

.engine-card {
  width: 582px;
  max-width: 100%;
  flex-shrink: 0;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid var(--border);
  border-radius: 8px;
  box-shadow:
    0 12px 48px rgba(2, 117, 216, 0.08),
    0 2px 8px rgba(0, 0, 0, 0.04);
  padding: 41px 37px;
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.engine-card-title {
  font-size: 24px;
  font-weight: 400;
  color: var(--dark);
}

.engine-card-list {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.engine-card-item {
  display: flex;
  align-items: center;
  gap: 26px;
  padding: 15px 21px;
  border: 1px solid rgba(29, 29, 29, 0.15);
  border-radius: 4px;
}

.engine-card-icon {
  width: 52px;
  height: 50px;
  object-fit: contain;
  flex-shrink: 0;
}

.engine-card-name {
  font-size: 25px;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: 4px;
}

.engine-card-desc {
  font-size: 13px;
  color: rgba(29, 29, 29, 0.55);
}


/* =Products Page — Problem
========================================================================================*/
.problem-section {
  padding: 97px 0;
}

.problem-row {
  display: grid;
  grid-template-columns: 629px 629px;
  gap: 90px;
  max-width: var(--wrap);
  margin: 0 auto;
  align-items: center;
}

.problem-content {
  display: flex;
  flex-direction: column;
  gap: 37px;
}

.problem-title {
  font-size: 42px;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: -0.8px;
  color: var(--dark);
}

.problem-title strong {
  font-weight: 700;
}

.problem-text {
  font-size: 18px;
  line-height: 1.65;
  color: var(--dark);
}

.callout-box {
  background: rgba(201, 201, 201, 0.12);
  border: 1px solid rgba(29, 29, 29, 0.2);
  border-radius: 4px;
  padding: 25px 29px;
  display: inline-block;
}

.callout-box p {
  font-size: 21px;
  font-weight: 600;
  color: var(--dark);
}

.text-primary {
  color: var(--primary);
}

.problem-list {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 430px;
}

.problem-list-item {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 22px 0;
  border-bottom: 1px solid rgba(29, 29, 29, 0.08);
  font-size: 17px;
  line-height: 1.5;
  color: rgba(29, 29, 29, 0.78);
}

.problem-list-item:first-child {
  border-top: 1px solid rgba(29, 29, 29, 0.08);
}

.list-dot {
  width: 8px;
  height: 8px;
  background: var(--primary);
  border-radius: 4px;
  flex-shrink: 0;
}

.list-dot-sm {
  width: 6px;
  height: 6px;
  border-radius: 3px;
}


/* =Products Page — Platform
========================================================================================*/
.platform-section {
  padding: 0 0 100px;
}

.platform-inner {
  position: relative;
  overflow: hidden;
  max-width: var(--wrap);
  margin: 0 auto;
  padding: 97px 90px;
}

.platform-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.platform-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #000;
  z-index: -1;
}

.platform-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.6;
}

.platform-row {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1fr 684px;
  gap: 60px;
  align-items: end;
}

.platform-content {
  display: flex;
  flex-direction: column;
  gap: 42px;
}

.sub-heading-light {
  color: var(--white);
}

.platform-title {
  font-size: 42px;
  font-weight: 300;
  line-height: 1.25;
  letter-spacing: -0.8px;
  color: var(--white);
}

.platform-title strong {
  font-weight: 700;
}

.platform-text {
  font-size: 21px;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.8);
}

.platform-features-main .platform-feature-title {
  font-size: 18px;
  line-height: 100%;
  font-weight: 600;
  display: block;
  color: #fff;
  margin-bottom: 20px;
}

.platform-features {
  background: var(--white);
  border: 1px solid #d2d2d2;
  padding: 50px 40px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 408px;
}

.platform-feature-item {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 17px;
  line-height: 1.5;
  color: var(--dark);
}

.product-cards-row .product-card:nth-child(2) .product-card-list {
  max-width: 350px;
  margin: 0 auto;
}



/* =Products Page — How It Works
========================================================================================*/
.how-works-inner {
  background: var(--off-white);
  padding: 100px 90px;
  max-width: var(--wrap);
  margin: 0 auto;
}

.how-works-heading {
  text-align: center;
  max-width: 750px;
  margin: 0 auto 77px;
  display: flex;
  flex-direction: column;
  gap: 25px;
}

.how-works-title {
  font-size: 42px;
  font-weight: 300;
  line-height: 1.25;
  letter-spacing: -0.8px;
  color: var(--dark);
}

.how-works-title strong {
  font-weight: 700;
}

.how-works-lead {
  font-size: 21px;
  line-height: 1.5;
  color: var(--dark);
}

.how-works-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 13px;
  margin-bottom: 77px;
}

.how-works-card {
  background: var(--white);
  border: 1px solid var(--border);
  padding: 56px 48px;
  display: flex;
  flex-direction: column;
  gap: 25px;
}

.how-works-card .step-text {
  font-size: 16px;
  line-height: 1.6;
  color: rgba(29, 29, 29, 0.72);
}

.how-works-cta {
  display: flex;
  justify-content: center;
}


/* =Products Page — Product Suite
========================================================================================*/
.product-suite-section {
  background: var(--page-bg);
  padding: 120px 0;
}

.product-suite-heading {
  text-align: center;
  max-width: 678px;
  margin: 0 auto 60px;
  display: flex;
  flex-direction: column;
  gap: 11px;
}

.product-suite-title {
  font-size: 42px;
  font-weight: 300;
  line-height: 1.25;
  letter-spacing: -0.8px;
  color: var(--dark);
}

.product-suite-title strong {
  font-weight: 700;
}

.product-suite-lead {
  font-size: 17px;
  line-height: 1.6;
  color: rgba(29, 29, 29, 0.72);
}

.product-cards-row {
  display: grid;
  grid-template-columns: repeat(3, 500px);
  gap: 23px;
  justify-content: center;
  margin-bottom: 30px;
}

.product-card {
  background: var(--off-white);
  border: 1px solid var(--border);
  border-radius: 4px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  overflow: hidden;
}

.product-card-body {
  padding: 40px 36px;
  display: flex;
  flex-direction: column;
  gap: 23px;
  text-align: center;
}

.product-tag {
  display: inline-block;
  align-self: center;
  background: #eef5fb;
  color: var(--primary);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 5px 12px;
  border-radius: 2px;
}

.product-card-title {
  font-size: 26px;
  font-weight: 500;
  line-height: 1.3;
  color: var(--dark);
}

.product-card-desc {
  font-size: 15px;
  line-height: 1.6;
  color: rgba(29, 29, 29, 0.72);
}

.product-card-list {
  display: flex;
  flex-direction: column;
  gap: 11px;
  /*align-items: center;*/
}

.product-card-list li {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  line-height: 1.45;
  color: rgba(29, 29, 29, 0.75);
  text-align: left;
}

.product-card-list li::before {
  content: "";
  width: 5px;
  height: 5px;
  background: var(--primary);
  border-radius: 2.5px;
  flex-shrink: 0;
}

.product-card-footer {
  border-top: 1px solid var(--border);
  padding: 40px 36px;
  display: flex;
  justify-content: center;
}

.offering-cards-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 23px;
  max-width: 1545px;
  margin: 0 auto;
}

.offering-card {
  background: var(--off-white);
  border: 1px solid var(--border);
  border-radius: 4px;
  padding: 50px 40px;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 18px;
  align-items: center;
}

.offering-tag {
  display: inline-block;
  background: #081f3d;
  color: var(--off-white);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 2px;
}

.offering-title {
  font-size: 26px;
  font-weight: 500;
  color: var(--dark);
}

.offering-desc {
  font-size: 14px;
  line-height: 1.5;
  color: rgba(29, 29, 29, 0.55);
}


/* =Products Page — Product Features
========================================================================================*/
/* .product-features-section {
  padding: 0 0 100px;
} */

.product-features-inner {
  display: flex;
  flex-direction: column;
  gap: 50px;
  max-width: var(--wrap);
  margin: 0 auto;
}

.product-features-heading {
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
}

.product-features-heading .sub-heading {
  margin-bottom: 0;
}

.product-features-title {
  font-size: 42px;
  font-weight: 300;
  line-height: 1.25;
  letter-spacing: -0.8px;
  color: var(--dark);
  text-align: center;
}

.product-features-title strong {
  font-weight: 700;
}
.product-features-showcase-row {
  /* position: sticky;
  top: 120px */
  margin-bottom: 140px;
}
.product-features-main {
  position: sticky;
  top: 120px;
  /* --top: calc(sibling-index() * 20px); */
}

.product-features-showcase {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 100%;
  position: relative;
  overflow: hidden;
  transform-origin: top center;
  will-change: transform;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .1);
}



.product-features-main:nth-child(1) .product-features-showcase {
    top: 20px;
}

.product-features-main:nth-child(2) .product-features-showcase {
    top: 40px;
}

.product-features-main:nth-child(3) .product-features-showcase {
    top: 60px;
}

.product-features-main:nth-child(4) .product-features-showcase {
    top: 80px;
}

.product-features-main:nth-child(5) .product-features-showcase {
    top: 100px;
}
.product-features-main:nth-child(6) .product-features-showcase {
    top: 120px;
}
.product-features-main:nth-child(7) .product-features-showcase {
    top: 140px;
}

.product-features-content {
  background: var(--off-white);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 35px;
  padding: 90px;
  min-width: 0;
  min-height: 680px;
}

.product-features-content .product-tag {
  align-self: flex-start;
}

.product-features-slide-title {
  font-size: 32px;
  font-weight: 500;
  line-height: 1.2;
  color: var(--dark);
}

.product-features-slide-text {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.6;
  color: var(--muted-text);
}

.product-features-content .button {
  align-self: flex-start;
  font-weight: 500;
}

.product-features-media {
  position: relative;
  /* min-height: 680px; */
  height: 100%;
  overflow: hidden;
  border-radius: 6px;
}

.product-features-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.problem-list-main .result-small-title {
  font-size: 18px;
  font-weight: 600;
  line-height: 1;
  color: #1D1D1D;
  display: block;
  margin-bottom: 20px;
}



/* =Products Page — Why AutoHub
========================================================================================*/
.product-stats-section {
  padding: 0 0 120px;
}

.why-autohub-inner {
  background: var(--page-bg);
  padding: 120px 0;
  max-width: var(--wrap);
  margin: 0 auto;
}

.why-autohub-heading {
  text-align: center;
  max-width: 700px;
  margin: 0 auto 64px;
  display: flex;
  flex-direction: column;
  /* gap: 18px; */
}

.why-autohub-title {
  font-size: 42px;
  font-weight: 300;
  line-height: 1.25;
  letter-spacing: -0.8px;
  color: var(--dark);
}

.why-autohub-title strong {
  font-weight: 700;
}

.why-autohub-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.why-card {
  background: var(--off-white);
  padding: 44px 36px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
  text-align: center;
  min-height: 227px;
}

.why-card-label {
  font-size: 12px;
  letter-spacing: 0.09em;
  line-height: 100%;
  font-weight: 700;
  color: var(--primary);
  padding: 5px 12px;
  background-color: #EEF5FB;
  border-radius: 2px;
  text-transform: uppercase;
}

.why-card-title {
  font-size: 24px;
  font-weight: 500;
  color: var(--dark);
}

.why-card-text {
  font-size: 15px;
  line-height: 1.6;
  color: rgba(29, 29, 29, 0.72);
}


/* =Products Page — Results
========================================================================================*/
.products-results-section {
  padding: 0 0 100px;
}

.products-results-row {
  display: grid;
  grid-template-columns: 770px 770px;
  max-width: var(--wrap);
  margin: 0 auto;
  background: var(--light-bg);
}

.products-results-content {
  background: var(--off-white);
  padding: 100px 90px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 40px;
  min-height: 650px;
}

.products-results-section .stats-grid {
  min-height: 650px;
}


/* =Products Page — CTA
========================================================================================*/
.products-cta-section {
  position: relative;
  overflow: hidden;
  min-height: 345px;
  display: flex;
  align-items: center;
  background: var(--primary);
}

.products-cta-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.products-cta-bg img {
  position: absolute;
  right: 0;
  top: -30%;
  width: 78%;
  height: 160%;
  max-width: none;
  object-fit: cover;
  opacity: 0.4;
}

.products-cta-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, #1D1D1D, #1D1D1D),
    linear-gradient(90deg, rgba(29, 29, 29, 0.8) 26.01%, rgba(29, 29, 29, 0) 100%);

  z-index: -1;
}

.products-cta-row {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 40px;
  padding: 60px 0;
}

.products-cta-content {
  flex-shrink: 0;
}

.products-cta-title {
  font-size: 42px;
  font-weight: 300;
  line-height: 1.25;
  letter-spacing: -0.8px;
  color: var(--white);
}

.products-cta-title strong {
  font-weight: 700;
}

.products-cta-text {
  font-size: 17px;
  line-height: 1.6;
  color: var(--white);
  max-width: 393px;
}

.products-cta-action {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 11px;
  flex-shrink: 0;
}

.products-cta-note {
  font-size: 14px;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.55);
  text-align: right;
}


/* =Our Approach Page — Hero
========================================================================================*/
.approach-hero-section {
  position: relative;
  overflow: hidden;
  min-height: 684px;
}

.approach-hero-section .wrap {
  max-width: 1536px;
}

.approach-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.approach-hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.approach-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,
      rgba(143, 143, 143, 0.7) 0%,
      rgba(41, 41, 41, 0.7) 45%);
  mix-blend-mode: multiply;
}

.approach-hero-content {
  position: relative;
  z-index: 1;
  max-width: 675px;
  padding: 100px 0;
  display: flex;
  flex-direction: column;
  gap: 55px;
}

.approach-hero-copy {
  display: flex;
  flex-direction: column;
  gap: 26px;
}

.approach-hero-copy .sub-heading {
  margin-bottom: 0;
}

.approach-hero-title {
  font-family: var(--font-primary);
  font-size: 52px;
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: -0.5px;
  color: var(--white);
}

.approach-hero-title strong {
  font-weight: 700;
}

.approach-hero-text {
  display: flex;
  flex-direction: column;
  gap: 26px;
}

.approach-hero-text p {
  font-size: 20px;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.65);
}

.button.btn-outline-light {
  background: transparent;
  color: var(--white);
  padding: 19px 38px;
  box-shadow: none;
}

.button.btn-outline-light:hover {
  transform: translateX(4px);
  box-shadow: none;
  opacity: 0.85;
}

.approach-hero-content .btn-group {
  gap: 40px 56px;
}

.approach-hero-content .btn-group .arrow-btn {
  padding: 0;
}


/* =Our Approach Page — What We Do
========================================================================================*/
/* .what-we-do-section {
  padding: 120px 0;
} */

.what-we-do-section .wrap {
  max-width: 1536px;
}

.what-we-do-heading {
  max-width: 780px;
  display: flex;
  flex-direction: column;
  gap: 15px;
  margin-bottom: 35px;
}

.what-we-do-heading .sub-heading {
  margin-bottom: 0;
}

.what-we-do-title {
  font-size: 44px;
  font-weight: 400;
  line-height: 1.23;
  color: var(--dark);
}

.what-we-do-title strong {
  font-weight: 700;
}

.what-we-do-lead {
  font-size: 18px;
  line-height: 1.65;
  color: var(--dark);
  max-width: 680px;
  margin-bottom: 35px;
}

.what-we-do-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--border);
  /* gap: 40px; */
  /* padding-top: 50px; */
  /* max-width: 1356px; */
}

.what-we-do-item {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 50px 40px;
  border-right: 1px solid var(--border);
}

.what-we-do-item:first-child {
  padding-left: 0;
}

.what-we-do-item:last-child {
  padding-right: 0;
  border-right: 0;
}

.numbered-badge {
  width: 34px;
  height: 34px;
  background: var(--dark);
  color: var(--white);
  font-size: 15px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.what-we-do-item-title {
  font-size: 17px;
  font-weight: 700;
  line-height: 1.47;
  color: var(--dark);
}

.what-we-do-item-text {
  font-size: 14px;
  line-height: 1.64;
  color: rgba(29, 29, 29, 0.6);
}


/* =Our Approach Page — Core Values
========================================================================================*/
.core-values-section {
  /* padding: 100px 0; */
}

.core-values-inner {
  background: var(--light-bg);
  padding: 100px 90px;
  max-width: var(--wrap);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 34px;
}

.core-values-heading {
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-width: 405px;
}

.core-values-heading .sub-heading {
  margin-bottom: 0;
}

.core-values-title {
  font-size: 44px;
  font-weight: 400;
  line-height: 1.23;
  color: var(--dark);
}

.core-values-title strong {
  font-weight: 700;
}

.values-cards-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3px;
}

.values-card {
  background: var(--page-bg);
  padding: 40px;
  min-height: 248px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.values-card-title {
  font-size: 30px;
  font-weight: 700;
  color: var(--dark);
}

.values-card-text {
  font-size: 18px;
  line-height: 1.39;
  color: rgba(29, 29, 29, 0.6);
}

.values-quote {
  background: #f1f1f1;
  border-left: 3px solid var(--primary);
  padding: 40px 48px;
  margin: 0;
}

.values-quote p {
  font-size: 21px;
  line-height: 1.29;
  color: rgba(29, 29, 29, 0.82);
  margin-bottom: 5px;
}

.values-quote cite {
  font-size: 14px;
  font-weight: 600;
  font-style: normal;
  color: var(--dark);
}


/* =Our Approach Page — Key Facts
========================================================================================*/
.key-facts-section {
  padding: 0 0 100px;
}

.key-facts-inner {
  position: relative;
  overflow: hidden;
  max-width: var(--wrap);
  margin: 0 auto;
}

.key-facts-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.key-facts-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #000;
  z-index: 1;
  opacity: 0.5;
}

.key-facts-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.key-facts-row {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: flex-start;
  gap: 150px;
  padding: 68px 96px 30px;
}

.key-facts-intro {
  width: 250px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.key-facts-intro .sub-heading {
  margin-bottom: 0;
}

.key-facts-title {
  font-size: 42px;
  font-weight: 700;
  line-height: 1.19;
  color: var(--white);
}

.key-facts-stats {
  flex: 1;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  /* gap: 65px; */
}

.key-fact-item {
  display: flex;
  flex-direction: column;
  gap: 6px;
  position: relative;
  padding: 0 65px 30px;
}

.key-fact-item:not(:last-child) {
  border-right: 1px solid var(--border);
}

.key-fact-item:last-child {
  padding-right: 0;
}

.key-fact-item:first-child {
  padding-left: 0;
}

/* .key-fact-item:not(:last-child)::after {
  content: "";
  position: absolute;
  right: -32px;
  top: 0;
  width: 1px;
  height: 200px;
  background: var(--border);
} */

.key-fact-value {
  font-size: 50px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--white);
}

.key-fact-label {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.22;
  color: var(--white);
}

.key-fact-desc {
  font-size: 18px;
  line-height: 1.11;
  color: rgba(255, 255, 255, 0.45);
  font-weight: 300;
}


/* =Our Approach Page — Leadership
========================================================================================*/
/* .leadership-section {
  background: var(--white);
  padding: 100px 0;
} */

.leadership-section .wrap {
  max-width: 1536px;
}

.leadership-heading {
  max-width: 600px;
  display: flex;
  flex-direction: column;
  margin-bottom: 46px;
  gap: 10px;
}

.leadership-heading .sub-heading {
  margin-bottom: 0;
}

.leadership-title {
  font-size: 44px;
  font-weight: 700;
  line-height: 1.23;
  color: var(--dark);
  margin-bottom: 10px;
}

.leadership-lead {
  font-size: 17px;
  line-height: 1.59;
  color: rgba(29, 29, 29, 0.62);
  max-width: 533px;
}

.leadership-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 32px;
}

.leader-card {
  display: flex;
  flex-direction: column;
  gap: 46px;
}

.leader-image-wrap {
  aspect-ratio: 315 / 400;
  overflow: hidden;
}

.leader-image-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.leader-meta {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 17px;
}

.leader-name {
  font-size: 18px;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: 8px;
}

.leader-role {
  font-size: 14px;
  color: rgba(29, 29, 29, 0.48);
}

.social-link-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 13px 21px;
  border: 1px solid var(--border);
  border-radius: 3px;
  font-size: 15px;
  font-weight: 600;
  color: var(--dark);
  white-space: nowrap;
  flex-shrink: 0;
  transition:
    border-color var(--transition-default),
    transform var(--transition-default);
}

.social-link-btn:hover {
  border-color: var(--primary);
  transform: translateY(-2px);
  opacity: 1;
}

.social-link-btn img {
  width: 18px;
  height: 18px;
  object-fit: contain;
  flex-shrink: 0;
}


/* =Our Approach Page — Dual CTA
========================================================================================*/
/* .dual-cta-section {
  padding: 0 0 100px;
} */

.dual-cta-row {
  display: grid;
  grid-template-columns: 774px 774px;
  max-width: var(--wrap);
  margin: 0 auto;
}

.dual-cta-block {
  padding: 100px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 18px;
  min-height: 606px;
}

.dual-cta-block .sub-heading {
  margin-bottom: 0;
}

.dual-cta-block-light {
  background: var(--light-bg);
}

.dual-cta-block-white {
  background: var(--white);
  gap: 29px;
}

.dual-cta-title {
  font-size: 38px;
  font-weight: 400;
  line-height: 1.26;
  color: var(--dark);
}

.dual-cta-title-dark {
  color: var(--dark);
}

.dual-cta-text {
  font-size: 17px;
  line-height: 1.6;
  color: rgba(29, 29, 29, 0.72);
  max-width: 574px;
}

.dual-cta-text-muted {
  font-size: 16px;
  line-height: 1.625;
  color: rgba(29, 29, 29, 0.6);
}

.dual-cta-tag {
  font-size: 12px;
  font-weight: 700;
  color: var(--primary);
}

.social-links-row {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}


/* =Success Stories Page — Hero
========================================================================================*/
.success-hero-section {
  position: relative;
  overflow: hidden;
}

.success-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.success-hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.success-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(227.91deg,
      rgba(143, 143, 143, 0.8) 27.49%,
      rgba(58, 58, 58, 0.8) 53.93%,
      rgba(41, 41, 41, 0.9) 71.79%);
  mix-blend-mode: multiply;
}

.success-hero-wrap {
  position: relative;
  z-index: 1;
}

.success-hero-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 80px;
  padding: 100px 0;
}

.success-hero-main {
  max-width: 675px;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 55px;
}

.success-hero-copy {
  display: flex;
  flex-direction: column;
  gap: 26px;
}

.success-hero-title-block {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.success-hero-eyebrow {
  font-size: 18px;
  font-weight: 600;
  line-height: 1;
  color: var(--white);
}

.success-hero-title {
  font-family: var(--font-primary);
  font-size: 58px;
  font-weight: 700;
  line-height: 130%;
  letter-spacing: -0.5px;
  color: var(--white);
}

.success-hero-title-regular {
  font-weight: 400;
}

.success-hero-lead {
  font-size: 20px;
  line-height: 31px;
  color: rgba(255, 255, 255, 0.65);
}

.success-hero-cta.btn-group {
  gap: 20px;
}

.success-hero-trust {
  display: flex;
  align-items: center;
  gap: 39px;
  width: 100%;
  padding-top: 30px;
  border-top: 1px solid rgba(255, 255, 255, 0.22);
}

.success-hero-trust-item:first-child {
  max-width: 286px;
}

.success-hero-trust-divider {
  width: 1px;
  height: 32px;
  background: rgba(255, 255, 255, 0.22);
  flex-shrink: 0;
}

.success-hero-trust-title {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.25;
  color: rgba(255, 255, 255, 0.85);
  margin-bottom: 2px;
}

.success-hero-trust-desc {
  font-size: 14px;
  line-height: 1.25;
  color: rgba(255, 255, 255, 0.5);
}

.success-hero-cards {
  max-width: 570px;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.hero-result-card {
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 4px;
  padding: 25px;
  display: flex;
  flex-direction: column;
  gap: 13px;
}

.hero-result-row {
  display: flex;
  gap: 15px;
}

.hero-result-card-sm {
  flex: 1;
  border-color: rgba(255, 255, 255, 0.1);
}

.hero-result-label {
  font-size: 16px;
  font-weight: 700;
  color: var(--white);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  line-height: 1;
}

.hero-result-value {
  font-family: var(--font-primary);
  font-size: 56px;
  font-weight: 800;
  line-height: 1;
  color: #b6c6d3;
}

.hero-result-desc {
  font-size: 15px;
  line-height: 18.85px;
  color: var(--white);
}


/* =Success Stories Page — Outcomes
========================================================================================*/
.outcomes-section {
  padding: 100px 0;
}

.outcomes-row {
  display: grid;
  grid-template-columns: 770px 770px;
  max-width: var(--wrap);
  margin: 0 auto;
  background: var(--light-bg);
}

.outcomes-content {
  background: var(--off-white);
  padding: 100px 90px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.outcomes-content .sub-heading {
  font-size: 18px;
  font-weight: 500;
}

.outcomes-title {
  font-size: 46px;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: -0.92px;
  color: #2a2a2a;
  margin-bottom: 30px;
}

.outcomes-title strong {
  font-weight: 700;
}

.outcomes-text {
  font-size: 21px;
  line-height: 1.5;
  color: var(--dark);
  margin-bottom: 30px;
}

.outcomes-section .stat-value-arrow {
  display: flex;
  align-items: baseline;
  gap: 4px;
}

.outcomes-section .stat-arrow {
  font-size: 40px;
  font-weight: 400;
  line-height: 1;
}

.outcomes-section .stat-label {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.2;
}

.outcomes-section .stat-note {
  font-size: 13px;
  line-height: 18.85px;
  color: rgba(29, 29, 29, 0.55);
  margin-top: 0;
}


/* =Success Stories Page — Case Studies
========================================================================================*/

.case-study-inner {
  background: var(--white);
  padding: 100px 96px;
  max-width: var(--wrap);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
}

.case-study-header {
  display: flex;
  flex-direction: column;
  gap: 23px;
  margin-bottom: 30px;
}

.case-study-heading {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.case-study-eyebrow {
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
  color: var(--dark);
}

.case-study-title {
  font-size: 42px;
  font-weight: 300;
  line-height: 1.3;
  letter-spacing: -0.8px;
  color: var(--dark);
  white-space: nowrap;
}

.case-study-title strong {
  font-weight: 700;
}

.case-study-lead {
  font-size: 17px;
  line-height: 27.2px;
  color: rgba(29, 29, 29, 0.72);
}

.filter-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 40px;
}

.filter-pill {
  padding: 10px 19px;
  font-size: 14px;
  font-weight: 700;
  font-family: Arial, Helvetica, sans-serif;
  color: var(--dark);
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 2px;
  cursor: pointer;
  transition:
    background var(--transition-default),
    border-color var(--transition-default),
    color var(--transition-default);
}

.filter-pill:hover {
  border-color: var(--primary);
}

.filter-pill.is-active {
  background: var(--primary);
  border-color: var(--primary);
  color: var(--white);
}

.case-study-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.case-study-card {
  border: 1px solid var(--border);
  border-radius: 4px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  background: var(--white);
  transition: opacity var(--transition-default);
}

.case-study-card.is-hidden {
  display: none;
}

.case-study-image-link {
  display: block;
  flex-shrink: 0;
}

.case-study-image-link:hover {
  opacity: 0.92;
}

.case-study-image {
  position: relative;
  height: 179px;
  overflow: hidden;
}

.case-study-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.2);
  pointer-events: none;
}

.case-study-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.case-study-tag {
  position: absolute;
  top: 16px;
  left: 16px;
  z-index: 1;
  padding: 4px 10px;
  font-size: 11px;
  font-weight: 700;
  color: var(--primary);
  background: #eef5fb;
  border-radius: 2px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.case-study-body {
  padding: 28px;
  display: flex;
  flex-direction: column;
  gap: 19px;
  flex: 1;
  border-top: 1px solid var(--border);
}

.case-study-location {
  font-size: 12px;
  font-weight: 600;
  color: rgba(29, 29, 29, 0.55);
  text-transform: uppercase;
  letter-spacing: 0.4px;
  line-height: 1;
}

.case-study-headline {
  font-size: 17px;
  font-weight: 700;
  line-height: 23.8px;
  color: var(--dark);
  flex: 1;
  margin: 0;
}

.case-study-headline a {
  color: inherit;
  transition: color var(--transition-default);
}

.case-study-headline a:hover {
  color: var(--primary);
  opacity: 1;
}

.metric-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 17px;
}

.metric-tag {
  padding: 4px 10px;
  font-size: 13px;
  font-weight: 700;
  border-radius: 2px;
  line-height: 1;
}

.metric-tag-positive {
  background: #ebf7f1;
  color: #1e7a3d;
}

.metric-tag-negative {
  background: #fef0ec;
  color: #a0290a;
}

.case-study-link {
  display: inline-flex;
  gap: 2px;
  width: max-content;
  font-size: 14px;
  font-weight: 700;
  color: var(--primary);
  line-height: 1;
  transition: transform var(--transition-default);
}

.case-study-link:hover {
  transform: translateX(4px);
  opacity: 1;
}

.case-study-link img {
  width: 15px;
  height: 14px;
  flex-shrink: 0;
  object-fit: contain;
  transition: all 300ms ease;
  margin-top: 2px;
}


/* =Success Stories Page — Industry Testimonials
========================================================================================*/
.industry-testimonials-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 44px;
  padding: 100px 0;
  max-width: 100%;
}

.industry-testimonials-heading {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  width: 100%;
  margin-bottom: 40px;
}

.industry-testimonials-eyebrow {
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
  color: var(--dark);
}

.industry-testimonials-title {
  font-size: 42px;
  font-weight: 300;
  line-height: 1.3;
  letter-spacing: -0.8px;
  color: var(--dark);
  white-space: nowrap;
}

.industry-testimonials-title strong {
  font-weight: 700;
}

.industry-testimonials-section .testimonials-grid {
  display: flex;
  flex-direction: column;
  gap: 25px;
  width: 100%;
  max-width: var(--wrap);
}

.industry-testimonials-section .testimonials-grid-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 25px;
}

.industry-testimonials-section .testimonial-card {
  background: var(--white);
  border: none;
  border-radius: 6px;
  padding: 60px 80px;
  min-height: 0;
  justify-content: center;
  gap: 20px;
  margin: 0;
}

.testimonial-stars {
  width: 157px;
  height: 25px;
  object-fit: contain;
  flex-shrink: 0;
}

.industry-testimonials-section .testimonial-quote {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.6;
  color: #5d666d;
}

.testimonial-author {
  display: flex;
  align-items: center;
  gap: 20px;
}

.testimonial-avatar {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: #b2c6d7;
  color: var(--white);
  font-size: 25px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.testimonial-author .testimonial-author-name {
  font-size: 20px;
  font-style: normal;
  font-weight: 500;
  line-height: 1.6;
  color: #404951;
}

.testimonial-author .testimonial-author-name strong {
  font-weight: 700;
  color: #404951;
  display: block;
}

.industry-testimonials-cta {
  text-align: center;
  margin-top: 40px;
}


/* =Success Stories Page — CTA
========================================================================================*/
.success-stories-cta-section {
  position: relative;
  overflow: hidden;
  height: 345px;
  display: flex;
  align-items: center;
  background: #1d1d1d;
}

.success-stories-cta-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  background: #1d1d1d;
}

.success-stories-cta-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.5;
}

.success-stories-cta-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,
      rgba(29, 29, 29, 0.8) 26%,
      rgba(29, 29, 29, 0) 100%);
  z-index: 1;
}

.success-stories-cta-section .wrap {
  position: relative;
  z-index: 2;
  width: 100%;
}

.success-stories-cta-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 40px;
  max-width: calc(var(--wrap) + 180px);
  margin: 0 auto;
}

.success-stories-cta-content {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.success-stories-cta-eyebrow {
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
  color: var(--white);
}

.success-stories-cta-title {
  font-size: 42px;
  font-weight: 300;
  line-height: 1.3;
  letter-spacing: -0.8px;
  color: var(--white);
  white-space: nowrap;
}

.success-stories-cta-title strong {
  display: block;
  font-weight: 700;
}

.success-stories-cta-text {
  font-size: 17px;
  line-height: 27.2px;
  color: var(--white);
  width: 393px;
  flex-shrink: 0;
}

.success-stories-cta-action {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 11px;
  flex-shrink: 0;
}

.success-stories-cta-note {
  font-size: 14px;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.75);
  text-align: right;
}


/* =Contact Page
========================================================================================*/
.contact-page {
  background: var(--white);
}

.contact-page .site-main {
  background: var(--white);
}

.nav-link-active {
  color: var(--primary);
}


/* =Contact Page — Hero
========================================================================================*/
.contact-hero-section {
  position: relative;
  overflow: hidden;
  min-height: 406px;
  display: flex;
  align-items: center;
  padding: 80px 0;
}

.contact-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.contact-hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}

.contact-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,
      rgba(143, 143, 143, 0.7) 0%,
      rgba(41, 41, 41, 0.7) 45%);
  mix-blend-mode: multiply;
}

.contact-hero-wrap {
  position: relative;
  z-index: 1;
  max-width: 1608px;
}

.contact-hero-content {
  max-width: 679px;
  display: flex;
  flex-direction: column;
  gap: 25px;
}

.contact-hero-title-block {
  display: flex;
  flex-direction: column;
  gap: 20px;
  max-width: 542px;
}

.contact-hero-eyebrow {
  font-size: 18px;
  font-weight: 600;
  line-height: 1;
  color: var(--white);
}

.contact-hero-title {
  font-family: var(--font-primary);
  font-size: 52px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.5px;
  color: var(--white);
}

.contact-hero-title-regular {
  font-weight: 400;
}

.contact-hero-lead {
  font-size: 20px;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.75);
}


/* =Contact Page — Form
========================================================================================*/
.contact-form-section {
  background: var(--white);
  padding: 100px 0;
}

.contact-form-wrap {
  max-width: calc(var(--wrap) + 148px);
}

.contact-form-row {
  display: grid;
  grid-template-columns: 1fr 398px;
  align-items: flex-start;
  gap: 124px;
}

.contact-form-main {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.contact-form-intro {
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: flex-start;
  width: 100%;
}

.contact-form-eyebrow {
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
  color: var(--dark);
}

.contact-form-title {
  font-size: 46px;
  font-weight: 300;
  line-height: 1.3;
  letter-spacing: -0.92px;
  color: #2a2a2a;
  white-space: nowrap;
}

.contact-form-lead {
  font-size: 17px;
  line-height: 27.2px;
  color: rgba(29, 29, 29, 0.72);
}

.contact-category-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.contact-category-btn {
  padding: 9px 17px;
  font-size: 13px;
  font-weight: 700;
  font-family: Arial, Helvetica, sans-serif;
  color: var(--dark);
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 2px;
  cursor: pointer;
  transition:
    background var(--transition-default),
    border-color var(--transition-default),
    color var(--transition-default);
}

.contact-category-btn:hover {
  border-color: var(--primary);
}

.contact-category-btn.is-active {
  background: var(--primary);
  border-color: var(--primary);
  color: var(--white);
}

.contact-form {
  display: flex;
  flex-direction: column;
  gap: 32px;
  width: 100%;
}

.contact-form-grid {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
}

.contact-field {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 7px;
  min-width: 0;
}

.contact-field-full {
  flex: none;
  width: 100%;
}

.contact-field label {
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.2px;
  color: rgba(29, 29, 29, 0.75);
  line-height: 1;
}

.contact-field input,
.contact-field select,
.contact-field textarea {
  width: 100%;
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 2px;
  padding: 14px 17px;
  font-size: 15px;
  font-family: inherit;
  color: var(--dark);
  line-height: 1.25;
}

.contact-field select {
  padding: 14px 21px;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='7' viewBox='0 0 12 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%231d1d1d' stroke-width='1.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 17px center;
  cursor: pointer;
}

.contact-field input::placeholder,
.contact-field textarea::placeholder {
  color: #757575;
}

.contact-field textarea {
  min-height: 136px;
  resize: vertical;
  padding: 17px;
}

.contact-field input:focus,
.contact-field select:focus,
.contact-field textarea:focus {
  outline: none;
  border-color: var(--primary);
}

.contact-form-grid>.contact-field-row-pair {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.contact-submit-btn {
  align-self: flex-start;
  font-size: 20px;
  font-weight: 600;
  padding: 19px 32px;
}

.contact-direct-sidebar {
  flex-shrink: 0;
  /* width: 398px; */
  max-width: 100%;
  background: var(--light-bg);
  border: 1px solid var(--border);
  border-radius: 4px;
  padding: 40px 45px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 26px;
}

.contact-direct-title {
  font-size: 22px;
  font-weight: 600;
  line-height: 28.6px;
  color: var(--dark);
  text-align: left;
  width: 100%;
  margin: 0;
}

.contact-direct-lead {
  font-size: 17px;
  line-height: 27.2px;
  color: rgba(29, 29, 29, 0.72);
  text-align: left;
  width: 100%;
  margin: 0;
}

.contact-availability {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  padding: 11px 17px;
  width: auto;
  max-width: 100%;
  background: rgba(255, 255, 255, 0.7);
  border: 1px solid var(--border);
  border-radius: 2px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.3px;
  color: rgba(29, 29, 29, 0.55);
}

.contact-availability-dot {
  width: 8px;
  height: 8px;
  border-radius: 4px;
  background: #22c55e;
  flex-shrink: 0;
}

.contact-direct-list {
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}

.contact-direct-item {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 21px 0;
  border-top: 1px solid var(--border);
}

.contact-direct-item:last-child {
  border-bottom: 1px solid var(--border);
}

.contact-direct-icon {
  width: 38px;
  height: 38px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #eef5fb;
  border: 1px solid rgba(2, 117, 216, 0.15);
  border-radius: 50%;
}

.contact-direct-icon img {
  width: 16px;
  height: 16px;
  object-fit: contain;
}

.contact-direct-meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.contact-direct-label {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: rgba(29, 29, 29, 0.55);
  line-height: 1;
}

.contact-direct-meta a {
  font-size: 16px;
  font-weight: 600;
  color: var(--primary);
  line-height: 1.25;
}

.contact-direct-meta a:hover {
  opacity: 1;
  text-decoration: underline;
}

.contact-form-main .button {
  align-self: flex-start;
}


/* =Contact Page — Social / Newsletter
========================================================================================*/
.contact-social-section {
  background: #fbfbfb;
  border-top: 1px solid var(--border);
  padding: 100px 0;
}

.contact-social-wrap {
  max-width: calc(var(--wrap) + 192px);
}

.contact-social-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 60px;
}

.contact-social-newsletter {
  flex: 0 1 680px;
  max-width: 680px;
  display: flex;
  flex-direction: column;
  gap: 35px;
}

.contact-social-intro {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.contact-social-eyebrow {
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
  color: var(--dark);
}

.contact-social-title {
  font-size: 36px;
  font-weight: 300;
  line-height: 45px;
  letter-spacing: -0.8px;
  color: var(--dark);
}

.contact-social-text {
  font-size: 17px;
  line-height: 27.2px;
  color: rgba(29, 29, 29, 0.72);
}

.contact-newsletter-form {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px 0;
}

.contact-newsletter-form input {
  flex: 1;
  min-width: 0;
  background: #e9e9e9;
  border: none;
  padding: 20px 28px;
  font-size: 18px;
  font-family: inherit;
  color: var(--dark);
}

.contact-newsletter-form input::placeholder {
  color: var(--dark);
}

.contact-newsletter-form .button {
  flex-shrink: 0;
  font-size: 20px;
  font-weight: 500;
  padding: 19px 32px;
  border-radius: 0;
}

.contact-social-links-block {
  flex: 0 1 438px;
  max-width: 438px;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 29px;
}

.contact-social-buttons {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 16px;
  justify-content: flex-end;
  width: 100%;
}

.contact-social-btn {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  gap: 10px;
  padding: 13px 21px;
  white-space: nowrap;
  border: 1px solid var(--border);
  border-radius: 3px;
  font-size: 15px;
  font-weight: 600;
  color: var(--dark);
  background: var(--white);
  transition:
    border-color var(--transition-default),
    transform var(--transition-default);
}

.contact-social-btn:hover {
  border-color: var(--primary);
  transform: translateY(-2px);
  opacity: 1;
}

.contact-social-btn img {
  width: 18px;
  height: 18px;
  object-fit: contain;
  flex-shrink: 0;
}

.contact-social-note {
  font-size: 14px;
  line-height: 21px;
  color: rgba(29, 29, 29, 0.55);
  text-align: right;
  max-width: 100%;
}


/* =Request Demo Page
========================================================================================*/
.request-demo-page {
  background: var(--white);
}

.request-demo-page .site-main {
  background: var(--white);
}


/* =Request Demo Page — Hero + Calendly
========================================================================================*/
.request-demo-hero-section {
  position: relative;
  overflow: hidden;
  min-height: 855px;
  display: flex;
  align-items: center;
}

.request-demo-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.request-demo-hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.6;
}

.request-demo-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(237.43deg,
      rgba(2, 117, 216, 0.2) 28.52%,
      rgba(255, 255, 255, 0.7) 54.71%,
      rgb(213, 224, 233) 96.61%);
}

.request-demo-hero-wrap {
  position: relative;
  z-index: 1;
  width: 100%;
}

.request-demo-hero-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 48px;
}

.request-demo-hero-content {
  flex: 0 1 689px;
  max-width: 689px;
  display: flex;
  flex-direction: column;
  gap: 37px;
}

.request-demo-hero-copy {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.request-demo-hero-title-block {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.request-demo-eyebrow {
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
  color: var(--dark);
}

.request-demo-hero-title {
  font-family: var(--font-primary);
  font-size: 48px;
  font-weight: 700;
  line-height: 58.8px;
  letter-spacing: -0.5px;
  color: var(--dark);
  margin: 0;
}

.request-demo-title-regular {
  font-weight: 400;
}

.request-demo-hero-lead {
  font-size: 20px;
  line-height: 31px;
  color: rgba(29, 29, 29, 0.75);
  margin: 0;
}

.request-demo-callout {
  margin: 0;
  padding: 2px 0 2px 19px;
  border-left: 3px solid var(--primary);
}

.request-demo-callout p {
  font-size: 14px;
  line-height: 21px;
  color: rgba(29, 29, 29, 0.55);
  margin: 0;
}

.request-demo-calendly-card {
  flex: 0 0 734px;
  width: 734px;
  max-width: 100%;
  min-height: 693px;
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 6px;
  box-shadow:
    0 8px 40px rgba(2, 117, 216, 0.07),
    0 2px 8px rgba(0, 0, 0, 0.04);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.request-demo-calendly-widget {
  flex: 1;
  padding: 20px;
  min-height: 0;
}

.request-demo-calendly-widget .calendly-inline-widget {
  width: 100%;
  min-width: 320px;
  height: 700px;
}


/* =Request Demo Page — Real Results
========================================================================================*/
.demo-results-section {
  position: relative;
  overflow: hidden;
  padding: 100px 0;
}

.demo-results-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.demo-results-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.demo-results-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,
      rgba(143, 143, 143, 0.7) 0%,
      rgba(41, 41, 41, 0.7) 45%);
  mix-blend-mode: multiply;
}

.demo-results-wrap {
  position: relative;
  z-index: 1;
}

.demo-results-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: 50px;
  min-height: 439px;
}

.demo-results-heading {
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 15px;
  width: 100%;
}

.demo-results-eyebrow {
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
  color: var(--white);
}

.demo-results-title {
  font-size: 46px;
  font-weight: 400;
  line-height: 40px;
  letter-spacing: -0.8px;
  color: var(--white);
  margin: 0;
}

.demo-results-title strong {
  font-weight: 700;
}

.demo-results-grid {
  display: flex;
  gap: 5px;
  width: 100%;
  max-width: var(--wrap);
  margin: 0 auto;
}

.demo-result-card {
  flex: 1;
  background: rgba(0, 0, 0, 0.2);
  border: 1px solid #434343;
  padding: 45px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 20px;
  text-align: center;
  min-height: 200px;
}

.demo-result-value {
  font-family: var(--font-primary);
  font-size: 66px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -3.3px;
  color: var(--white);
  margin: 0;
}

.demo-result-label {
  font-size: 18px;
  line-height: 24.2px;
  color: rgba(255, 255, 255, 0.7);
  margin: 0;
}

.demo-results-cta {
  text-align: center;
}

.demo-results-cta .button {
  font-size: 20px;
  font-weight: 500;
  padding: 19px 32px;
}


/* =Sitemap Page
========================================================================================*/
.sitemap-page {
  background: var(--white);
}

.sitemap-page .site-main {
  background: var(--white);
}

.sitemap-banner-section {
  position: relative;
  overflow: hidden;
  min-height: 320px;
  display: flex;
  align-items: center;
}

.sitemap-banner-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.sitemap-banner-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sitemap-banner-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,
      rgba(143, 143, 143, 0.7) 0%,
      rgba(41, 41, 41, 0.7) 45%);
  mix-blend-mode: multiply;
}

.sitemap-banner-wrap {
  position: relative;
  z-index: 1;
}

.sitemap-banner-content {
  max-width: 680px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.sitemap-banner-eyebrow {
  font-size: 18px;
  font-weight: 600;
  line-height: 1;
  color: var(--white);
}

.sitemap-banner-title {
  font-family: var(--font-primary);
  font-size: 52px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.5px;
  color: var(--white);
  margin: 0;
}

.sitemap-banner-lead {
  font-size: 20px;
  line-height: 31px;
  color: rgba(255, 255, 255, 0.75);
  margin: 0;
}

.sitemap-list-section {
  padding: 80px 0 100px;
  background: var(--white);
}

.sitemap-list {
  margin: 0;
  padding-left: 1.25em;
  max-width: 640px;
}

.sitemap-list li {
  margin-bottom: 18px;
  padding-left: 8px;
  font-size: 20px;
  line-height: 1.4;
  color: var(--dark);
}

.sitemap-list li::marker {
  font-weight: 700;
  color: var(--primary);
}

.sitemap-list a {
  font-weight: 600;
  color: var(--primary);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.sitemap-list a:hover {
  opacity: 1;
  color: #025aa5;
}


/* form error styling */
.wpcf7-form.submitting .spinner-wrapper .button[type="submit"] {
  color: transparent;
}

.wpcf7-form.submitting .spinner-wrapper .button[type="submit"]::after {
  display: none;
}

.spinner-wrapper {
  position: relative;
  display: inline-flex;
  /* width: 100%; */
  width: min-content;
}

.spinner-wrapper p {
  margin-bottom: 0;
}

.spinner-wrapper .wpcf7-spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
  opacity: 1;
  z-index: 1;
  background-color: var(--white);
}

.spinner-wrapper .wpcf7-spinner::before {
  background-color: var(--black);
}

.wpcf7 form.sent .wpcf7-response-output {
  background: #f3fff3;
  border-color: var(--color-success);
  color: var(--color-success);
}

.wpcf7 form.invalid .wpcf7-response-output {
  background: #fff3f3;
  border-color: var(--color-error);
  color: var(--color-error);
}

.wpcf7 form .wpcf7-response-output {
  background: #fff3f3;
  border-color: var(--color-error);
  border-radius: 8px;
  border-width: 1px !important;
  color: var(--color-error);
  grid-column: 1 / -1;
  margin: 20px auto 0;
  padding: 10px 5px;
  text-align: center;
  width: 100%;
}

.wpcf7-not-valid {
  border-color: var(--color-error) !important;
}

.wpcf7 form .wpcf7-not-valid-tip {
  color: var(--color-error);
  font-family: var(--font-primary);
  margin-top: 5px;
  font-size: 16px;
}


.wpcf7 .newsletter-form .wpcf7-not-valid-tip,
.wpcf7 .contact-newsletter-form .wpcf7-not-valid-tip {
  grid-column: 1 / -1;
  order: 1;
}

.wpcf7 .newsletter-form .wpcf7-response-output,
.wpcf7 .contact-newsletter-form .wpcf7-response-output {
  order: 2;
  margin-top: 10px;
}

.wpcf7 .newsletter-form .wpcf7-form-control-wrap,
.wpcf7 .contact-newsletter-form .wpcf7-form-control-wrap {
  display: contents;
}

.contact-form-section .wpcf7-form .spinner-wrapper {
  width: min-content;
}

.contact-form-section .arrow-btn::after {
  content: "";
  width: 16px;
  height: 16px;
  background: url("../assets/images/white-right-arrow.svg") no-repeat center;
  background-size: contain;
  flex-shrink: 0;
}

.contact-form-section .wpcf7-form .spinner-wrapper .arrow-btn::after {
  background: url("../images/white-right-arrow.svg") no-repeat center;
  background-size: contain;
}

/* =News & Insights Page
========================================================================================*/
.news-insights-page .site-main {
  background: var(--white);
}

.news-hero-section {
  position: relative;
  overflow: hidden;
  min-height: 520px;
  display: flex;
  align-items: center;
  padding: 100px 0;
}

.news-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.news-hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.news-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,
      rgba(143, 143, 143, 0.7) 0%,
      rgba(41, 41, 41, 0.7) 45%);
  mix-blend-mode: multiply;
}

.news-hero-wrap {
  position: relative;
  z-index: 1;
}

.news-hero-content {
  max-width: 846px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.news-hero-wrap {
  max-width: 1536px;
}

.news-hero-title-block {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.news-hero-eyebrow {
  font-size: 18px;
  font-weight: 600;
  line-height: 1;
  color: var(--white);
}

.news-hero-title {
  font-family: var(--font-primary);
  font-size: 52px;
  font-weight: 400;
  line-height: 130%;
  color: var(--white);
  margin: 0;
}

.news-hero-title strong {
  font-weight: 700;
  display: block;
}

.news-hero-lead {
  font-size: 19px;
  line-height: 30px;
  color: rgba(255, 255, 255, 0.65);
  max-width: 844px;
  margin-top: 26px;
}

.news-hero-content .button {
  margin-top: 50px;
}

.news-featured-section {
  background: var(--white);
}

/* .news-featured-wrap {
  max-width: calc(var(--wrap) + 12px);
} */

.news-featured-header {
  max-width: 760px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 41px;
}

.news-featured-eyebrow {
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
  color: var(--dark);
}

.news-featured-title {
  font-size: 46px;
  font-weight: 300;
  line-height: 1.3;
  letter-spacing: -0.92px;
  color: var(--text);
}

.news-featured-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 41px;
}

.news-featured-card {
  position: relative;
  overflow: hidden;
  min-height: 320px;
  display: flex;
  align-items: stretch;
}

.news-featured-card-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.news-featured-card-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.news-featured-card-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
}

.news-featured-card-content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 26px;
  padding: 60px 180px 60px 60px;
  width: 100%;
}

.news-featured-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  height: 24px;
  padding: 7px 14px;
  font-size: 14px;
  font-weight: 700;
  color: var(--primary);
  background: #eef5fb;
  line-height: 1;
}

.news-featured-copy {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.news-featured-headline {
  font-size: 22px;
  font-weight: 400;
  line-height: 34px;
  color: var(--white);
  margin: 0;
}

.news-featured-headline strong {
  display: block;
  font-size: 26px;
  font-weight: 700;
}

.news-featured-summary {
  font-size: 16px;
  line-height: 26px;
  color: rgba(255, 255, 255, 0.98);
}

.news-featured-btn {
  align-self: flex-start;
  padding: 15px 22px;
  font-size: 16px;
  font-weight: 600;
  min-height: 49px;
}

.news-latest-section {
  padding-bottom: 0;
}

.news-latest-outer {
  max-width: calc(var(--wrap) + (var(--wrapspace) * 2));
}

.news-latest-inner {
  background: var(--section-bg);
  padding: 100px 96px;
}

.news-latest-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 40px;
  margin-bottom: 40px;
}

.news-latest-intro {
  display: flex;
  flex-direction: column;
  gap: 18px;
  max-width: 623px;
}

.news-latest-heading {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.news-latest-eyebrow {
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
  color: var(--dark);
}

.news-latest-title {
  font-size: 36px;
  font-weight: 400;
  line-height: 44px;
  color: var(--dark);
  margin: 0;
}

.news-latest-title strong {
  font-weight: 700;
}

.news-latest-lead {
  font-size: 17px;
  line-height: 27px;
  color: rgba(29, 29, 29, 0.58);
}

.news-filter-pills {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-shrink: 0;
}

.news-filter-pill {
  padding: 9px 17px;
  font-size: 13px;
  font-weight: 700;
  font-family: Arial, Helvetica, sans-serif;
  color: var(--dark);
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 62px;
  cursor: pointer;
  transition:
    background var(--transition-default),
    border-color var(--transition-default),
    color var(--transition-default);
}

.news-filter-pill:hover {
  border-color: var(--primary);
}

.news-filter-pill.is-active {
  background: var(--primary);
  border-color: var(--primary);
  color: var(--white);
}

.news-articles-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 25px;
}

.news-article-item {
  display: flex;
  gap: 12px;
  padding: 22px 0;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  transition: opacity var(--transition-default);
}

.news-article-item.is-hidden {
  display: none;
}

.news-article-thumb-link {
  flex-shrink: 0;
  display: block;
}

.news-article-thumb-link:hover {
  opacity: 0.92;
}

.news-article-thumb {
  width: 168px;
  height: 135px;
  overflow: hidden;
  flex-shrink: 0;
}

.news-article-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.news-article-body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 41px;
  padding-right: 30px;
}

.news-article-copy {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.news-article-meta {
  font-size: 11px;
  line-height: 1;
  color: rgba(29, 29, 29, 0.45);
}

.news-article-title {
  font-size: 17px;
  font-weight: 700;
  line-height: 25px;
  color: var(--dark);
  margin: 0;
}

.news-article-title a {
  color: inherit;
  transition: color var(--transition-default);
}

.news-article-title a:hover {
  color: var(--primary);
  opacity: 1;
}

.news-article-link {
  font-size: 13px;
  font-weight: 600;
  color: var(--primary);
  line-height: 1;
  transition: transform var(--transition-default);
}

.news-article-link:hover {
  transform: translateX(4px);
  opacity: 1;
}

.news-press-section {
  background: var(--white);
}

/* .news-press-wrap {
  max-width: calc(var(--wrap) + 12px);
} */

.news-press-header {
  display: flex;
  flex-direction: column;
  gap: 14px;
  max-width: 640px;
  margin-bottom: 31px;
}

.news-press-heading {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.news-press-eyebrow {
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
  color: var(--dark);
}

.news-press-title {
  font-size: 36px;
  font-weight: 700;
  line-height: 44px;
  color: var(--dark);
  margin: 0;
}

.news-press-lead {
  font-size: 17px;
  line-height: 27px;
  color: rgba(29, 29, 29, 0.58);
}

.news-press-row {
  display: flex;
  align-items: flex-end;
  /* justify-content: space-between; */
  gap: 40px;
}

.news-press-cards {
  /* display: grid;
  grid-template-columns: repeat(3, 1fr); */
  display: flex;
  flex-wrap: wrap;
  gap: 25px;
  /* flex: 1; */
  /* max-width: 1010px; */
}

.news-press-card {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 20px;
  background: var(--light-bg);
  transition:
    transform var(--transition-default),
    box-shadow var(--transition-default);
  min-width: 320px;
}

.news-press-card:hover {
  transform: translateY(-2px);
  opacity: 1;
}

.news-press-icon {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
  object-fit: contain;
}

.news-press-card-copy {
  display: flex;
  flex-direction: column;
  gap: 5px;
  min-width: 0;
}

.news-press-card-title {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--dark);
}

.news-press-card-link {
  font-size: 13px;
  font-weight: 600;
  color: var(--primary);
  line-height: 1;
}

.news-press-inquiries {
  flex-shrink: 0;
  font-size: 15px;
  line-height: 1;
  color: rgba(29, 29, 29, 0.65);
  white-space: nowrap;
  display: flex;
  gap: 4px;
  flex-direction: column;
  margin-bottom:5px;
}

.news-press-inquiries a {
  color: inherit;
  color: var(--primary);
}

.news-press-inquiries a:hover {
  color: var(--primary);
  opacity: 1;
  text-decoration: underline;
}

.news-cta-wrap {
  max-width: calc(var(--wrap) + (var(--wrapspace) * 2));
  padding-left: var(--wrapspace);
  padding-right: var(--wrapspace);
}

.news-cta-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 420px;
}

.news-cta-content {
  background: var(--light-bg);
  padding: 100px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.news-cta-eyebrow {
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
  color: var(--dark);
}

.news-cta-title {
  font-size: 38px;
  font-weight: 400;
  line-height: 130%;
  color: var(--dark);
  margin: 0;
}

.news-cta-text {
  font-size: 17px;
  line-height: 27.2px;
  color: rgba(29, 29, 29, 0.72);
  max-width: 574px;
}

.news-cta-content .button {
  align-self: flex-start;
  margin-top: auto;
}

.news-cta-media {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 100px;
  overflow: hidden;
}

.news-cta-media-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.news-cta-media-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.news-cta-media-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,
      rgba(102, 102, 102, 0.5) 0%,
      rgba(0, 0, 0, 0.5) 100%);
}

.news-cta-social-buttons {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 16px;
  width: 100%;
}

.news-cta-social-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 13px 21px;
  border: 1px solid var(--border);
  border-radius: 3px;
  font-size: 15px;
  font-weight: 600;
  color: var(--white);
  background: transparent;
  white-space: nowrap;
  transition:
    border-color var(--transition-default),
    transform var(--transition-default);
}

.news-cta-social-btn:hover {
  border-color: var(--white);
  transform: translateY(-2px);
  opacity: 1;
}

.news-cta-social-btn img {
  width: 18px;
  height: 18px;
  object-fit: contain;
  flex-shrink: 0;
}


/* =Careers Page
========================================================================================*/
.careers-page .site-main {
  background: var(--page-bg);
}

.careers-section-eyebrow {
  font-size: 18px;
  font-weight: 600;
  line-height: 1;
  color: var(--dark);
}

.careers-section-title {
  font-size: 42px;
  font-weight: 400;
  line-height: 1.3;
  color: var(--dark);
  margin: 0;
}


/* =Careers Page — Hero
========================================================================================*/
.careers-hero-section {
  position: relative;
  overflow: hidden;
}

.careers-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.careers-hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.careers-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,
      rgba(143, 143, 143, 0.7) 0%,
      rgba(41, 41, 41, 0.7) 45%);
  mix-blend-mode: multiply;
}

.careers-hero-wrap {
  position: relative;
  z-index: 1;
}

.careers-hero-row {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 160px;
  padding: 100px 0;
}

.careers-hero-main {
  max-width: 846px;
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.careers-hero-copy {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.careers-hero-title-block {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.careers-hero-eyebrow {
  font-size: 18px;
  font-weight: 600;
  line-height: 1;
  color: var(--white);
}

.careers-hero-title {
  font-family: var(--font-primary);
  font-size: 52px;
  font-weight: 400;
  line-height: 130%;
  color: var(--white);
  margin: 0;
}

.careers-hero-title strong {
  display: block;
  font-weight: 700;
}

.careers-hero-lead {
  font-size: 19px;
  line-height: 30px;
  color: rgba(255, 255, 255, 0.65);
  max-width: 844px;
}

.careers-hero-trust {
  margin-top: 0;
}

.careers-hero-card {
  max-width: 410px;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
  border: 1px solid #434343;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 35px;
  align-self: stretch;
  backdrop-filter: blur(20px);
}

.careers-hero-card-image {
  height: 159px;
  overflow: hidden;
  flex-shrink: 0;
}

.careers-hero-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.careers-hero-card-text {
  font-size: 19px;
  line-height: 30px;
  color: rgba(255, 255, 255, 0.65);
  margin: 0;
}

.careers-hero-card-btn {
  align-self: flex-start;
  padding: 16px 35px 17px 34px;
  font-size: 16px;
  font-weight: 600;
}


/* =Careers Page — Why AutoHub
========================================================================================*/
.careers-impact-section {
  padding: 120px 0;
  background: var(--page-bg);
}

.careers-impact-wrap {
  max-width: calc(var(--wrap) + 192px);
}

.careers-impact-intro {
  display: flex;
  flex-direction: column;
  gap: 28px;
  margin-bottom: 60px;
}

.careers-impact-heading {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.careers-impact-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 105px;
  font-size: 18px;
  line-height: 29px;
  color: rgba(29, 29, 29, 0.63);
}

.careers-stats-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  width: 100%;
}

.careers-stat-item {
  padding: 30px;
  border: 1px solid #c7c7c7;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.careers-stat-item+.careers-stat-item {
  border-left: 0;
}

.careers-stat-value {
  font-size: 40px;
  font-weight: 700;
  line-height: 1.3;
  color: var(--dark);
}

.careers-stat-label {
  font-size: 18px;
  line-height: 20px;
  color: rgba(29, 29, 29, 0.65);
}


/* =Careers Page — Culture
========================================================================================*/
.careers-culture-section {
  padding-bottom: 0;
}

.careers-culture-outer {
  max-width: calc(var(--wrap) + (var(--wrapspace) * 2));
}

.careers-culture-inner {
  background: var(--section-bg);
  padding: 100px 96px;
}

.careers-culture-top {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: stretch;
  margin-bottom: 60px;
}

.careers-culture-copy {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.careers-culture-heading {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.careers-culture-lead {
  font-size: 18px;
  line-height: 29px;
  color: rgba(29, 29, 29, 0.63);
  max-width: 700px;
}

.careers-culture-image {
  min-height: 280px;
  overflow: hidden;
}

.careers-culture-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.careers-values-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--border);
}

.careers-value-item {
  display: flex;
  flex-direction: column;
  gap: 18px;
  position: relative;
  margin: 0 32px;
}

.careers-value-item:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 0;
  right: -20px;
  width: 1px;
  height: 100%;
  background: var(--border);
}

.careers-value-accent {
  width: 4px;
  height: 40px;
  background: var(--primary);
  flex-shrink: 0;
}

.careers-value-title {
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  color: var(--dark);
  margin: 0;
}

.careers-value-text {
  font-size: 14px;
  line-height: 22px;
  color: rgba(29, 29, 29, 0.58);
  margin: 0;
}


/* =Careers Page — Who Fits Here
========================================================================================*/
.careers-fit-section {
  padding: 120px 0;
  background: var(--page-bg);
}

.careers-fit-wrap {
  max-width: calc(var(--wrap) + 192px);
}

.careers-fit-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 100px;
  align-items: stretch;
}

.careers-fit-image {
  /* min-height: 420px;
  overflow: hidden; */
}

.careers-fit-image figure {
  width: 100%;
  height: 100%;
}

.careers-fit-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.careers-fit-content {
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.careers-fit-heading {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.careers-fit-lead {
  font-size: 18px;
  line-height: 29px;
  color: rgba(29, 29, 29, 0.63);
  max-width: 700px;
}

.careers-fit-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 590px;
}

.careers-fit-list li {
  position: relative;
  padding-left: 20px;
  font-size: 18px;
  line-height: 24px;
  color: rgba(29, 29, 29, 0.72);
}

.careers-fit-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 9px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--primary);
}


/* =Careers Page — Benefits
========================================================================================*/
.careers-benefits-section {
  padding-bottom: 120px;
  background: var(--page-bg);
}

.careers-benefits-wrap {
  max-width: calc(var(--wrap) + 192px);
}

.careers-benefits-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
}

.careers-benefits-intro {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.careers-benefits-heading {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.careers-benefits-tagline {
  font-size: 17px;
  line-height: 24px;
  color: rgba(29, 29, 29, 0.5);
  margin: 0;
}

.careers-benefits-btn {
  align-self: flex-start;
  padding: 15px 28px 16px;
  font-size: 14px;
  font-weight: 600;
}

.careers-benefits-panel {
  background: rgba(255, 255, 255, 0.45);
  padding: 60px 40px;
}

.careers-benefits-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.careers-benefits-list li {
  position: relative;
  padding-left: 20px;
  font-size: 18px;
  line-height: 22px;
  color: var(--dark);
}

.careers-benefits-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--primary);
}


/* =Careers Page — Open Positions
========================================================================================*/
.careers-open-section {
  padding-bottom: 0;
}

.careers-open-outer {
  max-width: calc(var(--wrap) + (var(--wrapspace) * 2));
}

.careers-open-inner {
  background: var(--white);
  padding: 100px 96px;
}

.careers-open-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 148px;
  margin-bottom: 39px;
}

.careers-open-heading {
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex-shrink: 0;
}

.careers-open-title {
  font-size: 42px;
  font-weight: 400;
  line-height: 1.3;
  color: var(--dark);
  margin: 0;
}

.careers-open-title strong {
  display: block;
  font-weight: 700;
}

.careers-open-lead {
  flex: 1;
  font-size: 17px;
  line-height: 27px;
  color: rgba(29, 29, 29, 0.6);
  margin: 0;
}

.careers-job-board {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 265px;
  padding: 40px 20px 20px;
  background: var(--section-bg);
  text-align: center;
}

.careers-job-board p {
  font-size: 16px;
  line-height: 1;
  color: rgba(29, 29, 29, 0.35);
  margin: 0;
}


/* =Careers Page — Network CTA
========================================================================================*/
.careers-network-section {
  padding-bottom: 120px;
}

.careers-network-wrap {
  max-width: calc(var(--wrap) + (var(--wrapspace) * 2));
  padding-left: var(--wrapspace);
  padding-right: var(--wrapspace);
}

.careers-network-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 420px;
}

.careers-network-content {
  background: var(--light-bg);
  padding: 100px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.careers-network-eyebrow {
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
  color: var(--dark);
}

.careers-network-title {
  font-size: 38px;
  font-weight: 400;
  line-height: 1.3;
  color: var(--dark);
  margin: 0;
}

.careers-network-title strong {
  font-weight: 700;
}

.careers-network-text {
  font-size: 17px;
  line-height: 27.2px;
  color: rgba(29, 29, 29, 0.72);
}

.careers-network-form {
  margin-top: auto;
  width: 100%;
}

.careers-network-media {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 100px;
  overflow: hidden;
}

.careers-network-media-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.careers-network-media-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.careers-network-media-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,
      rgba(102, 102, 102, 0.5) 0%,
      rgba(0, 0, 0, 0.5) 100%);
}


/* =News & Insights Detail Page
========================================================================================*/
.news-detail-page .site-main {
  background: var(--white);
}

.news-detail-masthead {
  padding: 60px 0 40px;
}

.news-detail-masthead-wrap {
  max-width: calc(var(--wrap) + 12px);
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.news-detail-masthead-main {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.news-detail-meta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
}

.news-detail-meta-row .news-article-meta {
  font-size: 14px;
}

.news-detail-title {
  font-family: var(--font-primary);
  font-size: 46px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.92px;
  color: var(--dark);
  margin: 0;
}

.news-detail-deck {
  font-size: 19px;
  line-height: 30px;
  color: rgba(29, 29, 29, 0.63);
  margin: 0;
  max-width: 840px;
}

.news-detail-featured {
  margin: 0;
}

.news-detail-featured-wrap {
  max-width: calc(var(--wrap) + 12px);
}

.news-detail-featured img {
  width: 100%;
  max-height: 520px;
  object-fit: cover;
}

.news-detail-body-section {
  padding: 60px 0 100px;
}

.news-detail-body-wrap {
  max-width: calc(var(--wrap) + 12px);
}

.news-detail-body-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 80px;
  align-items: flex-start;
}

.news-detail-content {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 24px;
  font-size: 18px;
  line-height: 29px;
  color: rgba(29, 29, 29, 0.72);
}

.news-detail-content>p {
  margin: 0;
}

.news-detail-content h2 {
  font-size: 26px;
  font-weight: 700;
  line-height: 34px;
  color: var(--dark);
  margin: 16px 0 0;
}

.news-detail-content h2:first-child {
  margin-top: 0;
}

.news-detail-quote {
  background: var(--section-bg);
  border-left: 3px solid var(--primary);
  padding: 32px 40px;
  margin: 8px 0;
}

.news-detail-quote p {
  font-size: 21px;
  line-height: 1.35;
  color: rgba(29, 29, 29, 0.82);
  margin: 0 0 8px;
}

.news-detail-quote cite {
  font-size: 14px;
  font-weight: 600;
  font-style: normal;
  color: var(--dark);
}

.news-detail-content ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.news-detail-content ul li {
  position: relative;
  padding-left: 20px;
}

.news-detail-content ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 11px;
  width: 6px;
  height: 6px;
  border-radius: 100%;
  background: var(--primary);
}

.news-detail-sidebar {
  display: flex;
  flex-direction: column;
  gap: 20px;
  position: sticky;
  top: 120px;
}

.news-detail-sidebar-card {
  background: var(--section-bg);
  border: 1px solid var(--border-light);
  padding: 30px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.news-detail-sidebar-title {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--dark);
  margin: 0;
}

.news-detail-sidebar-text {
  font-size: 15px;
  line-height: 24px;
  color: rgba(29, 29, 29, 0.65);
  margin: 0;
}

.news-detail-sidebar-card .button-sm {
  align-self: flex-start;
  padding: 12px 22px;
  font-size: 14px;
}

.news-detail-share-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.news-detail-share-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border: 1px solid var(--border);
  border-radius: var(--radius-default);
  background: var(--white);
  transition:
    border-color var(--transition-default),
    transform var(--transition-default);
}

.news-detail-share-btn:hover {
  border-color: var(--primary);
  transform: translateY(-2px);
  opacity: 1;
}

.news-detail-share-btn img {
  width: 18px;
  height: 18px;
  object-fit: contain;
}

.news-detail-related {
  background: var(--section-bg);
  padding: 100px 0;
}

.news-detail-related-wrap {
  max-width: calc(var(--wrap) + 12px);
}

.news-detail-related-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  margin-bottom: 40px;
}

.news-detail-related-title {
  font-size: 36px;
  font-weight: 400;
  line-height: 44px;
  color: var(--dark);
  margin: 0;
  text-align: center;
}

.news-detail-related-title strong {
  font-weight: 700;
}

.news-detail-related-grid {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.news-detail-related-grid .news-article-item {
  border-left: 0;
  border-right: 0;
}

.news-detail-related-grid .news-article-body {
  gap: 24px;
}

.news-detail-related-action {
  display: flex;
  align-items: center;
  flex-direction: column;
  margin-top: 40px;
}


.blog-title strong {
  display: inline-block;
}

.news-featured-grid.col-1 {
  grid-template-columns: 1fr;
}

.featured-blog {
  min-height: 500px;
}

.featured-blog .news-featured-card-content {
  justify-content: flex-end;
}

.blog-latest-section .news-articles-grid .news-article-item:first-child,
.blog-latest-section .news-articles-grid .news-article-item:nth-child(2) {
  border-top: 0;
}

.blog-latest-section .filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: space-between;
  margin-top: 40px;
  padding: 40px 0;
  border-top: 1px solid #DDDDDD;
}

.blog-latest-section .filter-row .news-filter-pills {
  width: auto;
  flex-wrap: wrap;
  flex: 1 1 auto;
}

.sort-button {
  padding: 12px 19px;
  border: 1px solid #DDDDDD;
  background-color: #FFF;
  border-radius: 2px;
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  font-weight: 700;
  transition: 250ms ease-out;
}

.sort-button:hover {
  border-color: var(--primary);
}

.sort-button img {
  width: 15px;
}

.mb-0 {
  margin-bottom: 0;
}

.contact-social-section.section-row {
  padding: 120px 0;
}

@media screen and (max-width: 1200px) {
  .contact-social-section.section-row {
    padding: 80px 0;
  }
}


@media screen and (max-width: 767px) {
  .contact-social-section.section-row {
    padding: 60px 0;
  }
}

.contact-newsletter-form.contact-multi-input-form {
  grid-template-columns: 1fr 1fr auto;
}

.contact-newsletter-form.contact-multi-input-form input:first-child {
  margin-right: 10px;
}

/* rich text content css start*/
/* ── Rich Text Content Styles ── */
/* Add class "rich-text" to your Elementor widget wrapper */

.rich-text {
  font-size: 16px;
  line-height: 1.75;
  color: #1a2e4a;
}

/* spacing between all block elements */
.rich-text>*+* {
  margin-top: 1.25rem;
}

/* paragraphs */
.rich-text p {
  margin: 0;
}

.rich-text p+p {
  margin-top: 1rem;
}

/* headings */
.rich-text h1,
.rich-text h2,
.rich-text h3,
.rich-text h4,
.rich-text h5,
.rich-text h6 {
  font-weight: 600;
  line-height: 1.3;
  margin: 2rem 0 0.5rem;
  color: #1a2e4a;
}

.rich-text h1+p,
.rich-text h2+p,
.rich-text h3+p,
.rich-text h4+p {
  margin-top: 0;
}

.rich-text h1 {
  font-size: 2.25rem;
}

.rich-text h2 {
  font-size: 1.75rem;
}

.rich-text h3 {
  font-size: 1.35rem;
}

.rich-text h4 {
  font-size: 1.1rem;
}

.rich-text h5,
.rich-text h6 {
  font-size: 0.95rem;
  color: #6b7280;
}

/* links */
.rich-text a {
  color: #185fa5;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
  transition: color 0.15s;
}

.rich-text a:hover {
  color: #0c447c;
}

/* bold / italic */
.rich-text strong,
.rich-text b {
  font-weight: 600;
}

.rich-text em,
.rich-text i {
  font-style: italic;
}

/* ── UNORDERED LIST ── */
.rich-text ul {
  list-style: none;
  padding-left: 0;
  margin: 0.5rem 0;
}

.rich-text ul>li {
  position: relative;
  padding-left: 1.4rem;
  margin: 0.4rem 0;
}

.rich-text ul>li::before {
  content: '';
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #1e5fa8;
  position: absolute;
  left: 2px;
  top: 0.58em;
}

/* ── ORDERED LIST ── */
.rich-text ol {
  list-style: none;
  counter-reset: ol-counter;
  padding-left: 0;
  margin: 0.5rem 0;
}

.rich-text ol>li {
  position: relative;
  padding-left: 1.8rem;
  counter-increment: ol-counter;
  margin: 0.4rem 0;
}

.rich-text ol>li::before {
  content: counter(ol-counter) ".";
  position: absolute;
  left: 0;
  top: 0;
  font-size: 0.85rem;
  font-weight: 600;
  color: #1e5fa8;
  min-width: 1.4rem;
}

/* ── NESTED LISTS ── */
.rich-text ul ul,
.rich-text ol ol,
.rich-text ul ol,
.rich-text ol ul {
  margin: 0.3rem 0 0.3rem 0.8rem;
}

/* nested ul level 2 — hollow circle */
.rich-text ul ul>li::before {
  background: transparent;
  border: 1.5px solid #888780;
  width: 5px;
  height: 5px;
}

/* nested ul level 3 — small square */
.rich-text ul ul ul>li::before {
  background: #888780;
  border: none;
  width: 4px;
  height: 4px;
  border-radius: 1px;
}

/* nested ol level 2 — alpha */
.rich-text ol ol>li::before {
  content: counter(ol-counter, lower-alpha) ".";
}

/* nested ol level 3 — roman */
.rich-text ol ol ol>li::before {
  content: counter(ol-counter, lower-roman) ".";
}

/* ── TABLE ── */
.rich-text table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
  margin: 1.5rem 0;
}

.rich-text table thead th {
  background: #1a2e4a;
  color: #ffffff;
  padding: 11px 16px;
  text-align: left;
  font-weight: 600;
  font-size: 0.8rem;
  letter-spacing: 0.04em;
}

.rich-text table tbody td {
  padding: 10px 16px;
  border-bottom: 1px solid #dde4ee;
  vertical-align: top;
  color: #1a2e4a;
}

.rich-text table tbody tr:nth-child(even) td {
  background: #f4f7fb;
}

.rich-text table tbody tr:last-child td {
  border-bottom: none;
}

.rich-text table tbody tr:hover td {
  background: #e6f1fb;
}

/* ── BLOCKQUOTE ── */
.rich-text blockquote {
  border-left: 3px solid #1e5fa8;
  border-radius: 0;
  margin: 1.5rem 0;
  padding: 0.75rem 1.25rem;
  background: #e6f1fb;
}

.rich-text blockquote p {
  color: #0c447c;
  margin: 0;
  font-style: italic;
  font-size: 0.95rem;
}

/* ── CODE ── */
.rich-text code {
  font-family: monospace;
  font-size: 0.875rem;
  background: #f1efe8;
  color: #3c3489;
  padding: 2px 6px;
  border-radius: 4px;
}

.rich-text pre {
  background: #2c2c2a;
  color: #d3d1c7;
  border-radius: 8px;
  padding: 1rem 1.25rem;
  overflow-x: auto;
  font-size: 0.85rem;
  line-height: 1.6;
  margin: 1.5rem 0;
}

.rich-text pre code {
  background: none;
  color: inherit;
  padding: 0;
  font-size: inherit;
}

/* ── MISC ── */
.rich-text hr {
  border: none;
  border-top: 1px solid #dde4ee;
  margin: 2rem 0;
}

.rich-text img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
  display: block;
}

.rich-text figcaption {
  font-size: 0.82rem;
  color: #6b7280;
  margin-top: 0.4rem;
  text-align: center;
}

.rich-text small {
  font-size: 0.82rem;
  color: #6b7280;
}

.rich-text mark {
  background: #fac775;
  color: #412402;
  padding: 1px 4px;
  border-radius: 3px;
}

/* rich text content css end*/


/* 404 section css start */
.not-found-section {
  text-align: center;
}

.not-found-section .content {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.error-code {
  font-size: 80px;
  font-weight: 800;
  letter-spacing: -3px;
  line-height: 1;
  color: var(--dark);
  margin-bottom: 4px;
}

.error-code span {
  color: var(--primary);
}

.divider {
  width: 40px;
  height: 3px;
  background: var(--primary);
  border-radius: 2px;
  margin: 20px auto;
}

.headline {
  font-size: 22px;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: 12px;
  letter-spacing: -0.4px;
}

.subtext {
  font-size: 15px;
  color: var(--body-text);
  line-height: 1.65;
  margin-bottom: 36px;
}

.actions {
  display: flex;
  gap: 10px;
  justify-content: center;
  flex-wrap: wrap;
}

/* 404 section css end */
.section-lead p:not(:last-child),
.hero-sub p:not(:last-child) {
  margin-bottom: 22px;
}

@media screen and (max-width: 992px) {
  .section-lead p:not(:last-child),
  .hero-sub p:not(:last-child) {
    margin-bottom: 16px;
  }
}

/* for integation page */
.careers-stat-item:first-child{
  border-left: 0;
}

.careers-stat-item:last-child{
  border-right: 0;
}

.careers-values-grid.two-cols {
  grid-template-columns: 1fr 1fr;
}

.careers-values-grid.two-cols .careers-value-item {
  margin: 0 40px;
}

.careers-value-item:not(:last-child)::after{
  right: -40px;
}

.careers-value-item .inner-boxes-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 10px;
}

.careers-value-item .inner-boxes-grid .box{
  background: #FFF;
  padding: 12px 24px;
}

.careers-value-item .inner-boxes-grid .box > span {
  display: block;
  color: #1D1D1D66;
  font-size: 11px;
  line-height: 100%;
  letter-spacing: 0.8px;
  font-weight: 400;
  margin-bottom: 4px;
}

.careers-value-item .inner-boxes-grid .box > p {
  color: #1D1D1D;
  font-size: 16px;
  font-weight: 600;
}

.tag-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
}

.tag-box .box-title{
  color: #1D1D1D;
  font-weight: 700;
  font-size: 15px;
  margin-bottom: 12px;
}

.tag-box p {
  color: #1D1D1D8C;
  font-size: 13px;
  font-weight: 400;
}

.tag-list{
  display: flex;
  flex-direction: column;
  gap: 14px;
  align-items: flex-start;
  margin-top: 20px;
}

.tag-list a,
.tag-list span { 
  display: block;
  background-color: #FFF;
  padding: 10px 24px;
  color: #1D1D1DB8;
  font-size: 18px;
  font-weight: 400;
  width: fit-content;
  border-radius: 40px;
}

.careers-benefits-panel p {
  color: #1D1D1D94;
  margin-bottom: 28px;
  font-size: 17px;
}

.careers-benefits-panel p.special-text {
  color: #1D1D1D;
  font-size: 19px;
}

.careers-benefits-panel > * + .careers-benefits-list.horizontal-list {
  padding-top: 28px;
  margin-top: 28px;
  position: relative;
}

.careers-benefits-panel > * + .careers-benefits-list.horizontal-list::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  background-color: var(--primary);
  width: 40px;
  height: 4px;
}

.careers-benefits-panel .careers-benefits-list.horizontal-list {
  display: flex;
  flex-wrap: wrap;
  flex-direction: revert;
  gap: 20px;
}