:root {
    --e-global-color-uicore_primary: #2F42A2;
    --e-global-color-uicore_secondary: #233179;
    --e-global-color-uicore_accent: #2F42A2;
    --e-global-color-uicore_white: #FFFFFF;
    --brand: var(--e-global-color-uicore_primary);
    --brand-dark: var(--e-global-color-uicore_secondary);
    --ink: #4F4F4F;
    --gold: #FFCF3D;
    --paper: #FCFCFE;
}

body {
    font-family: "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;
    color: var(--ink);
}

.bg-header {
    background: var(--e-global-color-uicore_accent);
}

header.bg-header {
    box-shadow: -2px 3px 90px -20px rgba(0, 0, 0, 0.25);
}

@media (min-width: 835px) {
    .type-h1.type-h1 {
        font-size: 64px;
        line-height: 1.2;
        font-weight: 600;
        letter-spacing: -0.027em;
        color: #000;
    }

    .type-h2.type-h2 {
        font-size: 48px;
        line-height: 1.2;
        font-weight: 500;
        color: #000;
    }

    .type-h3.type-h3 {
        font-size: 24px;
        line-height: 1.2;
        font-weight: 500;
        color: #000;
    }

    .type-h4.type-h4 {
        font-size: 20px;
        line-height: 1.2;
        font-weight: 500;
        color: #000;
    }

    .type-title.type-title {
        font-size: 36px;
        line-height: 48px;
        font-weight: 500;
        color: #000;
    }

    .type-p.type-p {
        font-size: 18px;
        line-height: 1.8;
        font-weight: 400;
        color: var(--ink);
    }
}

[data-dot] {
    background-color: rgba(47, 66, 162, 0.35);
}

[data-dot][aria-current="true"] {
    background-color: var(--brand);
}

.nav-link {
    display: flex;
    align-items: center;
    height: 100%;
    padding: 0 25px;
    color: #fff;
    font-size: 15px;
    font-weight: 500;
}

.nav-link:hover {
    color: #f7f7f7;
    opacity: 0.75;
}

#mobile-menu .nav-link {
    height: auto;
    padding: 12px 8px;
}

.nav-demo {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: 25px;
    padding: 12px;
    border: 0.8px solid #fff;
    border-radius: 10px;
    background: transparent;
    color: #fff;
    font-size: 15px;
    font-weight: 500;
    line-height: 27px;
}

.nav-demo:hover {
    color: #fff;
    background: transparent;
    opacity: 1;
}

.nav-demo-mobile {
    margin: 12px 8px 4px;
    width: fit-content;
}

.tablet-bottom-nav {
    display: none;
}

.to-top {
    position: fixed;
    right: 2em;
    bottom: 90px;
    z-index: 999;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 0;
    background: var(--brand);
    color: #fff;
    box-shadow: rgba(0, 0, 0, 0.4) 1px 0 22px -9px;
    cursor: pointer;
    opacity: 0;
    pointer-events: none;
    transform: scale(0.3);
    transition: 0.3s cubic-bezier(0.61, -0.12, 0.08, 1.55);
}

.to-top.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: scale(1);
}

.to-top:hover {
    transform: scale(1.1);
}

.field-required::after {
    content: "*";
    color: #ff0000;
    padding-inline-start: 0.2em;
}

.hp-field,
.hp-field label,
.hp-field input {
    position: absolute;
    left: 0;
    top: 0;
    width: 1px;
    height: 1px;
    margin: 0;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
    pointer-events: none;
}

