.toggle-video-section {
  position: relative;
  min-height: clamp(850px, 88vh, 1100px);
  overflow: hidden;
  background: var(--color-black-off);
  color: #fff;
  display: flex;
  align-items: flex-end;
  margin-top: -1px;
  pointer-events: none;
}

.toggle-video-media,
.toggle-video-media video,
.toggle-video-color-overlay,
.feature-section-media,
.feature-section-media img,
.feature-section-media video,
.feature-section-color-overlay,
.cta-section-media,
.cta-section-media img,
.cta-section-media video,
.cta-section-color-overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.toggle-video-media video,
.feature-section-media img,
.feature-section-media video,
.cta-section-media img,
.cta-section-media video {
  object-fit: cover;
}

.toggle-video-bg {
  opacity: 0;
  transition: opacity 0.45s ease;
}

.toggle-video-bg.is-active {
  opacity: 1;
}

.toggle-video-color-overlay {
  z-index: 2;
  pointer-events: none;
}

.toggle-video-section.has-vignette::after,
.feature-section.has-vignette::after,
.cta-section.has-vignette::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(
      180deg,
      rgba(28, 25, 26, 1) 0%,
      rgba(28, 25, 26, 0.92) 7%,
      rgba(28, 25, 26, 0.48) 22%,
      rgba(28, 25, 26, 0) 48%
    ),
    radial-gradient(
      circle at center,
      rgba(28, 25, 26, 0) 26%,
      rgba(28, 25, 26, 0.62) 100%
    ),
    linear-gradient(
      180deg,
      rgba(28, 25, 26, 0) 42%,
      rgba(28, 25, 26, 0.82) 100%
    );
  z-index: 3;
}

.toggle-video-content {
  position: relative;
  z-index: 4;
  width: 100%;
  padding-top: clamp(220px, 34vh, 420px);
  padding-bottom: clamp(56px, 8vh, 104px);
  pointer-events: none;
}

.toggle-video-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(72px, 18vw, 300px);
  align-items: end;
  pointer-events: auto;
}

.toggle-video-option {
  appearance: none;
  display: block;
  width: 100%;
  background: transparent;
  border: 0;
  color: inherit;
  text-align: left;
  padding: 0;
  cursor: pointer;
  opacity: 0.28;
  transition: opacity 0.28s ease;
  pointer-events: auto;
}

.toggle-video-option.is-active,
.toggle-video-option:hover,
.toggle-video-option:focus-visible {
  opacity: 1;
}

.toggle-video-progress {
  display: block;
  height: 2px;
  background: rgba(255, 255, 255, 0.22);
  margin-top: 40px;
  overflow: hidden;
}

.toggle-video-progress span {
  display: block;
  width: 0;
  height: 100%;
  background: var(--color-orange);
}

.toggle-video-option.is-active .toggle-video-progress span {
  animation: toggleVideoProgress linear forwards;
  animation-duration: var(--toggle-duration, 6s);
}

.toggle-video-option h2,
.feature-section h2 {
  display: block;
  font-size: var(--type-display-section);
  letter-spacing: var(--tracking-heading);
  line-height: var(--leading-display-tight);
  margin-bottom: 0.16em;
}

.toggle-video-option h3,
.feature-section-header h3,
.feature-point h4,
.feature-card h4 {
  display: block;
  font-size: var(--type-label);
  color: var(--color-orange);
  letter-spacing: var(--tracking-label);
  line-height: var(--leading-label);
  margin-bottom: 24px;
  text-transform: uppercase;
}

.feature-point h4 {
  margin-bottom: 10px;
}

.toggle-video-copy {
  display: block;
  max-width: 560px;
  color: #fff;
  font-size: var(--type-body-section);
  line-height: var(--leading-body-section);
}

.toggle-video-copy p,
.toggle-video-copy li,
.toggle-video-copy strong,
.toggle-video-copy a {
  color: #fff;
}

