/* 
1. Default styles
2. Hero
3. Testimonials
4. Points
5. Invite
6. Footer
7. RESPOSIVE
*/


/* 1. Default styles */

html{
    overflow-x: hidden;
}

.white{
    color: #ffffff;
}

.pink {
    color: #FC237A;
}

.blue {
    color: #0085B1;
}

.yellow {
    color: #FFA601;
}

.bg-blue {
    background-color: #0085B1;
    padding: 50px 0;
    margin: 100px 0 0 0 !important;
}

.bg-green {
    background-color: #14936F;
    padding: 50px 0;
    margin: 0 !important;
}

.bg-grey{
    background-color: #707070;
}

.bg-pink{
    background-color: #FC237A;
}

body {
    margin: 0;
    font-family: "Montserrat", sans-serif !important;
}

p {
    color: #707070;
}

.pink-header {
    color: #FC237A;
}

.blue-header {
    color: #0085B1;
}

.yellow-header {
    color: #FFA601;
}

/* 2. Hero */
.hero {
    background-image: url('../img/hero-bg.png');
    background-size: cover;
    background-repeat: no-repeat;
    height: 1100px;
    display: flex;
    justify-content: end;
    align-items: center;
    color: #ffffff;
    position: relative; /* Adiciona posição relativa para o posicionamento absoluto do SVG */
}

.hero .logo {
    position: absolute; /* Posicionamento absoluto para o SVG */
    top: 64px; /* Posição vertical */
    left: 50%; /* Centralizar horizontalmente */
    transform: translateX(-50%); /* Centralizar horizontalmente */
}

.hero .hopebox-overlay{
    position: absolute; /* Posicionamento absoluto para o SVG */
    bottom: 64px; /* Posição vertical */
    left: 20%; /* Centralizar horizontalmente */
    transform: translateX(-50%); /* Centralizar horizontalmente */
    z-index: 9999;
}

.hero h1 {
    font-size: 40px;
    font-weight: 450;
    letter-spacing: 0.5px;
    position: relative;
    bottom: 140px;
    right: 100px;
    border-radius: 43px;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 0.1%, #000 235.26%);
    padding: 25px;
}



/* 3. Testimonials */

.wrapper {
    background-color: #ffffff;
    position: relative;
    width: 80vw;
    max-width: 90em;
    min-height: 25em;
    border-radius: 0.6em;
    transform: translate(-50%, -22%);
    left: 50%;
    box-shadow: 0px 0.5em 3em rgba(1, -52, 39, 0.15);
    display: flex;
    transition: all 0.3s ease; /* Adiciona transição para alterações */
}

.container-projetos::after {
    content: '';
    background-color: #FC237A;
    height: 4px;
    width: 100px;
    display: block;
    margin: 0 auto;
    transition: all 0.3s ease; /* Adiciona transição para alterações */
}

.testimonial-container {
    width: 85%;
    height: 100%;
    position: relative;
    margin: auto;
    padding: 1.8em 1.2em;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    transition: all 0.3s ease; /* Adiciona transição para alterações */
}

.wrapper button {
    font-size: 2.3em;
    height: 2.2em;
    width: 2.2em;
    background-color: #ffffff;
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    border: none;
    color: #FC237A;
    box-shadow: 0 0 1em rgba(1, 17, 39, 0.25);
    cursor: pointer;
    border-radius: 50%;
    transition: all 0.3s ease; /* Adiciona transição para alterações */
}

button#next {
    right: -1.1em;
    transition: all 0.3s ease; /* Adiciona transição para alterações */
}

button#prev {
    left: -1.1em;
    transition: all 0.3s ease; /* Adiciona transição para alterações */
}

.testimonial-container p {
    color: #707070;
    text-align: left;
    font-size: 1.5em;
    line-height: 2em;
    letter-spacing: 0.05em;
    margin: 0 0 0 165px;
    transition: all 0.3s ease; /* Adiciona transição para alterações */
}

.testimonial-container img {
    display: block;
    margin: 1.5em auto 1.25em auto;
    border-radius: 10%;
    width: 24.4em;
    transition: all 0.3s ease; /* Adiciona transição para alterações */
}

.testimonial-container h3 {
    color: #2d3d67;
    font-size: 1em;
    text-align: center;
    transition: all 0.3s ease; /* Adiciona transição para alterações */
}

.testimonial-container h6 {
    color: #bcc4da;
    font-size: 0.9em;
    letter-spacing: 0.03em;
    font-weight: 400;
    text-align: center;
    transition: all 0.3s ease; /* Adiciona transição para alterações */
}

.testimonial-container.fade-in {
  opacity: 0;
  transition: opacity 0.3s ease-in-out; /* Duração e curva de transição */
}

.testimonial-container.fade-in img,
.testimonial-container.fade-in p {
  opacity: 1;
}

@media screen and (max-width: 650px) {
    .wrapper {
        font-size: 14px;
    }
}

/* 4. Points */

.points-wrapper{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    margin-top: 100px;
}

.about-wrapper{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

.points-content{
    margin: 0 50px 0 0;
    font-size: 1.375rem;
}
.points-content h2{
    text-align: center;
    margin-bottom: 10px;
    font-size: 2.25rem;
}

.points-image img{
    max-width: 420px;
    border-radius: 10%;
}

.points-reverse{
    margin: 0 0 0 50px;
}

.row-reverse{
    flex-direction: row-reverse;
}

.about{
    color: #ffffff;
}

/* 5. Invite */

.invite-section{
border-radius: 0 0 10% 10%;
    padding: 150px 0;
}

.invite-section {
    position: relative;
}

.invite-section img {
    position: absolute;
    bottom: 0;
    right: 0;
}

.invite-container{
    display: flex;
    align-items: center;
    justify-content: center;
}

.invite-content{
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: 1.375rem;
    width: 80%;
}

/* 6. Footer */

.footer-wrapper{
    display: flex;
    align-items: center;
    flex-direction: column;
    text-align: center;
    padding: 25px 0;
}

.footer-donation img{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    max-width: 200px;
}

.footer-social {
    display: flex;
    flex-direction: row;
    justify-content: center;
}

.footer-social img {
    max-width: 38px;
    margin: 20px 5px 20px 20px;
}

/* 7. RESPOSIVE */
@media (max-width: 1248px){
    .testimonial-container p{
        margin: 0 0 0 30px;
        font-size: 1.4em;
        text-align: left;
    }
}

@media (max-width: 1024px){
    .testimonial-container p{
       font-size: 1.2em; 
    }
    .testimonial-container img {
        width: 21.4em;
    }
}

@media (max-width: 830px){
    .testimonial-container{
        flex-direction: column-reverse;
    }

    .points-wrapper{
        flex-direction: column-reverse;
    }
    .points-content{
        text-align: center;
        margin: 30px 0 0 0;
    }

    .about-wrapper {
    flex-direction: column-reverse;
    }
}

@media (max-width: 768px){
    .hero h1{
        position: static;
        margin: 0 auto;
        background: linear-gradient(180deg, rgb(0 0 0 / 41%) 0.1%, #000 235.26%);
    }
}
@media (max-width: 425px){
    .hero h1 {
    font-size: 29px;
    }

    .testimonial-container img{
        width: 18.4em;
    }
    .points-image img{
        max-width: 310px;
    }
    .invite-section img {
        max-width: 200px;
    }
    .footer-whatsapp, .footer-instagram{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        margin: 8px;
    }
}

@media (max-width: 320px){
    .testimonial-container img{
        width: 14.4em;
    }
}