@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@200..800&display=swap');

.experience-panel { background:#ffffff; padding:3rem; border-radius:20px; box-shadow:0 10px 40px rgba(0,0,0,0.08); border:1px solid #e5e7eb; }
.experience-panel h3 { font-size:2rem; font-weight:800; color:#111827; margin:0 0 1rem; font-family:var(--fonte-titulos); }
.xp-intro { color:#6b7280; margin-bottom:1.2rem; }
.xp-block { margin-top:1.4rem; }
.xp-block h4 { font-size:1.3rem; font-weight:800; color:#111827; display:flex; align-items:center; gap:.6rem; margin-bottom:.6rem; }
.xp-list, .xp-tips { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:.6rem; }
.xp-list li, .xp-tips li { color:#374151; font-size:1.3rem; display:flex; gap:.6rem; align-items:flex-start; }
.xp-list i { color:#8b5cf6; }
.xp-example { margin-top:1.4rem; border:1px solid #e5e7eb; border-radius:12px; background:#f8fafc; padding:1.2rem; }
.xp-example h4 { font-size:1.3rem; font-weight:800; color:#111827; display:flex; align-items:center; gap:.6rem; margin:0 0 .6rem; }
.xp-example blockquote { margin:0; color:#4b5563; font-size:1.25rem; line-height:1.5; }

*{
    margin: 0;
    padding: 0;
    outline: 0;
    box-sizing: border-box;
    list-style: none;
    border-collapse: collapse;
    text-decoration: none;
}

html{
    font-size: 62.5%;
}

body{
    font-size: 1.8rem;
    width: 100%;
    font-family: var(--fonte-paragrafos);
    background: var(--cor-branco);
}

h1, h2, h3, h4, h5, h6{
    font-family: var(--fonte-titulos) !important;
}

:root{
    /* --cor-principal: #a78bfa; */
    --cor-principal: #9152d9;
    /* --cor-principal-linear: linear-gradient(90deg, rgba(167,139,250,1) 26%, rgba(141,103,255,1) 77%); */
    --cor-principal-linear: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    --cor-secundaria: #8de0a6;
    --cor-preto: black;
    --cor-branco: #fff;
    --cor-cinza: #343746;
    /* --fonte-titulos: 'Poppins', sans-serif; */
    --fonte-titulos: "Manrope", sans-serif;
    --fonte-paragrafos: 'Montserrat', sans-serif;
}

.sucesso, .erro, .info{
    border-radius: 1rem;
    padding: 1rem 2rem;
    font-weight: bold;
    width: 100%;
    text-align: center;
}

.sucesso{
    color: var(--cor-preto);
    background: #2ff15d;
}

.erro{
    color: var(--cor-branco);
    background: #e71717;
}

.info{
    color: var(--cor-preto);
    background: #0aa2e9;
}

/* Container Home - Início */

.container-home{
    width: 100%;
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    min-height: 80vh;
    padding: 4rem 0;
    border-bottom-left-radius: 10rem;
    border-bottom-right-radius: 10rem;
}

.container-home>div{
    width: 90%;
    margin: 0 auto;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    gap: 20rem;
}

.container-home p i{
    color: #24ab71;
}

.container-home span{
    color: #fb249a;
    font-weight: bold;
    padding: 1rem 1rem;
    border-radius: 2rem;
    z-index: 100000;    
}

.container-home .typewriter{
    background: linear-gradient(135deg, #ec4899 0%, #f472b6 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    filter: brightness(1.3) saturate(1.4);
}

.container-home img{
    max-width: 70rem;
}

.container-home>img{
    position: absolute;
    top: 10rem;
    z-index: 1;
}

.pesquisa{
    max-width: 70rem;
    display: flex;
    flex-flow: column nowrap;
    gap: 2rem;
    justify-content: center;
    align-items: flex-start;
}

.pesquisa h1{
    font-size: 5.5rem;
    color: var(--cor-branco);
    font-family: 'Poppins', sans-serif !important;
    line-height: 1.3;              
    font-weight: 700;
    letter-spacing: -0.02em;
    width: 100%;
}

/* Animação de digitação com cursor */
.typewriter {
    display: inline;
    color: #ffffff;
    font-weight: 900;
    white-space: nowrap;
}

.cursor {
    display: inline;
    color: #ec4899 !important;
    font-weight: 100;
    font-size: inherit;
    font-family: Arial, sans-serif !important;
    animation: blink 0.7s step-end infinite;
    -webkit-text-fill-color: #ec4899 !important;
}

@keyframes blink {
    from, to { 
        opacity: 1;
    }
    50% { 
        opacity: 0;
    }
}

.pesquisa p{
    display: flex;
    gap: 0.5rem;
    color: var(--cor-branco);
    font-weight: bold;
}

.pesquisa>p{
    text-align: left;
}

.pesquisa>div{
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-flow: row nowrap;
    gap: 4rem;
}

/* Garantir que botões fiquem em row em telas grandes */
.pesquisa>div:last-child{
    flex-flow: row nowrap !important;
}

@media(min-width: 961px){
    .pesquisa>div:last-child{
        flex-flow: row nowrap !important;
    }
}

.pesquisa>div>div{
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-flow: column nowrap;
    gap: 2.5rem;
}

.pesquisa>div a{
    padding: 1.4rem 2.8rem;
    background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
    color: #6d28d9;
    font-weight: 700;
    border-radius: 9999px;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex !important;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    z-index: 100000;
    font-size: 2rem;
    animation: pulse 2s infinite;
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(10px);
    border: 2px solid rgba(255,255,255,0.3);
    box-shadow:
        0 8px 32px rgba(0,0,0,0.12),
        0 0 0 1px rgba(255,255,255,0.1),
        inset 0 1px 0 rgba(255,255,255,0.6);
    text-decoration: none;
    min-width: 200px;
    visibility: visible !important;
    opacity: 1 !important;
}

.pesquisa>div a::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(139, 92, 246, 0.1), transparent);
    transition: left 0.8s ease;
    border-radius: 9999px;
}

.pesquisa>div a:hover::before {
    left: 100%;
}

.pesquisa>div a:last-child{
    background: rgba(255,255,255,0.1);
    color: #ffffff;
    border-color: rgba(255,255,255,0.3);
    box-shadow: 
        0 8px 32px rgba(0,0,0,0.1),
        inset 0 1px 0 rgba(255,255,255,0.2);
}

.pesquisa>div a:hover{
    transform: translateY(-6px) scale(1.05);
    box-shadow: 
        0 25px 50px rgba(139, 92, 246, 0.25),
        0 0 0 1px rgba(255,255,255,0.3),
        inset 0 1px 0 rgba(255,255,255,0.9);
    color: #4c1d95;
    border-color: rgba(139, 92, 246, 0.4);
    background: linear-gradient(135deg, #ffffff 0%, #f1f5f9 100%);
    animation: none;
}

.pesquisa>div a:last-child:hover{
    background: rgba(255,255,255,0.2);
    transform: translateY(-4px) scale(1.02);
    box-shadow: 
        0 20px 40px rgba(0,0,0,0.15),
        inset 0 1px 0 rgba(255,255,255,0.3);
    border-color: rgba(255,255,255,0.5);
}

.pesquisa>div a:active {
    transform: translateY(-2px) scale(0.98);
}

@keyframes scale {
    0%{
        transform: scale(1.05);
    }
    50%{
        transform: scale(1.1);
    }
    100%{
        transform: scale(1.05);
    }
}

/* Container Home - Fim */

/* Container Bio - Início */

.container-bio{
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 70vh;
    padding: 3rem;
    background: #eee;
}

.container-bio span{
    height: 0.3rem;
    background: var(--cor-cinza);
    border-radius: 1rem;
    width: 80%;
    margin: 0 auto;
}

.container-bio>div{
    /* max-width: 90rem; */
    width: 100%;
    /* background: var(--cor-branco); */
    /* box-shadow: 0.2rem 0.2rem 2rem rgba(0, 0, 0, 0.4); */
    padding: 3rem;
    display: flex;
    /* transform: translateY(-5rem); */
    flex-flow: row nowrap;
    gap: 6rem;
    justify-content: center;
    align-items: center;
}

.bio{
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-flow: column nowrap;
    gap: 2rem;
    max-width: 60rem;
    text-align: left;
}

.bio a{
    color: var(--cor-branco);
    padding: 1.4rem 2.8rem;
    background: linear-gradient(135deg, var(--cor-preto) 0%, #1a202c 100%);
    border-radius: 16px;
    font-weight: 700;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    animation: scale 1s infinite;
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(10px);
    box-shadow: 
        0 8px 32px rgba(0,0,0,0.12),
        0 0 0 1px rgba(255,255,255,0.1),
        inset 0 1px 0 rgba(255,255,255,0.2);
}

.bio a::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.6s ease;
}

.bio a:hover::before {
    left: 100%;
}

.bio a:hover{
    transform: translateY(-4px) scale(1.02);
    box-shadow: 
        0 20px 40px rgba(0,0,0,0.15),
        0 0 0 1px rgba(255,255,255,0.2),
        inset 0 1px 0 rgba(255,255,255,0.3);
}

.bio a:active {
    transform: translateY(-2px) scale(0.98);
}

/* Container Bio - Fim */

/* Container Métricas - Início */

.container-metricas{
    width: 100%;
    /* border-bottom: 0.2rem solid var(--cor-principal); */
    padding: 2rem 0;
    min-height: 30vh;
    display: flex;
    justify-content: center;
    align-items: center;
}

.container-metricas>div{
    margin: 0 auto;
    width: 90%;
}

.metricas{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 10rem;
}

.metrica{
    max-width: 20rem;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    text-align: center;
    gap: 1rem;
    font-weight: bold;
}

.metrica i{
    background: var(--cor-principal-linear);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.metrica h2{
    font-size: 3rem;
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Container Métricas - Fim */

/* Container Serviços - Início */

.container-servicos{
    width: 100%;
    padding: 5rem 0;
    min-height: 60vh;
    display: flex;
    justify-content: center;
    align-items: center;
    /* border-top: 0.2rem solid var(--cor-principal); */
}

.container-servicos>div{
    margin: 0 auto;
    width: 90%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: column nowrap;
    gap: 4rem;
}

.container-servicos h2{
    font-size: 4rem;
    text-align: center;
}

.container-servicos h3{
    font-size: 3rem;
    text-align: center;
}

.servicos{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 3rem;
    text-align: center;
}

.servicos img{
    max-width: 10rem;
}

.servico{
    border-radius: 2rem;
    box-shadow: 0.2rem 0.2rem 2rem rgba(0, 0, 0, 0.3);
    padding: 2rem;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: column nowrap;
    gap: 2rem;
    position: relative;
    overflow: hidden;
    transition: all 0.4s ease;
}

.servico::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #8b5cf6 0%, #ec4899 100%);
    transform: scaleX(0);
    transition: transform 0.4s ease;
}

.servico:hover::before{
    transform: scaleX(1);
}

/* Container Serviços - Fim */

/* Container Instruções - Início */

.container-instrucoes{
    width: 100%;
    background: var(--cor-principal-linear);
    padding: 3rem 0;
    min-height: 50vh;
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--cor-branco);
}

.container-instrucoes>div{
    margin: 0 auto;
    width: 90%;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    gap: 4rem;
}

.instrucoes{
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: flex-start;
    gap: 5rem;
}

.container-instrucoes h2{
    font-size: 4rem;
    text-align: center;
}

.instrucao{
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    gap: 2rem;
    max-width: 20rem;
    text-align: center;
    font-weight: bold;
}

.instrucao img{
    max-width: 5rem;
}

/* Container Instruções - Fim */

/* Container Vale a Pena - Início */

.container-vale-a-pena{
    width: 100%;
    padding: 2rem;
    min-height: 80vh;
    display: flex;
    justify-content: center;
    align-items: center;
    /* border-top: 0.2rem solid var(--cor-principal); */
}

.container-vale-a-pena>div{
    width: 90%;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5rem;
}

.container-vale-a-pena>div>div{
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: flex-start;
    gap: 2rem;
    max-width: 65rem;
}

.container-vale-a-pena h2,
.container-vale-a-pena p {
    color: var(--cor-preto);
}

.container-vale-a-pena p:nth-of-type(1){
    text-align: justify;
}

.container-vale-a-pena p i{
    color: #24ab71;
}

/* Container Vale a Pena - Fim */

/* Container Perguntas - Início */

.container-perguntas{
    width: 100%;
    display: flex;
    flex-flow: column nowrap;
    align-items: flex-start;
    /* color: var(--cor-branco); */
    color: var(--cor-preto);
    gap: 2rem;
    /* border-top: 0.2rem solid var(--cor-principal); */
    padding: 4rem 0;
    background: #eee;
}

.container-perguntas>div{
    width: 90%;
    margin: 0 auto;
    display: flex;
    flex-flow: column nowrap;
    gap: 3rem;
}

.container-perguntas h2{
    color: var(--cor-preto);
    font-size: 4rem;
    text-align: center;
}

.pergunta{
    border: 0.2rem solid #f9f8f8;
    position: relative;
    overflow: hidden;
}

.pergunta::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #8b5cf6 0%, #ec4899 100%);
    transform: scaleX(0);
    transition: transform 0.4s ease;
    z-index: 1;
}

.pergunta:hover::before{
    transform: scaleX(1);
}

.pergunta h3{
    padding: 3rem;
    border-bottom: 0.2rem solid var(--cor-branco);
    position: relative;
    cursor: pointer;
    background: #f9f8f8;
}

.pergunta h3 i{
    position: absolute;
    right: 2rem;
    top: 3rem;
}

.pergunta>p{
    font-size: 1.7rem;
    transition: .3s;
    height: 0rem;
    overflow: hidden;
    background: #f9f8f8;
}

.pergunta h3 .fa-minus{
    display: none;
}

.pergunta h3  i.ocultar{
    display: none;
}

.pergunta i.desocultar{
    display: inline-block;
}

.pergunta p.desocultar{
    height: 10rem;
    padding: 3rem 2rem;
}

/* Container Perguntas - Fim */

/* Container Filtro - Início */

.container-filtro{
    width: 100%;
    padding: 4rem 0;
    background: #eee;
}

.container-filtro>div{
    width: 90%;
    margin: 0 auto;
    display: flex;
    flex-flow: column nowrap;
    gap: 3rem;
    justify-content: center;
    align-items: center;
}

.container-filtro>div>a{
    max-width: 50rem;
    padding: 1.4rem 2.8rem;
    font-size: 2rem;
    background: var(--cor-principal-linear);
    text-align: center;
    color: var(--cor-branco);
    font-weight: 700;
    border-radius: 16px;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    animation: scale 1s infinite;
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(10px);
    box-shadow: 
        0 8px 32px rgba(0,0,0,0.12),
        0 0 0 1px rgba(255,255,255,0.1),
        inset 0 1px 0 rgba(255,255,255,0.2);
}

.container-filtro>div>a::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.6s ease;
}

.container-filtro>div>a:hover::before {
    left: 100%;
}

.container-filtro>div>a:hover{
    transform: translateY(-4px) scale(1.02);
    box-shadow: 
        0 20px 40px rgba(0,0,0,0.15),
        0 0 0 1px rgba(255,255,255,0.2),
        inset 0 1px 0 rgba(255,255,255,0.3);
}

.container-filtro>div>a:active {
    transform: translateY(-2px) scale(0.98);
}

.filtro{
    width: 100%;
    display: flex;
    flex-flow: row wrap;
    gap: 2rem;
    justify-content: center;
    align-items: center;
}

.filtro label{
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 2rem;
    font-weight: bold;
}

.filtro input:nth-of-type(1){
    padding: 0.5rem 1rem;
    border: 0.15rem solid var(--cor-cinza);
    border-radius: 0.5rem;
    font-size: 1.7rem;
    background: var(--cor-branco);
}

.filtro select{
    padding: 1rem 1rem;
    border-radius: 1rem;
    border: 0.15rem solid var(--cor-cinza);
    background: var(--cor-branco);
}

.filtro option{
    background: var(--cor-branco);
}

.filtro input:nth-of-type(2){
    background: linear-gradient(135deg, var(--cor-cinza) 0%, #2d3748 100%);
    color: var(--cor-branco);
    font-weight: 700;
    font-size: 1.6rem;
    padding: 1.4rem 2.8rem;
    cursor: pointer;
    border: none;
    border-radius: 16px;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(10px);
    box-shadow: 
        0 8px 32px rgba(0,0,0,0.12),
        0 0 0 1px rgba(255,255,255,0.1),
        inset 0 1px 0 rgba(255,255,255,0.2);
}

.filtro input:nth-of-type(2)::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.6s ease;
}

.filtro input:nth-of-type(2):hover::before {
    left: 100%;
}

.filtro input:nth-of-type(2):hover{
    transform: translateY(-4px) scale(1.02);
    box-shadow: 
        0 20px 40px rgba(0,0,0,0.15),
        0 0 0 1px rgba(255,255,255,0.2),
        inset 0 1px 0 rgba(255,255,255,0.3);
}

.filtro input:nth-of-type(2):active {
    transform: translateY(-2px) scale(0.98);
}

.perfis-home{
    width: 100%;
    display: flex
;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    gap: 10rem;
}

.perfil{
    display: flex
;
    max-width: 15rem;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    color: var(--cor-cinza);
    transition: .3s;
    z-index: 10;
}

.perfil h2{
    font-size: 1.5rem;
    white-space: nowrap;
    overflow: hidden; 
    text-overflow: ellipsis;
    text-align: center;
}

.perfil>div{
    position: relative;
}

.perfil>div img:nth-child(1){
    width: 15rem;
    z-index: 100;
}

.perfil p{
    color: #01b576;
    font-weight: bold;
}

.perfil>div img:nth-child(2){
    width: 13rem;
    position: absolute;
    top: 1.3rem;
    left: 0.8rem;
    z-index: -11;
}

.perfil>div img:nth-of-type(3){
    width: 25rem;
    position: absolute;
    top: 1.3rem;
    left: -5rem;
    z-index: -100;
}

.perfil p{
    color: #01b576;
    font-weight: bold;
}

.nacionalidade{
    background: #717171;
    position: absolute;
    bottom: 1.5rem;
    right: -3rem;
    z-index: 2;
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.nacionalidade img{
    width: 2rem !important;
}

.perfil:hover{
    transform: scale(1.05);
}

/* Container Filtro - Fim */

/* Container Sobre - Início */

.container-sobre{
    width: 100%;
    padding: 3rem 0;
    /* border-top: 0.2rem solid var(--cor-principal); */
}

.container-sobre>div{
    width: 90%;
    margin: 0 auto;
    display: flex;
    flex-flow: row wrap;
    gap: 3rem;
    justify-content: center;
    align-items: flex-start;
}

.sobre{
    display: flex;
    flex-flow: column nowrap;
    gap: 2rem;
    width: 100%;
    justify-content: center;
    align-items: center;
}

.sobre>div{
    display: flex;
    width: 100%;
    flex-flow: row nowrap;
    gap: 2rem;
    justify-content: center;
    align-items: flex-start;
}

.sobre div div{
    max-width: 50rem;
}

/* .sobre span{
    color: var(--cor-principal);
    font-weight: bold;
} */

.sobre a{
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    transition: .3s;
    display: inline-block;
    font-weight: bold;
}

.sobre a:hover{
    transform: scale(1.02);
}

/* Container Sobre - Fim */

/* Container Banner - Início */

.container-banner {
    width: 100%;
    margin: 4rem 0;
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    border-radius: 0;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 300px;
    overflow: hidden;
}

.container-banner > img {
    position: absolute;
    top: 0;
    width: 350px;
    height: 100%;
    object-fit: cover;
    object-position: center;
    z-index: 1;
}

.container-banner > img:first-child {
    left: 0;
}

.container-banner > img:last-child {
    right: 0;
}

.container-banner > div {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 2rem;
    max-width: 600px;
 
}

.container-banner h2 {
    color: #fff;
    font-size: 3rem;
    font-weight: 800;
    margin: 0;
}

.banner-subtitle {
    color: rgba(255, 255, 255, 0.9);
    font-size: 1.6rem;
    font-weight: 500;
    margin: 0;
    text-align: center;
    max-width: 500px;
}

.banner-buttons {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
    justify-content: center;
}

.btn-banner {
    display: inline-flex;
    align-items: center;
    gap: 0.8rem;
    padding: 1.4rem 2.8rem;
    border-radius: 9999px;
    font-weight: 700;
    font-size: 2rem;
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border: 2px solid rgba(255,255,255,0.3);
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(10px);
    animation: pulse 2s infinite;
}

.btn-banner::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.6s ease;
}

.btn-banner:hover::before {
    left: 100%;
}

.btn-buy {
    background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
    color: #6d28d9;
    border-color: rgba(255,255,255,0.3);
    box-shadow: 
        0 8px 32px rgba(0,0,0,0.12),
        0 0 0 1px rgba(255,255,255,0.1),
        inset 0 1px 0 rgba(255,255,255,0.6);
    animation: pulse 2s infinite;
}

.btn-buy:hover {
    transform: translateY(-6px) scale(1.05);
    box-shadow: 
        0 25px 50px rgba(139, 92, 246, 0.25),
        0 0 0 1px rgba(255,255,255,0.3),
        inset 0 1px 0 rgba(255,255,255,0.9);
    color: #4c1d95;
    animation: none;
    border-color: rgba(139, 92, 246, 0.4);
    background: linear-gradient(135deg, #ffffff 0%, #f1f5f9 100%);
}

.btn-buy:active {
    transform: translateY(-2px) scale(0.98);
}

@keyframes pulse {
    0% {
        transform: scale(1);
        box-shadow: 
            0 8px 32px rgba(0,0,0,0.12),
            0 0 0 1px rgba(255,255,255,0.1),
            inset 0 1px 0 rgba(255,255,255,0.6);
    }
    50% {
        transform: scale(1.02);
        box-shadow: 
            0 12px 40px rgba(139, 92, 246, 0.15),
            0 0 0 1px rgba(255,255,255,0.2),
            inset 0 1px 0 rgba(255,255,255,0.8);
    }
    100% {
        transform: scale(1);
        box-shadow: 
            0 8px 32px rgba(0,0,0,0.12),
            0 0 0 1px rgba(255,255,255,0.1),
            inset 0 1px 0 rgba(255,255,255,0.6);
    }
}

.btn-sell {
    background: rgba(255,255,255,0.1);
    color: #ffffff;
    border-color: rgba(255,255,255,0.3);
    box-shadow: 
        0 8px 32px rgba(0,0,0,0.1),
        inset 0 1px 0 rgba(255,255,255,0.2);
}

.btn-sell:hover {
    background: rgba(255,255,255,0.2);
    transform: translateY(-4px) scale(1.02);
    box-shadow: 
        0 20px 40px rgba(0,0,0,0.15),
        inset 0 1px 0 rgba(255,255,255,0.3);
    border-color: rgba(255,255,255,0.5);
}

.btn-sell:active {
    transform: translateY(-2px) scale(0.98);
}

@media (max-width: 992px) {
    .container-banner {
        min-height: 250px;
}
    .container-banner > img {
        width: 200px;
        height: 100%;
    }
    .container-banner > img:first-child {
        left: 0;
    }
    .container-banner > img:last-child {
        right: 0;
    }
    .container-banner > div {
        padding: 0 1rem;
    }
    .container-banner h2 {
        font-size: 2.2rem;
    }
    .banner-subtitle {
        font-size: 1.4rem;
    }
    .banner-buttons {
        flex-direction: column;
        gap: 1rem;
    }
    .btn-banner {
        font-size: 1.5rem;
        padding: 1rem 2rem;
    }
}

@media (max-width: 480px) {
    .container-banner {
        min-height: 200px;
}
    .container-banner > img {
        width: 120px;
        height: 100%;
    }
    .container-banner > img:first-child {
        left: 0;
    }
    .container-banner > img:last-child {
        right: 0;
    }
    .container-banner h2 {
        font-size: 1.8rem;
    }
    .banner-subtitle {
        font-size: 1.2rem;
    }
}

/* Container Feedback - Início */

.container-feedback{
    width: 100%;
    padding: 3rem 0;
}

.container-feedback>div{
    width: 90%;
    margin: 0 auto;
    display: flex;
    flex-flow: row wrap;
    gap: 5rem;
    justify-content: center;
    align-items: flex-start;
}

.formulario-feedback{
    display: flex;
    max-width: 50rem;
    flex-flow: column nowrap;
    gap: 2.5rem;
    justify-content: center;
    align-items: flex-start;
}

.formulario-feedback form{
    display: flex;
    flex-flow: column nowrap;
    gap: 1.5rem;
    justify-content: center;
    align-items: flex-start;
    background: var(--cor-branco);
    padding: 1rem 2rem;
    border-radius: 1rem;
    box-shadow: 0.2rem 0.2rem 2rem rgba(0, 0, 0, 0.6);
}

.formulario-feedback form h2{
    display: flex;
    gap: 1rem;
}

.formulario-feedback form div{
    width: 100%;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    align-items: center;
}

.formulario-feedback form>span{
    width: 100%;
    background: var(--cor-cinza);
    border-radius: 1rem;
    height: 0.3rem;
}

.formulario-feedback form div input{
    padding: 0.5rem;
    border: 0.15rem solid var(--cor-cinza);
    border-radius: 0.5rem;
}

.formulario-feedback form div textarea{
    resize: none;
    padding: 0.5rem;
    border-radius: 0.5rem;
}

.formulario-feedback form>input{
    width: 100%;
    padding: 1.4rem 2rem;
    background: linear-gradient(135deg, var(--cor-cinza) 0%, #2d3748 100%);
    color: var(--cor-branco);
    font-weight: 700;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    border: none;
    font-size: 1.7rem;
    border-radius: 16px;
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(10px);
    box-shadow: 
        0 8px 32px rgba(0,0,0,0.12),
        0 0 0 1px rgba(255,255,255,0.1),
        inset 0 1px 0 rgba(255,255,255,0.2);
}

.formulario-feedback form>input::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.6s ease;
}

.formulario-feedback form>input:hover::before {
    left: 100%;
}

.formulario-feedback form>input:hover{
    transform: translateY(-4px) scale(1.02);
    box-shadow: 
        0 20px 40px rgba(0,0,0,0.15),
        0 0 0 1px rgba(255,255,255,0.2),
        inset 0 1px 0 rgba(255,255,255,0.3);
}

.formulario-feedback form>input:active {
    transform: translateY(-2px) scale(0.98);
}

.feedbacks{
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    gap: 3rem;
}

.feedback{
    display: flex;
    flex-flow: column nowrap;
    gap: 1.5rem;
    justify-content: center;
    align-items: flex-start;
    max-width: 60rem;
    font-size: 1.8rem;
}

.feedback strong{
    font-size: 1.8rem;
}

.feedback i{
    color: #f0bc4f;
}

.feedback>div{
    display: flex;
    gap: 2rem;
}

/* Container Feedback - Fim */

@media(max-width: 1450px){

    .container-home>div{
        gap: 1rem;
    }

    .container-home>div{
        flex-flow: row nowrap;
    }

    .imagem img{
        width: 100%;
    }

}

@media(max-width: 1300px){

    .container-home{
        min-height: 50vh;
    }

}

@media(max-width: 1100px){

    .container-home{
        min-height: 50vh;
    }

    .container-vale-a-pena>div{
        flex-flow: column nowrap;
    }

    .pergunta p.desocultar{
        height: 15rem;
    }

}

@media(max-width: 960px){

    .container-home>div{
        flex-flow: row wrap;
    }

    .pesquisa>div{
        justify-content: center;
        align-items: center;
    }

    .pesquisa>div:last-child{
        flex-flow: column nowrap !important;
        gap: 2rem;
        align-items: center;
        width: 100%;
    }

    .pesquisa>div a{
        width: 100%;
        max-width: 400px;
        justify-content: center;
        text-align: center;
        font-family: var(--fonte-titulos);
    }

    .pesquisa h1{
        text-align: center;
        font-family: var(--fonte-titulos);
    }

    .pesquisa>p{
        text-align: center;
        width: 95%;
        margin: 0 auto;
        font-family: var(--fonte-paragrafos);
    }

    .pesquisa{
        max-width: 48rem;
    }

    /* Garantir que todos os textos usem as fontes corretas */
    .pesquisa p,
    .pesquisa>div>div p{
        font-family: var(--fonte-paragrafos);
        text-align: center;
    }

    .pesquisa>div>div{
        align-items: center;
        text-align: center;
    }

}

@media(max-width: 900px){
    .container-bio>div{
        flex-flow: column nowrap;
        padding: 2rem 0;
    }

    .bio{
        max-width: 100%;
    }

    .metricas{
        flex-flow: row wrap;
        justify-content: center;
        align-items: center;
    }
}

@media(max-width: 700px){
    .servicos{
        grid-template-columns: repeat(1, 1fr);
    }
}

@media(max-width: 560px){
    .container-home img{
        width: 100%;
    }

    .container-home>img{
        top: 9rem
    }

    .container-vale-a-pena img{
        width: 100%;
    }

    .sobre>div{
        flex-flow: column nowrap;
    }

    .bio{
        align-items: center;
        justify-content: center;
    }

    .pergunta p.desocultar{
        height: 20rem;
    }
}

@media(max-width: 505px){

    html{
        font-size: 50%;
    }

    .pesquisa h1{
        font-size: 4rem;
        text-align: center;
        font-family: var(--fonte-titulos);
    }

    .pesquisa h1 br {
        display: none;
    }

    .typewriter {
        display: block !important;
        margin-top: 1rem;
    }

    .imagem img{
        width: 100%;
    }

    .formulario-feedback form textarea, .formulario-feedback form input, .formulario-feedback{
        width: 100%;
    }

    /* Garantir botões visíveis e alinhados */
    .pesquisa>div:last-child{
        flex-flow: column nowrap;
        gap: 2rem;
        align-items: center;
        width: 100%;
        padding: 0 2rem;
    }

    .pesquisa>div a{
        width: 100%;
        max-width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        font-family: var(--fonte-titulos);
        font-size: 1.6rem;
        padding: 1.2rem 2.4rem;
    }

    /* Textos centralizados */
    .pesquisa>p,
    .pesquisa>div>div p{
        text-align: center;
        font-family: var(--fonte-paragrafos);
        width: 100%;
    }

    .pesquisa>div>div{
        align-items: center;
        text-align: center;
        width: 100%;
    }

}

@media(max-width: 370px){

    html{
        font-size: 37%;
    }

    .container-bio img{
        width: 100%;
    }
}

/* ===== NOVAS SEÇÕES MODERNAS ===== */

/* Seção de Estatísticas */
.container-stats {
    background: var(--cor-branco);
    padding: 8rem 0;
    position: relative;
}

.stats-grid {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 3rem;
}

.stat-item {
    display: flex;
    align-items: center;
    gap: 2rem;
    padding: 2rem;
    background: var(--cor-branco);
    border-radius: 12px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    transition: all 0.3s ease;
    border: 1px solid #e5e7eb;
}

.stat-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

.stat-icon {
    width: 6rem;
    height: 6rem;
    background: var(--cor-principal-linear);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.4rem;
    color: var(--cor-branco);
    flex-shrink: 0;
}

.stat-content h3 {
    font-size: 3rem;
    font-weight: 800;
    color: var(--cor-preto);
    margin-bottom: 0.5rem;
    font-family: var(--fonte-titulos);
}

.stat-content p {
    font-size: 1.4rem;
    color: var(--cor-cinza);
    font-weight: 500;
}

/* Seção de Contas em Destaque */
.container-featured {
    background: var(--cor-branco);
    padding: 8rem 0;
}

.featured-header {
    text-align: center;
    margin-bottom: 6rem;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 2rem;
}

.featured-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.8rem;
    background: linear-gradient(135deg, #8b5cf6, #ec4899);
    padding: 0.8rem 1.6rem;
    border-radius: 50px;
    color: var(--cor-branco);
    font-size: 1.4rem;
    font-weight: 600;
    margin-bottom: 2rem;
    box-shadow: 0 4px 15px rgba(139, 92, 246, 0.3);
}

.featured-badge i {
    color: #fbbf24;
    font-size: 1.6rem;
}

.featured-header h2 {
    font-size: 4.5rem;
    font-weight: 800;
    color: var(--cor-preto);
    margin-bottom: 1.5rem;
    font-family: var(--fonte-titulos);
}

.featured-header p {
    font-size: 1.8rem;
    color: var(--cor-cinza);
    font-weight: 500;
    margin-bottom: 3rem;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.featured-stats {
    display: flex;
    justify-content: center;
    gap: 4rem;
    margin-top: 3rem;
    flex-wrap: wrap;
}

.featured-stats .stat-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 1.5rem 2rem;
    background: var(--cor-branco);
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid #e2e8f0;
    transition: all 0.3s ease;
}

.featured-stats .stat-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}

.featured-stats .stat-number {
    font-size: 2.4rem;
    font-weight: 800;
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-family: var(--fonte-titulos);
}

.featured-stats .stat-label {
    font-size: 1.2rem;
    color: var(--cor-cinza);
    font-weight: 500;
}

/* Carrossel */
.carousel-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
    position: relative;
    margin-bottom: 4rem;
}

.carousel-wrapper {
    overflow: hidden;
    border-radius: 16px;
    position: relative;
}

.carousel-track {
    display: flex;
    transition: transform 0.5s ease;
    gap: 2rem;
}

.carousel-controls {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 100%;
    display: flex;
    justify-content: space-between;
    pointer-events: none;
    z-index: 2;
}

.carousel-btn {
    background: var(--cor-branco);
    border: 2px solid var(--cor-principal);
    color: var(--cor-principal);
    width: 5.5rem;
    height: 5.5rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    cursor: pointer;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    pointer-events: all;
    box-shadow: 0 8px 25px rgba(139, 92, 246, 0.15);
    backdrop-filter: blur(10px);
}

.carousel-btn:hover {
background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    color: var(--cor-branco);
    transform: scale(1.15);
    box-shadow: 0 12px 35px rgba(139, 92, 246, 0.25);
}

.carousel-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
    transform: none;
}

.carousel-dots {
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin-top: 3rem;
}

.carousel-dot {
    width: 1.4rem;
    height: 1.4rem;
    border-radius: 50%;
    background: #d1d5db;
    cursor: pointer;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
}

.carousel-dot::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    background: linear-gradient(135deg, var(--cor-principal) 0%, #7c3aed 100%);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.carousel-dot.active {
    background: linear-gradient(135deg, var(--cor-principal) 0%, #7c3aed 100%);
    transform: scale(1.3);
    box-shadow: 0 4px 15px rgba(139, 92, 246, 0.3);
}

.carousel-dot.active::before {
    width: 100%;
    height: 100%;
}

.account-card {
    background: var(--cor-branco);
    border-radius: 20px;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
    overflow: visible;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border: 1px solid #e5e7eb;
    flex: 0 0 calc(33.333% - 2rem);
    min-width: calc(33.333% - 2rem);
    position: relative;
    display: flex;
    flex-direction: column;
}

.account-card::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #8b5cf6 0%, #ec4899 100%);
    transform: scaleX(0);
    transition: transform 0.4s ease;
    z-index: 10;
}

.account-card:hover {
    box-shadow: 0 20px 40px rgba(139, 92, 246, 0.15);
    border-color: rgba(139, 92, 246, 0.3);
}

.account-card:hover::before{
    transform: scaleX(1);
}

.account-card:hover .phone-frame,
.account-card:hover .profile-pic,
.account-card:hover .screen-dots {
    transform: translate(-50%, -50%) scale(1.08);
}

.card-badge {
    position: absolute;
    top: 1rem;
    left: 1rem;
    background: linear-gradient(135deg, #fbbf24, #f59e0b);
    color: var(--cor-branco);
    padding: 0.4rem 0.8rem;
    border-radius: 20px;
    font-size: 1rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 0.4rem;
    z-index: 3;
    box-shadow: 0 2px 8px rgba(251, 191, 36, 0.3);
}

.card-badge i {
    font-size: 1.2rem;
}

.account-image {
    position: relative;
    width: 100%;
    aspect-ratio: 9 / 16;
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: visible;
    border-radius: 20px 20px 0 0;
    padding: clamp(2rem, 4vw, 3rem);
}
.screen-dots {
    position: absolute;
    width: clamp(18rem, 55vw, 28rem);
    height: clamp(18rem, 55vw, 28rem);
    object-fit: contain;
    z-index: 1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0.35;
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.image-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(45deg, rgba(0,0,0,0.1), rgba(255,255,255,0.1));
    z-index: 1;
}

.verification-badge {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background: #10b981;
    color: var(--cor-branco);
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    z-index: 3;
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.3);
}

.phone-frame {
    width: clamp(18rem, 48vw, 26rem);
    height: auto;
    object-fit: contain;
    z-index: 3;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.profile-pic {
    position: absolute;
    width: clamp(16rem, 40vw, 22rem);
    aspect-ratio: 220 / 481;
    border-radius: 24px;
    object-fit: cover;
    z-index: 2;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.05) inset;
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Responsividade para telas pequenas - phone-frame e profile-pic */
@media (max-width: 768px) {
    .phone-frame {
        width: 75%;
    }
    
    .profile-pic {
        width: 65%;
    }
}

.flag {
    position: absolute;
    top: clamp(0.8rem, 2vw, 1.4rem);
    right: clamp(0.8rem, 2vw, 1.4rem);
    width: clamp(3rem, 7vw, 4rem);
    height: clamp(3rem, 7vw, 4rem);
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid var(--cor-branco);
    z-index: 4;
}

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

.account-info {
    padding: 2.5rem 3rem 3rem;
    display: grid;
    gap: 1.6rem;
}

.account-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
}

.account-header h3 {
    font-size: 2rem;
    font-weight: 800;
    color: var(--cor-preto);
    font-family: var(--fonte-titulos);
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.account-rating {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    background: #fef3c7;
    padding: 0.3rem 0.7rem;
    border-radius: 9999px;
    font-size: 1.2rem;
    font-weight: 700;
    color: #92400e;
}

.account-rating i {
    color: #fbbf24;
    font-size: 1.4rem;
}

.account-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.8rem 1.2rem;
    margin-top: 0.4rem;
}

.account-stats .stat {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    font-size: 1.35rem;
    color: #4b5563;
    font-weight: 600;
}

.account-stats .stat i {
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 1.6rem;
    width: 1.6rem;
}

.price-section {
    text-align: center;
    margin-top: 0.6rem;
}

.price {
    font-size: 3rem;
    font-weight: 900;
    color: #10b981;
    font-family: var(--fonte-titulos);
    letter-spacing: -0.02em;
    margin-bottom: 0.3rem;
}

.price-label {
    font-size: 1.2rem;
    color: var(--cor-cinza);
    font-weight: 500;
}

.btn-view {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.8rem;
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    color: var(--cor-branco);
    padding: 1.4rem 2.8rem;
    border-radius: 9999px;
    font-weight: 700;
    font-size: 1.4rem;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    text-align: center;
    width: 100%;
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(10px);
    border: 2px solid transparent;
    box-shadow: 
        0 8px 32px rgba(139, 92, 246, 0.2),
        0 0 0 1px rgba(255,255,255,0.1),
        inset 0 1px 0 rgba(255,255,255,0.2);
    animation: pulse 2s infinite;
}

.btn-view::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(139, 92, 246, 0.1), transparent);
    transition: left 0.8s ease;
    border-radius: 9999px;
}

.btn-view:hover::before {
    left: 100%;
}

.btn-view:hover {
background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    transform: translateY(-6px) scale(1.05);
    box-shadow: 
        0 25px 50px rgba(139, 92, 246, 0.3),
        0 0 0 1px rgba(255,255,255,0.3),
        inset 0 1px 0 rgba(255,255,255,0.3);
    color: var(--cor-branco);
    border-color: rgba(255, 255, 255, 0.4);
    animation: none;
}

.btn-view:active {
    transform: translateY(-2px) scale(0.98);
}

.featured-footer {
    text-align: center;
}

/* Responsividade para mobile */
@media (max-width: 768px) {
    .featured-header h2 {
        font-size: 3.5rem;
    }
    
    .featured-stats {
        gap: 2rem;
    }
    
    .featured-stats .stat-item {
        padding: 1rem 1.5rem;
    }
    
    .featured-stats .stat-number {
        font-size: 2rem;
    }
    
    .account-card {
        flex: 0 0 300px;
        min-width: 300px;
    }
    
    .carousel-btn {
        width: 4.5rem;
        height: 4.5rem;
        font-size: 1.6rem;
    }
    
    .account-info {
        padding: 2rem;
    }
    
    .account-header h3 {
        font-size: 1.8rem;
    }
    
    .price {
        font-size: 2.4rem;
    }
}

.btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 1rem;
    background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
    color: #6d28d9;
    padding: 1.4rem 2.8rem;
    border-radius: 9999px;
    font-weight: 700;
    font-size: 1.6rem;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    text-decoration: none;
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(10px);
    border: 2px solid rgba(255,255,255,0.3);
    box-shadow: 
        0 8px 32px rgba(0,0,0,0.12),
        0 0 0 1px rgba(255,255,255,0.1),
        inset 0 1px 0 rgba(255,255,255,0.6);
    animation: pulse 2s infinite;
}

.btn-primary::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(139, 92, 246, 0.1), transparent);
    transition: left 0.8s ease;
    border-radius: 9999px;
}

