/* Estilos Globais */
body {
    font-family: 'Arial', sans-serif; /* Usar uma fonte próxima da imagem, ajuste conforme necessário */
    background-color: #f0f0f0; /* Cor de fundo geral, se houver fora das seções */
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

/* Cabeçalho Superior */
.top-header {
    background-color: #3E8A9C; /* Azul-esverdeado do header */
    color: white;
}

.header-title {
    font-weight: bold;
    color: #F2CC4C; /* Amarelo do título */
    font-size: 2.2rem; /* Ajuste o tamanho conforme a imagem */
    margin-bottom: 0.5rem;
    font-size: 40px;
}

.timer-display {
    font-size: 3.5rem; /* Tamanho grande para o timer */
    font-weight: bold;
    color: white; /* Cor do timer, verificar se é a mesma do título ou branca */
    margin-top: 0.25rem;
}

/* Cards de Preços */
.pricing-plans {
    padding-top: 20px;
    padding-bottom: 30px;
}

.pricing-card {
    border: 1px solid #ddd;
    border-radius: 15px; /* Bordas arredondadas como na imagem */
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    overflow: hidden; /* Para garantir que o header não ultrapasse o border-radius */
    display: flex;
    flex-direction: column;
}

.pricing-card .card-header {
    padding: 15px 0;
    font-weight: bold;
    font-size: 1.3rem;
    border-bottom: none; /* Remover borda padrão do Bootstrap */
}

.pricing-card .card-body {
    padding: 20px;
    flex-grow: 1; /* Faz o corpo do card ocupar o espaço disponível */
    display: flex;
    flex-direction: column;
    justify-content: space-between; /* Alinha itens ao longo do eixo principal */
}

.product-image {
    max-width: 100%; /* Ajustar conforme o tamanho desejado para a imagem do produto */
    margin-left: auto;
    margin-right: auto;
    display: block;
}

.package-title {
    font-size: 35px;
    font-weight: bold;
    color: #4f9eaa;
    margin: 0px;
}

.package-supply {
    font-size: 25px;
    color: #000;
    margin-bottom: 15px;
    font-weight: 700;
}

.price {
    margin: 0;
}

.price-amount {
    font-size: 5.5rem;
    font-weight: bold;
    color: #4f9eaa;
}

.price-unit {
    font-size: 1rem;
    color: #777;
}

.shipping-cost {
    font-size: 26px;
    color: #ff0000;
    margin-bottom: 15px;
}

.add-to-cart-btn {
    max-width: 100%; /* Ajustar o tamanho do botão */
    cursor: pointer;
    align-self: center; /* Centraliza o botão no flex container */
}

.payment-methods-img {
    max-width: 100%; /* Ajustar o tamanho da imagem dos cartões */
    margin-top: 10px;
    align-self: center; /* Centraliza a imagem no flex container */
}

.original-price {
    font-size: 1.5rem;
    color: #777;
}

.original-price del {
    color: #999;
}

.current-price-small {
    font-weight: bold;
    color: #555;
}

/* Estilos Específicos dos Planos */

/* Basic Plan */
.basic-plan .card-header {
    background-color: #B0B0B0; /* Cinza para o header do Basic */
    color: #fff; /* Cor do texto no header */
}
.basic-plan {
    background-color: #fff; /* Fundo branco para o corpo do card Basic */
}


/* Popular Plan */
.popular-plan {
    border: 5px solid #D9534F; /* Borda destacada para o plano popular */
    position: relative; /* Para o posicionamento do badge "MOST POPULAR" */
    background-color: #FFF9E0; /* Amarelo claro para o corpo do plano popular */
}

.popular-plan .popular-header {
    background-color: #D9534F; /* Vermelho para o header do Popular */
    color: white;
    font-size: 1rem; /* Ajustar tamanho */
    padding: 8px 0;
}

.popular-plan .package-title,
.popular-plan .package-supply,
.popular-plan .price-amount,
.popular-plan .price-unit,
.popular-plan .original-price,
.popular-plan .current-price-small {
    color: #333; /* Cor de texto escura para melhor contraste no fundo amarelo */
}


.save-badge-container {
    position: relative;
    display: inline-block; /* Para o badge se posicionar corretamente em relação à imagem */
    margin-left: auto;
    margin-right: auto;
}

.save-badge-popular {
    position: absolute;
    top: 20px; /* Ajustar conforme a imagem */
    right: 0px; /* Ajustar conforme a imagem */
    background-color: #E74C3C; /* Vermelho para o badge "SAVE" */
    color: white;
    padding: 8px 12px;
    font-size: 0.9rem;
    font-weight: bold;
    border-radius: 50%; /* Formato circular */
    transform: rotate(15deg); /* Rotação leve */
    line-height: 1;
    text-align: center;
}
.save-badge-popular::before { /* Para o texto "SAVE" */
    content: "SAVE";
    display: block;
    font-size: 0.8em;
}
.save-badge-popular::after { /* Para o valor "$600" */
    content: "$600";
    display: block;
    font-size: 1.1em;
    font-weight: bold;
}


.benefits-list {
    padding-left: 0;
    margin: 0;
}

.benefits-list .benefit-item {
    padding: 8px 15px;
    margin-bottom: 8px;
    border-radius: 20px; /* Bordas arredondadas para os itens de benefício */
    font-weight: bold;
    color: white;
    font-size: 1.2rem;
}

.benefit-item.vip-support {
    background-color: #D9534F; /* Vermelho para VIP Support */
}

.benefit-item.free-books {
    background-color: #004085; /* Verde para Free Books */
}

.benefit-item.free-shipping {
    background-color: #006b18; /* Verde para Free Shipping */
}


/* Bundle Plan */
.bundle-plan .card-header {
    background-color: #B0B0B0; /* Cinza para o header do Bundle */
    color: #fff;
}
.bundle-plan {
    background-color: #fff; /* Fundo branco para o corpo do card Bundle */
}

.save-badge-bundle {
    position: absolute;
    top: 20px; /* Ajustar conforme a imagem */
    right: 10px; /* Ajustar conforme a imagem */
    background-color: #3E8A9C; /* Azul-esverdeado para o badge "SAVE" do bundle */
    color: white;
    padding: 10px 10px;
    font-size: 0.9rem;
    font-weight: bold;
    border-radius: 50%;
    transform: rotate(15deg);
    line-height: 1;
    text-align: center;
}
.save-badge-bundle::before {
    content: "SAVE";
    display: block;
    font-size: 0.8em;
}
.save-badge-bundle::after {
    content: "$270"; /* Ajustar valor para o bundle */
    display: block;
    font-size: 1.1em;
    font-weight: bold;
}


.benefit-item.free-book-bundle {
    background-color: #004085; /* Azul para Free Bonus Book no Bundle */
}
.benefit-item.free-shipping-bundle {
     background-color: #006b18; /* Verde para Free Shipping no Bundle */
}


/* Seção de Avaliação de Clientes */
.customer-reviews {
    background-color: #EAEAEA; /* Cinza claro para o fundo da seção de reviews */
    padding: 25px 0;
    margin-top: 20px; /* Espaçamento acima da seção */
}

.reviews-title {
    font-size: 1.4rem;
    font-weight: bold;
    color: #333;
    margin-bottom: 10px;
}

.star-rating span:first-child {
    color: #FFC107; /* Amarelo para as estrelas */
    font-size: 2rem; /* Tamanho das estrelas */
}

.rating-value {
    font-size: 1.2rem;
    font-weight: bold;
    color: #007BFF; /* Azul para o valor da avaliação */
    margin-left: 10px;
}

.reviews-count {
    font-size: 18px;
    color: #000;
    margin-top: 5px;
}


/* Responsividade */
@media (max-width: 991.98px) { /* Tablets e abaixo */
    .header-title {
        font-size: 1.8rem;
    }
    .timer-display {
        font-size: 2.8rem;
    }
    .pricing-card .package-title {
        font-size: 1.5rem;
    }
    .pricing-card .price-amount {
        font-size: 2.8rem;
    }
    .save-badge-popular, .save-badge-bundle {
        font-size: 0.8rem;
        padding: 6px 10px;
        top: 10px;
        right: 5px;
    }
}

@media (max-width: 767.98px) { /* Dispositivos móveis */
    .header-title {
        font-size: 1.6rem;
    }
    .timer-display {
        font-size: 2.5rem;
    }
    .pricing-card {
        margin-bottom: 20px; /* Adiciona mais espaço entre os cards empilhados */
    }
    .row > * {
        padding-left: calc(var(--bs-gutter-x) * .25); /* Reduzir padding lateral nos cards */
        padding-right: calc(var(--bs-gutter-x) * .25);
    }
    .benefits-list .benefit-item {
        font-size: 25px;
        padding: 6px 12px;
    }
    .add-to-cart-btn {
        max-width: 100%;
    }
}

@media (max-width: 575.98px) { /* Dispositivos móveis pequenos */
    .header-title {
        font-size: 1.4rem;
    }
    .timer-display {
        font-size: 2rem;
    }
     .pricing-card .package-title {
        font-size: 3rem;
    }
    .pricing-card .price-amount {
        font-size: 7rem;
    }
    .save-badge-popular, .save-badge-bundle {
        /* Ajustes menores se necessário para o badge em telas muito pequenas */
    }
}

/* Seção de Garantia de Devolução do Dinheiro */
.money-back-guarantee-section {
    background-color: #fff; /* Fundo branco para a seção inteira, se necessário, ou pode ser o do body */
}

.guarantee-box {
    background-color: #F0F8FF; /* Azul bem clarinho (AliceBlue) ou similar ao print */
    border: 3px dashed #FFC107; /* Borda tracejada amarela/dourada */
    border-radius: 15px;
    padding: 10px 30px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

.money-back-seal-img {
    max-width: 180px; /* Ajustar tamanho conforme a imagem original */
}

.guarantee-star-img {
    width: 55px; /* Ajustar tamanho das estrelas */
    margin: 0 5px;
}

.guarantee-star-img-maior {
    width: 65px; /* Ajustar tamanho das estrelas */
    margin: 0 5px;
}

.guarantee-title {
    font-weight: bold;
    color: #005A70; /* Azul/Teal escuro para o título */
    font-size: 2rem; /* Ajustar tamanho */
    margin-top: 10px;
}

.guarantee-points .row {
    margin-bottom: 1.5rem;
}

.guarantee-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    background-color: #3E8A9C; /* Mesmo azul/teal do header inicial */
    color: white;
    font-size: 1.2rem;
    font-weight: bold;
    border-radius: 50%;
    margin-right: 15px;
}

.guarantee-text {
    font-size: 1rem;
    color: #333;
    line-height: 1.6;
}

.guarantee-text strong {
    color: #005A70;
}

.guarantee-text .highlight-donation {
    color: #3E8A9C; /* Cor de destaque para a doação */
    font-weight: bold;
}

.certification-seals img {
    max-width: 700px; /* Ajustar tamanho dos selos de certificação */
    margin: 0 10px;
}

/* Responsividade para a Seção de Garantia */
@media (max-width: 767.98px) {
    .guarantee-box {
        padding: 20px;
    }
    .money-back-seal-img {
        max-width: 150px;
    }
    .guarantee-star-img {
        width: 30px;
    }
    .guarantee-title {
        font-size: 1.7rem;
    }
    .guarantee-number {
        width: 30px;
        height: 30px;
        font-size: 1rem;
        margin-right: 10px;
    }
    .guarantee-text {
        font-size: 0.95rem;
    }
    .certification-seals img {
        max-width: 80px;
        margin: 0 5px 10px; /* Adiciona margem inferior para empilhamento */
    }
}

@media (max-width: 575.98px) {
    .money-back-seal-img {
        max-width: 120px;
    }
    .guarantee-star-img {
        width: 25px;
    }
    .guarantee-star-img-maior{
        width: 35px;
    }
    .guarantee-title {
        font-size: 1.5rem;
    }
    .certification-seals img {
        max-width: 300px;
    }
}

/* Seção de Bônus Grátis */
.free-bonuses-section {
    background-color: #3e8a9c; /* Azul/Verde claro da seção de bônus */
    color: white; /* Texto padrão branco para melhor contraste */
}

.bonuses-main-title {
    font-weight: bold;
    font-size: 2.3rem;
    color: white;
}

.bonuses-main-title .highlight-yellow {
    color: #F2CC4C; /* Amarelo do destaque no título */
}

.bonus-card {
    background-color: white;
    color: #333; /* Cor de texto escura para dentro do card */
    border-radius: 10px;
    padding: 25px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.15);
    display: flex;
    flex-direction: column;
}

