/*************************
    HERO V1
*************************/
#heroV1 {
    background-image: url("/assets/img/hero_background.webp");
    background-size: cover;
    background-position: center center;
}

.heroV1Grid {
    max-width: 1400px;
    margin: 0 auto;
    padding: 75px 20px;
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 40px;
}

.heroV1GridContent {
}

.heroV1GridContentTitle {
    font-family: "Newsreader", sans-serif;
    color: var(--white);
    font-size: 69px;
    font-weight: 700;
    line-height: 83.8488px;
}

.heroV1GridContentSubtitle {
    font-family: "Newsreader", sans-serif;
    color: var(--white);
    font-size: 46px;
    font-weight: 700;
    line-height: 59.065px;
    margin-bottom: 24px;
}

.heroV1GridContentButtons {
    display: flex;
    gap: 20px;
    align-items: center;
}

.heroV1GridContentButtonsItem {
    min-height: 62px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 35px;
    max-width: 273px;
}

#heroPhone {
    font-size: 24px;
}

#heroReview {
    font-size: 16px;
    text-align: left;

}

.heroV1GridForm {
    background-color: var(--disabled);
    min-height: 500px;
}

@media screen and (max-width: 1000px) {
    #heroV1 {
    }

    .heroV1Grid {
        padding: 40px 20px;
        grid-template-columns: minmax(0, 1fr);
    }

    .heroV1GridContent {
    }

    .heroV1GridContentTitle {
        font-size: 48px;
        text-align: center;
        line-height: 58.3296px;
    }

    .heroV1GridContentSubtitle {
        font-size: 36px;
        font-weight: 700;
        line-height: 45.4883px;
        text-align: center;
    }

    .heroV1GridContentButtons {
        flex-direction: column;
        gap: 10px;
    }

    .heroV1GridContentButtonsItem {
    }

    .heroV1GridForm {
    }
}

/*****************
    PROFILES
******************/
#profiles {
    padding: 104px 0;
}

.profilesContent {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 20px;
}

.profilesGrid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 75px;
    align-items: center;
}

.profilesGridMedia {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 25px;
}