.btn-primary:hover::before {
    left: 100%;
}

.btn-primary:hover {
    background: linear-gradient(135deg, #ffffff 0%, #f1f5f9 100%);
    transform: translateY(-6px) scale(1.05);
    box-shadow: 
        0 25px 50px rgba(139, 92, 246, 0.25),
        0 0 0 1px rgba(255,255,255,0.3),
        inset 0 1px 0 rgba(255,255,255,0.9);
    color: #4c1d95;
    border-color: rgba(139, 92, 246, 0.4);
    animation: none;
}

.btn-primary:active {
    transform: translateY(-2px) scale(0.98);
}

/* Seção de Vantagens */
.container-advantages {
    background: var(--cor-branco);
    padding: 8rem 0;
}

.advantages-header {
    text-align: center;
    margin-bottom: 6rem;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 2rem;
}

.advantages-header h2 {
    font-size: 4.5rem;
    font-weight: 800;
    color: var(--cor-preto);
    margin-bottom: 2rem;
    font-family: var(--fonte-titulos);
}

.highlight-text {
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.advantages-header p {
    font-size: 1.8rem;
    color: var(--cor-cinza);
    font-weight: 400;
    line-height: 1.6;
}

.advantages-grid {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 1rem;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2.4rem;
}

.advantage-card {
    text-align: left;
    padding: 3rem 2.5rem;
    background: var(--cor-branco);
    border-radius: 16px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    transition: all 0.3s ease;
    border: 1px solid #e5e7eb;
    position: relative;
    overflow: hidden;
}

.advantage-card::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #8b5cf6 0%, #ec4899 100%);
    transform: scaleX(0);
    transition: transform 0.4s ease;
    z-index: 1;
}

.advantage-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(139, 92, 246, 0.2);
}