.bonus-image {
    border-radius: 8px;
    border: 3px solid #E0E0E0; /* Borda sutil na imagem */
    max-width: 100%; /* Garante que a imagem não ultrapasse o card */
    height: auto; /* Mantém a proporção da imagem */
    margin-left: auto;
    margin-right: auto;
    display: block;
}

.bonus-tag {
    color: #D9534F; /* Vermelho para "BONUS#1" */
    font-size: 1.1rem;
    font-weight: bold;
    margin-top: 15px;
    margin-bottom: 5px;
}

.bonus-title {
    font-size: 1.6rem;
    font-weight: bold;
    color: #005A70; /* Azul escuro para o título do bônus */
    margin-bottom: 10px;
}

.bonus-price {
    font-size: 22px;
    color: #555;
    margin-bottom: 15px;
}

.bonus-price del {
    color: #999;
}

.bonus-price .text-free {
    color: #28A745; /* Verde para "FREE" */
    font-weight: bold;
}

.bonus-description {
    font-size: 0.95rem;
    color: #444;
    line-height: 1.5;
    margin-bottom: 15px;
}

.bonus-details-list {
    font-size: 0.9rem;
    color: #555;
    padding-left: 20px; /* Para alinhar com marcadores de lista padrão */
    line-height: 1.5;
    margin-bottom: 0; /* Remover margem inferior da lista se for o último elemento */
    flex-grow: 1; /* Permite que a lista ocupe espaço, empurrando outros elementos se necessário */
}


