/*
Theme Name: Argos Clínica ACF
Theme URI: https://argospsi.com.br/
Author: Leandro
Author URI: https://argospsi.com.br/
Description: Tema personalizado
Version: 1.0
*/

html {
    scroll-behavior: smooth;
}

body {
    font-family: Arial, sans-serif;
}

.p0 {
    padding: 0 !important;
}

.text-green {
    color: #5295B3;
}

.hero-carousel {
    height: 80vh;
    overflow: hidden;
}

.hero-carousel .carousel-item {
    height: 100%;
}

.hero-carousel img {
    object-fit: cover;
    height: 600px;
    width: 100%;
}

.carousel-caption {
    text-align: left;
    left: 15%;
    right: auto;
    bottom: 35%;
    width: 40%;
}

@media (max-width: 768px) {
    .carousel-caption {
        text-align: center;
        left: 0;
        right: 0;
        bottom: 40%;
        padding: 0 90px;
        width: 100%;
    }
.carousel-indicators {
    bottom: -5%!important;
}
    .hero-carousel {
        height: 50vh;
        overflow: hidden;
    }

    .hero-carousel img {
        object-fit: cover;
        height: 500px;
        width: 100%;
    }
}

/* Estilo personalizado para os indicadores (bolinhas) */
.carousel-indicators [data-bs-target] {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.6);
    transition: background-color 0.3s ease;
    margin: 0 6px;
}

.carousel-indicators .active {
    background-color: #ea7100;
    /* verde para o indicador ativo */
}

.section-title-interna {
      background: linear-gradient(to right, #007ea6, #009cb0);
      color: #fff;
      padding: 50px 0;
      text-align: left;
      margin-top: 4%;
    }

    /* Ajuste para telas menores que 992px (Bootstrap breakpoint) */
    @media (max-width: 991px) {
      .section-title-interna {
        margin-top: 40px;
        /* Espaço extra para o menu mobile */
      }
    }

    .section-content {
      padding: 40px 15px;
      text-align: justify;
    }

.section-title {
    font-weight: bold;
    font-size: 2rem;
    animation: bounceInDown 1.5s;
}

.bg-gradient-section {
    background: linear-gradient(to right, #007ea6, #009cb0);
    color: white;
    padding: 3rem 0;
}

.navbar-nav .nav-link {
    position: relative;
    padding: 8px 16px;
    transition: all 0.3s ease;
    border-radius: 4px;
}

.navbar-nav .nav-link:hover {
    background-color: #5295B3;
    /* verde */
    color: white !important;
}
/* Faz o dropdown abrir no hover no desktop */
    @media (min-width: 992px) {
      .navbar .dropdown:hover .dropdown-menu {
        display: block;
        margin-top: 0;
        /* remove espaço para o efeito ser mais rápido */
      }
    }

.btn-verde {
    background-color: #5295B3;
    color: white;
    border: none;
    border-radius: 7px;
    font-size: 16px;
    padding: 15px 40px;
}

.btn-verde:hover {
    background-color: #004466;
    color: #fff;
}

.btn-branco {
    background-color: white;
    color: #5295B3;
    border: 0;
    border-radius: 7px;
    font-size: 16px;
    padding: 15px 40px;
}

.btn-branco:hover {
    background-color: #004466;
    color: #fff;
}

#quem-somos {
    background-color: #fff;
    /* Pode ajustar se quiser um fundo diferente */
}

#quem-somos p {
    font-size: 1rem;
    line-height: 1.6;
}

#quem-somos img {
    max-width: 100%;
    height: auto;
}

@media (max-width: 767.98px) {
    #quem-somos .section-title {
        font-size: 1.75rem;
    }

    #quem-somos p {
        font-size: 1rem;
    }

    #quem-somos .btn-verde {
        font-size: 1rem;
        padding: 0.6rem 1.2rem;
    }
}

.card-icon {
    font-size: 2rem;
    animation: pulse 2s infinite;
}

/* Card de depoimento */
.testimonial-card {
    background: #fff;
    border-radius: 10px;
    padding: 20px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    height: 100%;
}

/* Setas afastadas no desktop */
.swiper-button-prev,
.swiper-button-next {
    color: #5295B3;
    transform: translateY(-50%);
}

@media (min-width: 992px) {
    .swiper-button-prev {
        left: -50px;
    }

    .swiper-button-next {
        right: -50px;
    }
}

/* No mobile remove setas */
@media (max-width: 767px) {

    .swiper-button-prev,
    .swiper-button-next {
        display: none !important;
    }
}

/* Paginação mais afastada */
.swiper-pagination {
    margin-top: 25px;
    position: relative;
}