.advantage-card:hover::before{
    transform: scaleX(1);
}

.advantage-icon {
    width: 6rem;
    height: 6rem;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 2rem;
    font-size: 2.4rem;
    color: var(--cor-branco);
}

/* Cores específicas para cada ícone usando a paleta atual */
.advantage-card:nth-child(1) .advantage-icon { background: var(--cor-principal-linear); }

.advantage-card:nth-child(2) .advantage-icon { background: var(--cor-principal-linear); }

.advantage-card:nth-child(3) .advantage-icon { background: var(--cor-principal-linear); }

.advantage-card:nth-child(4) .advantage-icon { background: var(--cor-principal-linear); }

.advantage-card:nth-child(5) .advantage-icon { background: var(--cor-principal-linear); }

.advantage-card:nth-child(6) .advantage-icon { background: var(--cor-principal-linear); }

.advantage-card h3 {
    font-size: 2rem;
    font-weight: 700;
    color: var(--cor-preto);
    margin-bottom: 1.5rem;
    font-family: var(--fonte-titulos);
}

.advantage-card p {
    font-size: 1.5rem;
    color: var(--cor-cinza);
    line-height: 1.6;
    font-weight: 400;
}

/* Seção de Como Funciona */
.container-how-it-works {
    background: var(--cor-branco);
    padding: 8rem 0;
}