/* Seção CTA Inferior */
.bottom-cta-section {
    background-color: #5FA7B8; /* Mesmo fundo da seção de bônus */
    color: white;
    /* align-items-center já está na row via Bootstrap */
}

.bottom-cta-title {
    font-weight: bold;
    font-size: 1.9rem; /* Ajustado para proporção com a imagem */
    color: white;
    line-height: 1.3; /* Melhorar espaçamento entre linhas do título */
    /* margin-bottom: 0.5rem; - Será controlado pelo mb-3 da coluna e mb-0 do subtítulo */
}

.bottom-cta-title .highlight-yellow {
    color: #F2CC4C; /* Amarelo do destaque */
}

.bottom-cta-subtitle {
    font-size: 17px; /* Ajustado */
    color: #E0E0E0; /* Cinza claro para o subtítulo */
    /* margin-bottom: 1.5rem; - Removido, HTML tem mb-0 e a coluna tem mb-3/mb-md-0 */
}

.truck-icon {
    max-width: 90px; /* Ajustado para proporção */
    /* margin: my-3; alterado para mb-2 no HTML */
}

.bottom-timer {
    font-size: 2.2rem; /* Ajustado para proporção */
    font-weight: bold;
    color: white; /* Cor do timer */
    margin-top: 0; /* Ajustado, caminhão tem mb-2 */
    line-height: 1.1;
}

