@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;700&display=swap");

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: "DM Sans", Arial, sans-serif;
    margin: 0;
    padding: 0;
    color: #333;
    overflow-x: hidden;
    width: 100%;
    max-width: 100vw;
}



.quem-somos {
    width: 100%;
    /* height: 100vh; */
    position: relative;
}

.imagem-principal {
    width: 100%;
    height: 70vh;
    position: relative;
}

.imagem-principal img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgb(87, 86, 165, 0.4);
}

.texto-central {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    z-index: 2;
}

.texto-central h1 {
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 80px;
    line-height: 130%;
    letter-spacing: 0%;
    vertical-align: middle;
    color: white;
}

/* Nova seção de programas */
.programas-info {
    background-color: #fff;
    padding: 160px 20px;
    position: relative;
    overflow: hidden !important;
}

.programas-info::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -60px;
    transform: translateY(-50%);
    width: 361px;
    height: 369px;
    background-image: url("../img/programas/corrente.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center left;
    z-index: 1;
}

.programas-info::after {
    content: "";
    position: absolute;
    overflow: hidden !important;
    top: 50%;
    right: -60px;
    transform: translateY(-50%);
    width: 361px;
    height: 369px;
    background-image: url("../img/programas/corrente.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center right;
    z-index: 1;
}

.programas-info .container {
    text-align: center;
    max-width: 800px;
    margin: 0 auto;
}

.programas-info p {
    font-weight: 400;
    font-size: 28px;
    line-height: 130%;
    letter-spacing: 0;
    margin-bottom: 40px;
}

.programas-info .buttons {
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
}

.programas-info .button {
    text-decoration: none;
    padding: 10px 30px;
    border: none;
    border-radius: 50px;
    color: #fff;
    font-family: "DM Sans", sans-serif;
    font-weight: 700;
    font-size: 36px;
    line-height: 100%;
    letter-spacing: 0;
    cursor: pointer;
    transition: transform 0.2s;
}

.programas-info .button:hover {
    transform: scale(1.05);
}

.programas-info .perfil1 {
    background-color: #54b9ca;
}

.programas-info .perfil2 {
    background-color: #e27254;
}

.programas-info .iniciativas {
    background-color: #db4f66;
}

.corrente-direita,
.corrente-esquerda {
    width: 100%;
    position: absolute;
    overflow: visible;
    z-index: 1;
}

.corrente-direita img,
.corrente-esquerda img {
    width: 20%;
    height: auto;
    position: absolute;
    display: block;
}

.corrente-direita {
    right: 0;
    bottom: -25px;
}

.corrente-esquerda {
    left: 0;
    bottom: -25px;
}

.corrente-direita img {
    right: -40px;
}

.corrente-esquerda img {
    left: -40px;
}

/* Seção Perfil 1 */
.perfil1-section {
    background-color: #54b9ca;
    color: #fff;
    padding: 60px 0;
    position: relative;
    overflow: hidden;
}

.perfil-container {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}

/* Topo do Perfil 1 */
.topo {
    display: flex;
    gap: 30px;
    margin-bottom: 60px;
}

.conteudo-principal {
    flex: 1;
}

.conteudo-principal h1 {
    font-family: "DM Sans", sans-serif;
    font-weight: 700;
    font-size: 120px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: left;
    vertical-align: middle;
    margin-bottom: 20px;
}

.texto-explicativo {
    display: flex;
    gap: 2rem;
    flex-direction: column;
    width: 90%;
}

.texto-explicativo p {
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 28px;
    line-height: 110%;
    letter-spacing: 0%;
    vertical-align: middle;
    margin-bottom: 15px;
}

.box-lateral {
    width: 30%;
    display: flex;
    flex-direction: column;
    gap: 24px;
    align-self: center;
}

.card {
    background-color: #f0f0f0;
    width: 100%;
    border-radius: 10px;
    overflow: hidden;
}

.card-header {
    background-color: #dc4d66;
    color: white;
    text-align: center;
    padding: 15px;
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 23px;
    line-height: 155%;
    letter-spacing: 0%;
    vertical-align: middle;
}

.card-content {
    padding: 20px;
    color: #dc4d66;
    //text-align: ;
    align-items: center;
}

.card-content p {
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 100%;
    letter-spacing: 0%;
    vertical-align: middle;
}

.card-content ul {
    list-style: none;
    padding: 0;
    margin: 0;
    text-align: left;
}

.card-content ul li {
    margin: 10px 0;
    display: flex;
    align-items: center;
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 25px;
    line-height: 155%;
    letter-spacing: 0%;
    vertical-align: middle;
}

.check-icon {
    display: inline-block;
    width: 20px;
    height: 20px;
    background-color: #dc4d66;
    border-radius: 50%;
    color: white;
    font-size: 14px;
    text-align: center;
    line-height: 20px;
    margin-right: 10px;
}

.check-icon-perfil {
    width: 35px;
    height: 35px;
    background-image: url("../img/programas/Check.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    flex-shrink: 0;
    margin: 0 20px 0 0;
}

.check-icon-perfil-02 {
    width: 35px;
    height: 35px;
    background-image: url("../img/programas/Check02.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    flex-shrink: 0;
    margin: 0 5px 0 0;
}

/* Timeline */
.timeline {
    position: relative;
    margin: 30px 0;
    padding: 20px 0;
}

.linha {
    position: absolute;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100% - 270px);
    height: 5px;
    background-color: #fff;
}

.marcadores {
    display: flex;
    justify-content: space-between;
    position: relative;
    margin-top: -20px;
}

.marcador {
    text-align: center;
    width: 25%;
    padding-top: 20px;
}

.marcador h4 {
    font-family: "DM Sans", sans-serif;
    font-weight: 600;
    font-size: 24px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    vertical-align: middle;
    margin-bottom: 28px;
}

.marcador p {
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    vertical-align: middle;
    max-width: 200px;
    margin: 0 auto;
}

.circulo {
    width: 35px;
    height: 35px;
    background-color: #f26a7e;
    border-radius: 50%;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    transform: translateY(-35px);
    border: 5px solid #d9d9d9;
}

/* Box de Inscrição */
.inscricao {
    position: relative;
    /* min-height: 600px; */
    margin-bottom: 0;
    margin-top: 140px;
}

.inscricao-container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 40px;
    position: relative;
    min-height: 440px;
}

.inscricao-conteudo {
    flex: 1;
    margin-top: -40px;
    max-width: 60%;
    align-self: flex-start;
    z-index: 2;
}

.inscricao-imagem {
    width: 55%;
    position: absolute;
    transform: rotate(90deg);
    bottom: 99px;
    right: -150px;
    height: calc(100% - 20px);
    index-z: 1;
}

.li-perfil-02 {
    display: flex;
    align-items: flex-start;
    margin-bottom: 20px;
}

.inscricao-imagem img {
    width: 96%;
    height: auto;
    filter: grayscale(100%);
    display: block;
    transform: scale(1.3);    
    overflow: hidden;

}

.box-inscricao {
    background-color: #fff;
    width: 100%;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 60px;
}

.box-inscricao .card-header {
    background-color: #e13c55;
    color: white;
    text-align: center;
    padding: 15px;
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 23px;
    line-height: 155%;
    letter-spacing: 0%;
    vertical-align: middle;
}

.box-inscricao .card-content {
    padding: 30px;
    color: #e13c55;
    text-align: left;
}

.box-inscricao .card-content p {
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 25px;
    line-height: 130%;
    letter-spacing: 0%;
    vertical-align: middle;
}

.texto-abaixo {
    margin-bottom: 60px;
}

.texto-abaixo p {
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 130%;
    letter-spacing: 0%;
    color: #fff;
    max-width: 90%;
}

.botoes-inscricao {
    display: flex;
    gap: 16px;
}

.btn-inscrever,
.btn-saber-mais {
    padding: 15px 30px;
    border: none;
    border-radius: 50px;
    font-family: "DM Sans", sans-serif;
    line-height: 100%;
    color: #fff;
    cursor: pointer;
    transition: transform 0.2s;
    text-align: center;
    vertical-align: middle;
    letter-spacing: 0%;
}

.btn-disabled {
    background-color: grey !important;
    cursor: not-allowed !important;
    opacity: 0.7 !important;
}

.btn-disabled:hover {
    transform: none !important;
}

.btn-inscrever {
    background-color: #e13c55;
    font-size: 36px;
    font-weight: 400;
}

.btn-saber-mais {
    background-color: #e36c80;
    font-size: 34px;
    font-weight: 400;
}

.btn-inscrever:hover,
.btn-saber-mais:hover {
    transform: scale(1.05);
}

/* CTA e Foto */
.cta-foto {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.botoes {
    display: flex;
    gap: 16px;
    margin-bottom: 20px;
}

.btn-inscrever,
.btn-saber-mais {
    padding: 18px 24px;
    border: none;
    cursor: pointer;
    background-color: #db4f66;
    color: #fff;
}

.foto {
    width: 30%;
}

.foto img {
    width: 100%;
    height: auto;
    display: block;
}

/* Responsividade */
@media (max-width: 768px) {
    .perfil-container {
        width: 90%;
    }

    .topo {
        flex-direction: column;
    }

    .texto-explicativo,
    .box-lateral {
        width: 100%;
    }

    .cta-foto {
        flex-direction: column;
    }

    .foto {
        width: 100%;
        margin-top: 20px;
    }

    .inscricao-container {
        flex-direction: column;
    }

    .inscricao-conteudo {
        max-width: 100%;
    }

    .inscricao-imagem {
        width: 100%;
        margin-top: 40px;
    }

    /* Ajustes gerais */
    .texto-central h1 {
        font-size: 40px;
        text-align: center;
    }

    /* Ajustes Perfil 1 */
    .conteudo-principal h1 {
        font-size: 60px;
        text-align: center;
        margin-bottom: 30px;
        padding: 0 20px;
    }

    .texto-explicativo {
        width: 100%;
        text-align: center;
        margin: 0 auto 40px;
        padding: 0 20px;
    }

    .texto-explicativo p {
        font-size: 18px;
        line-height: 1.4;
        margin-bottom: 20px;
    }

    /* Ajustes dos Cards */
    .box-lateral {
        width: 100%;
        max-width: 400px;
        margin: 0 auto;
        padding: 0 20px;
    }

    .card {
        margin-bottom: 30px;
        border-radius: 15px;
        width: 90%;
        margin-left: auto;
        margin-right: auto;
    }

    .card-header {
        font-size: 20px;
        padding: 12px;
    }

    .card-content {
        padding: 15px;
    }

    .card-content p {
        font-size: 18px;
        margin-bottom: 15px;
    }

    .card-content ul li {
        font-size: 16px;
        margin: 8px 0;
    }

    /* Remoção das bolinhas e linhas */
    .timeline {
        display: none;
    }

    .linha,
    .circulo {
        display: none;
    }

    /* Ajustes dos botões */
    .botoes-inscricao {
        flex-direction: column;
        gap: 15px;
        align-items: center;
        margin-top: 30px;
    }

    .btn-inscrever,
    .btn-saber-mais {
        width: 100%;
        max-width: 300px;
        height: 50px;
        font-size: 20px;
        padding: 0;
    }

    /* Ajustes do texto "no ensino médio" */
    .texto-abaixo {
        text-align: center;
        margin: 30px auto;
        max-width: 90%;
        padding: 0 20px;
    }

    .texto-abaixo p {
        font-size: 18px;
        line-height: 1.4;
    }

    /* Ajustes da seção de doação */
    .doacao-container {
        flex-direction: column;
        padding: 20px;
    }

    .doacao-left {
        text-align: center;
        padding: 20px 15px;
        width: 100%;
    }

    .doacao-left h1 {
        font-size: 32px;
        margin-bottom: 20px;
    }

    .doacao-left p {
        font-size: 16px;
        line-height: 1.4;
        margin-bottom: 25px;
    }

    .doacao-buttons {
        flex-direction: column;
        gap: 12px;
        align-items: center;
        width: 100%;
    }

    .btn-doar,
    .btn-pix {
        width: 100%;
        max-width: 400px;
        height: 50px;
        font-size: 18px;
        border-radius: 25px;
    }

    .doacao-right {
        display: none !important;
    }

    /* Ajustes Perfil 2 */
    .perfil2-conteudo-principal h1 {
        font-size: 60px;
        text-align: center;
        margin-bottom: 30px;
        padding: 0 20px;
    }

    .perfil2-texto-explicativo {
        width: 100%;
        text-align: center;
        margin: 0 auto 40px;
        padding: 0 20px;
    }

    .perfil2-box-lateral {
        width: 100%;
        max-width: 400px;
        margin: 0 auto;
        padding: 0 20px;
    }

    .perfil2-texto-abaixo {
        text-align: center;
        margin: 30px auto;
        max-width: 90%;
        padding: 0 20px;
    }

    .perfil2-card {
        margin-bottom: 30px;
        border-radius: 15px;
        width: 90%;
        margin-left: auto;
        margin-right: auto;
    }

    .perfil2-card-header {
        font-size: 20px;
        padding: 12px;
    }

    .perfil2-card-content {
        padding: 15px;
    }

    /* Ajustes do Box de Inscrição */
    .box-inscricao {
        width: 100%;
        max-width: 400px;
        margin: 0 auto 30px;
        border-radius: 15px;
        display: flex;
        flex-direction: column;
    }

    .box-inscricao .card-header {
        width: 100%;
        font-size: 20px;
        padding: 12px;
        text-align: center;
    }

    .box-inscricao .card-content {
        width: 100%;
        padding: 15px;
    }

    .box-inscricao .card-content p {
        font-size: 18px;
        line-height: 1.4;
        margin-bottom: 15px;
    }

    .texto-abaixo {
        width: 100%;
        max-width: 400px;
        margin: 0 auto 30px;
        text-align: center;
    }

    .texto-abaixo p {
        font-size: 18px;
        line-height: 1.4;
    }

    .botoes-inscricao {
        width: 100%;
        max-width: 400px;
        margin: 0 auto;
        display: flex;
        flex-direction: row;
        gap: 15px;
        justify-content: center;
    }

    .btn-inscrever,
    .btn-saber-mais {
        width: 100%;
        max-width: 180px;
        height: 50px;
        font-size: 20px;
        text-decoration: none;
        text-align: center;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .perfil2-linha {
        display: none;
    }

    .programas-info::before,
    .programas-info::after {
        display: none;
    }

    .perfil1-cards-container {
        flex-direction: column;
        align-items: center;
    }
}

/* Seção Perfil 2 */
.perfil2-section {
    background-color: #e27253;
    color: #fff;
    padding: 60px 0;
    position: relative;
    overflow: hidden;
}

.perfil2-container {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}

.perfil2-topo {
    display: flex;
    gap: 40px;
    margin-bottom: 60px;
    padding: 0 20px;
}

.perfil2-conteudo-principal {
    flex: 1;
}

.titulo-card-perfil {
    font-family: "DM Sans", sans-serif;
    /* font-weight: 700; */
    font-size: 20px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    vertical-align: middle;
    margin: 20px 20px 0 20px;
    color: #5756a5;
}

.perfil2-conteudo-principal h1 {
    font-family: "DM Sans", sans-serif;
    font-weight: 700;
    font-size: 120px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: right;
    vertical-align: middle;
    margin-bottom: 20px;
}

.perfil2-texto-explicativo {
    width: 94%;
    margin-left: auto;
}

.perfil2-texto-explicativo p {
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 25px;
    line-height: 110%;
    letter-spacing: 0%;
    vertical-align: middle;
    margin-bottom: 15px;
    text-align: right;
}

.perfil2-box-lateral {
    width: 40%;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.perfil2-card {
    background-color: #f0f0f0;
    width: 100%;
    border-radius: 10px;
    overflow: hidden;
}

.perfil2-card-header {
    background-color: #5756a5;
    color: white;
    text-align: center;
    padding: 15px;
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 23px;
    line-height: 155%;
    letter-spacing: 0%;
    vertical-align: middle;
}

.perfil2-card-content {
    padding: 20px;
    color: #5756a5;
    text-align: center;
}

.perfil2-card-content p {
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 110%;
    letter-spacing: 0%;
    vertical-align: middle;
}

.perfil2-card-content ul {
    list-style: none;
    padding: 0;
    margin: 0;
    text-align: left;
}

.texto-perfil-02 {
    margin-bottom: 20px;
}

.perfil2-card-content ul li {
    margin: 1px 0 10px 0;
    display: flex;
    align-items: center;
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 120%;
    letter-spacing: 0%;
    vertical-align: middle;
    gap: 10px;
}

.perfil2-check-icon {
    display: inline-block;
    width: 20px;
    height: 20px;
    background-color: #5756a5;
    border-radius: 50%;
    color: white !important;
    font-size: 14px;
    text-align: center;
    line-height: 20px;
    margin-right: 15px;
    flex-shrink: 0;
}

/* Timeline do Perfil 2 */
.perfil2-timeline {
    position: relative;
    margin: 60px 0;
    padding: 40px 0;
}

.perfil2-linha {
    position: absolute;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100% - 290px);
    height: 5px;
    background-color: #fff;
}

.perfil2-marcadores {
    display: flex;
    justify-content: space-between;
    position: relative;
    margin-top: -20px;
}

.perfil2-marcador {
    text-align: center;
    width: 25%;
    padding-top: 20px;
}

.perfil2-marcador h4 {
    font-family: "DM Sans", sans-serif;
    font-weight: 600;
    font-size: 24px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    vertical-align: middle;
    margin-bottom: 28px;
}

.perfil2-marcador p {
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    vertical-align: middle;
    max-width: 200px;
    margin: 0 auto;
}

.perfil2-circulo {
    width: 35px;
    height: 35px;
    background-color: #5756a5;
    border-radius: 50%;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    transform: translateY(-35px);
    border: 5px solid #d9d9d9;
}

/* Box de Inscrição do Perfil 2 */
.perfil2-inscricao {
    position: relative;
    min-height: 600px;
    margin-bottom: 0;
}

.perfil2-inscricao-container {
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    gap: 40px;
    position: relative;
}

.perfil2-inscricao-conteudo {
    flex: 1;
    max-width: 60%;
    margin: auto 40px;
}

.perfil2-inscricao-imagem {
    width: 45%;
    position: absolute;
    left: -100px;
    bottom: 0;
}

.perfil2-inscricao-imagem img {
    width: 100%;
    height: auto;
    filter: grayscale(100%);
    display: block;
    transform: scale(1.2);
}

.perfil2-box-inscricao {
    background-color: #f0f0f0;
    width: 100%;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 60px;
}

.perfil2-texto-abaixo {
    margin-bottom: 60px;
}

.perfil2-texto-abaixo p {
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 130%;
    letter-spacing: 0%;
    color: #fff;
    max-width: 90%;
}

.perfil2-botoes-inscricao {
    display: flex;
    gap: 16px;
}

.perfil2-btn-inscrever,
.perfil2-btn-saber-mais {
    padding: 15px 30px;
    border: none;
    border-radius: 50px;
    font-family: "DM Sans", sans-serif;
    line-height: 100%;
    color: #fff;
    cursor: pointer;
    transition: transform 0.2s;
    text-align: center;
    vertical-align: middle;
    letter-spacing: 0%;
}

.perfil2-btn-inscrever {
    background-color: #5756a5;
    font-size: 36px;
    font-weight: 400;
}

.perfil2-btn-saber-mais {
    background-color: #5756a5;
    font-size: 34px;
    font-weight: 400;
}

.perfil2-btn-inscrever:hover,
.perfil2-btn-saber-mais:hover {
    transform: scale(1.05);
}

.perfil2-cards-container {
    display: flex;
    gap: 20px;
    margin-bottom: 60px;
}

.perfil2-cards-container .perfil2-box-inscricao {
    flex: 1;
    margin-bottom: 0;
}

/* Seção Iniciativas */
.iniciativas-section {
    background-color: #db4f66;
    min-height: 100vh;
}

.iniciativas-section .topo-iniciativas {
    padding: 60px 20px;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.iniciativas-section .topo-iniciativas::before {
    content: "";
    position: absolute;
    top: -133px;
    left: 0;
    right: 0;
    height: 270px;
    background-image: url("../img/programas/corrente.svg");
    background-size: 260px;
    background-repeat: repeat-x;
    background-position: top;
    opacity: 0.6;
}

.iniciativas-section .lentes-container::before {
    content: "";
    position: absolute;
    bottom: -100px;
    left: 0;
    right: 0;
    height: 180px;
    background-image: url("../img/programas/corrente.svg");
    background-size: 260px;
    background-repeat: repeat-x;
    background-position: top;
    opacity: 0.6;
    z-index: 1;
}

.iniciativas-section .topo-iniciativas h1 {
    color: #fff;
    font-family: "DM Sans", sans-serif;
    font-weight: 700;
    font-size: 100px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    vertical-align: middle;
    position: relative;
    z-index: 1;
}

.iniciativas-section .conteudo {
    padding: 0;
    margin: 0;
    width: 100%;
}

.iniciativas-section .imagem-container {
    width: 100%;
    height: 415px;
    box-shadow: none;
    border-radius: 0;
    overflow: hidden;
}

.iniciativas-section .imagem-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.iniciativas-section .premio-container {
    width: 100%;
    background-color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 40px;
    padding: 60px 320px;
}

.iniciativas-section .lentes-container {
    width: 100%;
    background-color: #db4f66;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 40px;
    padding: 70px 320px 150px;
    position: relative;
    overflow: hidden;
}

.iniciativas-section .lentes-container h2,
.iniciativas-section .lentes-container .btn-saiba-mais {
    position: relative;
    z-index: 2;
}

.lentes-container .corrente-esquerda,
.lentes-container .corrente-direita {
    position: absolute;
    bottom: -25px;
    width: 20%;
    height: auto;
}

.lentes-container .corrente-esquerda {
    left: -40px;
}

.lentes-container .corrente-direita {
    right: -40px;
}

.lentes-container .corrente-esquerda img,
.lentes-container .corrente-direita img {
    width: 100%;
    height: auto;
    display: block;
}

.iniciativas-section .lentes-container h2 {
    font-family: "DM Sans", sans-serif;
    font-weight: 600;
    font-size: 50px;
    line-height: 90%;
    letter-spacing: 0%;
    text-align: center;
    vertical-align: middle;
    color: #ffffff;
}

.iniciativas-section .premio-container h2 {
    font-family: "DM Sans", sans-serif;
    font-weight: 600;
    font-size: 50px;
    line-height: 90%;
    letter-spacing: 0%;
    text-align: center;
    vertical-align: middle;
    color: #db4f66;
}

.iniciativas-section .btn-saiba-mais {
    width: 209px;
    height: 61px;
    background-color: #db4f66;
    border: none;
    border-radius: 50px;
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 25px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    vertical-align: middle;
    color: #fff;
    cursor: pointer;
    transition: transform 0.2s;
}

.iniciativas-section .btn-saiba-mais:hover {
    transform: scale(1.05);
}

.iniciativas-section .lentes-container .btn-saiba-mais {
    width: 209px;
    height: 61px;
    background-color: #ffffff;
    border: none;
    border-radius: 50px;
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 25px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    vertical-align: middle;
    color: #db4f66;
    cursor: pointer;
    transition: transform 0.2s;
}

/* Seção Doação */
.doacao-section {
    padding: 10px 40px 0 100px;
    background-color: #fff;
}

.doacao-conteudo {
    max-width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    gap: 40px;
}

.doacao-left {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: start;
}

.doacao-left h1 {
    color: #5756a5;
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 50px;
    line-height: 90%;
    letter-spacing: 0%;
    vertical-align: middle;
    margin-bottom: 20px;
}

.doacao-left h1 strong {
    font-weight: 700;
}

.doacao-left p {
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 23px;
    line-height: 130%;
    letter-spacing: 0%;
    vertical-align: middle;
    margin-bottom: 30px;
    max-width: 600px;
}

.doacao-buttons {
    display: flex;
    gap: 16px;
}

.btn-doar,
.btn-pix {
    color: #fff;
    background-color: #5756a5;
    width: 244px;
    height: 63px;
    border: none;
    border-radius: 40px;
    font-family: "DM Sans", sans-serif;
    cursor: pointer;
    transition: transform 0.2s;
    line-height: 90%;
    letter-spacing: 0%;
    vertical-align: middle;
}

.btn-doar {
    font-weight: 400;
    font-size: 25px;
}

.btn-pix {
    font-weight: 400;
    font-size: 25px;
}

.btn-doar:hover, .btn-pix:hover {
    transform: scale(1.05);
}

.doacao-caption {
    margin-top: 12px;
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 100%;
    color: #666;
}

.doacao-container {
    max-width: 1239px;
    width: 100%;
    margin: 0 auto;
}

.perfil1-cards-container {
    display: flex;
    gap: 20px;
    margin-bottom: 60px;
    justify-content: center;
}

@media (max-width: 768px) {
    .doacao-section {
        padding: 10px 20px;
    }

    .doacao-container {
        flex-direction: column;
        padding: 20px;
    }

    .doacao-left {
        text-align: center;
        padding: 20px 15px;
        width: 100%;
    }

    .doacao-left h1 {
        font-size: 32px;
        margin-bottom: 20px;
    }

    .doacao-left p {
        font-size: 16px;
        line-height: 1.4;
        margin-bottom: 25px;
    }

    .doacao-buttons {
        flex-direction: column;
        gap: 12px;
        align-items: center;
        width: 100%;
    }

    .btn-doar,
    .btn-pix {
        width: 100%;
        max-width: 400px;
        height: 50px;
        font-size: 18px;
        border-radius: 25px;
    }

    .doacao-right {
        display: none !important;
    }
}

/* Media Queries para Responsividade */
@media (max-width: 1200px) {
    .iniciativas-section .premio-container,
    .iniciativas-section .lentes-container {
        padding: 60px 40px;
    }
}

@media (max-width: 992px) {
    .texto-central h1 {
        font-size: 60px;
    }

    .programas-info p {
        font-size: 24px;
    }

    .programas-info .button {
        font-size: 30px;
    }

    .conteudo-principal h1,
    .perfil2-conteudo-principal h1 {
        font-size: 80px;
    }

    .iniciativas-section .topo-iniciativas h1 {
        font-size: 70px;
    }

    .doacao-section {
        padding: 10px 20px;
    }
}

@media (max-width: 768px) {
    .texto-central h1 {
        font-size: 40px;
    }

    .programas-info {
        padding: 40px 20px;
    }

    .programas-info p {
        font-size: 20px;
    }

    .programas-info .button {
        font-size: 24px;
        padding: 8px 20px;
    }

    .topo,
    .perfil2-topo {
        flex-direction: column;
        gap: 20px;
    }

    .conteudo-principal,
    .perfil2-conteudo-principal {
        width: 100%;
    }

    .texto-explicativo,
    .perfil2-texto-explicativo {
        width: 100%;
    }

    .box-lateral,
    .perfil2-box-lateral {
        width: 100%;
    }

    .conteudo-principal h1,
    .perfil2-conteudo-principal h1 {
        font-size: 60px;
        text-align: center;
    }

    .perfil2-conteudo-principal h1 {
        text-align: center;
    }

    .perfil2-texto-explicativo p {
        text-align: center;
    }

    .inscricao-container,
    .perfil2-inscricao-container {
        flex-direction: column;
    }

    .inscricao-conteudo,
    .perfil2-inscricao-conteudo {
        max-width: 100%;
    }

    .inscricao-imagem,
    .perfil2-inscricao-imagem {
        display: none;
    }

    .iniciativas-section .topo-iniciativas h1 {
        font-size: 50px;
    }

    .iniciativas-section .premio-container,
    .iniciativas-section .lentes-container {
        padding: 40px 20px;
    }

    .iniciativas-section .lentes-container h2,
    .iniciativas-section .premio-container h2 {
        font-size: 36px;
    }

    .doacao-container {
        flex-direction: column;
        gap: 30px;
    }

    .doacao-left {
        padding: 20px;
    }

    .doacao-left h1 {
        font-size: 36px;
    }

    .doacao-left p {
        font-size: 18px;
    }

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

    .btn-doar,
    .btn-pix {
        width: 100%;
        max-width: 300px;
    }

    .timeline,
    .perfil2-timeline {
        margin: 40px 0;
    }

    .linha,
    .perfil2-linha {
        width: calc(100% - 100px);
    }

    .marcadores,
    .perfil2-marcadores {
        flex-direction: column;
        gap: 30px;
    }

    .marcador,
    .perfil2-marcador {
        width: 100%;
    }

    .marcador h4,
    .perfil2-marcador h4 {
        font-size: 20px;
    }

    .marcador p,
    .perfil2-marcador p {
        font-size: 16px;
    }

    .perfil2-linha {
        display: none;
    }
}

@media (max-width: 480px) {
    .texto-central h1 {
        font-size: 32px;
    }

    .programas-info .button {
        font-size: 20px;
        padding: 6px 16px;
    }

    .conteudo-principal h1,
    .perfil2-conteudo-principal h1 {
        font-size: 40px;
    }

    .iniciativas-section .topo-iniciativas h1 {
        font-size: 36px;
    }

    .iniciativas-section .lentes-container h2,
    .iniciativas-section .premio-container h2 {
        font-size: 28px;
    }

    .iniciativas-section .btn-saiba-mais {
        width: 180px;
        height: 50px;
        font-size: 20px;
    }

    .doacao-left h1 {
        font-size: 28px;
    }

    .doacao-left p {
        font-size: 16px;
    }

    .btn-doar {
        font-size: 24px;
    }

    .btn-pix {
        font-size: 20px;
    }
}

@media (max-width: 768px) {
    .perfil2-cards-container {
        display: flex;
        flex-direction: column;
        gap: 20px;
        width: 100%;
        max-width: 400px;
        margin: 0 auto;
    }

    .perfil2-box-inscricao {
        width: 100%;
        margin-bottom: 40px !important;
    }

    .perfil2-card-header {
        font-size: 20px;
        padding: 12px;
    }

    .perfil2-card-content {
        padding: 15px;
    }

    .perfil2-card-content p {
        font-size: 18px;
        line-height: 1.4;
        margin-bottom: 15px;
    }

    .perfil2-card-content ul li {
        font-size: 16px;
        margin: 8px 0;
    }

    .perfil2-texto-abaixo {
        width: 100%;
        max-width: 400px;
        margin: 30px auto;
        text-align: center;
    }

    .perfil2-texto-abaixo p {
        font-size: 18px;
        line-height: 1.4;
    }

    .perfil2-botoes-inscricao {
        width: 100%;
        max-width: 400px;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        gap: 15px;
        align-items: center;
    }

    .perfil2-btn-inscrever,
    .perfil2-btn-saber-mais {
        width: 100%;
        max-width: 300px;
        height: 50px;
        font-size: 20px;
    }
}

.nome-sobreposto {
    position: absolute;
    bottom: 50px;
    right: 15px;
    color: #fff;
    text-align: left;
    line-height: 1.2;
}

.nome-sobreposto .nome {
    font-size: 32px;
    font-weight: 700;
    text-shadow: 4px 2px 4px rgba(0,0,0,2.8);
}

.nome-sobreposto .curso {
    font-size: 32px;
    font-weight: 400;
    text-shadow: 3px 3px 5px rgba(0,0,0,2.8);
}

.btn-pagamento {
  position: absolute;
  right: 0;
  width: 100px !important;
  height: 100px !important;
  background: none !important;
  border: none;
  padding: 0;
  cursor: pointer;
  z-index: 2;
}

.btn-pagamento img {
  filter: none !important;
}

.btn-pagamento:first-of-type {
  top: 80px;
}

.btn-pagamento:nth-of-type(2) {
  top: 200px;
}

.doacao-right {
    flex: 1;
    text-align: center;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
}

.doacao-right img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: grayscale(100%);
    position: relative;
    z-index: 0;
}