.how-it-works-header {
    text-align: center;
    margin-bottom: 6rem;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 2rem;
}

.badge {
    display: inline-flex;
    align-items: center;
    gap: 0.8rem;
    background: linear-gradient(135deg, var(--cor-principal) 0%, #7c3aed 100%);
    padding: 0.8rem 1.6rem;
    border-radius: 50px;
    color: var(--cor-branco);
    font-size: 1.4rem;
    font-weight: 600;
    margin-bottom: 2rem;
}

.badge i {
    color: var(--cor-branco);
    font-size: 1.6rem;
}

.how-it-works-header h2 {
    font-size: 4.5rem;
    font-weight: 800;
    color: var(--cor-preto);
    margin-bottom: 2rem;
    font-family: var(--fonte-titulos);
}

.how-it-works-header p {
    font-size: 1.8rem;
    color: var(--cor-cinza);
    font-weight: 400;
    line-height: 1.6;
}

.how-it-works-content {
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 2rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8rem;
    align-items: start;
}

.benefits-section {
    display: flex;
    flex-direction: column;
    gap: 3rem;
}


.benefits-section h3 {
    font-size: 2.4rem;
    font-weight: 700;
    color: var(--cor-preto);
    font-family: var(--fonte-titulos);
}

.benefits-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.benefits-list li {
    display: flex;
    align-items: center;
    gap: 1rem;
    color: var(--cor-preto);
    font-size: 1.6rem;
    font-weight: 500;
}

.benefits-list i {
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 1.8rem;
    flex-shrink: 0;
}

.cta-section h4 {
    font-size: 2rem;
    font-weight: 700;
    color: var(--cor-preto);
    margin-bottom: 1.5rem;
    font-family: var(--fonte-titulos);
}

.cta-section p {
    font-size: 1.6rem;
    color: var(--cor-cinza);
    line-height: 1.6;
    margin-bottom: 2rem;
}

.btn-cta-primary {
    display: inline-flex;
    align-items: center;
    gap: 1rem;
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    color: #ffffff;
    padding: 1.4rem 2.8rem;
    border-radius: 16px;
    font-weight: 700;
    font-size: 1.6rem;
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    width: fit-content;
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(10px);
    border: 2px solid rgba(255,255,255,0.3);
    box-shadow: 
        0 8px 32px rgba(0,0,0,0.1),
        inset 0 1px 0 rgba(255,255,255,0.2);
}

.btn-cta-primary::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.6s ease;
}