/* Responsividade para Seção de Bônus e CTA Inferior */
@media (max-width: 991.98px) { /* Tablets e um pouco maiores */
    .bonuses-main-title {
        font-size: 2rem;
    }
    .bonus-title {
        font-size: 1.4rem;
    }
    .bottom-cta-title {
        font-size: 1.7rem; /* Ajustado */
    }
    .bottom-timer {
        font-size: 2rem; /* Ajustado */
    }
    .truck-icon {
        max-width: 80px; /* Ajustado */
    }
}

@media (max-width: 767.98px) { /* Dispositivos móveis médios - cards empilhados */
    .bonuses-main-title {
        font-size: 1.8rem;
        margin-bottom: 30px; /* Mais espaço abaixo do título principal em mobile */
    }
    .bonus-card {
        margin-bottom: 30px; /* Espaço entre cards quando empilhados */
    }
    .col-lg-5.col-md-6.mb-4.d-flex.align-items-stretch:last-child .bonus-card {
        margin-bottom: 0; /* Remove margem do último card */
    }

    /* Para a seção CTA inferior quando empilhada */
    .bottom-cta-section .col-md-7, .bottom-cta-section .col-lg-8 { /* Coluna do texto */
        margin-bottom: 1rem; /* Espaço entre texto e imagem/timer quando empilhado */
    }
    .bottom-cta-title {
        font-size: 1.6rem; /* Ajustado */
    }
    .truck-icon {
        max-width: 70px; /* Ajustado */
        margin-bottom: 0.25rem !important; /* Forçar menor margem no mobile */
    }
    .bottom-timer {
        font-size: 1.9rem; /* Ajustado */
    }
}

