.hero {
  --button-outline-color: var(--color-neutral-300);
  color: var(--color-text-body);
  --shadow-md: var(--shadow-md-dark);
  --shadow-lg: var(--shadow-lg-dark);
  --shadow-xl: var(--shadow-xl-dark);
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-block: var(--spacing-gap-sections);
  padding-inline: var(--section-padding-inline);
  background-image: var(--hero-bg, url(../images/hero-background.webp));
  background-position: center;
  background-size: cover;
}
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgb(0, 0, 0, var(--hero-overlay, 0.35));
}
.hero--compact {
  padding-block: var(--spacing-gap-hero) 0;
  padding-bottom: var(--spacing-gap-sections);
}
@media (min-width: 1024px) {
  .hero--compact {
    min-height: 0;
  }
}
.hero:not(.hero--no-image) {
  padding-block: var(--spacing-gap-hero) 0;
}
@media (min-width: 1024px) {
  .hero:not(.hero--no-image) {
    align-items: stretch;
  }
}
.hero__inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 90rem;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: var(--spacing-gap-containers);
}
@media (min-width: 1024px) {
  .hero:not(.hero--no-image) .hero__inner {
    display: grid;
    grid-template-columns: minmax(0, 830px) minmax(0, 586px);
    justify-content: space-between;
    -moz-column-gap: var(--spacing-gap-containers);
         column-gap: var(--spacing-gap-containers);
  }
}
.hero__content {
  display: flex;
  flex-direction: column;
  flex: 1 1 0;
  gap: var(--spacing-gap-group);
  width: 100%;
  min-width: 0;
}
@media (min-width: 1024px) {
  .hero__content {
    padding-bottom: var(--spacing-6xl);
  }
}
.hero__top {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-gap-content);
}
.hero__heading {
  color: var(--color-text-headings);
  text-wrap: balance;
}
@media (min-width: 1024px) {
  .hero--no-image .hero__heading {
    max-width: 25ch;
  }
}
.hero__lead {
  font-size: var(--font-size-body-lg);
  line-height: var(--line-height-body-lg);
  font-weight: var(--font-weight-normal);
  color: var(--color-text-body);
  max-width: 50ch;
}
.hero__lead p {
  margin: 0;
}
.hero__lead p + p {
  margin-top: 1em;
}
@media (min-width: 1024px) {
  .hero--no-image .hero__lead {
    max-width: 60ch;
  }
}
.hero__bottom {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-gap-group);
}
.hero__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-gap-content);
}
.hero__social-banner {
  display: grid;
  grid-template-columns: auto auto auto;
  align-items: center;
  --banner-gap: var(--spacing-md);
  -moz-column-gap: var(--banner-gap);
       column-gap: var(--banner-gap);
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  padding: var(--spacing-card-padding-sm);
  background-color: var(--color-background-secondary);
  border: var(--border-width-sm) solid var(--color-border-primary);
  border-radius: var(--border-radius-cards);
}
@media (max-width: 430px) {
  .hero__social-banner {
    display: flex;
    flex-wrap: wrap;
    gap: var(--spacing-lg) var(--spacing-md);
    width: 100%;
    min-width: -moz-fit-content;
    min-width: fit-content;
  }
}
@media (min-width: 768px) {
  .hero__social-banner {
    --banner-gap: var(--spacing-xl);
  }
}
@media (min-width: 1024px) {
  .hero__social-banner {
    padding-block: var(--spacing-card-padding-md);
  }
}
@media (min-width: 1024px) and (max-width: 1279px) {
  .hero__social-banner {
    --banner-gap: var(--spacing-lg);
  }
}
.hero__client-photos {
  display: flex;
}
.hero__client-photo {
  width: var(--size-xl);
  height: var(--size-xl);
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  border: var(--border-width-md) solid var(--color-border-accent);
  margin-left: -0.75rem;
}
@media (min-width: 768px) {
  .hero__client-photo {
    width: var(--size-2xl);
    height: var(--size-2xl);
    margin-left: -1rem;
  }
}
@media (min-width: 1024px) and (max-width: 1279px) {
  .hero__client-photo {
    margin-left: -0.875rem;
  }
}
.hero__client-photo:first-child {
  margin-left: 0;
}
.hero__opinions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-2xs);
}
.hero__opinions-number {
  white-space: nowrap;
  font-size: var(--font-size-body-lg);
  line-height: var(--line-height-body-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-headings);
}
@media (min-width: 768px) {
  .hero__opinions-number {
    font-size: var(--font-size-2xl);
    line-height: var(--line-height-2xl);
    font-weight: var(--font-weight-bold);
  }
}
.hero__opinions-label {
  font-size: var(--font-size-body-sm);
  line-height: var(--line-height-body-sm);
  font-weight: var(--font-weight-light);
  color: var(--color-text-body);
}
@media (min-width: 768px) {
  .hero__opinions-label {
    white-space: nowrap;
  }
}
.hero__rating {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-card-gap-inner-sm);
  align-self: stretch;
  padding-left: var(--banner-gap);
  border-left: var(--border-width-md) solid var(--color-border-primary);
}
@media (max-width: 430px) {
  .hero__rating {
    flex: 1 1 100%;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: var(--spacing-lg);
    padding-left: 0;
    padding-top: var(--spacing-lg);
    border-left: 0;
    border-top: var(--border-width-md) solid var(--color-border-primary);
  }
}
.hero__rating-text {
  font-size: var(--font-size-body-lg);
  line-height: var(--line-height-body-lg);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-headings);
}
@media (min-width: 768px) {
  .hero__rating-text {
    font-size: var(--font-size-2xl);
    line-height: var(--line-height-2xl);
    font-weight: var(--font-weight-bold);
  }
}
.hero__stars {
  display: flex;
  align-items: center;
  gap: var(--spacing-card-gap-inner-sm);
}
.hero__star {
  display: block;
  width: var(--size-sm);
  height: var(--size-sm);
  color: var(--color-icons-rating);
}
.hero__star svg {
  display: block;
  width: 100%;
  height: 100%;
}
.hero__img {
  align-self: stretch;
}
.hero__img img {
  display: block;
  width: 100%;
  max-width: 30rem;
  height: auto;
  margin-inline: auto;
}
@media (min-width: 1024px) {
  .hero__img {
    align-self: end;
  }
  .hero__img img {
    max-width: none;
    margin-inline: 0;
  }
}