.toggle-video-copy p:last-child,
.feature-section-intro p:last-child,
.feature-point-copy p:last-child,
.feature-card p:last-child {
  margin-bottom: 0;
}

@keyframes toggleVideoProgress {
  from {
    width: 0;
  }
  to {
    width: 100%;
  }
}

.feature-section {
  position: relative;
  overflow: hidden;
  background: #050505;
  color: #fff;
  padding: clamp(88px, 10vw, 138px) 0 clamp(96px, 11vw, 150px);
}

.feature-section-media {
  opacity: 0.76;
}

.feature-section-color-overlay {
  z-index: 2;
  pointer-events: none;
}

.feature-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    90deg,
    rgba(0, 0, 0, 0.98) 0%,
    rgba(0, 0, 0, 0.86) 44%,
    rgba(0, 0, 0, 0.16) 100%
  );
  z-index: 3;
  pointer-events: none;
}

.feature-section.text-dark {
  background: #fff;
  color: var(--color-black-off);
}

.feature-section.text-dark::before {
  background: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0.98) 0%,
    rgba(255, 255, 255, 0.86) 44%,
    rgba(255, 255, 255, 0.16) 100%
  );
}

.feature-section-inner {
  position: relative;
  z-index: 4;
}

.feature-section-header {
  max-width: 940px;
  margin-bottom: clamp(60px, 8vw, 90px);
}

.feature-section-header h2 {
  font-size: var(--type-display-section);
  margin-bottom: 10px;
}

.feature-section-header h3 {
  color: #fff;
}

.feature-section-intro {
  max-width: 680px;
  color: #fff;
}

.feature-section.text-light .feature-section-intro,
.feature-section.text-light .feature-section-intro p,
.feature-section.text-light .feature-section-intro li,
.feature-section.text-light .feature-section-intro strong,
.feature-section.text-light .feature-point-copy,
.feature-section.text-light .feature-point-copy p,
.feature-section.text-light .feature-point-copy li,
.feature-section.text-light .feature-point-copy strong,
.feature-section.text-light .feature-card-slider .slider-header p {
  color: #fff;
}

.feature-section.text-dark h2,
.feature-section.text-dark .feature-section-header h3,
.feature-section.text-dark .feature-section-intro,
.feature-section.text-dark .feature-section-intro p,
.feature-section.text-dark .feature-section-intro li,
.feature-section.text-dark .feature-section-intro strong,
.feature-section.text-dark .feature-point h3,
.feature-section.text-dark .feature-point-copy,
.feature-section.text-dark .feature-point-copy p,
.feature-section.text-dark .feature-point-copy li,
.feature-section.text-dark .feature-point-copy strong,
.feature-section.text-dark .feature-card-slider .slider-header h3,
.feature-section.text-dark .feature-card-slider .slider-header p {
  color: var(--color-black-off);
}

.feature-points {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 72px;
  max-width: 1060px;
  margin-bottom: clamp(60px, 8vw, 90px);
}

.feature-point {
  border-top: 2px solid var(--color-orange);
  padding-top: 6px;
}

.feature-section.text-light .feature-point h4 {
  color: #fff;
  font-size: var(--type-label-sm);
}

.feature-section.text-dark .feature-point h4 {
  color: var(--color-black-off);
}

.feature-point h3,
.feature-card h3 {
  font-size: var(--type-display-section);
  letter-spacing: var(--tracking-heading);
  line-height: var(--leading-display-tight);
}

.feature-point h3 {
  margin-bottom: 20px;
}

.feature-card h3 {
  font-size: var(--type-display-card);
  letter-spacing: var(--tracking-card-heading);
  max-width: 720px;
  margin-bottom: 10px;
}

.feature-point-copy {
  max-width: 430px;
  color: #fff;
}

.feature-card-slider .slider-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 32px;
  margin-bottom: 40px;
  max-width: 730px;
  padding-right: 0;
}

