/* reset css */

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
}

html {
    scroll-behavior: smooth;
}

body {
    max-width: 100%;
    overflow-x: hidden;
    background-color: #212121;
    background: radial-gradient(circle 400px at 43% 15%, rgba(0, 100, 255, 0.2), transparent 60%),
        radial-gradient(circle 400px at 60% 10%, rgba(255, 234, 0, 0.2), transparent 60%), #212121;
    min-height: 100vh;
}

ul {
    padding: 0;
    list-style: none;
}

a {
    text-decoration: none;
}

img {
    max-width: 100%;
    width: 800px;
    border-radius: 40px;
}

/* nosso codigo */

p {
    display: flex;
    align-items: center;
    flex-direction: column;
}

.headerCont {
    width: 100vw;
    height: 10vh;
}

.header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 40px 5%;
}

.header a {
  position: relative;
  color: white;
}

/* sublinhado no header */

/* para quando nao estiver ativo (sem o cursor em cima) */
.header a::after {
  content: ""; /* para ser apenas o sublinhado */
  position: absolute;
  left: 0; /* para ficar em baixo do texto */
  bottom: -2px;
  width: 0; /* esconde o sublinhado */
  height: 1px; /* espessura da linha */
  background: white;
  transition: width 0.3s ease;
}

/* ativa */
.header a:hover::after {
  width: 100%; /* mostra o sublinhado */
}

.textCont {
    display: flex;
    gap: 30px;
}

.textCont a {
    color: white;
    font-weight: 100;
    /*100 a fina*/
}

.text {
    color: white;
    font-weight: 100;
    /*100 a fina*/
}

.titleCont {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 50vh;
    gap: 10px;
}

.titleCont img {
    width: auto;
    height: 50px;
}

.title {
    color: white;
    font-size: 40px;
    font-weight: 900;
}

.subtitle {
    font-size: 25px !important;
    font-weight: 700 !important;
}

span {
    font-weight: 700 !important; /* deixa em negrito */
}

.conteudoCont p {
    color: white;
    font-size: 20px;
    font-weight: 200;
    padding: 5%;
}

.conteudoCont {
    position: relative;
    gap: 20px;
    padding: 40px;
    border-radius: 5%;
    display: flex;
    flex-direction: column;
    align-self: center;
    cursor: pointer;
    margin: 50px 2% 20px 2%;
}

/* interatividade */

.conteudoCont>div {
    overflow: hidden;
    transition: max-height 0.5s ease, padding 0.5s ease;
}

.conteudoCont>div.active {
    max-height: 10000000000px; /* para a div alcançar o texto */
    padding-bottom: 20px;
}


/* texto escondido */

/* texto escondido por padrão */
.textoEscondido {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: opacity 0.3s ease 0.2s;
    margin-top: -7%; /* para alcançar o paragrafo de cima */
}

/* texto aparece quando a função da div (active) for ativada */
.conteudoCont>div.active .textoEscondido {
    opacity: 1;
    max-height: 50000000000px; /* para o texto poder aumentar livremente */
    transition: all 0.4s ease;
}


/* personalização de cada card */

.conteudo1,
.conteudo8 {
    background-color: #84ADE6;
}

.conteudo2,
.conteudo9 {
    background-color: #919191;
}

.conteudo3,
.conteudo10 {
    background-color: #FFFFFF;
}

.conteudo4,
.conteudo11 {
    background-color: #233D7F;
}

.conteudo5,
.conteudo12 {
    background-color: #FFEA00;
}

.conteudo6 {
    background-color: #F9F2AC;
}

.conteudo7 {
    background-color: #233D7F;
}

.conteudo3 p,
.conteudo10 p,
.conteudo5 p,
.conteudo12 p,
.conteudo6 p {
    color: #000000;
}

.conteudo1,
.conteudo2,
.conteudo3,
.conteudo4,
.conteudo5,
.conteudo6,
.conteudo7,
.conteudo8,
.conteudo9,
.conteudo10,
.conteudo11,
.conteudo12 {
    min-height: 150px;
    width: 100%;
    border-radius: 20px;
}