@media (max-width: 575.98px) {
    .bonuses-main-title {
        font-size: 1.6rem;
    }
    .bonus-title {
        font-size: 25px;
    }
    .bonus-description, .bonus-details-list {
        font-size: 0.85rem;
    }
    .bottom-cta-title {
        font-size: 1.4rem; /* Ajustado */
    }
    .truck-icon {
        max-width: 60px; /* Ajustado */
    }
    .bottom-timer {
        font-size: 1.7rem; /* Ajustado */
    }
}

/* Seção de Garantia de Qualidade */
.quality-assurance-section {
    background-color: #f8f9fa; /* Cinza bem claro, similar ao Bootstrap "bg-light" */
}

.quality-stars-img {
    max-width: 200px; /* Ajustar conforme o tamanho da sua imagem de estrelas */
    margin-bottom: 1rem; /* Espaço abaixo das estrelas */
}

.quality-title {
    font-size: 2.5rem;
    font-weight: bold;
    color: #3E8A9C; /* Azul/Teal, similar ao usado no cabeçalho */
    margin-bottom: 1.5rem;
}

.quality-description {
    font-size: 1.1rem;
    line-height: 1.6;
    color: #333;
    max-width: 750px; /* Limita a largura para melhor legibilidade */
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 2.5rem;
}

.quality-seals-row-img {
    max-width: 700px; /* Para ser responsiva, mas pode precisar de um max-width específico */
    /* Exemplo: max-width: 600px; */
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 3rem; /* Espaço considerável antes do botão CTA */
}

.quality-cta-button-img {
    max-width: 711px; /* Ajustar conforme o tamanho da imagem do seu botão */
    transition: transform 0.2s ease-in-out;
}

.cta-button-link:hover .quality-cta-button-img {
    transform: scale(1.05); /* Leve efeito de zoom no hover */
}

/* Responsividade para Seção de Garantia de Qualidade */
@media (max-width: 991.98px) {
    .quality-title {
        font-size: 2.2rem;
    }
    .quality-description {
        font-size: 1rem;
    }
}

@media (max-width: 767.98px) {
    .quality-title {
        font-size: 2rem;
    }
    .quality-stars-img {
        max-width: 180px;
    }
    .quality-seals-row-img {
        max-width: 90%; /* Permite que ocupe mais da largura em mobile */
    }
    .quality-cta-button-img {
        max-width: 300px;
    }
}

@media (max-width: 575.98px) {
    .quality-title {
        font-size: 1.8rem;
    }
    .quality-description {
        font-size: 0.9rem;
    }
    .quality-stars-img {
        max-width: 150px;
    }
    .quality-cta-button-img {
        max-width: 400px;
    }
}

/* Seção de Depoimentos */
.testimonials-section {
    background-color: #fff; /* Fundo branco para esta seção */
}

.testimonials-main-title {
    font-size: 2.8rem;
    font-weight: bold;
    color: #3E8A9C; /* Azul/Teal similar a outros títulos */
    margin-bottom: 0.5rem;
}

.testimonials-subtitle-wrapper {
    /* Necessário para centralizar o elemento inline-block com fundo */
}

.testimonials-subtitle {
    background-color: #5FA7B8; /* Cor de fundo do subtítulo (azul/verde claro) */
    color: white;
    font-size: 2.2rem;
    font-weight: bold;
    border-radius: 8px;
    line-height: 1.4; /* Ajuste para altura do fundo */
}

