.text-preset-1 {
    font-family: "Red Hat Display", sans-serif;
    font-size: 64px;
    font-style: normal;
    font-weight: 900;
    line-height: 110%;
}

.text-preset-2 {
    font-family: "Red Hat Display", sans-serif;
    font-size: 40px;
    font-style: normal;
    font-weight: 900;
    line-height: 110%;
}

.text-preset-3 {
    font-family: "Red Hat Display", sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 900;
    line-height: 110%;
    letter-spacing: 4px;
    text-transform: uppercase;
}

.text-preset-4 {
    font-family: "Red Hat Display", sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
}

.text-preset-5 {
    font-family: "Red Hat Display", sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 900;
    line-height: 150%;
}





body {
    display: flex;
    /* min-width: 375px; */
    width: 100vw;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: #FAFAFA;
    margin: 0 0;
}

nav>img {
    display: flex;
    padding: 48px 80px 0px 80px;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    gap: 8px;
    align-self: stretch;
}

.hero {
    width: 100%;
    box-sizing: border-box;
    display: flex;
    padding: 64px 32px 32px 32px;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    align-self: stretch;
    overflow: hidden;

}

.combined {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 48px;
    align-self: stretch;
}

.combined-image {

    display: flex;
    height: 160px;
    justify-content: center;
    align-items: center;
    align-self: stretch;
    gap: 16.9px;

}

.combined-image img {
    width: 208px;
    flex-shrink: 0;

}

.text-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    align-self: stretch;
    margin-left: auto;
    margin-right: auto;
}

.text-content>.text-preset-1 {
    align-self: stretch;
    color: #28283D;
    text-align: center;
    font-feature-settings: 'liga' off, 'clig' off;
    font-size: 40px;
}

.text-content>.text-preset-4 {
    align-self: stretch;
    color: #87879D;
    text-align: center;
    font-feature-settings: 'liga' off, 'clig' off;
    font-size: 16px;
}

.button-frame {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

.button-frame button {
    display: flex;
    padding: 16px 40px;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    border-radius: 29px;
    border-style: none;

}

.button-frame button:first-child {
    background-color: #4D96A9;
    transition: background-color 0.3s ease
}

.button-frame button:first-child:hover,
.button-frame button:first-child:active,
.button-frame button:first-child:focus {
    background-color: #71C0D4;
}


.button-frame button:last-child {
    background-color: #855FB1;
    transition: background-color 0.3s ease
}

.button-frame button:last-child:hover,
.button-frame button:last-child:active,
.button-frame button:last-child:focus {
    background-color: #B18BDD;
}

.button-inside-frame {
    display: flex;
    align-items: flex-start;
    gap: 4px;
    font-feature-settings: 'liga' off, 'clig' off;
}

.white {
    color: #FAFAFA;
}

.cyan {
    color: #8FE3F9;
}

.purple {
    color: #D9B8FF;
}

.main-content {
    display: flex;
    padding: 32px 32px 64px 32px;
    flex-direction: column;
    align-items: center;
    gap: 64px;
    align-self: stretch;
    background-color: #FAFAFA;
}

.content {
    display: flex;

    flex-direction: column;
    align-items: center;
    gap: 64px;
    align-self: stretch;
}

.grid-image-collage {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-auto-rows: auto;
    row-gap: 16px;
    column-gap: 16px;
}

.grid-image-collage img {
    width: 147px;
    height: 144px;
    border-radius: 8px;
    background: #D8D8D8;
}


.one {
    grid-column: 1/2;
    grid-row: 1;
}

.two {
    grid-column: 2/3;
    grid-row: 1;
}

.three {
    grid-column: 1/2;
    grid-row: 2;
}

.four {
    grid-column: 2/3;
    grid-row: 2;
}

.text-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 32px;
    align-self: stretch;
}

.title {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    align-self: stretch;
}

.title-uppercase {
    align-self: stretch;
    color: #4D96A9;
    text-align: center;
    font-feature-settings: 'liga' off, 'clig' off;
    font-size: 12px;
}

.title-normal {
    font-size: 32px;
    color: #28283D;
    text-align: center;
    font-feature-settings: 'liga' off, 'clig' off;
    align-self: stretch;
}