.accordion {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-gap-content);
}
.accordion__entry {
  padding-bottom: var(--spacing-lg);
  border-bottom: var(--border-width-sm) solid var(--color-border-primary);
}
.accordion__summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--spacing-lg);
  width: 100%;
  padding: 0;
  border: 0;
  background: none;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.accordion__summary-content {
  display: flex;
  align-items: center;
  gap: var(--spacing-card-gap-inner-lg);
}
.accordion__icon {
  background-color: var(--color-icons-box);
  border-radius: var(--border-radius-md);
  font-size: 1.25rem;
  line-height: 1;
  display: grid;
  place-items: center;
  flex: none;
  width: var(--size-lg);
  aspect-ratio: 1;
}
.accordion__icon svg {
  width: 50%;
  height: auto;
}
.accordion__title {
  font-size: var(--font-size-body-md);
  line-height: var(--line-height-body-md);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-headings);
}
@media (min-width: 1024px) {
  .accordion__title {
    font-size: var(--font-size-body-lg);
    line-height: var(--line-height-body-lg);
    font-weight: var(--font-weight-semibold);
  }
}
.accordion__chevron {
  color: var(--color-text-headings);
  transition: rotate 0.3s ease;
  display: grid;
  place-items: center;
  flex: none;
  width: var(--size-lg);
  aspect-ratio: 1;
}
.accordion__chevron svg {
  width: 75%;
  height: auto;
}
.accordion__summary[aria-expanded=true] .accordion__chevron {
  rotate: 180deg;
}
.accordion__panel {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 300ms ease;
}
.accordion__panel.is-open {
  grid-template-rows: 1fr;
}
@media (prefers-reduced-motion: reduce) {
  .accordion__panel {
    transition: none;
  }
}
.accordion__panel-inner {
  min-height: 0;
  overflow: hidden;
  visibility: hidden;
  transition: visibility 0s linear 300ms;
}
.accordion__panel.is-open > .accordion__panel-inner {
  visibility: visible;
  transition-delay: 0s;
}
.accordion__body {
  padding-top: var(--spacing-lg);
}