.btn-cta-primary:hover::before {
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    left: 100%;
}

.btn-cta-primary:hover {
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    transform: translateY(-4px) scale(1.02);
    box-shadow: 
        0 20px 40px rgba(0,0,0,0.15),
        inset 0 1px 0 rgba(255,255,255,0.3);
    border-color: rgba(255,255,255,0.5);
}

.btn-cta-primary:active {
    transform: translateY(-2px) scale(0.98);
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
}

.features-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
}

.feature-card {
    background: var(--cor-branco);
    padding: 1.5rem;
    border-radius: 12px;
    text-align: start;
    border: 1px solid #e5e7eb;
    box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    position: relative;
    height: 100%;
    display: flex;  
    flex-direction: column;
    overflow: hidden;
}

.feature-card::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #8b5cf6 0%, #ec4899 100%);
    transform: scaleX(0);
    transition: transform 0.4s ease;
    z-index: 1;
}

.feature-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(139, 92, 246, 0.2);
}

.feature-card:hover::before{
    transform: scaleX(1);
}

.feature-icon {
    width: 3rem;
    height: 3rem;
    background: linear-gradient(135deg, #8b5cf6, #ec4899);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
    font-size: 1.4rem;
    color: var(--cor-branco);
}

.feature-card h4 {
    font-size: 2rem;
    font-weight: 700;
    color: var(--cor-preto);
    margin-bottom: 0.6rem;
    font-family: var(--fonte-titulos);
}

.feature-card p {
    font-size: 1.6rem;
    color: var(--cor-cinza);
    line-height: 1.4;
    margin-bottom: 0.8rem;
    flex-grow: 1;
}


/* Seção de Busca Avançada */
.container-search {
    background: var(--cor-branco);
    padding: 8rem 0;
}

.search-header {
    text-align: center;
    margin-bottom: 4rem;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 2rem;
}

.search-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.8rem;
    background: linear-gradient(135deg, #8b5cf6, #ec4899);
    color: var(--cor-branco);
    padding: 0.8rem 1.6rem;
    border-radius: 50px;
    font-size: 1.4rem;
    font-weight: 600;
    margin-bottom: 2rem;
}

.search-header h2 {
    font-size: 4rem;
    font-weight: 800;
    color: var(--cor-preto);
    margin-bottom: 1.5rem;
    font-family: var(--fonte-titulos);
}

.search-header p {
    font-size: 1.8rem;
    color: var(--cor-cinza);
    font-weight: 500;
}

.search-stats {
    display: flex;
    justify-content: center;
    gap: 4rem;
    margin-bottom: 4rem;
    flex-wrap: wrap;
}

.search-stats .stat-item {
    display: flex;
    align-items: center;
    gap: 1rem;
    background: var(--cor-branco);
    padding: 1.5rem 2rem;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid #e2e8f0;
    transition: all 0.3s ease;
}

.search-stats .stat-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}

.search-stats .stat-icon {
    width: 3rem;
    height: 3rem;
    background: var(--cor-principal-linear);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--cor-branco);
    font-size: 1.4rem;
}

.search-stats .stat-content h3 {
    font-size: 2rem;
    font-weight: 700;
    color: var(--cor-preto);
    margin-bottom: 0.2rem;
}

.search-stats .stat-content p {
    font-size: 1.2rem;
    color: var(--cor-cinza);
    font-weight: 500;
}

.search-form {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 2rem;
}

.search-inputs {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    margin-bottom: 3rem;
}

.input-group {
    display: flex;
    flex-direction: column;
}

.input-group label {
    font-size: 1.4rem;
    font-weight: 600;
    color: var(--cor-preto);
    margin-bottom: 0.8rem;
}

.input-group input,
.input-group select {
    padding: 1.5rem;
    border: 2px solid #e5e7eb;
    border-radius: 12px;
    font-size: 1.6rem;
    transition: all 0.3s ease;
    background: var(--cor-branco);
}

.input-group input:focus,
.input-group select:focus {
    border: 2px solid;
    border-image: linear-gradient(135deg, var(--cor-principal) 0%, #7c3aed 100%) 1;
    box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.1);
    outline: none;
}

.btn-search {
    display: flex;
    align-items: center;
    gap: 1rem;
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    color: var(--cor-branco);
    border: 2px solid transparent;
    border-radius: 16px;
    font-weight: 700;
    font-size: 1.6rem;
    cursor: pointer;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    margin: 0;
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(10px);
    box-shadow: 
        0 8px 32px rgba(0,0,0,0.12),
        0 0 0 1px rgba(255,255,255,0.1),
        inset 0 1px 0 rgba(255,255,255,0.2);
}

.btn-search::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.6s ease;
}

.btn-search:hover::before {
    left: 100%;
}

.btn-search:hover {
background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    transform: translateY(-4px) scale(1.02);
    box-shadow: 
        0 20px 40px rgba(0,0,0,0.15),
        0 0 0 1px rgba(255,255,255,0.2),
        inset 0 1px 0 rgba(255,255,255,0.3);
}

.btn-search:active {
    transform: translateY(-2px) scale(0.98);
}

.btn-search.loading {
    background: #6b7280;
    cursor: not-allowed;
    transform: none;
}

.btn-loading {
    display: none;
    align-items: center;
    gap: 0.5rem;
}

.input-feedback {
    font-size: 1.2rem;
    margin-top: 0.5rem;
    padding: 0.5rem;
    border-radius: 6px;
    display: none;
}

.input-feedback.error {
    color: #dc2626;
    background: #fef2f2;
    border: 1px solid #fecaca;
    display: block;
}

.input-feedback.success {
    color: #059669;
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    display: block;
}

.search-feedback {
    margin-top: 1rem;
    padding: 1rem;
    border-radius: 8px;
    text-align: center;
    font-weight: 500;
    display: none;
}

.search-feedback.error {
    background: #fef2f2;
    color: #dc2626;
    border: 1px solid #fecaca;
}

.search-feedback.success {
    background: #f0fdf4;
    color: #059669;
    border: 1px solid #bbf7d0;
}

.search-actions {
    display: flex;
    align-items: flex-end;
    gap: 2rem;
    justify-content: center;
}

.btn-clear {
    background: rgba(255,255,255,0.8);
    color: var(--cor-cinza);
    border: 2px solid rgba(229,231,235,0.5);
    padding: 1.4rem 2.8rem;
    border-radius: 16px;
    font-size: 1.6rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    align-items: center;
    gap: 1rem;
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(10px);
    box-shadow: 
        0 8px 32px rgba(0,0,0,0.08),
        0 0 0 1px rgba(255,255,255,0.1),
        inset 0 1px 0 rgba(255,255,255,0.6);
}

/* ocupar mesma largura dentro do grid */
.search-actions .btn-search,
.search-actions .btn-clear {
    width: 80%;
    height: 70%;
    justify-content: center;
    box-sizing: border-box;
}

.btn-clear::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
    transition: left 0.6s ease;
}

.btn-clear:hover::before {
    left: 100%;
}