@media (max-width: 767px) {
    .site-header-bar.site-header-bar {
        position: relative;
        height: 92px;
        justify-content: center;
        padding-left: 20px;
        padding-right: 20px;
    }

    .site-logo.site-logo {
        height: 60px;
    }

    .site-menu-toggle.site-menu-toggle {
        position: absolute;
        top: 50%;
        right: 20px;
        display: inline-flex;
        transform: translateY(-50%);
    }

    .hero-title-wrap.hero-title-wrap {
        padding-top: 80px;
        padding-bottom: 60px;
        padding-left: 10px;
        padding-right: 10px;
        text-align: center;
    }

    .hero-title.hero-title {
        width: 100%;
        max-width: none;
        font-size: 45px;
        font-weight: 400;
        line-height: 49.5px;
        text-align: center;
    }

    .hero-title-break.hero-title-break {
        display: initial;
    }

    .hero-section.hero-section {
        background-color: #fff;
        background-image: linear-gradient(#2F42A2 42%, #fff 0%);
    }

    .hero-lower.hero-lower {
        display: flex;
        flex-direction: column;
        gap: 0;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 0 0 40px;
    }

    .hero-carousel.hero-carousel {
        order: -1;
        width: 100%;
        margin: 0;
        padding: 0 10px;
    }

    .hero-slide.hero-slide {
        height: auto;
        aspect-ratio: 1 / 1;
        border-radius: 0;
    }

    .hero-dots.hero-dots {
        margin-top: 59px;
        gap: 6px;
    }

    .hero-dots.hero-dots [data-dot] {
        width: 10px;
        height: 10px;
        background-color: rgba(0, 0, 0, 0.2);
    }

    .hero-dots.hero-dots [data-dot][aria-current="true"] {
        background-color: #000;
    }

    .hero-copy.hero-copy {
        width: 100%;
        margin: 0;
        padding: 50px 20px 0;
    }

    .hero-lead.hero-lead {
        max-width: none;
        margin: 0;
        font-size: 19px;
        font-weight: 400;
        line-height: 34.2px;
    }

    .hero-cta.hero-cta {
        margin-top: 20px;
        margin-left: 0;
        line-height: 16px;
    }

    .platform-section.platform-section {
        padding-left: 20px;
        padding-right: 20px;
        padding-bottom: 40px;
    }

    .platform-section.platform-section .type-title {
        font-size: 30px;
        font-weight: 500;
        line-height: 36px;
        letter-spacing: -0.027em;
    }

    .platform-sub.platform-sub {
        max-width: none;
        margin-top: 18px;
        font-size: 19px;
        font-weight: 400;
        line-height: 22.8px;
        letter-spacing: -0.027em;
        color: #4f4f4f;
    }

    .platform-grid.platform-grid {
        margin-top: 30px;
        gap: 20px;
    }

    .platform-card.platform-card {
        width: auto;
        max-width: none;
        margin-left: 5px;
        margin-right: 5px;
        padding: 40px 0 40px 40px;
    }

    .platform-card-title.platform-card-title {
        margin-top: 20px;
        font-size: 19px;
        font-weight: 500;
        line-height: 30.4px;
        letter-spacing: -0.027em;
        color: #000;
    }

    .platform-card.platform-card ul {
        margin-top: 20px;
        font-size: 18px;
        font-weight: 400;
        line-height: 32.4px;
        color: #4f4f4f;
    }

    .platform-card.platform-card li {
        align-items: center;
        gap: 4px;
    }

    .platform-card.platform-card svg {
        width: 14px;
        height: 14px;
        margin-top: 0;
    }

    .platform-card.platform-card ul.space-y-3 > li + li {
        margin-top: 0;
    }

    .platform-section.platform-section > div:last-child {
        margin-top: 30px;
        text-align: center;
    }

    .platform-section.platform-section > div:last-child a {
        line-height: 16px;
    }

    .leads-section.leads-section {
        gap: 0;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 40px 20px;
    }

    .leads-copy.leads-copy,
    .leads-figure.leads-figure {
        width: 100%;
        margin: 0;
        padding: 0;
    }

    .leads-title.leads-title {
        max-width: none;
        font-size: 30px;
        font-weight: 500;
        line-height: 36px;
        letter-spacing: -0.513px;
        color: #000;
    }

    .leads-body.leads-body {
        width: 100%;
        padding-top: 19px;
    }

    .leads-text.leads-text {
        margin: 0;
        font-size: 19px;
        font-weight: 400;
        line-height: 34.2px;
        color: #4f4f4f;
    }

    .leads-section .type-checks.type-checks {
        margin-top: 40px;
        margin-bottom: 0;
        padding: 0;
        font-size: 18px;
        font-weight: 400;
        line-height: 32.4px;
        color: #4f4f4f;
    }

    .leads-section .type-checks.type-checks li {
        align-items: flex-start;
        column-gap: 10px;
    }

    .leads-section .type-checks.type-checks span {
        padding-right: 4px;
    }

    .leads-section .type-checks.type-checks.space-y-3 > li + li {
        margin-top: 8px;
    }

    .leads-section .type-checks.type-checks svg {
        width: 14px;
        height: 14px;
        margin-top: 9px;
        color: #233179;
    }

    .leads-photo.leads-photo {
        width: 100%;
        max-width: none;
        height: auto;
        margin: 20px 0 0;
    }

    .price-section.price-section {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0;
        align-items: start;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 40px 5%;
    }

    .price-copy.price-copy {
        width: 100%;
        margin: 0;
        padding: 0;
    }

    .price-title.price-title {
        margin: 0;
        font-size: 30px;
        font-weight: 500;
        line-height: 54px;
        letter-spacing: normal;
        color: #000;
    }

    .price-text.price-text {
        margin: 30px 0 0;
        font-size: 19px;
        font-weight: 400;
        line-height: 34.2px;
        color: #4f4f4f;
    }

    .price-ask.price-ask {
        margin: 20px 0 0;
        font-size: 19px;
        font-weight: 500;
        line-height: 1.2;
        letter-spacing: -0.027em;
        color: #262626;
    }

    .price-cta.price-cta {
        margin-top: 20px;
    }

    .price-photo.price-photo {
        width: 100%;
        max-width: none;
        height: auto;
        margin: 80px 0 0;
    }

    .empower-section.empower-section {
        display: grid;
        grid-template-columns: 1fr;
        gap: 20px;
        align-items: start;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 40px 5%;
    }

    .empower-copy.empower-copy,
    .empower-media.empower-media {
        width: 100%;
        margin: 0;
        padding: 0;
    }

    .empower-section.empower-section .type-title {
        max-width: none;
        font-size: 30px;
        font-weight: 500;
        line-height: 36px;
        letter-spacing: -0.513px;
        color: #000;
    }

    .empower-section.empower-section .type-checks.type-checks {
        margin-top: 20px;
        margin-bottom: 0;
        padding: 0;
        font-size: 18px;
        font-weight: 400;
        line-height: 32.4px;
        color: #4f4f4f;
    }

    .empower-section.empower-section .type-checks.type-checks li {
        align-items: flex-start;
        column-gap: 10px;
    }

    .empower-section.empower-section .type-checks.type-checks span {
        padding-right: 4px;
    }

    .empower-section.empower-section .type-checks.type-checks.space-y-3 > li + li {
        margin-top: 8px;
    }

    .empower-section.empower-section .type-checks.type-checks svg {
        width: 14px;
        height: 14px;
        margin-top: 9px;
        color: #233179;
    }

    .empower-video.empower-video {
        width: 100%;
        max-width: none;
        height: auto;
        aspect-ratio: 16 / 9;
        margin: 0;
        border-radius: 0;
    }

    .discover-section.discover-section {
        width: 100%;
        max-width: none;
        margin: 40px 0 0;
        padding: 40px 5%;
    }

    .discover-title.discover-title {
        width: auto;
        max-width: none;
        margin: 40px auto 0;
        padding: 0;
        font-size: 30px;
        font-weight: 500;
        line-height: 48px;
        letter-spacing: -0.513px;
        text-align: center;
        color: #000;
    }

    .discover-icons.discover-icons {
        display: grid;
        grid-template-columns: 120px 120px;
        justify-content: center;
        gap: 0;
        width: 240px;
        max-width: none;
        margin: 20px auto 0;
    }

    .desktop-spacer.h-\[100px\].desktop-spacer {
        display: block;
        height: 100px;
    }

    .discover-icon.discover-icon,
    .discover-icon.discover-icon img {
        width: 120px;
        height: 120px;
        max-width: none;
    }

    .feature-row.feature-row {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 20px;
        width: 100%;
        max-width: none;
        margin: 0 0 40px;
        padding: 0 calc(5% + 40px);
    }

    .feature-media.feature-media {
        order: -1;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .feature-media.feature-media img {
        width: 100%;
        height: auto;
        border-radius: 0;
        box-shadow: none;
    }

    .feature-copy.feature-copy {
        order: 1;
        width: 100%;
        margin: 0;
        padding: 0;
    }

    .feature-head.feature-head {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
    }

    .feature-icon.feature-icon {
        width: 86px;
        height: 80px;
        margin: 0;
        object-fit: fill;
    }

    .feature-title.feature-title {
        width: 100%;
        max-width: none;
        margin: 0;
        font-size: 36px;
        font-weight: 500;
        line-height: 43.2px;
        letter-spacing: -0.027em;
        color: #000;
    }

    .feature-copy.feature-copy ul {
        margin-top: 20px;
        margin-bottom: 0;
        font-size: 18px;
        font-weight: 400;
        line-height: 32.4px;
        color: #4f4f4f;
    }

    .feature-copy.feature-copy li {
        align-items: flex-start;
        column-gap: 10px;
    }

    .feature-copy.feature-copy ul.space-y-3 > li + li {
        margin-top: 7px;
    }

    .feature-copy.feature-copy li > svg {
        width: 18px;
        height: 18px;
        margin-top: 7px;
    }

    #kpis.feature-row {
        margin-bottom: 0;
    }

    .qa-section.qa-section {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 40px 5% 80px;
    }

    .qa-intro.qa-intro {
        display: contents;
    }

    .qa-title.qa-title {
        order: 1;
        width: 100%;
        max-width: none;
        margin: 0 0 20px;
        font-size: 30px;
        font-weight: 500;
        line-height: 36px;
        letter-spacing: -0.81px;
        text-align: left;
        color: #000;
    }

    .qa-list.qa-list {
        order: 2;
        width: 100%;
        margin: 0;
    }

    .qa-note.qa-note {
        order: 3;
        width: 100%;
        max-width: none;
        margin: 40px 0 0;
        font-size: 18px;
        font-weight: 400;
        line-height: 32.4px;
        letter-spacing: normal;
        text-align: left;
        color: #4f4f4f;
    }

    .qa-cta.qa-cta {
        order: 4;
        align-self: flex-start;
        margin: 20px 0 0;
        padding: 18px 20px;
        border-radius: 10px;
        font-size: 16px;
        font-weight: 500;
        line-height: 16px;
        letter-spacing: normal;
    }

    .qa-list.qa-list details {
        margin: 20px 0 0;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    .qa-list.qa-list details:first-child {
        margin-top: 0;
    }

    .qa-list.qa-list summary {
        align-items: center;
        gap: 11px;
        margin: 0;
        padding: 20px 10px 20px 15px;
        border: 0.8px solid #e9e9e9;
        border-radius: 8px;
        font-size: 18px;
        font-weight: 500;
        line-height: 21.6px;
        letter-spacing: normal;
        color: #000;
    }

    .qa-list.qa-list summary span {
        flex: 1;
        min-width: 0;
    }

    .qa-list.qa-list summary svg:first-of-type {
        display: none;
    }

    .qa-list.qa-list summary svg:last-of-type {
        display: block;
        width: 23px;
        height: 18px;
        margin: 0;
        flex-shrink: 0;
        color: #233179;
    }

    .qa-list.qa-list details[open] summary {
        border-color: transparent;
        box-shadow: 0 10px 20px 0 rgba(3, 26, 94, 0.06);
    }

    .qa-list.qa-list details[open] summary svg:last-of-type {
        transform: rotate(180deg);
    }

    .qa-list.qa-list details > div {
        padding: 20px;
        font-size: 16px;
        font-weight: 400;
        line-height: 28.8px;
        color: #4f4f4f;
    }

    .qa-list.qa-list details h3 {
        margin: 19px 0;
        font-size: 19px;
        font-weight: 500;
        line-height: 22.8px;
        letter-spacing: -0.513px;
        color: #000;
    }

    .qa-list.qa-list details p {
        margin: 0;
        font-size: 16px;
        font-weight: 400;
        line-height: 28.8px;
        color: #4f4f4f;
    }

    .qa-list.qa-list details p + p {
        margin-top: 29px;
    }

    .qa-list.qa-list details p + h3 {
        margin-top: 48px;
    }

    .contact-band.contact-band {
        background-color: #2f42a2;
        background-image: linear-gradient(#2f42a2 0%, #2f42a2 100%);
    }

    .contact-inner.contact-inner {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 0;
        width: 100%;
        max-width: none;
        min-height: 0;
        margin: 0;
        padding: 50px 0 70px;
    }

    .contact-copy.contact-copy {
        width: 100%;
        margin: 0;
        padding: 0;
        text-align: center;
    }

    .contact-ready.contact-ready {
        max-width: none;
        margin: 0;
        font-size: 32px;
        font-weight: 600;
        line-height: 32px;
        letter-spacing: normal;
        color: #fff;
        text-align: center;
    }

    .contact-sub.contact-sub {
        max-width: none;
        margin: 26px 0 0;
        font-size: 22px;
        font-weight: 500;
        line-height: 22px;
        letter-spacing: normal;
        color: #fff;
        text-align: center;
    }

    .contact-form-col.contact-form-col {
        display: flex;
        justify-content: center;
        width: 100%;
        margin: 0;
        padding: 0;
    }

    .contact-card.contact-card {
        width: calc(100% - 35px);
        max-width: none;
        margin: 66px 0 0;
        padding: 20px 38px 50px;
        border-radius: 20px;
        background: #fff;
        box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2);
    }

    .contact-title.contact-title {
        margin: 0;
        font-size: 28px;
        font-weight: 500;
        line-height: 33.6px;
        letter-spacing: -0.756px;
        color: #000;
    }

    .contact-form.contact-form {
        margin-top: 20px;
    }

    .contact-fields.contact-fields.space-y-4 > div + div {
        margin-top: 14px;
    }

    .contact-fields.contact-fields label {
        margin-bottom: 0;
        padding-bottom: 1px;
        font-size: 16px;
        font-weight: 400;
        line-height: 28.8px;
        color: #4f4f4f;
    }

    .contact-fields.contact-fields label[for="message"]::after {
        content: none;
    }

    .contact-fields.contact-fields input,
    .contact-fields.contact-fields select,
    .contact-fields.contact-fields textarea {
        width: 100%;
        padding: 5px 14px;
        border: 0.8px solid #eaecf0;
        border-radius: 4px;
        background-color: #fafafa;
        font-size: 16px;
        font-weight: 400;
        line-height: 28.8px;
        color: #667085;
    }

    .contact-fields.contact-fields input,
    .contact-fields.contact-fields select {
        height: 40px;
    }

    .contact-fields.contact-fields select {
        appearance: none;
        padding: 5px 20px 5px 14px;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='37' height='4' viewBox='0 0 37 4'%3E%3Cpath transform='translate(15 0)' fill='%23343352' d='M3.8 3.87 6.87.76c.17-.18.17-.46 0-.63-.17-.17-.45-.17-.62 0L3.5 2.93.74.13C.57-.04.29-.04.13.13-.04.3-.04.58.13.76L3.19 3.87c.17.17.45.17.62 0z'/%3E%3C/svg%3E");
        background-repeat: no-repeat;
        background-position: 100% 50%;
        background-size: 50px;
    }

    .contact-fields.contact-fields textarea {
        display: block;
        height: 127px;
        min-height: 127px;
    }

    .contact-fields.contact-fields input::placeholder,
    .contact-fields.contact-fields textarea::placeholder {
        color: #667085;
    }

    .contact-fields.contact-fields input[type="tel"]::placeholder {
        color: transparent;
    }

    .contact-form.contact-form button[type="submit"] {
        width: 100%;
        margin-top: 55px;
        padding: 18px 20px;
        border-radius: 10px;
        font-size: 16px;
        font-weight: 500;
        line-height: 16px;
        letter-spacing: normal;
        opacity: 1;
    }

    .site-footer.site-footer {
        margin: 0;
        border-top: 2px solid #4a5bac;
        background-color: #2f42a2;
        background-image: linear-gradient(#2f42a2 0%, #2f42a2 100%);
    }

    .footer-bar.footer-bar {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        gap: 0;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 0 5% 160px;
        font-size: 16px;
        font-weight: 400;
        line-height: 28.8px;
        text-align: center;
        color: #fff;
    }

    .footer-social.footer-social {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0;
        width: auto;
        margin: 0;
        padding: 10px 0;
    }

    .footer-social-link.footer-social-link {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 50px;
        height: 50px;
        color: #fff;
    }

    .footer-social-link.footer-social-link svg {
        width: 25px;
        height: 25px;
    }

    .footer-mail.footer-mail,
    .footer-io.footer-io,
    .footer-copy.footer-copy {
        display: block;
        width: 100%;
        margin: 0;
        padding: 10px 0;
        font-size: 16px;
        font-weight: 400;
        line-height: 28.8px;
        text-align: center;
        text-decoration: none;
        color: #fff;
    }

    .footer-company.footer-company {
        width: 331px;
        max-width: 100%;
        margin: 0 auto;
        padding: 0;
        font-size: 16px;
        font-weight: 400;
        line-height: 28.8px;
        text-align: center;
        color: #fff;
    }
}

.hero-title-break {
    display: none;
}

@media (min-width: 835px) and (max-width: 1279px) {
    .hero-title.hero-title {
        width: auto;
        max-width: calc(0.44 * (100vw - 170px) + 10px);
        padding-right: 24px;
        font-size: clamp(46px, calc(0.062 * (100vw - 170px) - 5px), 68px);
        line-height: 1.14;
    }
}

@media (min-width: 835px) {
    .footer-mail.footer-mail:hover {
        color: #fff;
    }

    .footer-io.footer-io {
        position: relative;
    }

    .footer-io.footer-io::before,
    .footer-io.footer-io::after {
        content: "";
        position: absolute;
        left: 0;
        width: 100%;
        height: 1px;
        background: currentColor;
        pointer-events: none;
        transform: scale3d(0, 1, 1);
        transition: transform 0.3s cubic-bezier(0.7, 0, 0.2, 1);
    }

    .footer-io.footer-io::before {
        top: 100%;
        transform-origin: 100% 50%;
    }

    .footer-io.footer-io::after {
        top: calc(100% + 4px);
        transform-origin: 0 50%;
    }

    .footer-io.footer-io:hover {
        color: #F7F7F7;
    }

    .footer-io.footer-io:hover::before {
        transform-origin: 0 50%;
        transform: scale3d(1, 1, 1);
        transition-timing-function: cubic-bezier(0.4, 1, 0.8, 1);
    }

    .footer-io.footer-io:hover::after {
        transform-origin: 100% 50%;
        transform: scale3d(1, 1, 1);
        transition-timing-function: cubic-bezier(0.4, 1, 0.8, 1);
    }

    .contact-band.contact-band {
        background-color: #FCFCFE;
        background-image: url("../img/footer-desktop.jpg");
        background-position: center center;
        background-repeat: no-repeat;
    }
}

@media (min-width: 768px) and (max-width: 834px) {
    .site-header-bar.site-header-bar {
        position: relative;
        height: 102px;
        justify-content: center;
        padding-left: 50px;
        padding-right: 50px;
    }

    .site-logo.site-logo {
        height: 70px;
    }

    .site-nav.site-nav {
        display: none;
    }

    .site-menu-toggle.site-menu-toggle {
        position: absolute;
        top: 50%;
        right: 50px;
        display: inline-flex;
        transform: translateY(-50%);
    }

    #mobile-menu:not(.hidden) {
        display: block;
    }

    .hero-shade.hero-shade {
        display: none;
    }

    .hero-band.hero-band {
        background-color: var(--brand);
    }

    .hero-title-wrap.hero-title-wrap {
        padding-top: 90px;
        padding-bottom: 80px;
        padding-left: 5%;
        padding-right: 5%;
        text-align: center;
    }

    .hero-title.hero-title {
        width: 100%;
        max-width: none;
        font-size: 70px;
        font-weight: 400;
        line-height: 70px;
        text-align: center;
    }

    .hero-section.hero-section {
        background-color: #fff;
        background-image: linear-gradient(#2F42A2 54%, #fff 0%);
    }

    .hero-lower.hero-lower {
        display: flex;
        flex-direction: column;
        gap: 0;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 0 5% 0;
    }

    .hero-carousel.hero-carousel {
        order: -1;
        width: 100%;
        margin: 0;
        padding: 0;
    }

    .hero-slide.hero-slide {
        height: auto;
        aspect-ratio: 1440 / 900;
    }

    .hero-dots.hero-dots {
        margin-top: 59px;
    }

    .hero-copy.hero-copy {
        width: 100%;
        margin: 0;
        padding: 30px 0 0;
    }

    .type-headline.type-headline {
        font-size: 30px;
        font-weight: 500;
        line-height: 1.2;
        letter-spacing: -0.027em;
        color: #000;
    }

    .type-copy.type-copy {
        font-size: 19px;
        font-weight: 400;
        line-height: 34.2px;
    }

    .type-list.type-list {
        font-size: 20px;
        font-weight: 400;
        line-height: 36px;
        color: #4f4f4f;
    }

    .hero-lead.hero-lead {
        max-width: 468px;
        margin: 0;
    }

    .hero-cta.hero-cta {
        margin-top: 33px;
        margin-left: 0;
        line-height: 16px;
    }

    .platform-sub.platform-sub {
        max-width: 550px;
        margin-top: 20px;
        font-size: 21px;
        font-weight: 500;
        line-height: 1.2;
        letter-spacing: -0.027em;
        color: #000;
    }

    .platform-grid.platform-grid {
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 40px;
        margin-top: 60px;
    }

    .platform-card.platform-card {
        width: 510px;
        max-width: 100%;
        padding: 40px 0 40px 40px;
    }

    .platform-card-title.platform-card-title {
        margin-top: 20px;
        font-size: 21px;
        font-weight: 500;
        line-height: 1.2;
        letter-spacing: -0.027em;
        color: #000;
    }

    .platform-card.platform-card ul {
        margin-top: 20px;
        font-size: 18px;
        font-weight: 400;
        line-height: 32.4px;
    }

    .platform-card.platform-card li {
        align-items: center;
    }

    .platform-card.platform-card svg {
        width: 14px;
        height: 14px;
        margin-top: 0;
    }

    .platform-card.platform-card ul.space-y-3 > li + li {
        margin-top: 0;
    }

    .platform-section.platform-section {
        padding-bottom: 40px;
    }

    .leads-section.leads-section {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 0 5%;
    }

    .leads-copy.leads-copy,
    .leads-figure.leads-figure {
        width: 100%;
        margin: 0;
        padding: 0;
    }

    .leads-title.leads-title {
        max-width: none;
        padding-right: 60px;
    }

    .leads-body.leads-body {
        width: 100%;
        padding-top: 20px;
    }

    .leads-text.leads-text {
        margin: 0;
    }

    .type-checks.type-checks {
        margin-top: 25px;
        margin-bottom: 0;
        padding-top: 0;
        padding-bottom: 35px;
    }

    .type-checks.type-checks li {
        align-items: center;
        column-gap: 10px;
    }

    .type-checks.type-checks.space-y-3 > li + li {
        margin-top: 8px;
    }

    .type-checks.type-checks svg {
        width: 15px;
        height: 15px;
        margin-top: 0;
        color: #233179;
    }

    .leads-photo.leads-photo {
        width: 100%;
        max-width: none;
        height: auto;
        margin: 0;
    }

    .price-section.price-section {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0;
        align-items: start;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 40px 5%;
    }

    .price-copy.price-copy {
        width: 100%;
        margin: 0;
        padding: 0;
    }

    .price-title.price-title {
        width: auto;
        max-width: none;
        margin: 0;
        font-size: 30px;
        font-weight: 500;
        line-height: 54px;
        letter-spacing: normal;
        color: #000;
    }

    .price-text.price-text {
        margin: 20px 0 0;
    }

    .price-ask.price-ask {
        margin: 20px 0 0;
        font-size: 19px;
        font-weight: 500;
        line-height: 1.2;
        letter-spacing: -0.027em;
        color: #262626;
    }

    .price-cta.price-cta {
        margin-top: 20px;
    }

    .price-photo.price-photo {
        width: 379px;
        max-width: 100%;
        height: auto;
        margin: 80px auto 0;
    }

    .desktop-spacer.desktop-spacer {
        display: none;
    }

    .empower-section.empower-section {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0;
        align-items: start;
        width: 100%;
        max-width: none;
        margin: 40px 0 0;
        padding: 0 5%;
    }

    .empower-copy.empower-copy,
    .empower-media.empower-media {
        width: 100%;
        margin: 0;
        padding: 0;
    }

    .empower-video.empower-video {
        width: 100%;
        max-width: none;
        height: auto;
        aspect-ratio: 16 / 9;
        margin: 0;
        border-radius: 0;
    }

    .discover-section.discover-section {
        width: 100%;
        max-width: none;
        margin: 140px 0 0;
        padding: 40px 0 100px;
    }

    .discover-title.discover-title {
        width: 450px;
        max-width: calc(100% - 10%);
        margin: 0 auto;
        padding: 0;
        font-size: 30px;
        font-weight: 500;
        line-height: 48px;
        letter-spacing: -0.019em;
        text-align: center;
        color: #000;
    }

    .discover-icons.discover-icons {
        display: flex;
        justify-content: center;
        gap: 0;
        width: 100%;
        max-width: none;
        margin: 20px auto 0;
    }

    .discover-icon.discover-icon,
    .discover-icon.discover-icon img {
        width: 120px;
        height: 120px;
        max-width: none;
    }

    .feature-row.feature-row {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 43px;
        width: 100%;
        max-width: none;
        margin: 0 0 140px;
        padding: 0 5%;
    }

    .feature-media.feature-media {
        order: -1;
        width: 480px;
        max-width: 100%;
        margin: 0;
        padding: 0;
    }

    .feature-media.feature-media img.md\:hidden {
        display: block;
        width: 480px;
        max-width: 100%;
        height: auto;
        border-radius: 0;
        box-shadow: none;
    }

    .feature-media.feature-media img.hidden {
        display: none;
    }

    .feature-copy.feature-copy {
        order: 1;
        width: 584px;
        max-width: 100%;
        margin: 0;
        padding: 0;
    }

    .feature-head.feature-head {
        display: flex;
        align-items: center;
        gap: 20px;
    }

    .feature-icon.feature-icon {
        width: 86px;
        height: 80px;
        margin: 0;
        object-fit: fill;
    }

    .feature-title.feature-title {
        width: 478px;
        max-width: calc(100% - 106px);
        margin: 0;
        font-size: 36px;
        font-weight: 500;
        line-height: 1.2;
        letter-spacing: -0.027em;
        color: #000;
    }

    .feature-copy.feature-copy ul {
        margin-top: 25px;
        margin-bottom: 0;
        font-size: 18px;
        font-weight: 400;
        line-height: 32.4px;
        color: #4f4f4f;
    }

    .feature-copy.feature-copy li {
        align-items: center;
    }

    .feature-copy.feature-copy ul.space-y-3 > li + li {
        margin-top: 8px;
    }

    .feature-copy.feature-copy li > svg:first-of-type {
        display: none;
    }

    .feature-copy.feature-copy li > svg:last-of-type {
        display: block;
        width: 15px;
        height: 15px;
        margin-top: 0;
    }

    .qa-section.qa-section {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 0 5% 40px;
    }

    .qa-intro.qa-intro {
        display: contents;
    }

    .qa-title.qa-title {
        order: 1;
        max-width: none;
        margin: 10px 0 22px;
        letter-spacing: -1.134px;
        line-height: 36px;
    }

    .qa-list.qa-list {
        order: 2;
        width: 100%;
    }

    .qa-note.qa-note {
        order: 3;
        max-width: none;
        margin: 30px 0 20px;
        text-align: left;
    }

    .qa-cta.qa-cta {
        order: 4;
        align-self: flex-start;
        margin: 0;
    }

    .qa-list.qa-list details {
        margin: 20px 0 0;
        padding: 0;
        border: 0;
        border-radius: 9px;
        box-shadow: none;
    }

    .qa-list.qa-list details:first-child {
        margin-top: 0;
    }

    .qa-list.qa-list summary {
        align-items: center;
        gap: 10px;
        margin: 0;
        padding: 28px 13px 28px 23px;
        border: 0.8px solid #e9e9e9;
        border-radius: 9px;
        font-size: 26px;
        font-weight: 500;
        line-height: 31.2px;
        letter-spacing: normal;
        color: #000;
    }

    .qa-list.qa-list summary svg:first-of-type {
        display: none;
    }

    .qa-list.qa-list summary svg:last-of-type {
        display: block;
        width: 33px;
        height: 26px;
        margin: 0;
        color: #233179;
    }

    .qa-list.qa-list details > div {
        padding: 23px 28px 28px;
        font-size: 17px;
        font-weight: 400;
        line-height: 30.6px;
        color: #4f4f4f;
    }

    .qa-list.qa-list details h3 {
        margin: 21px 0;
        font-size: 21px;
        font-weight: 500;
        line-height: 25.2px;
        letter-spacing: normal;
        color: #000;
    }

    .qa-list.qa-list details p {
        margin: 0;
        font-size: 17px;
        font-weight: 400;
        line-height: 30.6px;
    }

    .contact-band.contact-band {
        background-color: #2f42a2;
        background-image: linear-gradient(#2f42a2 0%, #2f42a2 100%);
    }

    .contact-inner.contact-inner {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 0;
        width: 100%;
        max-width: none;
        min-height: 0;
        margin: 0;
        padding: 0;
    }

    .contact-copy.contact-copy {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 100%;
        margin: 0;
        padding: 50px 10px 13px;
        text-align: center;
    }

    .contact-ready.contact-ready {
        max-width: none;
        margin: 0;
        font-size: 60px;
        font-weight: 600;
        line-height: 60px;
        letter-spacing: normal;
        color: #fff;
        text-align: center;
    }

    .contact-sub.contact-sub {
        max-width: none;
        margin: 41px 0 0;
        font-size: 40px;
        font-weight: 500;
        line-height: 40px;
        letter-spacing: normal;
        color: #fff;
        text-align: center;
    }

    .contact-form-col.contact-form-col {
        display: flex;
        justify-content: center;
        width: 100%;
        margin: 0;
        padding: 10px 0 70px;
    }

    .contact-card.contact-card {
        width: 518px;
        max-width: calc(100% - 40px);
        margin: 0;
        padding: 20px 46px 50px;
        border-radius: 20px;
        background: #fff;
        box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2);
    }

    .contact-title.contact-title {
        margin: 0;
        font-size: 22px;
        font-weight: 500;
        line-height: 26.4px;
        letter-spacing: -0.027em;
        color: #000;
    }

    .contact-form.contact-form {
        margin-top: 20px;
    }

    .contact-fields.contact-fields > div + div {
        margin-top: 14px;
    }

    .contact-fields.contact-fields label {
        margin-bottom: 0;
        padding-bottom: 1px;
        font-size: 16px;
        font-weight: 400;
        line-height: 28.8px;
        color: #4f4f4f;
    }

    .contact-fields.contact-fields input,
    .contact-fields.contact-fields select {
        height: 40px;
        padding: 5px 14px;
        border: 0.8px solid #eaecf0;
        border-radius: 4px;
        background-color: #fafafa;
        font-size: 16px;
        font-weight: 400;
        line-height: 28.8px;
        color: #667085;
    }

    .contact-fields.contact-fields textarea {
        display: block;
        height: 127px;
        min-height: 127px;
        padding: 5px 14px;
        border: 0.8px solid #eaecf0;
        border-radius: 4px;
        background-color: #fafafa;
        font-size: 16px;
        font-weight: 400;
        line-height: 28.8px;
        color: #667085;
    }

    .contact-fields.contact-fields input::placeholder,
    .contact-fields.contact-fields textarea::placeholder {
        color: #667085;
    }

    .contact-form.contact-form button[type="submit"] {
        width: 100%;
        margin-top: 55px;
    }

    .site-footer.site-footer {
        border-top: 2px solid #4a5bac;
    }

    .footer-bar.footer-bar {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        gap: 0;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 10px 10px 160px;
        font-size: 16px;
        font-weight: 400;
        line-height: 28.8px;
        text-align: center;
    }

    .footer-social.footer-social {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0;
        margin: 0 0 20px;
    }

    .footer-social-link.footer-social-link {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 50px;
        height: 50px;
    }

    .footer-social-link.footer-social-link svg {
        width: 25px;
        height: 25px;
    }

    .footer-mail.footer-mail {
        margin: 0 0 20px;
    }

    .footer-io.footer-io {
        display: inline-flex;
        margin: 0 0 20px;
    }

    .footer-copy.footer-copy {
        margin: 0 0 10px;
    }

    .footer-company.footer-company {
        margin: 0;
    }

    .tablet-bottom-nav.tablet-bottom-nav {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 40;
        display: flex;
        align-items: center;
        justify-content: center;
        height: 200px;
        margin: 0;
        padding: 0;
        background: transparent;
        pointer-events: none;
    }

    .tablet-bottom-nav-inner.tablet-bottom-nav-inner {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 80px;
        margin: 30px;
        padding: 0;
        border-radius: 50px;
        background: #5f77f2;
        pointer-events: auto;
    }

    .tablet-bottom-nav.tablet-bottom-nav a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        height: 80px;
        min-height: 80px;
        margin: 0 20px;
        padding: 0 15px;
        font-size: 16px;
        font-weight: 400;
        line-height: 28.8px;
        color: #fff;
        text-decoration: none;
        white-space: nowrap;
    }

    .to-top.to-top {
        bottom: 120px;
    }
}