.split-accordion {
  padding-block: var(--spacing-gap-sections);
  padding-inline: var(--section-padding-inline);
}
.split-accordion__inner {
  width: 100%;
  max-width: 90rem;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-gap-containers);
}
@media (min-width: 1024px) {
  .split-accordion__inner {
    display: grid;
    grid-template-columns: minmax(0, 708px) minmax(0, 586px);
    justify-content: space-between;
    -moz-column-gap: var(--spacing-gap-containers);
         column-gap: var(--spacing-gap-containers);
    align-items: start;
  }
}
.split-accordion__img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 400px;
  -o-object-position: center 20%;
     object-position: center 20%;
  border-radius: var(--border-radius-images);
}
@media (max-width: 767px) {
  .split-accordion__img {
    height: auto;
    aspect-ratio: 1/1;
    -o-object-position: 50% 25%;
       object-position: 50% 25%;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .split-accordion__img {
    height: auto;
    aspect-ratio: 613 / 458;
    -o-object-position: 50% 25%;
       object-position: 50% 25%;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .split-accordion__img {
    max-width: 40rem;
  }
}
@media (min-width: 1024px) {
  .split-accordion__img {
    height: 800px;
  }
}
.split-accordion__content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-card-gap-inner-xl);
  min-width: 0;
  max-width: 586px;
}
.split-accordion__heading {
  color: var(--color-text-headings);
  max-width: 30ch;
}
.split-accordion__text {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-card-gap-inner-xl);
  font-size: var(--font-size-body-lg);
  line-height: var(--line-height-body-lg);
  font-weight: var(--font-weight-normal);
  color: var(--color-text-body);
}
.split-accordion__list {
  margin-top: calc(var(--spacing-gap-group) - var(--spacing-card-gap-inner-xl));
}
.split-accordion__points {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
  list-style: none;
}
.split-accordion__point {
  position: relative;
  padding-left: var(--spacing-lg);
  font-size: var(--font-size-body-md);
  line-height: var(--line-height-body-md);
  font-weight: var(--font-weight-normal);
  color: var(--color-text-body);
}
.split-accordion__point::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.6em;
  width: 6px;
  height: 6px;
  border-radius: var(--border-radius-full);
  background-color: var(--color-neutral-400);
}