/* rodapé */

.footer {
    background-color: transparent;
    color: #f1f1f1;
    text-align: center;
    padding: 20px;
    font-size: 14px;
    margin-top: 60px;
}

.footer-container {
    justify-content: end;
    max-width: 800px;
    margin: 0 auto;
}

@media screen and (min-width: 720px) {
    .title {
        color: white;
        font-size: 60px;
        font-weight: 900;
    }

    .subtitle {
        font-size: 32px !important;
        font-weight: 700 !important;
    }

    .conteudoCont {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        grid-auto-rows: auto;
        gap: 20px;
        padding: 20px;
        border-radius: 5%;
    }

    /* ----- Linha 1 ----- */
    .conteudo1 {
        grid-column: 1 / 3;
        /* colunas 1 e 2 */
        grid-row: 1;
        background-color: #84ADE6;
    }

    .conteudo2 {
        grid-column: 3 / 5;
        /* colunas 3 e 4 */
        grid-row: 1;
        background-color: #919191;
    }

    /* ----- Linha 2 ----- */
    .conteudo3 {
        grid-column: 1 / 2;
        grid-row: 2;
        background-color: #FFFFFF;
    }

    .conteudo4 {
        grid-column: 2 / 3;
        grid-row: 2;
        background-color: #233D7F;
    }

    .conteudo5 {
        grid-column: 3 / 5;
        grid-row: 2;
        background-color: #FFEA00;
    }

    /* ----- Linha 3 ----- */
    .conteudo6 {
        grid-column: 1 / 3;
        grid-row: 3;
        background-color: #F9F2AC;
    }

    .conteudo7 {
        grid-column: 3 / 5;
        grid-row: 3;
        background-color: #233D7F;
    }

    /* ----- Linha 4 ----- */
    .conteudo8 {
        grid-column: 1 / 3;
        grid-row: 4;
        background-color: #84ADE6;
    }

    .conteudo10 {
        grid-column: 3 / 4;
        grid-row: 4;
        background-color: #FFFFFF;
    }

    .conteudo11 {
        grid-column: 4 / 5;
        grid-row: 4;
        background-color: #233D7F;
    }

    /* ----- Linha 5 ----- */
    .conteudo9 {
        grid-column: 1 / 3;
        grid-row: 5;
        background-color: #919191;
    }

    .conteudo12 {
        grid-column: 3 / 5;
        grid-row: 5;
        background-color: #FFEA00;
    }

    /* interatividade */

    .conteudoCont>div {
        cursor: pointer;
        position: relative;
        transition: .5s cubic-bezier(0.05, 0.61, 0.41, 0.95);
        opacity: 0.85;
    }

    .conteudoCont>div:not(.active) {
        transform: scale(1);
    }

    .conteudoCont:has(.active)>div:not(.active) {
        transform: scale(0.9);
        opacity: 0.5;
        filter: blur(10px);
    }

    .conteudoCont>div.active {
        position: absolute;
        width: 200%; /* aumenta o card */
        transform: scale(1.05);
        max-width: 900px; /* limite para nao vazar do body */
        border-radius: 20px;
        opacity: 1;
        z-index: 10; /* sobrepõe tudo */
        left: 4%;
        height: auto;
    }

    .conteudo11.active {
        transform: scale(1.05) translateX(-50%);
        left: -105% !important;
    }

    /* para os cards da direita nao vazar da tela */
    .conteudo2.active,
    .conteudo5.active,
    .conteudo7.active,
    .conteudo12.active {
        transform: scale(1.05) translateX(-50%);
        left: -42% !important;
    }

    .conteudo1,
    .conteudo2,
    .conteudo3,
    .conteudo4,
    .conteudo5,
    .conteudo6,
    .conteudo7,
    .conteudo8,
    .conteudo9,
    .conteudo10,
    .conteudo11,
    .conteudo12 {
        min-height: 150px;
        height: auto;
        width: 100%;
        border-radius: 20px;
        overflow: hidden;
    }

.titleCont img {
    height: 80px;
}
}