.feature-card-slider {
  --slider-edge-gutter: max(
    var(--gutter-lg),
    calc(((100vw - 1550px) / 2) + var(--gutter-lg))
  );
  width: calc(100vw - var(--slider-edge-gutter));
  padding-right: 0;
  overflow: visible;
}

.feature-card-slider .slider-header {
  max-width: 730px;
  padding-right: 0;
}

.feature-card-slider .slider-header h3 {
  font-size: var(--type-display-section);
  letter-spacing: var(--tracking-heading);
  line-height: var(--leading-display-tight);
  margin-bottom: 10px;
}

.feature-card-slider .slider-header p {
  max-width: 560px;
  color: #fff;
  margin-bottom: 0;
}

.feature-card-slider .slider-arrows {
  flex: 0 0 auto;
  gap: 12px;
}

.feature-card-slider .slider-arrows .arrow {
  background: transparent;
  border: 2px solid rgba(255, 255, 255, 0.92);
  padding: 0;
}

.feature-card-slider .slider-arrows .arrow:before {
  background: transparent;
}

.feature-card-slider .slider-arrows .arrow .arrow-icon,
.feature-card-slider .slider-arrows .arrow .arrow-icon:before,
.feature-card-slider .slider-arrows .arrow .arrow-icon:after {
  border-color: #fff;
}

.feature-slider {
  padding-left: 0 !important;
  overflow: visible;
  width: 100%;
}

.feature-slider .glide__track {
  overflow: visible;
}

.feature-slider .glide__slides {
  overflow: visible;
  padding-left: 0 !important;
}

.feature-slider.is-native-scroll .glide__track {
  overflow-x: auto;
  overflow-y: hidden;
  scroll-padding-left: var(--slider-edge-gutter);
  scroll-padding-right: var(--slider-edge-gutter);
}

.feature-slider.is-native-scroll {
  margin-left: calc(var(--slider-edge-gutter) * -1);
  width: 100vw;
  --feature-card-height: clamp(430px, 22.8vw, 465px);
}

.feature-slider.is-native-scroll .glide__slides {
  padding-left: var(--slider-edge-gutter) !important;
  padding-right: var(--slider-edge-gutter) !important;
}

.feature-slider.is-native-scroll .glide__slide {
  display: flex;
  align-items: stretch;
}

.feature-slider.is-native-scroll .glide__slide:first-child {
  scroll-margin-left: var(--slider-edge-gutter);
}

.feature-card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 100%;
  height: var(--feature-card-height);
  min-height: 0;
  border: 2px solid rgba(255, 255, 255, 0.88);
  padding: clamp(35px, 3.15vw, 50px);
  background: transparent;
  color: #fff;
  overflow: hidden;
}

.feature-card.item-text .full {
  inset: 0;
  height: auto;
  overflow-y: auto;
  padding: clamp(35px, 3.15vw, 50px);
  background: transparent;
}

.feature-card.item-text.expanded > .full.desktop {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

.feature-card h4 {
  color: #fff;
  font-size: var(--type-label-lg);
  letter-spacing: var(--tracking-label);
  line-height: var(--leading-label);
  margin-bottom: clamp(25px, 2.5vw, 35px);
  max-width: 720px;
}

.feature-card .preview,
.feature-card .full {
  color: #fff;
}

.feature-card .preview p,
.feature-card .preview li,
.feature-card .full p,
.feature-card .full li {
  color: #fff !important;
  max-width: 660px;
}

.feature-card .preview strong,
.feature-card .full strong,
.feature-card .full a,
.feature-card.expanded .read-toggle {
  color: #fff !important;
}

.feature-card-preview-label {
  display: block;
  color: #fff;
  font-family: futura-pt-bold, sans-serif;
  font-size: var(--type-label-sm);
  font-weight: 700;
  letter-spacing: var(--tracking-label);
  line-height: var(--leading-label-relaxed);
  margin-bottom: 14px;
  text-transform: uppercase;
}

.feature-card .full p:first-child {
  margin-bottom: 12px;
}

.feature-card .full p:first-child strong {
  display: block;
  color: #fff;
  font-family: futura-pt-bold, sans-serif;
  font-size: var(--type-label-sm);
  font-weight: 700;
  letter-spacing: var(--tracking-label);
  line-height: var(--leading-label-relaxed);
  text-transform: uppercase;
}

.feature-card .read-toggle {
  display: block;
  margin: 24px 0 0;
  color: var(--color-orange) !important;
  font-family: futura-pt-bold, sans-serif;
  font-size: var(--type-label-sm);
  font-weight: 700;
  letter-spacing: var(--tracking-label);
  line-height: var(--leading-label-relaxed);
  text-transform: uppercase;
}

.feature-card .preview p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  margin-bottom: 0;
  overflow: hidden;
}