.btn-clear:hover {
    background: rgba(255,255,255,0.95);
    border-color: var(--cor-cinza);
    color: var(--cor-preto);
    transform: translateY(-4px) scale(1.02);
    box-shadow: 
        0 20px 40px rgba(0,0,0,0.12),
        0 0 0 1px rgba(255,255,255,0.2),
        inset 0 1px 0 rgba(255,255,255,0.8);
}

.btn-clear:active {
    transform: translateY(-2px) scale(0.98);
}

.search-suggestions {
    margin-top: 4rem;
    text-align: center;
}

.search-suggestions h4 {
    font-size: 1.8rem;
    font-weight: 600;
    color: var(--cor-preto);
    margin-bottom: 2rem;
}

.suggestion-tags {
    display: flex;
    justify-content: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.tag {
    background: #f3f4f6;
    color: var(--cor-cinza);
    padding: 0.8rem 1.6rem;
    border-radius: 25px;
    font-size: 1.4rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    border: 2px solid transparent;
}

.tag:hover {
    background: linear-gradient(135deg, #8b5cf6, #ec4899);
    color: var(--cor-branco);
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(139, 92, 246, 0.3);
}

/* Seção de Depoimentos */
.container-testimonials {
    background: var(--cor-branco);
    padding: 6rem 0;
    overflow: hidden;
}

.testimonials-header {
    text-align: center;
    margin-bottom: 4rem;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 2rem;
}

.testimonials-header h2 {
    font-size: 4rem;
    font-weight: 800;
    color: var(--cor-preto);
    margin-bottom: 1.5rem;
    font-family: var(--fonte-titulos);
}

.testimonials-header p {
    font-size: 1.8rem;
    color: var(--cor-cinza);
    font-weight: 500;
}

/* Carrossel Infinito de Depoimentos */
.testimonials-carousel {
    position: relative;
    width: 100vw;
    overflow: hidden;
    margin-left: calc(-50vw + 50%);
    padding: 0;
}

/* Fades nas pontas para simular entrada/saída dos cards */
.testimonials-carousel::before,
.testimonials-carousel::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 10vw; /* faixa responsiva nas laterais */
    max-width: 140px;
    pointer-events: none;
    z-index: 2;
}

.testimonials-carousel::before {
    left: 0;
    background: linear-gradient(90deg, var(--cor-branco) 0%, rgba(255,255,255,0) 100%);
}

.testimonials-carousel::after {
    right: 0;
    background: linear-gradient(270deg, var(--cor-branco) 0%, rgba(255,255,255,0) 100%);
}

.testimonials-track {
    display: flex;
    gap: 3rem;
    width: max-content;
    animation: scroll 30s linear infinite;
    padding: 0 2rem;
}

.testimonials-track-1 {
    animation-direction: normal;
    margin-bottom: 2rem;
}

.testimonials-track-2 {
    animation-direction: reverse;
    animation-delay: -15s;
}

@keyframes scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}


.testimonial-strip {
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 10px 40px rgba(139, 92, 246, 0.2);
    border: 2px solid rgba(255, 255, 255, 0.2);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    height: auto;
    min-height: 200px;
    display: flex;
    align-items: center;
    flex: 0 0 420px;
    min-width: 420px;
    position: relative;
    overflow: hidden;
    opacity: 0.9;
}

.testimonial-strip::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #8b5cf6, #ec4899);
    border-radius: 20px 20px 0 0;
}

.testimonial-strip:hover {
    opacity: 1;
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 20px 60px rgba(139, 92, 246, 0.3);
    border-color: rgba(255, 255, 255, 0.4);
}

.testimonial-content {
    width: 100%;
    text-align: center;
}

.testimonial-rating {
    display: flex;
    gap: 0.4rem;
    margin-bottom: 1.5rem;
    color: #fbbf24;
    font-size: 1.4rem;
    justify-content: center;
    filter: drop-shadow(0 2px 4px rgba(251, 191, 36, 0.3));
}