.user-photos-collage-img {
    max-width: 700px; /* Ajustar conforme a largura da sua imagem de colagem */
    display: block;
    margin-left: auto;
    margin-right: auto;
    border-radius: 8px;
}

.testimonial-card {
    max-width: 750px; /* Largura do card de depoimento */
    /* background-color: #f8f9fa; O fundo parece ser branco na imagem */
    padding: 20px;
    border-bottom: 1px solid #eee; Sem borda visível na imagem */
}

.testimonial-user-photo {
    width: 70px; /* Tamanho da foto do usuário */
    height: 70px;
    border-radius: 8px; /* Bordas levemente arredondadas */
    object-fit: cover;
}

.testimonial-rating-info {
    display: flex;
    align-items: center;
    flex-wrap: wrap; /* Permite quebrar linha em telas menores */
}

.testimonial-stars-img {
    height: 25px; /* Ajustar altura da imagem das estrelas */
    width: auto;
}

.stars-text-badge {
    background-color: #28A745; /* Verde para o selo "5 Stars" */
    color: white;
    padding: 3px 8px;
    font-size: 0.85rem;
    font-weight: bold;
    border-radius: 5px;
    margin-left: 0.5rem; /* Espaço após as estrelas de imagem */
}

.verified-purchase {
    font-size: 0.9rem;
    color: #555;
    display: inline-flex; /* Para alinhar o checkmark */
    align-items: center;
}

.check-icon {
    color: #28A745; /* Verde para o checkmark */
    font-weight: bold;
    margin-right: 0.3rem;
}

.testimonial-quote {
    font-size: 1.25rem;
    font-style: italic;
    color: #333;
    line-height: 1.6;
    position: relative;
    padding-left: 25px; /* Espaço para a aspa */
}

.testimonial-quote::before {
    content: "\201C"; /* Aspa esquerda grande */
    font-family: Georgia, serif;
    font-size: 3rem;
    color: #777;
    position: absolute;
    left: -5px;
    top: -5px;
}

.testimonial-author {
    font-size: 1rem;
    font-weight: bold;
    color: #005A70;
}

.author-location {
    color: #555;
    font-weight: normal;
}

.testimonial-hr {
    border-top: 1px solid #ddd;
    max-width: 750px; /* Mesma largura do card */
    margin-left: auto;
    margin-right: auto;
}

/* Responsividade para Seção de Depoimentos */
@media (max-width: 991.98px) {
    .testimonials-main-title {
        font-size: 2.5rem;
    }
    .testimonials-subtitle {
        font-size: 2rem;
    }
    .testimonial-quote {
        font-size: 1.15rem;
    }
}

@media (max-width: 767.98px) {
    .testimonials-main-title {
        font-size: 2.2rem;
    }
    .testimonials-subtitle {
        font-size: 1.8rem;
        padding-left: 20px;
        padding-right: 20px;
    }
    .user-photos-collage-img {
        max-width: 95%;
        margin-bottom: 3rem;
    }
    .testimonial-card {
        padding: 15px;
    }
    .testimonial-header {
        flex-direction: column; /* Empilha foto e info em mobile */
        align-items: flex-start; /* Alinha à esquerda no empilhamento */
    }
    .testimonial-user-photo {
        margin-bottom: 0.75rem; /* Espaço abaixo da foto quando empilhado */
    }
    .testimonial-quote {
        font-size: 1.1rem;
    }
}

@media (max-width: 575.98px) {
    .testimonials-main-title {
        font-size: 2rem;
    }
    .testimonials-subtitle {
        font-size: 1.6rem;
    }
    .testimonial-quote {
        font-size: 1rem;
        padding-left: 20px;
    }
    .testimonial-quote::before {
        font-size: 2.5rem;
    }
    .stars-text-badge, .verified-purchase {
        font-size: 0.8rem;
    }
}

/* Seção FAQ */
.faq-section {
    background-color: #5FA7B8; /* Azul/Verde claro da imagem de fundo */
    color: white;
}

.faq-main-title {
    font-size: 2.8rem;
    font-weight: bold;
    color: white; /* Título branco como na imagem */
    margin-bottom: 2.5rem !important; /* Forçar mais espaço abaixo do título */
}

