:root {
    --blue: #0075CF;
    --blue-btn: #0077FF;
    --text-dark: #313131;
    --gutter: clamp(20px, 6vw, 9rem); /* margem esquerda comum às seções 2 e 3 */
}

main {
    overflow-x: hidden;
}

.logo,
.recursos,
.evento,
.realizacao {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.logo {
    background-image: url(../../images/Banner1.png);
    min-height: clamp(200px, 40vw, 545px);
}

.recursos {
    background-image: url(../../images/Banner2.png);
    min-height: clamp(260px, 40vw, 566px);
    display: flex;
    align-items: center;
}

.recursos__text {
    width: 50%;
    padding: 24px 16px 24px var(--gutter);
}

.secao .secao_text {
    margin: 0;
    font-size: clamp(12px, 2.2vw, 24px);
    line-height: 1.45;
}

.evento {
    background-image: url(../../images/Banner3.png);
    min-height: clamp(260px, 42vw, 584px);
    display: flex;
    align-items: center;
}

.evento__text {
    width: min(560px, 58%);
    padding: 24px 16px 24px var(--gutter);
}

.evento__text__group {
    max-width: 386px;
}

.evento__text__group > h2 {
    font-size: clamp(18px, 3.2vw, 46px);
    font-weight: 700;
    color: var(--blue);
    line-height: 1.15;
    text-wrap: nowrap;
}

.evento__text__group > p {
    font-size: clamp(12px, 1.7vw, 24px);
    color: #1c1c1c;
}

.evento__text__group .observation {
    font-size: clamp(11px, 1.3vw, 18px);
    margin-top: 10px;
}

.evento__text__btn {
    background-color: var(--blue-btn);
    color: #FFFFFF;
    border-radius: 30px;
    box-shadow: 0 3px 6px rgba(222, 126, 0, 0);
    padding: clamp(6px, 1vw, 10px) clamp(24px, 4vw, 40px);
    width: min(382px, 100%);
    font-size: clamp(14px, 2.2vw, 30px);
    margin-top: clamp(20px, 4vw, 52px);
}

.evento__text__group .evento__text__btn {
    width: fit-content;
    min-width: min(100%, 140px);
    max-width: 100%;
}

@media (min-width: 768px) {
    .evento__text__group .evento__text__btn {
        width: 100%;
    }
}

.programacao {
    padding: clamp(48px, 8vw, 120px) 20px clamp(48px, 7vw, 100px);
}

.programacao > h2 {
    font-size: clamp(28px, 4.5vw, 59px);
    font-weight: 700;
    color: var(--blue);
    margin: 0;
}

.programacao__breve {
    font-size: clamp(14px, 1.6vw, 20px);
    color: var(--text-dark);
    margin: 8px 0 0;
}

.programacao .evento__text__btn {
    margin-top: clamp(24px, 3.5vw, 40px);
    margin-bottom: 0;
    background-color: var(--blue);
}

.programacao .evento__text__btn img {
    height: 0.6em;
    margin-left: 6px;
}

.realizacao {
    background-image: url('../../images/Banner4.png');
    min-height: clamp(150px, 22vw, 295px);
    padding: clamp(24px, 5vw, 66px) 16px 24px;
}

.realizacao > p {
    font-size: clamp(12px, 1.8vw, 23px);
    margin-bottom: 10px;
}

.realizacao > img {
    height: clamp(25px, 4vw, 50px);
    max-width: 80%;
}

@media (max-width: 991px) {
    .recursos__text {
        width: 58%;
    }
}

@media (max-width: 767px) {
    .recursos__text {
        width: 62%;
        padding: 20px 12px 20px 20px;
    }

    .evento__text {
        width: 58%;
        padding: 20px 12px 20px 20px;
    }

    .evento__text__group {
        max-width: 100%;
    }

    .evento__text__btn {
        font-size: 14px;
        padding: 8px 24px;
        margin-top: 16px;
    }

    .programacao .evento__text__btn {
        width: fit-content;
        font-size: 16px;
        padding: 10px 40px;
        margin-top: 28px;
    }
}

@media (max-width: 380px) {
    .recursos__text,
    .evento__text {
        width: 70%;
        padding-left: 14px;
    }

    .evento__text__group > h2 {
        text-wrap: wrap;
    }
}