.testimonial-content p {
    font-size: 1.5rem;
    color: #ffffff;
    line-height: 1.6;
    margin-bottom: 1.5rem;
    font-style: italic;
    font-weight: 500;
    position: relative;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.testimonial-content p::before {
    content: '"';
    font-size: 4rem;
    color: rgba(255, 255, 255, 0.3);
    position: absolute;
    top: -1rem;
    left: -0.5rem;
    font-family: serif;
}

.testimonial-content p::after {
    content: '"';
    font-size: 4rem;
    color: rgba(255, 255, 255, 0.3);
    position: absolute;
    bottom: -2rem;
    right: -0.5rem;
    font-family: serif;
}

.testimonial-author strong {
    font-size: 1.4rem;
    color: #ffffff;
    font-weight: 700;
    display: block;
    margin-bottom: 0.5rem;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.testimonial-author span {
    font-size: 1.2rem;
    color: rgba(255, 255, 255, 0.8);
    font-weight: 600;
}


/* Seção de FAQ */
.container-faq {
    background: var(--cor-branco);
    padding: 8rem 0;
}

.faq-header {
    text-align: center;
    margin-bottom: 6rem;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 2rem;
}

.faq-header h2 {
    font-size: 4rem;
    font-weight: 800;
    color: var(--cor-preto);
    margin-bottom: 1.5rem;
    font-family: var(--fonte-titulos);
}

.faq-header p {
    font-size: 1.8rem;
    color: var(--cor-cinza);
    font-weight: 500;
}

.faq-list {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 2rem;
}

.faq-item {
    background: var(--cor-branco);
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    margin-bottom: 1.5rem;
    overflow: hidden;
    transition: all 0.3s ease;
}

.faq-item:hover {
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

.faq-question {
    padding: 2.5rem;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: all 0.3s ease;
}

.faq-question:hover {
    background: var(--cor-branco);
}

.faq-question h3 {
    font-size: 1.8rem;
    font-weight: 600;
    color: var(--cor-preto);
    font-family: var(--fonte-titulos);
}

.faq-question i {
    font-size: 1.8rem;
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    transition: transform 0.3s ease;
}

.faq-item.active .faq-question i {
    transform: rotate(45deg);
}

.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: all 0.3s ease;
    padding: 0 2.5rem;
}

.faq-item.active .faq-answer {
    max-height: 200px;
    padding: 0 2.5rem 2.5rem;
}

.faq-answer p {
    font-size: 1.6rem;
    color: #374151;
    line-height: 1.7;
    font-weight: 500;
}

/* Seção de Avaliação */
.container-review {
    background: var(--cor-branco);
    padding: 8rem 0;
}

.review-header {
    text-align: center;
    margin-bottom: 6rem;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 2rem;
}

.review-hero .chips { display:flex; gap:1rem; justify-content:center; flex-wrap:wrap; margin-top:1.2rem; }
.chip { display:inline-flex; align-items:center; gap:.6rem; padding:.6rem 1.2rem; border-radius:9999px; border:1px solid #e5e7eb; background:#fff; color:#374151; font-weight:600; font-size:1.2rem; }
.chip i { background: var(--cor-principal-linear); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }

.review-header h2 {
    font-size: 4rem;
    font-weight: 800;
    color: var(--cor-preto);
    margin-bottom: 1.5rem;
    font-family: var(--fonte-titulos);
}

.review-header p {
    font-size: 1.8rem;
    color: var(--cor-cinza);
    font-weight: 500;
}

.review-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
    display: block;
}

.review-grid {
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    gap: 4rem;
    align-items: start;
}

.score-card {
    background: #ffffff;
    padding: 3rem;
    border-radius: 20px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
    border: 1px solid transparent;
    border-image: linear-gradient(135deg, rgba(139,92,246,0.35), rgba(236,72,153,0.35)) 1;
}

.rating-summary {
    text-align: center;
    margin-bottom: 3rem;
}

.rating-number {
    font-size: 6rem;
    font-weight: 800;
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-bottom: 1rem;
    font-family: var(--fonte-titulos);
}

.rating-stars {
    display: flex;
    justify-content: center;
    gap: 0.5rem;
    margin-bottom: 1rem;
    font-size: 2rem;
    color: #fbbf24;
}

.rating-text {
    font-size: 1.6rem;
    color: var(--cor-cinza);
    font-weight: 500;
}

/* .rating-breakdown - space-y is a Tailwind CSS utility, not standard CSS */

.rating-bar {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

.rating-bar span:first-child {
    font-size: 1.4rem;
    color: var(--cor-preto);
    font-weight: 500;
    min-width: 80px;
}

.rating-bar span:last-child {
    font-size: 1.4rem;
    color: var(--cor-cinza);
    font-weight: 600;
    min-width: 40px;
    text-align: right;
}

.bar {
    flex: 1;
    height: 8px;
    background: #e5e7eb;
    border-radius: 4px;
    overflow: hidden;
}

.bar .fill {
    height: 100%;
    background: linear-gradient(90deg, #8b5cf6, #ec4899);
    border-radius: 4px;
    transition: width 0.3s ease;
}

.review-card {
    background: #ffffff;
    padding: 3rem;
    border-radius: 20px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
    border: 1px solid transparent;
    border-image: linear-gradient(135deg, rgba(139,92,246,0.35), rgba(236,72,153,0.35)) 1;
    position: relative;
    overflow: hidden;
    transition: all 0.4s ease;
}

.review-card::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #8b5cf6 0%, #ec4899 100%);
    transform: scaleX(0);
    transition: transform 0.4s ease;
    z-index: 1;
}

.review-card:hover{
    transform: translateY(-5px);
    box-shadow: 0 15px 50px rgba(139, 92, 246, 0.15);
}

.review-card:hover::before{
    transform: scaleX(1);
}

.rating-breakdown.compact .rating-bar span:first-child { width: 2rem; text-align: right; color:#64748b; font-weight:700; }
.rating-breakdown.compact .rating-bar { display:flex; align-items:center; gap:1rem; }
.rating-breakdown.compact .bar { flex:1; height:8px; background:#e5e7eb; border-radius:9999px; overflow:hidden; }
.rating-breakdown.compact .fill { height:100%; background: linear-gradient(135deg, #8b5cf6, #ec4899); }

.review-highlights { margin-top:2rem; display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:1rem; }
.review-highlights li { list-style:none; display:flex; align-items:center; gap:.6rem; padding:1rem 1.2rem; border:1px solid #e5e7eb; border-radius:12px; font-size:1.3rem; color:#374151; }
.review-highlights i { color:#8b5cf6; }

.recent-reviews { margin-top:2rem; display:flex; flex-direction:column; gap:1rem; }
.review-item { display:flex; align-items:center; gap:1rem; padding:1rem; border:1px solid #e5e7eb; border-radius:12px; background:#ffffff; }
.review-item .avatar { width:36px; height:36px; border-radius:50%; background:linear-gradient(135deg,#8b5cf6,#ec4899); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:800; }
.review-item .text { display:flex; flex-direction:column; line-height:1.2; }
.review-item .text strong { color:#111827; font-size:1.3rem; }
.review-item .text span { color:#6b7280; font-size:1.2rem; }

.consent { display:flex; align-items:center; gap:.6rem; font-size:1.2rem; color:#4b5563; margin-bottom:1rem; }

.trust-panel { background:#ffffff; padding:3rem; border-radius:20px; box-shadow:0 10px 40px rgba(0,0,0,0.08); border:1px solid #e5e7eb; }
.trust-panel h3 { font-size:2rem; font-weight:800; color:#111827; margin:0 0 1.5rem; font-family: var(--fonte-titulos); }
.trust-list { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:1rem; }
.trust-item { display:flex; gap:1rem; align-items:flex-start; padding:1.2rem; border:1px solid #e5e7eb; border-radius:12px; background:#fff; }
.trust-item i { color:#8b5cf6; font-size:1.6rem; margin-top:.2rem; }
.trust-item strong { color:#111827; font-size:1.4rem; display:block; }
.trust-item span { color:#6b7280; font-size:1.2rem; }
.trust-logos { display:flex; gap:.8rem; margin-top:1.5rem; }
.logo-badge { padding:.6rem 1rem; border-radius:10px; border:1px solid #e5e7eb; background:#f8fafc; color:#374151; font-weight:700; font-size:1.1rem; }
.trust-cta { display:flex; gap:1rem; flex-wrap:wrap; margin-top:1.8rem; }

@media (max-width: 992px) {
    .review-grid { grid-template-columns: 1fr; }
}

/* Responsividade do carrossel: 2 cards no tablet, 1 no mobile */
@media (max-width: 1200px) {
    .carousel-track { gap: 0; }
    .account-card { flex: 0 0 100%; min-width: 100%; max-width: 460px; margin: 0 auto; }
}

@media (max-width: 768px) {
    .account-card { max-width: 360px; }
    .account-info { padding: 1.8rem; }
}

.form-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    margin-bottom: 2rem;
}

.form-group {
    display: flex;
    flex-direction: column;
}

.form-group label {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    font-size: 1.4rem;
    font-weight: 600;
    color: var(--cor-preto);
    margin-bottom: 0.8rem;
}

.form-group label i {
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 1.2rem;
}

.form-group input,
.form-group textarea {
    padding: 1.5rem;
    border: 2px solid #e5e7eb;
    border-radius: 12px;
    font-size: 1.6rem;
    transition: all 0.3s ease;
    background: var(--cor-branco);
    font-family: var(--fonte-paragrafos);
}

.form-group input:focus,
.form-group textarea:focus {
    border: 2px solid;
    border-image: linear-gradient(135deg, var(--cor-principal) 0%, #7c3aed 100%) 1;
    box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.1);
    outline: none;
}

.form-group textarea {
    resize: vertical;
    min-height: 120px;
}

.rating-input {
    margin-top: 0.8rem;
}

.stars {
    display: flex;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
}

.stars i {
    font-size: 2.4rem;
    color: #d1d5db;
    cursor: pointer;
    transition: transform 0.2s ease, color 0.2s ease;
}

.stars i:hover,
.stars i.fa-solid {
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    transform: scale(1.1);
}

.rating-text {
    font-size: 1.4rem;
    color: #64748b;
    font-weight: 500;
}

.char-count {
    text-align: right;
    font-size: 1.2rem;
    color: #6b7280;
    margin-top: 0.5rem;
}

.btn-submit {
    background: linear-gradient(135deg, var(--cor-principal) 0%, #7c3aed 100%);
    color: var(--cor-branco);
    border: none;
    padding: 1.4rem 2.8rem;
    border-radius: 16px;
    font-size: 1.6rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    align-items: center;
    gap: 1rem;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(10px);
    box-shadow: 
        0 8px 32px rgba(0,0,0,0.12),
        0 0 0 1px rgba(255,255,255,0.1),
        inset 0 1px 0 rgba(255,255,255,0.2);
}

.btn-submit::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.6s ease;
}

.btn-submit:hover::before {
    left: 100%;
}

.btn-submit:hover {
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    transform: translateY(-4px) scale(1.02);
    box-shadow: 
        0 20px 40px rgba(0,0,0,0.15),
        0 0 0 1px rgba(255,255,255,0.2),
        inset 0 1px 0 rgba(255,255,255,0.3);
}

.btn-submit:active {
    transform: translateY(-2px) scale(0.98);
}

.btn-submit.loading {
    background: #6b7280;
    cursor: not-allowed;
    transform: none;
}

.btn-loading {
    display: none;
    align-items: center;
    gap: 0.5rem;
}

.form-feedback {
    margin-top: 1rem;
    padding: 1rem;
    border-radius: 8px;
    text-align: center;
    font-weight: 500;
    display: none;
}

.form-feedback.error {
    background: #fef2f2;
    color: #dc2626;
    border: 1px solid #fecaca;
}

.form-feedback.success {
    background: #f0fdf4;
    color: #059669;
    border: 1px solid #bbf7d0;
}

.btn-submit {
    display: flex;
    align-items: center;
    gap: 1rem;
    background: linear-gradient(135deg, var(--cor-principal) 0%, #7c3aed 100%);
    color: var(--cor-branco);
    padding: 1.4rem 2.8rem;
    border: none;
    border-radius: 16px;
    font-weight: 700;
    font-size: 1.6rem;
    cursor: pointer;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    margin: 0 auto;
    width: 100%;
    justify-content: center;
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(10px);
    box-shadow: 
        0 8px 32px rgba(0,0,0,0.12),
        0 0 0 1px rgba(255,255,255,0.1),
        inset 0 1px 0 rgba(255,255,255,0.2);
}

.btn-submit::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.6s ease;
}

.btn-submit:hover::before {
    left: 100%;
}

.btn-submit:hover {
    background: linear-gradient(135deg, #ec4899 0%, #f472b6 100%);
    transform: translateY(-4px) scale(1.02);
    box-shadow: 
        0 20px 40px rgba(0,0,0,0.15),
        0 0 0 1px rgba(255,255,255,0.2),
        inset 0 1px 0 rgba(255,255,255,0.3);
}

.btn-submit:active {
    transform: translateY(-2px) scale(0.98);
}

/* Footer Moderno */
.container-footer {
    background: #ffffff;
    color: var(--cor-preto);
    position: relative;
    overflow: hidden;
}

.container-footer::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, #8b5cf6, #ec4899, transparent);
}

/* Seção CTA do Footer */
.footer-cta {
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    padding: 6rem 0;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.footer-cta::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="50" cy="10" r="0.5" fill="rgba(255,255,255,0.05)"/><circle cx="10" cy="60" r="0.5" fill="rgba(255,255,255,0.05)"/><circle cx="90" cy="40" r="0.5" fill="rgba(255,255,255,0.05)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');
    opacity: 0.3;
}

.cta-content {
    max-width: 900px;
    margin: 0 auto;
    padding: 0 2rem;
    position: relative;
    z-index: 2;
}

.cta-content h2 {
    font-size: 4.5rem;
    font-weight: 800;
    color: var(--cor-branco);
    margin-bottom: 1.5rem;
    font-family: var(--fonte-titulos);
    text-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.cta-content p {
    font-size: 1.8rem;
    color: rgba(255, 255, 255, 0.95);
    margin-bottom: 3rem;
    font-weight: 500;
    line-height: 1.6;
}

.cta-buttons {
    display: flex;
    gap: 2rem;
    justify-content: center;
    flex-wrap: wrap;
}

.btn-secondary {
    display: inline-flex;
    align-items: center;
    gap: 1rem;
    background: rgba(255,255,255,0.1);
    color: #ffffff;
    padding: 1.4rem 2.8rem;
    border: 2px solid rgba(255,255,255,0.3);
    border-radius: 16px;
    font-weight: 700;
    font-size: 1.6rem;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    text-decoration: none;
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(10px);
    box-shadow: 
        0 8px 32px rgba(0,0,0,0.1),
        inset 0 1px 0 rgba(255,255,255,0.2);
}

.btn-secondary::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.6s ease;
}

.btn-secondary:hover::before {
    left: 100%;
}

.btn-secondary:hover {
    background: rgba(255,255,255,0.2);
    color: #ffffff;
    transform: translateY(-4px) scale(1.02);
    box-shadow: 
        0 20px 40px rgba(0,0,0,0.15),
        inset 0 1px 0 rgba(255,255,255,0.3);
    border-color: rgba(255,255,255,0.5);
}

.btn-secondary:active {
    transform: translateY(-2px) scale(0.98);
}

/* Conteúdo Principal do Footer */
.footer-main {
    padding: 6rem 0 4rem;
    background: #ffffff;
}

.footer-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1.5fr;
    gap: 4rem;
    align-items: start;
}

/* Logo e Descrição */
.footer-brand {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.footer-logo {
    display: flex;
    align-items: center;
    gap: 1rem;
    font-size: 2.4rem;
    font-weight: 800;
    color: var(--cor-preto);
    font-family: var(--fonte-titulos);
}

.footer-logo i {
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 2.8rem;
}

.footer-brand p {
    font-size: 1.6rem;
    color: #a1a1aa;
    line-height: 1.6;
    margin-bottom: 1rem;
}

.footer-stats {
    display: flex;
    gap: 2rem;
    flex-wrap: wrap;
}

.footer-stats .stat {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 1.5rem 1rem;
    background: rgba(139, 92, 246, 0.1);
    border-radius: 12px;
    border: 1px solid rgba(139, 92, 246, 0.2);
    min-width: 80px;
}

.footer-stats .stat-number {
    font-size: 2rem;
    font-weight: 800;
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-family: var(--fonte-titulos);
}

.footer-stats .stat-label {
    font-size: 1.2rem;
    color: #a1a1aa;
    font-weight: 500;
}

/* Links Úteis e Categorias */
.footer-links,
.footer-categories {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.footer-links h3,
.footer-categories h3 {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--cor-preto);
    margin-bottom: 1rem;
    font-family: var(--fonte-titulos);
}

.footer-links ul,
.footer-categories ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.footer-links li,
.footer-categories li {
    margin: 0;
}

.footer-links a,
.footer-categories a {
    color: #4b5563;
    text-decoration: none;
    font-size: 1.4rem;
    font-weight: 500;
    transition: all 0.3s ease;
    display: block;
    padding: 0.5rem 0;
}

.footer-links a:hover,
.footer-categories a:hover {
    color: var(--cor-preto);
    transform: translateX(8px);
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Contato */
.footer-contact {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.footer-contact h3 {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--cor-preto);
    margin-bottom: 1rem;
    font-family: var(--fonte-titulos);
}

.contact-info {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.contact-item {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    padding: 1.5rem;
    background: rgba(139, 92, 246, 0.05);
    border-radius: 12px;
    border: 1px solid rgba(139, 92, 246, 0.1);
    transition: all 0.3s ease;
}

.contact-item:hover {
    background: rgba(139, 92, 246, 0.1);
    border-color: rgba(139, 92, 246, 0.3);
    transform: translateY(-2px);
}

.contact-item i {
    font-size: 2rem;
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    width: 2.4rem;
    text-align: center;
}

.contact-item div {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.contact-item span {
    font-size: 1.2rem;
    font-weight: 600;
    color: #a1a1aa;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.contact-item p {
    font-size: 1.4rem;
    color: var(--cor-preto);
    font-weight: 500;
    margin: 0;
}

/* Redes Sociais e Newsletter */
.footer-social {
    padding: 4rem 0;
    background: #f8fafc;
    border-top: 1px solid rgba(139, 92, 246, 0.08);
}

.footer-social .footer-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    align-items: center;
}

.social-links h3,
.newsletter h3 {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--cor-preto);
    margin-bottom: 1.5rem;
    font-family: var(--fonte-titulos);
}

.social-icons {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.social-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5rem;
    height: 5rem;
    background: rgba(139, 92, 246, 0.1);
    border: 1px solid rgba(139, 92, 246, 0.2);
    border-radius: 12px;
    color: #a1a1aa;
    font-size: 2rem;
    text-decoration: none;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.social-link::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.social-link:hover::before {
    opacity: 1;
}

.social-link:hover {
    color: var(--cor-branco);
    border-color: rgba(139, 92, 246, 0.5);
    transform: translateY(-4px) scale(1.1);
    box-shadow: 0 8px 25px rgba(139, 92, 246, 0.3);
}

.social-link i {
    position: relative;
    z-index: 2;
}

.newsletter p {
    font-size: 1.4rem;
    color: #a1a1aa;
    margin-bottom: 2rem;
    line-height: 1.5;
}

.newsletter-form {
    display: flex;
    gap: 1rem;
    max-width: 400px;
}

.newsletter-form input {
    flex: 1;
    padding: 1.2rem 1.5rem;
    background: rgba(139, 92, 246, 0.05);
    border: 1px solid rgba(139, 92, 246, 0.2);
    border-radius: 12px;
    color: var(--cor-branco);
    font-size: 1.4rem;
    transition: all 0.3s ease;
}

.newsletter-form input::placeholder {
    color: #a1a1aa;
}

.newsletter-form input:focus {
    outline: none;
    border-color: rgba(139, 92, 246, 0.5);
    background: rgba(139, 92, 246, 0.1);
    box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.1);
}

.newsletter-form button {
    padding: 1.2rem 1.5rem;
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    border: none;
    border-radius: 12px;
    color: var(--cor-branco);
    font-size: 1.6rem;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 5rem;
}

.newsletter-form button:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(139, 92, 246, 0.3);
}

/* Rodapé Final */
.footer-bottom {
    padding: 2rem 0;
    background: #f1f5f9;
    border-top: 1px solid rgba(139, 92, 246, 0.08);
}

.footer-bottom-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 2rem;
}

.footer-copyright p {
    font-size: 1.4rem;
    color: #a1a1aa;
    margin: 0;
}

.footer-legal {
    display: flex;
    gap: 2rem;
    flex-wrap: wrap;
}

.footer-legal a {
    color: #6b7280;
    text-decoration: none;
    font-size: 1.4rem;
    font-weight: 500;
    transition: all 0.3s ease;
}

.footer-legal a:hover {
    color: var(--cor-branco);
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Responsividade do Footer */
@media (max-width: 768px) {
    .footer-content {
        grid-template-columns: 1fr;
        gap: 3rem;
        text-align: center;
    }

    .footer-stats {
        justify-content: center;
    }

    .footer-social .footer-content {
        grid-template-columns: 1fr;
        gap: 3rem;
        text-align: center;
    }

    .newsletter-form {
        max-width: 100%;
    }

    .footer-bottom-content {
        flex-direction: column;
        text-align: center;
        gap: 1.5rem;
    }

    .footer-legal {
        justify-content: center;
    }

    .cta-content h2 {
        font-size: 3rem;
    }

    .cta-content p {
        font-size: 1.6rem;
    }
}

/* Responsividade para novas seções */
@media (max-width: 768px) {
    .stats-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .stat-item {
        flex-direction: column;
        text-align: center;
        gap: 1.5rem;
    }

    .accounts-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    
    .testimonial-strip {
        padding: 1.5rem;
        flex: 0 0 380px;
        min-width: 380px;
        min-height: 180px;
    }
    
    .testimonial-content p {
        font-size: 1.4rem;
        margin-bottom: 1.2rem;
    }
    
    .testimonial-content p::before,
    .testimonial-content p::after {
        font-size: 3rem;
    }
    
    .testimonials-track {
        gap: 2rem;
        padding: 0 1rem;
    }
    
    .testimonials-track-1 {
        margin-bottom: 1.5rem;
    }

    .advantages-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
    }

    .advantage-card {
        padding: 2.5rem 2rem;
    }
    
    .advantage-card h3 {
        font-size: 1.8rem;
    }
    
    .advantage-card p {
        font-size: 1.4rem;
    }

    .how-it-works-content {
        grid-template-columns: 1fr;
        gap: 4rem;
    }
    
    .features-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
    }
    
    
    .benefits-section {
        gap: 3rem;
    }
    
    .how-it-works-header h2 {
        font-size: 3.5rem;
    }
    
    .how-it-works-header p {
        font-size: 1.6rem;
    }

    .search-inputs {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .testimonials-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .form-row {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .cta-buttons {
        flex-direction: column;
        align-items: center;
    }

    .btn-primary,
    .btn-secondary {
        width: 100%;
        max-width: 300px;
    }

    .featured-header h2,
    .advantages-header h2,
    .how-it-works-header h2,
    .search-header h2,
    .testimonials-header h2,
    .faq-header h2,
    .review-header h2,
    .cta-content h2 {
        font-size: 3rem;
    }
    
    .faq-question {
        padding: 2rem;
    }
    
    .faq-question h3 {
        font-size: 1.6rem;
    }
    
    .faq-answer {
        padding: 0 2rem;
    }
    
    .faq-item.active .faq-answer {
        padding: 0 2rem 2rem;
    }

    .featured-header p,
    .advantages-header p,
    .how-it-works-header p,
    .search-header p,
    .testimonials-header p,
    .faq-header p,
    .review-header p,
    .cta-content p {
        font-size: 1.6rem;
    }
}

@media (max-width: 480px) {
    .advantages-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .advantage-card {
        padding: 2rem 1.5rem;
    }
    
    .advantage-icon {
        width: 5rem;
        height: 5rem;
        font-size: 2rem;
    }
    
    .advantage-card h3 {
        font-size: 1.6rem;
    }
    
    .advantage-card p {
        font-size: 1.3rem;
    }
    
    .advantages-header h2 {
        font-size: 3.5rem;
    }
    
    .advantages-header p {
        font-size: 1.6rem;
    }
    
    .how-it-works-header h2 {
        font-size: 3rem;
    }
    
    .how-it-works-header p {
        font-size: 1.4rem;
    }
    
    .benefits-section h3 {
        font-size: 2rem;
    }
    
    .benefits-list li {
        font-size: 1.4rem;
    }
    
    .cta-section h4 {
        font-size: 1.8rem;
    }
    
    .cta-section p {
        font-size: 1.4rem;
    }
    
    .btn-cta-primary {

        padding: 1.2rem 2.4rem;
        font-size: 1.4rem;
    }
    
    .feature-card {
        padding: 2rem;
    }
    
    .feature-card h4 {
        font-size: 1.6rem;
    }
    
    .feature-card p {
        font-size: 1.3rem;
    }
    
    .features-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    
    .feature-icon {
        width: 4rem;
        height: 4rem;
        font-size: 1.8rem;
    }
    
    .testimonial-strip {
        padding: 1.5rem;
        flex: 0 0 320px;
        min-width: 320px;
        min-height: 160px;
    }
    
    .testimonial-content p {
        font-size: 1.3rem;
        margin-bottom: 1rem;
    }
    
    .testimonial-content p::before,
    .testimonial-content p::after {
        font-size: 2.5rem;
    }
    
    .testimonial-rating {
        font-size: 1.2rem;
    }
    
    .testimonials-track {
        gap: 1.5rem;
        padding: 0 0.5rem;
    }
    
    .testimonials-track-1 {
        margin-bottom: 1rem;
    }
    
    .faq-question {
        padding: 1.5rem;
    }
    
    .faq-question h3 {
        font-size: 1.4rem;
    }
    
    .faq-answer {
        padding: 0 1.5rem;
    }
    
    .faq-item.active .faq-answer {
        padding: 0 1.5rem 1.5rem;
    }
    
    .faq-answer p {
        font-size: 1.4rem;
    }
    
    .review-content {
        grid-template-columns: 1fr;
        gap: 3rem;
    }
    
    .review-stats {
        padding: 2rem;
    }
    
    .rating-number {
        font-size: 4rem;
    }
    
    .review-form {
        padding: 2rem;
    }
    
    .search-stats {
        gap: 2rem;
    }
    
    .search-stats .stat-item {
        padding: 1rem 1.5rem;
    }
    
    .search-actions {
        flex-direction: column;
        gap: 1rem;
    }
    
    .btn-clear {
        padding: 1.2rem 2rem;
        font-size: 1.4rem;
    }
    
    .suggestion-tags {
        gap: 0.8rem;
    }
    
    .tag {
        padding: 0.6rem 1.2rem;
        font-size: 1.2rem;
    }
}

/* Seção CTA: Quero Impulsionar */
.container-boost {
    position: relative;
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
    padding: 6rem 2rem;
    border-radius: 24px;
    max-width: 1200px;
    margin: 4rem auto;
    overflow: hidden;
}

.container-boost .boost-content {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2rem;
}

.container-boost h2 {
    color: #fff;
    font-size: 3rem;
    font-weight: 800;
    text-align: center;
}

.btn-boost {
    display: inline-flex;
    align-items: center;
    gap: 0.8rem;
    background: #ffffff;
    color: #6d28d9;
    padding: 1.2rem 2.4rem;
    border-radius: 999px;
    font-weight: 700;
    font-size: 1.6rem;
    border: 2px solid rgba(255,255,255,0.5);
    box-shadow: 0 10px 30px rgba(0,0,0,0.15);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.btn-boost:hover {
    transform: translateY(-2px);
    box-shadow: 0 16px 40px rgba(0,0,0,0.2);
}

.boost-decor {
    position: absolute;
    border-radius: 50%;
    filter: blur(60px);
    opacity: 0.35;
}

.boost-decor-1 {
    width: 300px;
    height: 300px;
    background: #ffffff;
    top: -60px;
    left: -60px;
}

.boost-decor-2 {
    width: 360px;
    height: 360px;
    background: rgba(255,255,255,0.8);
    bottom: -80px;
    right: -80px;
}

@media (max-width: 768px) {
    .container-boost {
        margin: 3rem 1.5rem;
        padding: 4rem 1.5rem;
        border-radius: 18px;
    }
    .container-boost h2 {
        font-size: 2.2rem;
    }
    .btn-boost {
        font-size: 1.5rem;
        padding: 1rem 2rem;
    }
}