.text {
    align-self: stretch;
    color: #87879D;
    text-align: center;
    font-feature-settings: 'liga' off, 'clig' off;
    font-size: 16px;
}

.footer-cta {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    align-self: stretch;
}

.footer-cta>img {
    z-index: 2;
}



.hero-footer {
    position: relative;
    z-index: 1;
    margin-top: -28px;
    display: flex;
    padding: 64px 32px;
    flex-direction: column;
    align-items: center;
    overflow: hidden;
    align-self: stretch;
    background: url(./assets/mobile/image-footer.jpg) lightgray 50% / cover no-repeat;

}

.hero-footer::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: rgba(77, 150, 169, 0.75);
    z-index: 0;
}

.content-footer {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 24px;

    z-index: 1;
    position: relative;
}

.title-footer {
    width: 311px;

    align-self: stretch;
    color: #FAFAFA;
    text-align: center;
    font-feature-settings: 'liga' off, 'clig' off;
    font-size: 32px;

}

.text-footer {
    width: 311px;
    align-self: stretch;
    color: #FAFAFA;
    text-align: center;
    font-feature-settings: 'liga' off, 'clig' off;
    font-size: 16px;
}

.button-footer {

    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: end;


}

.button-footer button {
    border-style: none;
    display: flex;
    padding: 16px 40px;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    border-radius: 29px;
    background-color: #855FB1;
    transition: background-color 0.3s ease
}

.button-footer button:hover,
.button-footer button:active,
.button-footer button:focus {
    background-color: #B18BDD;
}

.button-footer-inside {
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 16px;
    font-feature-settings: 'liga' off, 'clig' off;
}

@media (min-width: 768px) and (max-width:1439px) {

    .combined {
        gap: 72px;
    }

    .combined-image {
        height: 303px;
        gap: 32px;
    }

    .combined-image img {
        width: 394px;

    }

    .text-content>.text-preset-1 {
        font-size: 48px;
    }

    .button-frame {
        flex-direction: row;
        align-items: center;
        gap: 17px;
    }

    .main-content {
        padding: 56px 32px 64px 32px;

    }

    .grid-image-collage {
        display: flex;
        flex-direction: row;
        gap: 24px;

    }

    .grid-image-collage img {
        width: 152px;
        height: 160px;
    }

    .text-content {
        width: 504px;
    }

    .hero-footer {
        background: url(./assets/desktop/image-footer.jpg) lightgray 50% / cover no-repeat;
    }



    .text-footer,
    .title-footer {
        width: 504px;
    }


}

@media (min-width: 1440px) {
    .hero {
        padding: 64px 80px;
    }


    .combined {
        flex-direction: row;
        justify-content: center;
        align-items: center;
        align-self: center;
        gap: 32px;
    }

    .faces-left {
        display: flex;
        padding: 0 95px 40px 0;
        flex-direction: column;
        align-items: center;
        flex: 1 0 0;
        align-self: stretch;
        justify-content: center;
    }

    .text-content {
        gap: 32px;
        width: 544px;

    }

    .text-content>.text-preset-1 {
        font-size: 64px;

    }

    .text-content>.text-preset-4 {
        font-size: 18px;
    }

    .faces-right {
        display: flex;
        padding: 40px 0 0 95px;
        justify-content: center;
        flex-direction: column;
        justify-content: flex-end;
        align-items: center;
        flex: 1 0 0;
        align-self: stretch;
    }

    .grid-image-collage {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        gap: 32px;

    }

    .grid-image-collage img {
        width: 256px;
        height: 256px;
    }

    .title-uppercase {
        font-size: 16px;
    }

    .title-normal {
        font-size: 40px;
    }

    .text {
        font-size: 18px;
    }

    .hero-footer {
        padding: 112px 80px;
        background: url(./assets/desktop/image-footer.jpg) lightgray 50% / cover no-repeat;
    }

    .content-footer {
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        margin-left: 64px;
        margin-right: 64px;
        gap: 32px;
        align-self: stretch;

    }

    .title-footer {
        width: 504px;
        font-size: 40px;
        text-align: left;
    }

    .text-footer {
        width: 355px;
        font-size: 18px;
        text-align: left;

    }

    .button-footer {
        width: 256px;
    }










}