.accordion {
    max-width: 800px; /* Limita a largura do acordeão */
    margin-left: auto;
    margin-right: auto;
}

.accordion-item {
    background-color: transparent; /* Remove fundo branco padrão do Bootstrap */
    border: none; /* Remove borda padrão do Bootstrap */
    margin-bottom: 1rem; /* Espaço entre itens do FAQ */
}

.accordion-header {
    margin-bottom: 0;
}

.accordion-button {
    background-color: white;
    color: #3E8A9C; /* Cor do texto da pergunta, azul/teal escuro */
    font-weight: bold;
    font-size: 1.1rem;
    border-radius: 8px !important; /* Bordas arredondadas para o botão da pergunta */
    padding: 1rem 1.5rem;
    text-align: left;
    width: 100%;
    border: none; /* Remover borda do botão */
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    transition: background-color 0.15s ease-in-out, border-radius 0.15s ease-in-out;
}

.accordion-button:not(.collapsed) {
    background-color: #f8f9fa; /* Fundo levemente diferente quando expandido */
    color: #005A70; /* Cor de texto um pouco mais escura quando expandido */
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
    border-bottom-left-radius: 0 !important; /* Remove arredondamento inferior esquerdo quando expandido */
    border-bottom-right-radius: 0 !important; /* Remove arredondamento inferior direito quando expandido */
}

/* Estilo da seta padrão do Bootstrap (se quiser customizar mais, precisaria de SVG ou :after) */
.accordion-button::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%233E8A9C'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    /* Se a seta na imagem é uma simples " > ", talvez seja melhor usar :after com content. */
    /* A imagem mostra um ">", então vamos substituir o ícone padrão do Bootstrap */
    background-image: none; /* Remove o chevron padrão do Bootstrap */
    content: ">"; /* Adiciona o caractere ">" */
    font-family: 'Courier New', Courier, monospace; /* Fonte monoespaçada para melhor visual da seta */
    font-weight: bold;
    font-size: 1.5em;
    margin-left: auto; /* Empurra para a direita */
    transform: rotate(0deg); /* Estado inicial */
    transition: transform 0.3s ease;
}

.accordion-button:not(.collapsed)::after {
    transform: rotate(90deg); /* Rotaciona a seta quando expandido */
    /* content: "v"; Se quiser trocar o caractere quando aberto */
}

.accordion-body {
    background-color: #E0EBEF; /* Cor de fundo da resposta (um cinza azulado claro) */
    color: #333; /* Cor de texto escura para a resposta */
    padding: 1.5rem;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
    font-size: 1rem;
    line-height: 1.6;
}

/* Responsividade para Seção FAQ */
@media (max-width: 767.98px) {
    .faq-main-title {
        font-size: 2.4rem;
    }
    .accordion-button {
        font-size: 1rem;
        padding: 0.8rem 1.2rem;
    }
    .accordion-body {
        font-size: 0.95rem;
        padding: 1.2rem;
    }
}

@media (max-width: 575.98px) {
    .faq-main-title {
        font-size: 2.1rem;
    }
    .accordion-button {
        font-size: 0.95rem;
    }
    .accordion-button::after {
        font-size: 1.3em;
    }
}

/* Rodapé do Site */
.site-footer {
    background-color: #f8f9fa; /* Cinza bem claro, similar ao Bootstrap "bg-light" */
    border-top: 1px solid #e9ecef; /* Linha sutil no topo do rodapé */
}

.footer-links .list-inline-item {
    margin-left: 0.75rem;
    margin-right: 0.75rem;
}

.footer-links a {
    color: #6c757d; /* Cinza escuro para os links */
    text-decoration: none;
    font-size: 0.95rem;
    transition: color 0.2s ease-in-out;
}

.footer-links a:hover {
    color: #343a40; /* Cor mais escura no hover */
    text-decoration: underline;
}

.footer-copyright-text {
    font-size: 0.8rem;
    color: #868e96; /* Cinza um pouco mais claro para o texto de copyright */
    line-height: 1.5;
    margin-top: 1rem; /* Espaço acima do texto de copyright */
}

main {
    flex: 1;
} 