.split-section {
  padding-block: var(--spacing-gap-sections);
  padding-inline: var(--section-padding-inline);
  background-color: var(--color-background-secondary);
}
.split-section__inner {
  width: 100%;
  max-width: 90rem;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-gap-containers);
}
@media (min-width: 1024px) {
  .split-section__inner {
    display: grid;
    grid-template-columns: minmax(0, 586px) minmax(0, 586px);
    justify-content: space-between;
    -moz-column-gap: var(--spacing-gap-containers);
         column-gap: var(--spacing-gap-containers);
    align-items: start;
  }
}
.split-section__content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-gap-content);
  min-width: 0;
}
.split-section__heading {
  max-width: 30ch;
}
.split-section__lead {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-gap-content);
  font-size: var(--font-size-body-lg);
  line-height: var(--line-height-body-lg);
  font-weight: var(--font-weight-normal);
  color: var(--color-text-body);
  max-width: 60ch;
}
.split-section__img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center 2%;
     object-position: center 2%;
  width: 100%;
  height: 400px;
  border-radius: var(--border-radius-images);
}
@media (max-width: 767px) {
  .split-section__img {
    height: auto;
    aspect-ratio: 1/1;
    -o-object-position: center 2%;
       object-position: center 2%;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .split-section__img {
    height: auto;
    aspect-ratio: 4 / 3;
    -o-object-position: center 2%;
       object-position: center 2%;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .split-section__img {
    max-width: 40rem;
  }
}
@media (min-width: 1024px) {
  .split-section__img {
    height: auto;
    aspect-ratio: 586/444;
  }
}

.ideals {
  padding-block: var(--spacing-gap-sections);
  padding-inline: var(--section-padding-inline);
}
.ideals__inner {
  width: 100%;
  max-width: 90rem;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-gap-containers);
}
.ideals__heading-area {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-gap-content);
  text-align: left;
}
@media (min-width: 1024px) {
  .ideals__heading-area {
    align-items: center;
    text-align: center;
  }
}
.ideals__heading {
  color: var(--color-text-headings);
  max-width: 30ch;
}
.ideals__lead {
  font-size: var(--font-size-body-lg);
  line-height: var(--line-height-body-lg);
  font-weight: var(--font-weight-normal);
  color: var(--color-text-body);
  max-width: 60ch;
}
.ideals__content {
  display: grid;
  width: 100%;
  border-radius: var(--border-radius-cards);
  overflow: hidden;
  container: ideals/inline-size;
}
@media (min-width: 1024px) {
  .ideals__content {
    min-height: 800px;
  }
}
.ideals__image {
  grid-area: 1/1;
  position: relative;
  min-height: 400px;
}
.ideals__image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, var(--bg-dark) 0%, rgba(0, 0, 0, 0) 60%);
  pointer-events: none;
}
@media (min-width: 1024px) {
  .ideals__image {
    min-height: 0;
  }
  .ideals__image::after {
    background: linear-gradient(to top, rgba(0, 0, 0, 0.95) 41%, rgba(0, 0, 0, 0) 100%);
  }
}
.ideals__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center 43%;
     object-position: center 43%;
}
.ideals__cards {
  grid-area: 2/1;
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  padding: var(--spacing-xl);
  gap: var(--spacing-card-gap-outside-lg);
  background-color: var(--bg-dark);
}
@media (min-width: 1024px) {
  .ideals__cards {
    grid-area: 1/1;
    align-self: end;
    background-color: transparent;
  }
}
@media (min-width: 768px) {
  .ideals__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@container ideals (min-width: 66rem) {
  .ideals__cards {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
.ideals__card {
  display: flex;
  flex-direction: column;
  align-items: start;
  gap: var(--spacing-card-gap-inner-xl);
  background: var(--color-background-secondary);
  border: var(--border-width-sm) solid rgba(255, 255, 255, 0.1);
  border-top-color: rgba(255, 255, 255, 0.2);
  border-radius: var(--border-radius-cards);
  box-shadow: var(--shadow-lg-dark);
  padding: var(--spacing-card-padding-lg);
  transition: all 0.4s ease;
}
.ideals__card-icon {
  background-color: var(--color-icons-box);
  color: var(--color-icons-on-action);
  border-radius: var(--border-radius-md);
  display: grid;
  place-items: center;
  flex: none;
  width: var(--size-xl);
  aspect-ratio: 1;
}
.ideals__card-icon svg {
  width: 50%;
  height: auto;
}
.ideals__card-text-area {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-card-gap-inner-md);
}
.ideals__card-heading {
  color: var(--color-text-headings);
  font-size: var(--font-size-h5);
  line-height: var(--line-height-h5);
  font-weight: var(--font-weight-semibold);
}
.ideals__card-lead {
  font-size: var(--font-size-body-md);
  line-height: var(--line-height-body-md);
  font-weight: var(--font-weight-normal);
  color: var(--color-text-body);
}

.philosophy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-block: var(--spacing-gap-sections);
  padding-inline: var(--section-padding-inline);
  background-color: var(--color-background-secondary);
}
.philosophy__inner {
  width: 100%;
  max-width: 90rem;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-gap-containers);
}
@media (min-width: 1024px) {
  .philosophy__inner {
    display: grid;
    grid-template-columns: minmax(0, 708px) minmax(0, 586px);
    justify-content: space-between;
    -moz-column-gap: var(--spacing-gap-containers);
         column-gap: var(--spacing-gap-containers);
  }
}
.philosophy__inner .philosophy__img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center 8%;
     object-position: center 8%;
  width: 100%;
  height: 400px;
  border-radius: var(--border-radius-images);
}
@media (max-width: 767px) {
  .philosophy__inner .philosophy__img {
    height: auto;
    aspect-ratio: 1/1;
    -o-object-position: center 8%;
       object-position: center 8%;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .philosophy__inner .philosophy__img {
    height: auto;
    aspect-ratio: 613 / 458;
    -o-object-position: center 8%;
       object-position: center 8%;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .philosophy__inner .philosophy__img {
    max-width: 40rem;
  }
}
@media (min-width: 1024px) {
  .philosophy__inner .philosophy__img {
    width: 100%;
    height: 0;
    min-height: 100%;
  }
}
.philosophy__inner .philosophy__content {
  display: flex;
  flex-direction: column;
  min-width: 0;
  max-width: 586px;
  gap: var(--spacing-gap-group);
  align-items: flex-start;
}
.philosophy__inner .philosophy__content .philosophy__heading-area {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-gap-content);
}
.philosophy__inner .philosophy__content .philosophy__heading-area .philosophy__heading {
  color: var(--color-text-headings);
}
.philosophy__inner .philosophy__content .philosophy__heading-area .philosophy__lead {
  font-size: var(--font-size-body-lg);
  line-height: var(--line-height-body-lg);
  font-weight: var(--font-weight-normal);
  display: flex;
  flex-direction: column;
  gap: var(--spacing-gap-content);
  color: var(--color-text-body);
}
.philosophy__inner .philosophy__content .philosophy__cards {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-card-gap-outside-md);
}
.philosophy__inner .philosophy__content .philosophy__cards .philosophy__card {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: var(--spacing-card-padding-md) var(--spacing-card-padding-md) var(--spacing-card-padding-md) var(--spacing-card-padding-lg);
  gap: var(--spacing-card-gap-inner-md);
  background-color: var(--color-background-default);
  border-radius: var(--border-radius-cards);
  border: var(--border-width-sm) solid var(--color-border-primary);
  border-left: var(--border-width-xl) solid var(--color-border-accent);
  box-shadow: var(--shadow-md);
}
.philosophy__inner .philosophy__content .philosophy__cards .philosophy__card .philosophy__card-heading {
  font-size: var(--font-size-h5);
  line-height: var(--line-height-h5);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-headings);
}
.philosophy__inner .philosophy__content .philosophy__cards .philosophy__card .philosophy__card-desc {
  font-size: var(--font-size-body-md);
  line-height: var(--line-height-body-md);
  font-weight: var(--font-weight-normal);
  color: var(--color-text-body);
}