.feature-card .preview p + .read-toggle {
  margin-top: 26px;
}

.feature-card .full .read-toggle,
.feature-card.expanded .read-toggle {
  color: var(--color-orange) !important;
}

.feature-card-slider .slider-arrows .arrow.disabled,
.feature-card-slider .slider-arrows .arrow.glide__arrow--disabled {
  background: transparent;
  border-color: rgba(255, 255, 255, 0.38);
  opacity: 1;
}

.slider-section .card-carousel-section {
  overflow: hidden;
}

.slider-card-width-compact .is-native-scroll {
  --slider-slide-max: 360px;
}

.slider-card-width-standard .is-native-scroll {
  --slider-slide-max: 550px;
}

.slider-card-width-wide .is-native-scroll {
  --slider-slide-max: 720px;
}

.slider-card-width-extra-wide .is-native-scroll {
  --slider-slide-max: 900px;
}

.slider-card-width-full .is-native-scroll {
  --slider-slide-max: 1450px;
}

.card-carousel .item.slider-image-only,
.horizontal .container.slider-image-only {
  border: 0;
}

.card-carousel .news-post-item.is-image-only {
  border: 0;
  padding-bottom: 0;
}

.card-carousel .news-post-item.is-image-only .inner {
  height: 100%;
}

.horizontal .container .news-post-item.is-image-only .image {
  flex: 1 0 100%;
  height: auto;
  margin-bottom: 0;
  width: 100%;
}

.card-carousel .news-post-item.is-image-only .image {
  background: var(--color-gray-lt) !important;
  position: relative;
}

.card-carousel .news-post-item.is-image-only .image:before {
  content: "";
  display: block;
  padding-top: 52%;
}