.profilesGridMediaItem {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.profilesGridMediaItemLink {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.profilesGridMediaItemImg {
    margin-bottom: 12px;
}

.profilesGridMediaItemTitle {
    font-family: "Newsreader", sans-serif;
    font-size: 26.4px;
    font-weight: 700;
    line-height: 42.24px;
    color: var(--red);
    white-space: nowrap;
}

.profilesGridMediaItemSubtitle {
    font-size: 17.6px;
    font-weight: 700;
    line-height: 28.16px;
    color: var(--blue);
}

.profilesGridCopy {
}

.profilesGridCopySupertitle {
    font-family: "Outfit", sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 22.4px;
    letter-spacing: 2.8px;
    color: var(--blue);
    margin-bottom: 24px;
}

.profilesGridCopyTitle {
    font-family: "Newsreader", sans-serif;
    font-size: 56px;
    font-weight: 700;
    line-height: 71.1872px;
    color: var(--blue);
    margin-bottom: 24px;
}

.profilesGridCopyBody {
    font-size: 18px;
    font-weight: 400;
    line-height: 28.8px;
    margin-bottom: 24px;
}

.highlight {
    color: var(--red);
}

.profilesGridCopyImg {
    display: none;
    width: 100%;
    aspect-ratio: 1260 / 118;
}

.profilesGridCopyBtn {
    max-width: 283px;
    min-height: 71px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.profilesAssociations {
    display: block;
    width: 100%;
    max-width: 1196px;
    aspect-ratio: 1260 / 118;
    margin: 0 auto;
    padding: 148px 0 10px;
}

@media screen and (max-width: 1000px) {
    #profiles {
        padding: 50px 0;
    }

    .profilesContent {
        max-width: 1400px;
        margin: 0 auto;
        padding: 0 20px;
    }

    .profilesGrid {
        display: grid;
        grid-template-columns: repeat(1, minmax(0, 1fr));
        gap: 75px;
    }

    .profilesGridMedia {
        grid-template-columns: repeat(1, minmax(0, 1fr));
        gap: 60px;
    }

    .profilesGridMediaItem {

    }

    .profilesGridMediaItemLink {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .profilesGridMediaItemImg {
        margin-bottom: 12px;
    }

    .profilesGridMediaItemTitle {
        font-family: "Newsreader", sans-serif;
        font-size: 26.4px;
        font-weight: 700;
        line-height: 42.24px;
        color: var(--red);
        white-space: nowrap;
    }

    .profilesGridMediaItemSubtitle {
        font-size: 17.6px;
        font-weight: 700;
        line-height: 28.16px;
        color: var(--blue);
    }

    .profilesGridCopy {
    }

    .profilesGridCopySupertitle {
        margin-bottom: 8px;
    }

    .profilesGridCopyTitle {
        font-size: 32px;
        line-height: 36.288px;
        margin-bottom: 12px;
    }

    .profilesGridCopyBody {
        font-size: 18px;
        font-weight: 400;
        line-height: 28.8px;
        margin-bottom: 24px;
    }

    .highlight {
        color: var(--red);
    }

    .profilesGridCopyImg {
        display: block;
        margin-bottom: 56px;
    }

    .profilesGridCopyBtn {
        max-width: 100%;
    }

    .profilesAssociations {
        display: none;
    }
}

/**********************
    ALPHA
***********************/
#alpha {
    padding: 116px 0;
    background-color: var(--blue);
    color: var(--white);
}

.alphaContent {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 20px;
}

.alphaWrapper {
    display: flex;
    gap: 48px;
}

.alphaCopy {
    flex: 1;
}

.alphaCopyTitle {
    font-family: "Newsreader", sans-serif;
    font-size: 56px;
    font-weight: 700;
    line-height: 71.1872px;
}

.alphaCopyBody {
    font-size: 18px;
    line-height: 28.8px;
}

.alphaMedia {
    width: 100%;
    flex: 1;
}

.alphaMediaForm {
    min-height: 700px;
    background-color: var(--white);
}

@media screen and (max-width: 1000px) {
    #alpha {
        padding: 55px 0;
    }

    .alphaContent {

    }

    .alphaWrapper {
        flex-direction: column;
        gap: 48px;
    }

    .alphaCopy {
    }

    .alphaCopyTitle {
        font-size: 32px;
        line-height: 34.048px;
        margin-bottom: 24px;
    }

    .alphaCopyBody {
    }

    .alphaMedia {
        max-width: 625px;
        margin: 0 auto;
    }

    .alphaMediaImg {
        aspect-ratio: 315/304;
    }
}

/**********************
    STEPS
***********************/
#steps {
    padding: 100px 0;
}

.stepsContent {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 20px;
}

.stepsTitle {
    font-family: "Newsreader", sans-serif;
    font-size: 56px;
    font-weight: 700;
    line-height: 71.1872px;
    margin-bottom: 18px;
    text-align: center;
    color: var(--blue);
}

.stepsSubtitle {
    font-size: 27px;
    line-height: 37.044px;
    margin-bottom: 72px;
    text-align: center;
}

.stepsGrid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 72px;
    margin-bottom: 100px;
}

.stepsGridItem {
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding: 0 24px;
}

.stepsGridItemNum {
    font-family: "Newsreader", sans-serif;
    font-size: 43px;
    font-weight: 700;
    line-height: 56.6616px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    background-color: var(--red);
    color: var(--white);
}

.stepsGridItemTitle {
    font-family: "Newsreader", sans-serif;
    font-size: 28px;
    font-weight: 700;
    line-height: 37.16px;
}

.stepsGridItemBody {
    font-size: 16px;
    line-height: 25.6px;
}

.stepsButton {
    max-width: 348px;
    min-height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    padding: 0 35px;
}

@media screen and (max-width: 1000px) {
    #steps {
        padding: 80px 0;
    }

    .stepsContent {
    }

    .stepsTitle {
        font-size: 32px;
        line-height: 40.678px;
        margin-bottom: 12px;
    }

    .stepsSubtitle {
        font-size: 24px;
        line-height: 32.928px;
        margin-bottom: 48px;
    }

    .stepsGrid {
        grid-template-columns: repeat(1, minmax(0, 1fr));
        gap: 24px;
        margin-bottom: 48px;
    }

    .stepsGridItem {
        display: flex;
        flex-direction: column;
        gap: 24px;
        padding: 0;
    }

    .stepsGridItemNum {
        width: 78px;
        height: 78px;
    }

    .stepsGridItemTitle {
    }

    .stepsGridItemBody {
    }

    .stepsButton {
        max-width: 100%;
        min-height: 72px;
    }
}