.main-cta {
  padding-block: var(--spacing-gap-sections);
  padding-inline: var(--section-padding-inline);
  background-color: var(--color-background-default);
}
.main-cta__inner {
  width: 100%;
  max-width: 90rem;
  margin-inline: auto;
  --button-outline-color: var(--color-neutral-300);
  color: var(--color-text-body);
  --shadow-md: var(--shadow-md-dark);
  --shadow-lg: var(--shadow-lg-dark);
  --shadow-xl: var(--shadow-xl-dark);
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: var(--spacing-3xl) var(--spacing-2xl);
  border-radius: var(--border-radius-cards);
  background-color: var(--bg-dark);
}
@media (min-width: 1024px) {
  .main-cta__inner {
    padding: var(--spacing-6xl);
  }
}
.main-cta__inner::before, .main-cta__inner::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
}
.main-cta__inner::before {
  inset: auto 0 0 0;
  aspect-ratio: 2/3;
  background: linear-gradient(color-mix(in srgb, var(--color-neutral-950) 50%, transparent), color-mix(in srgb, var(--color-neutral-950) 50%, transparent)), var(--main-cta-photo, none) 55% 0/cover no-repeat;
  -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 25%);
  mask-image: linear-gradient(to bottom, transparent 0, #000 25%);
}
.main-cta__inner::after {
  display: none;
}
@media (min-width: 35rem) and (max-width: 63.99rem) {
  .main-cta__inner::before {
    inset: 0 0 0 auto;
    width: 55%;
    aspect-ratio: auto;
    background: var(--main-cta-photo, none) 50% 0/cover no-repeat;
    -webkit-mask-image: linear-gradient(to right, transparent 0, #000 35%);
    mask-image: linear-gradient(to right, transparent 0, #000 35%);
  }
}
@media (min-width: 1024px) {
  .main-cta__inner::before {
    inset: 0;
    aspect-ratio: auto;
    background: var(--main-cta-photo, none) 0 11%/121% auto no-repeat;
    -webkit-mask-image: none;
    mask-image: none;
  }
  .main-cta__inner::after {
    display: block;
    opacity: 0.97;
    background-image: radial-gradient(ellipse 100% 213% at 0 3%, var(--color-neutral-950) 10.8%, var(--color-neutral-900) 51.2%, color-mix(in srgb, var(--color-neutral-950) 50%, transparent) 59%, transparent 66.8%);
  }
}
.main-cta__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-3xl);
  max-width: 44.25rem;
  min-width: 0;
}
@media (min-width: 35rem) and (max-width: 63.99rem) {
  .main-cta__content {
    max-width: 62%;
  }
}
.main-cta__text {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-2xl);
}
.main-cta__heading-area {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-gap-content);
}
.main-cta__heading {
  max-width: 30ch;
  text-wrap: balance;
}
.main-cta__lead {
  font-size: var(--font-size-body-lg);
  line-height: var(--line-height-body-lg);
  font-weight: var(--font-weight-normal);
  max-width: 50ch;
}
.main-cta__features {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  row-gap: var(--spacing-xl);
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (min-width: 1024px) {
  .main-cta__features {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.main-cta__feature {
  display: flex;
  align-items: center;
  gap: var(--spacing-card-gap-inner-lg);
  min-width: 0;
}
.main-cta__feature-icon {
  border-radius: var(--border-radius-full);
  background-color: color-mix(in srgb, var(--color-background-action) 25%, transparent);
  color: var(--color-icons-accent);
  display: grid;
  place-items: center;
  flex: none;
  width: var(--size-xl);
  aspect-ratio: 1;
}
.main-cta__feature-icon svg {
  width: 50%;
  height: auto;
}
.main-cta__feature-icon svg path {
  fill: currentColor;
}
.main-cta__feature-title {
  font-size: var(--font-size-body-md);
  line-height: var(--line-height-body-md);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-headings);
}
.main-cta__feature-description {
  font-size: var(--font-size-body-md);
  line-height: var(--line-height-body-md);
  font-weight: var(--font-weight-normal);
}