
.section.background-secondary.curved-top {
    border-top-left-radius: 100px;
    border-top-right-radius: 100px;
}
.background-secondary {
    background-color: var(--secondary);
}
.section {
    width: 100%;
}
.space-112px {
    min-height: 112px;
}

.cta-block {
    grid-column-gap: 48px;
    grid-row-gap: 48px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    display: flex
;
}
.cta-text-block {
    grid-column-gap: 32px;
    grid-row-gap: 32px;
    flex-direction: column;
    align-items: center;
    display: flex
;
}
.font-primary {
    color: var(--primary);
}
.cta-large {
    font-size: 150px;
    line-height: 100px;
}
.no-wrap {
    white-space: nowrap;
}
.cta-flex {
    grid-column-gap: 12px;
    align-items: flex-start;
    display: flex
;
}
.cta-small {
    text-transform: uppercase;
    font-size: 72px;
    line-height: 50px;
}
.outline-white {
    color: var(--transparent);
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color:var(--white);
}

.cta-medium {
    text-transform: uppercase;
    font-size: 96px;
    line-height: 70px;
}
.button-with-icon {
    grid-column-gap: 12px;
    grid-row-gap: 12px;
    background-color: var(--primary);
    color: var(--black);
    text-align: center;
    letter-spacing: 1px;
    text-transform: uppercase;
    cursor: pointer;
    border-radius: 24px;
    justify-content: center;
    align-items: center;
    padding: 13px 32px 12px;
    font-family: Archivo, sans-serif;
    font-size: 17px;
    font-weight: 300;
    line-height: 27px;
    transition: background-color .25s;
    display: flex
;
    position: relative;
    overflow: hidden;
}
.font-black.no-wrap.move-down {
    position: absolute;
    top: 100%;
    left: 15%;
}
.button-icon {
    color: var(--black);
    line-height: 17px;
    position: relative;
}
.footer-footer-top {
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    max-width: 1152px;
    padding-top: 62px;
    padding-bottom: 62px;
    display: flex
;
}
.footer-block {
    grid-column-gap: 8px;
    grid-row-gap: 8px;
    flex-flow: column;
    align-items: flex-start;
    display: flex
;
}
a:hover, a.w--current {
    color: var(--primary);
}
.logo-link-wrapper {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    display: flex
;
}


.socials-wrapper.align-left {
    justify-content: flex-start;
    align-items: center;
}
.socials-wrapper {
    z-index: 1;
    grid-column-gap: 16px;
    grid-row-gap: 16px;
    justify-content: center;
    align-items: center;
    display: flex
;
}
.footer-social-icon {
    filter: invert();
}
.footer-wrapper {
    grid-column-gap: 24px;
    grid-row-gap: 24px;
    text-align: center;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    display: flex
;
}
.footer-link-wrapper {
    flex-direction: column;
    display: flex
;
    position: relative;
    overflow: hidden;
}
.footer-link.w--current {
    color: var(--primary);
}
.footer-link.move-down {
    position: absolute;
    top: 100%;
}
.footer-line {
    grid-column-gap: 32px;
    grid-row-gap: 32px;
    background-color: var(--primary);
    text-align: center;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 1px;
    display: flex
;
}
.footer-footer-bottom {
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    padding-top: 32px;
    padding-bottom: 32px;
    display: flex
;
}
.footer-flex {
    grid-column-gap: 16px;
    grid-row-gap: 16px;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex
;
}
.footer-flex-bottom {
    grid-column-gap: 4px;
    grid-row-gap: 4px;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex
;
}

.container.padding-144px {
    padding-left: 144px;
    padding-right: 144px;
}
.container {
    width: 100%;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
}
.space-32px {
    min-height: 32px;
}

.features-section {
    background: linear-gradient(135deg, #161616, #d7d7d7);
    position: relative;
    padding: 4rem 0;
    overflow: hidden;
  }

  .features-section::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 800px;
    height: 800px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.15) 0%, transparent 70%);
    transform: translate(-50%, -50%);
    z-index: 0;
  }

  .features-image-wrapper {
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .features-image-01 {
    max-width: 100%;
    height: auto;
    display: block;
  }