.card-carousel .news-post-item.is-image-only .image > picture,
.card-carousel .news-post-item.is-image-only .image > a {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.feature-section.text-dark .feature-card {
  border-color: rgba(28, 25, 26, 0.72);
  background: transparent;
  color: var(--color-black-off);
}

.feature-section.text-dark .feature-card h3,
.feature-section.text-dark .feature-card h4,
.feature-section.text-dark .feature-card .preview,
.feature-section.text-dark .feature-card .full,
.feature-section.text-dark .feature-card .preview p,
.feature-section.text-dark .feature-card .preview strong,
.feature-section.text-dark .feature-card .preview li,
.feature-section.text-dark .feature-card .full p,
.feature-section.text-dark .feature-card .full li,
.feature-section.text-dark .feature-card .full strong,
.feature-section.text-dark .feature-card .full a,
.feature-section.text-dark .feature-card-preview-label {
  color: var(--color-black-off) !important;
}

.cta-section {
  position: relative;
  overflow: hidden;
  min-height: clamp(420px, 48vw, 640px);
  padding: clamp(86px, 11vw, 150px) 0;
  background: #1b1919;
  color: #fff;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cta-section-media {
  z-index: 1;
  opacity: 0.72;
}

.cta-section-color-overlay {
  z-index: 2;
  pointer-events: none;
}

.cta-section-inner {
  position: relative;
  z-index: 4;
  max-width: 760px;
  margin: 0 auto;
}

.cta-section h2 {
  font-size: var(--type-cta-heading);
  letter-spacing: var(--tracking-heading-tight);
  line-height: var(--leading-heading);
  margin-bottom: 18px;
}

.cta-section p {
  max-width: 560px;
  margin: 0 auto 32px;
  color: #fff;
  line-height: 1.6;
}

.cta-section .button-group {
  justify-content: center;
  flex-wrap: wrap;
}

@media (max-width: 959px) {
  .toggle-video-section {
    min-height: clamp(820px, 145vh, 1120px);
    align-items: flex-end;
  }

  .toggle-video-content {
    padding-top: clamp(430px, 74vh, 620px);
    padding-bottom: 72px;
  }

  .toggle-video-options {
    display: flex;
    grid-template-columns: none;
    gap: 40px;
    margin-right: calc(var(--gutter-sm) * -1);
    overflow-x: auto;
    overflow-y: hidden;
    padding-right: calc(var(--gutter-sm) + 40px);
    scroll-padding-left: 0;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  .toggle-video-options::-webkit-scrollbar {
    display: none;
  }

  .toggle-video-option {
    flex: 0 0 calc(100vw - (var(--gutter-sm) * 2) - 40px);
    scroll-snap-align: start;
    scroll-snap-stop: always;
    opacity: 0.36;
  }

  .toggle-video-option.is-active,
  .toggle-video-option:hover,
  .toggle-video-option:focus-visible {
    opacity: 1 !important;
  }

  .toggle-video-option h2 {
    font-size: var(--type-toggle-title-mobile);
    line-height: var(--leading-display-mobile);
    margin-bottom: 0.14em;
  }

  .toggle-video-option h3 {
    font-size: var(--type-toggle-subheading-mobile);
    line-height: var(--leading-label-mobile);
    margin-bottom: 20px;
  }

  .toggle-video-copy {
    font-size: var(--type-body-mobile);
    line-height: var(--leading-body-mobile);
  }

  .toggle-video-progress {
    margin-top: 30px;
  }

  .feature-points {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .feature-section {
    padding: 64px 0 72px;
  }

  .feature-section::before {
    background: rgba(0, 0, 0, 0.82);
  }

  .feature-card-slider .slider-header {
    align-items: flex-start;
    flex-direction: column;
    padding-right: 24px;
  }

  .feature-card-slider {
    --slider-edge-gutter: var(--gutter-sm);
    padding-left: 0;
    width: calc(100vw - var(--gutter-sm));
  }

  .feature-card {
    padding: 30px;
    min-height: 370px;
    height: auto;
  }

  .feature-card.item-text.mobile-expanded {
    height: auto;
    min-height: 370px;
    overflow: visible;
  }

  .feature-card.item-text.mobile-expanded > h3,
  .feature-card.item-text.mobile-expanded > h4 {
    display: none;
  }

  .feature-card.item-text.mobile-expanded .toggle-content .preview {
    display: none;
  }

  .feature-card.item-text.mobile-expanded .toggle-content .full.mobile {
    display: block;
    animation: readMoreMobileIn 0.24s ease-out both;
  }

  .feature-card.item-text .full {
    padding: 30px;
  }

  .feature-card.item-text .full.mobile {
    padding: 0;
  }

  .feature-card h3 {
    font-size: clamp(1.72rem, 8.2vw, 2.18rem);
    hyphens: none;
    letter-spacing: 0.08em;
    margin-bottom: 18px;
    overflow-wrap: normal;
    word-break: normal;
  }

  .feature-card h4 {
    font-size: var(--type-feature-card-subheading-mobile);
    margin-bottom: 30px;
  }

  .feature-card .preview p + .read-toggle {
    margin-top: 22px;
  }

  .cta-section .button-group {
    align-items: center;
    flex-direction: column;
    width: 100%;
  }

  .cta-section .button-group .btn {
    justify-content: center;
    max-width: 320px;
    width: 100%;
    white-space: normal;
  }
}