.swiper-nav-btn {
    background-color: #5295B3;
    /* cor de fundo */
    color: #fff;
    /* cor do ícone */
    border: none;
    border-radius: 50%;
    /* deixa redondo */
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    transition: background-color 0.3s ease, transform 0.2s ease;
    z-index: 10;
}

.swiper-nav-btn:hover {
    background-color: #41798F;
    /* cor ao passar o mouse */
}

.swiper-prev-btn {
    position: absolute;
    left: -60px;
    /* distância lateral */
    top: 50%;
    transform: translateY(-50%);
}

.swiper-next-btn {
    position: absolute;
    right: -60px;
    top: 50%;
    transform: translateY(-50%);
}

.swiper-nav-btn i {
    font-size: 18px;
}

.card {
    animation: zoomIn 1.5s;
}

footer {
    background: #004466;
    color: white;
    padding: 2rem 0 1rem;
    text-align: center;
    animation: fadeInUp 2s;
}

.social-icons a {
    font-size: 1.5rem;
    color: white;
    margin: 0 0.5rem;
}

.fa-add:before,
.fa-plus:before {
    content: "\2b";
    color: #5295B3 !important;
}

.portfolio .portfolio-item {
    cursor: pointer;
    position: relative;
    display: block;
    max-width: 25rem;
    border-radius: 0.5rem;
    overflow: hidden;
	margin-top: 50px;
}

.portfolio .portfolio-item .portfolio-item-caption {
    position: absolute;
    top: 0;
    left: 0;
    transition: all 0.2s ease-in-out;
    opacity: 0;
    background-color: rgba(255, 255, 255, 0.7);
}

.portfolio .portfolio-item .portfolio-item-caption:hover {
    opacity: 1;
}

.portfolio .portfolio-item .portfolio-item-caption .portfolio-item-caption-content {
    font-size: 1.5rem;
}

.portfolio-modal .btn-close {
    color: #1abc9c;
    font-size: 2rem;
    padding: 1rem;
}

.portfolio-modal .portfolio-modal-title {
    font-size: 2.25rem;
    line-height: 2rem;
}

@media (min-width: 992px) {
    .portfolio-modal .portfolio-modal-title {
        font-size: 3rem;
        line-height: 2.5rem;
    }
}

/* Seção com efeito Parallax */
.parallax {
    background-image: url('https://argospsi.com.br/wp-content/uploads/2025/08/background.png');
    min-height: 400px;
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

@media (max-width: 768px) {
    .parallax {
        background-attachment: scroll;
        /* Melhora desempenho em mobile */
    }
}

/* Espaçamento da seção */
.faq-section {
    padding: 60px 0;
}

/* Estilo do título */
.faq-section h2 {
    font-weight: 700;
    margin-bottom: 40px;
}

.accordion-button:not(.collapsed) {
    background-color: #28a745 !important;
    color: white !important;
    box-shadow: none;
}

/* Deixa o item ativo em verde */
.accordion-button:not(.collapsed) {
    background-color: #5295B3 !important; /* Verde */
    color: white !important;
    box-shadow: none;
}

/* Cor do texto quando fechado */
.accordion-button {
    font-weight: 500;
    color: #333;
}

/* Remove borda interna */
.accordion-button:focus {
    box-shadow: none;
}
.menu-lateral .nav {
    background: #ffffff; /* fundo geral do menu */
    padding: 0;
    border-radius: 6px;
}

.menu-lateral .nav li {
    list-style: none; /* remove bullet points */
    margin: 0;
}

.menu-lateral .nav a {
    display: block;
    padding: 12px 20px;
    color: #5295B3; /* vermelho escuro para texto */
    font-weight: 500;
    text-align: left;
    text-decoration: none;
    transition: background 0.2s ease-in-out, color 0.2s ease-in-out;
	border-top: 1px solid #ccc;
}

.menu-lateral .nav a:hover {
    background: #5295B3; /* leve fundo cinza no hover */
    color: #fff;
}

.menu-lateral .nav .current-menu-item > a {
    background: #A52A2A; /* fundo vermelho do item ativo */
    color: #ffffff;       /* texto branco */
}
/*-- Depoimentos --*/
.testimonial-text {
  display: -webkit-box;
  -webkit-line-clamp: 3; /* limita a 3 linhas */
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.read-more-btn {
  display: inline-block;
  margin: 10px auto 0 auto;
  text-align: center;
  cursor: pointer;
  color: #5295B3; /* mantém a cor do tema */
  font-weight: 500;
  text-decoration: underline;
  background: none;
  border: none;
  padding: 0;
}

/* Swiper slides */
.swiper-slide {
  display: flex;
  justify-content: center; /* centraliza o conteúdo dentro do slide */
}

/* Card de depoimento */
.testimonial-card {
    background: #fff;
    border-radius: 10px;
    padding: 20px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    height: 100%;
    max-width: 350px; /* limite de largura para cards */
    width: 100%;
    box-sizing: border-box;
}

/* Evita que o swiper corte o conteúdo */
.swiper {
    padding-bottom: 40px; /* espaço para paginação se necessário */
}

/* Setas afastadas no desktop */
.swiper-button-prev,
.swiper-button-next {
    color: #5295B3;
    transform: translateY(-50%);
}

@media (min-width: 992px) {
    .swiper-button-prev {
        left: -50px;
    }

    .swiper-button-next {
        right: -50px;
    }
}

/* No mobile remove setas */
@media (max-width: 767px) {
    .swiper-button-prev,
    .swiper-button-next {
        display: none !important;
    }
}

/* Paginação mais afastada */
.swiper-pagination {
    margin-top: 25px;
    position: relative;
}

/* Botões de navegação customizados */
.swiper-nav-btn {
    background-color: #5295B3;
    color: #fff;
    border: none;
    border-radius: 50%;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    transition: background-color 0.3s ease, transform 0.2s ease;
    z-index: 10;
}

.swiper-nav-btn:hover {
    background-color: #41798F;
}

.swiper-prev-btn {
    position: absolute;
    left: -60px;
    top: 50%;
    transform: translateY(-50%);
}

.swiper-next-btn {
    position: absolute;
    right: -60px;
    top: 50%;
    transform: translateY(-50%);
}

.swiper-nav-btn i {
    font-size: 18px;
}

.card-icon {
    font-size: 2rem;
    animation: pulse 2s infinite;
}

.card {
    animation: zoomIn 1.5s;
}

/* Ajuste para responsividade: cards centralizados e espaçamento */
@media (max-width: 991px) {
    .testimonial-card {
        max-width: 90%; /* ocupa quase toda a largura em tablets */
        margin: 0 auto;
    }
}

@media (max-width: 767px) {
    .testimonial-card {
        max-width: 95%; /* ocupa quase toda a largura no mobile */
    }
}

/*Blog*/
.card-title {
    margin-bottom: var(--bs-card-title-spacer-y);
    color: var(--bs-card-title-color);
    text-align: left!important;
	margin: 10px 0;
}
.data {
	font-size:16px;
	text-transform: capitalize;
    position: absolute;
    left: 5%;
}
.btn-link:hover {
    color:#e7e7e7!important;
}
.btn-link {
   color:#5295B3!important;
    text-decoration:none!important;
}
.data-interna {
	font-size:16px;
	text-transform: capitalize;
}
.post-content {}
.post-content h2 {
  font-size: 24px;
}
.post-content h3 {
  font-size: 24px;
}
/* Área do formulário */
/* Caixa do formulário */
.form-box {
  max-width: 500px;
  margin: 0 auto;
  padding: 25px;
}

/* Título */
.titulo-form {
  font-size: 22px;
  margin-bottom: 20px;
  color: #2f8deb;
  font-weight: bold;
  text-align: center;
}

/* Inputs e textarea */
.form-box .wpcf7-form-control {
  width: 100% !important; /* garante largura */
  max-width: 100%;        /* não deixa estourar */
  padding: 8px;
  margin-bottom:0;
  border: 1px solid #ccc;
  border-radius: 8px;
  font-size: 15px;
  transition: 0.3s;
  box-sizing: border-box;
}

.form-box .wpcf7-form-control:focus {
  border-color: #2f8deb;
  box-shadow: 0 0 6px rgba(47,141,235,0.3);
  outline: none;
}

/* Botão CTA */
.form-box .wpcf7-submit {
  display: inline-block;
  background: #2f8deb;
  color: #fff;
  border: none;
  cursor: pointer;
  font-weight: bold;
  padding: 12px 20px;
  border-radius: 8px;
  transition: 0.3s;
  width: auto;         /* deixa do tamanho do conteúdo */
  min-width: 150px;    /* largura mínima */
  text-align: center;
}

.form-box .wpcf7-submit:hover {
  background: #1c6bbf;
}

/* Responsividade */
@media (max-width: 768px) {
  .form-box {
    max-width: 100%;
    padding: 15px;
  }

  .form-box .wpcf7-submit {
    width: 100%; /* no mobile CTA ocupa largura total */
  }
}

/* Mensagens */
.wpcf7-response-output {
  margin-top: 15px;
  padding: 12px;
  border-radius: 6px;
  font-weight: bold;
}

.wpcf7-mail-sent-ok {
  background: #d4edda;
  border: 1px solid #28a745;
  color: #155724;
}

.wpcf7-validation-errors,
.wpcf7-not-valid-tip {
  background: #f8d7da;
  border: 1px solid #dc3545;
  color: #721c24;
  padding: 8px;
  border-radius: 6px;
}