/*
IAVI Custom CSS - Esquema de Cores Personalizado
Cores: Branco, Cinza, Azul e Azul Escuro
*/

:root {
  /* Cores IAVI */
  --body: #fff;
  --black: #000;
  --white: #fff;
  --theme: #0066CC;        /* Azul principal */
  --theme-2: #003366;      /* Azul escuro */
  --header: #003366;       /* Azul escuro para títulos */
  --text: #666666;         /* Cinza para texto */
  --text-2: #0066CC;       /* Azul para texto destaque */
  --border: #C9C9C9;       /* Cinza claro para bordas */
  --bg: #F5F5F5;          /* Cinza muito claro para fundos */
  --bg-2: #003366;         /* Azul escuro para fundos alternativos */
  --box-shadow: 0px 1px 14px 0px rgba(0, 0, 0, 0.13);
}

/* Cores do Header */
.header-top-section-2 {
  background-color: var(--theme-2);
}

.header-top-section-2.header-inner {
  background-color: var(--theme-2);
}

/* Botões */
.theme-btn {
  background-color: var(--theme);
}

.theme-btn::before {
  background-color: var(--theme-2);
}

.theme-btn:hover {
  color: var(--white);
}

/* Seções com fundo */
.section-bg-1 {
  background-color: var(--bg);
}

/* Footer */
.footer-section-2 {
  background-color: var(--theme-2);
}

.footer-bg-2 {
  background-color: var(--theme-2);
}

/* Hero Section */
.hero-2 {
  background-color: var(--theme);
}

/* Hero Section - Imagem de capa responsiva */
.hero-section.hero-2 {
  background-image: url('../img/CAPA 2.png') !important;
  background-size: cover !important;
  background-position: center top !important;
  background-repeat: no-repeat !important;
  min-height: 700px !important;
  height: 700px !important;
  max-height: 700px !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 !important;
}

/* Ajustes no conteúdo do Hero */
.hero-section.hero-2 .hero-content {
  margin-top: auto !important;
  padding-top: 0 !important;
}

.hero-section.hero-2 .hero-content h4 {
  font-size: 18px !important;
  margin-bottom: 15px !important;
  color: #ffffff !important;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}

.hero-section.hero-2 .hero-content h1 {
  font-size: 48px !important;
  line-height: 1.2 !important;
  margin-bottom: 30px !important;
  color: #ffffff !important;
  text-shadow: 2px 2px 6px rgba(0, 0, 0, 0.4);
}

.hero-section.hero-2 .hero-button-item {
  margin-top: 0 !important;
}

/* Mobile - usa home.iavi.png com overlay e texto */
@media (max-width: 768px) {
  .hero-section.hero-2 {
    background-image: linear-gradient(rgba(13, 61, 61, 0.5), rgba(13, 61, 61, 0.5)), url('../img/home.iavi.png') !important;
    background-color: #0d3d3d !important;
    min-height: 500px !important;
    max-height: 500px !important;
    height: 500px !important;
    padding: 40px 20px !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .hero-section.hero-2 .left-shape,
  .hero-section.hero-2 .right-shape,
  .hero-section.hero-2 .left-shape-2 {
    display: none !important;
  }

  .hero-section.hero-2 .container {
    position: relative;
    z-index: 10;
  }

  .hero-section.hero-2 .hero-content {
    text-align: center;
    padding: 0 20px !important;
  }

  .hero-section.hero-2 .hero-mobile-text {
    display: block !important;
    color: #ffffff !important;
    font-size: 38px !important;
    font-weight: 900 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    text-shadow:
      2px 2px 4px rgba(0, 0, 0, 0.9),
      4px 4px 8px rgba(0, 0, 0, 0.8),
      6px 6px 12px rgba(0, 0, 0, 0.7),
      0 0 40px rgba(0, 0, 0, 0.9) !important;
    margin: 0 !important;
    padding: 30px 20px !important;
    animation: fadeInUp 1s ease-out !important;
    letter-spacing: 0.5px !important;
    background-color: rgba(13, 61, 61, 0.3) !important;
    border-radius: 15px !important;
    backdrop-filter: blur(5px) !important;
    -webkit-backdrop-filter: blur(5px) !important;
  }

  @keyframes fadeInUp {
    from {
      opacity: 0;
      transform: translateY(30px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
}

/* No desktop, ocultar o container com o texto */
@media (min-width: 769px) {
  .hero-section.hero-2 .container {
    display: none !important;
  }
}

.hero-section.hero-2 .hero-content h4 {
  font-size: 16px !important;
  color: #ffffff !important;
}

  .hero-section.hero-2 .hero-content h1 {
    font-size: 32px !important;
    margin-bottom: 20px !important;
    color: #ffffff !important;
  }

  .hero-section.hero-2 .hero-content p {
    color: #ffffff !important;
  }
}

/* Nossa História - Hero Section com CAPA 1 */
.our-story-hero {
  background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url('../img/CAPA 1.png') !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  min-height: 600px !important;
  height: 600px !important;
  max-height: 600px !important;
  display: flex !important;
  align-items: center !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Mobile - usa nova imagem */
@media (max-width: 768px) {
  .our-story-hero {
    background-image: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), url('../img/imagem_2025-11-28_104203866.png') !important;
    min-height: 600px !important;
    max-height: 600px !important;
    height: 600px !important;
    background-size: cover !important;
    background-position: 70% center !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 50px 0 !important;
  }

  .our-story-hero .container {
    width: 100% !important;
  }

  .our-story-hero .page-heading {
    text-align: center !important;
    width: 100% !important;
  }

  .our-story-hero .breadcrumb-sub-title {
    text-align: center !important;
    margin-bottom: 20px !important;
  }

  .our-story-hero .breadcrumb-sub-title h1 {
    color: #ffffff !important;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
    font-size: 42px !important;
  }

  .our-story-hero .breadcrumb-items {
    justify-content: center !important;
    text-align: center !important;
  }

  .our-story-hero .breadcrumb-items li {
    color: #ffffff !important;
  }

  .our-story-hero .breadcrumb-items li a {
    color: #ffffff !important;
  }

  .our-story-hero .breadcrumb-items li i {
    color: #ffffff !important;
  }
}

/* Ocultar breadcrumbs em todas as páginas (mobile e desktop) */
.breadcrumb-items {
  display: none !important;
}

/* Links de navegação */
.main-menu ul li a:hover {
  color: var(--theme);
}

/* Counter Section - Com padrão de fundo sutil */
.counter-section-2 {
  background-color: #f8f9fa;
  background-image:
    radial-gradient(circle at 20% 50%, rgba(0, 102, 204, 0.03) 0%, transparent 50%),
    radial-gradient(circle at 80% 80%, rgba(0, 51, 102, 0.03) 0%, transparent 50%),
    radial-gradient(circle at 40% 20%, rgba(0, 102, 204, 0.02) 0%, transparent 50%);
  background-size: 100% 100%;
  position: relative;
  overflow: hidden;
}

.counter-section-2::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image:
    repeating-linear-gradient(90deg, transparent, transparent 2px, rgba(0, 102, 204, 0.02) 2px, rgba(0, 102, 204, 0.02) 4px),
    repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(0, 102, 204, 0.02) 2px, rgba(0, 102, 204, 0.02) 4px);
  opacity: 0.3;
  pointer-events: none;
  z-index: 0;
}

/* CTA Section */
.cta-section {
  background-color: var(--white);
}

.cta-contact-section-2 {
  background-color: var(--bg);
  margin-bottom: 80px;
}

/* Ajuste de espaçamento no mobile */
@media (max-width: 768px) {
  .cta-contact-section-2 {
    margin-bottom: 60px !important;
    padding: 40px 0 !important;
  }
}

/* Pricing Cards */
.pricing-card-item-2 {
  border-color: var(--theme);
}

/* Donation Cards */
.donation-card-item-2 .theme-btn {
  background-color: var(--theme);
}

.donation-card-item-2 .theme-btn.style-2 {
  background-color: var(--theme-2);
}

/* Event Section */
.upcoming-event-box.event-acive-box {
  background-color: var(--theme);
}

.upcoming-event-box.event-acive-box h5 a,
.upcoming-event-box.event-acive-box .event-list li {
  color: var(--white);
}

/* Testimonial */
.testimonial-section-2 .star i {
  color: var(--theme);
}

/* News/Blog */
.news-card-items-2:hover {
  border-color: var(--theme);
}

/* Header Sticky */
.header-1.header-2.sticky {
  background-color: var(--white);
  box-shadow: var(--box-shadow);
}

/* Social Icons */
.social-icon a:hover {
  background-color: var(--theme);
  border-color: var(--theme);
}

/* Form Elements */
input:focus,
textarea:focus,
select:focus {
  border-color: var(--theme);
}

.form-clt input:focus,
.form-clt textarea:focus {
  border-color: var(--theme);
}

/* About Section Icons */
.about-icon-item .icon {
  background-color: rgba(0, 102, 204, 0.1);
}

/* Progress Bar */
.progress-value {
  background-color: var(--theme);
}

.progress-value.style-two {
  background-color: var(--theme-2);
}

/* Accordion */
.accordion-button:not(.collapsed) {
  background-color: rgba(0, 102, 204, 0.1);
  color: var(--theme-2);
}

/* Breadcrumb */
.breadcrumb-items li a:hover {
  color: var(--theme);
}

/* Contact Info Icons */
.contact-us-box .icon {
  background-color: var(--theme);
}

/* Newsletter Button */
.footer-newsletter .theme-btn {
  background-color: var(--theme);
}

.footer-newsletter .theme-btn:hover {
  background-color: var(--theme-2);
}

/* Footer Text Colors - Deixar texto mais visível */
.footer-section-2 .footer-widget-wrapper p,
.footer-section-2 .footer-widget-wrapper .list-area li a,
.footer-section-2 .footer-widget-wrapper .list li a,
.footer-section-2 .footer-left-content p,
.footer-section-2 .wid-title h3,
.footer-section-2 .footer-right-contact .list li,
.footer-section-2 .footer-right-contact .list li a {
  color: rgba(255, 255, 255, 0.9) !important;
}

.footer-section-2 .footer-widget-wrapper .list-area li a:hover,
.footer-section-2 .footer-widget-wrapper .list li a:hover,
.footer-section-2 .footer-right-contact .list li a:hover {
  color: var(--white) !important;
}

.footer-bottom.style-2 p,
.footer-bottom.style-2 .footer-bottom-list li a {
  color: rgba(255, 255, 255, 0.85) !important;
}

.footer-bottom.style-2 .footer-bottom-list li a:hover {
  color: var(--white) !important;
}

/* ===========================
   INCLUSÃO QUE TRANSFORMA VIDAS SECTION
   =========================== */
.inclusao-section {
  position: relative;
  overflow: hidden;
}

.inclusao-card {
  background: var(--white);
  padding: 40px 30px;
  border-radius: 15px;
  box-shadow: var(--box-shadow);
  transition: all 0.4s ease;
  height: 100%;
  border: 2px solid transparent;
}

.inclusao-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 15px 40px rgba(0, 102, 204, 0.2);
  border-color: var(--theme);
}

.inclusao-card .icon-wrapper {
  width: 100px;
  height: 100px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(0, 102, 204, 0.1) 0%, rgba(0, 51, 102, 0.1) 100%);
  transition: all 0.4s ease;
  position: relative;
}

.inclusao-card .icon-wrapper::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--theme) 0%, var(--theme-2) 100%);
  opacity: 0;
  transition: all 0.4s ease;
}

.inclusao-card:hover .icon-wrapper::before {
  opacity: 1;
}

.inclusao-card .icon-wrapper i {
  color: var(--theme);
  z-index: 1;
  position: relative;
  transition: all 0.4s ease;
  animation: pulse 2s infinite;
}

.inclusao-card:hover .icon-wrapper i {
  color: var(--white);
  transform: scale(1.1);
  animation: none;
}

@keyframes pulse {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
}

.inclusao-card h4 {
  font-size: 24px;
  font-weight: 700;
  color: var(--header);
  margin-bottom: 15px;
  transition: color 0.3s ease;
}

.inclusao-card:hover h4 {
  color: var(--theme);
}

.inclusao-card p {
  color: var(--text);
  line-height: 1.7;
  margin: 0;
  font-size: 15px;
}

/* ===========================
   SIMULADOR DE CRÉDITO SECTION
   =========================== */
.credit-simulator-section {
  background: linear-gradient(135deg, #f5f7fa 0%, #ffffff 100%);
}

.credit-form-card,
.credit-advantages-card,
.credit-info-card {
  background: var(--white);
  padding: 40px;
  border-radius: 15px;
  box-shadow: var(--box-shadow);
  transition: all 0.3s ease;
  border: 2px solid transparent;
}

.credit-form-card:hover,
.credit-advantages-card:hover,
.credit-info-card:hover {
  box-shadow: 0 15px 40px rgba(0, 102, 204, 0.15);
  border-color: var(--theme);
}

.credit-form-card h3,
.credit-advantages-card h3,
.credit-info-card h4 {
  color: var(--header);
  font-weight: 700;
}

.credit-simulator-form .form-group label {
  font-weight: 600;
  color: var(--header);
  margin-bottom: 8px;
  font-size: 14px;
}

.credit-simulator-form .form-control,
.credit-simulator-form .form-select {
  border: 2px solid var(--border);
  border-radius: 10px;
  padding: 12px 16px;
  font-size: 15px;
  transition: all 0.3s ease;
  background-color: var(--white);
}

.credit-simulator-form .form-control:focus,
.credit-simulator-form .form-select:focus {
  border-color: var(--theme);
  box-shadow: 0 0 0 0.2rem rgba(0, 102, 204, 0.15);
  outline: none;
}

.credit-simulator-form .form-check-input:checked {
  background-color: var(--theme);
  border-color: var(--theme);
}

/* Forçar email em minúsculas em todos os lugares */
a[href^="mailto:"],
.mailto,
.offcanvas__contact-text a,
.footer-section a[href*="@"],
.info-text a[href*="@"] {
  text-transform: none !important;
}

/* Centralizar ícones com texto em footer e outros lugares */
.footer-right-contact .list li,
.offcanvas__contact ul li,
.header-top-wrapper .list-icon li {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.footer-right-contact .list li i,
.offcanvas__contact ul li i,
.header-top-wrapper .list-icon li i {
  flex-shrink: 0 !important;
}

/* Radio buttons - garantir que fiquem perfeitamente redondos */
.credit-simulator-form .form-check-input[type="radio"] {
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  min-height: 20px !important;
  border-radius: 50% !important;
  border: 2px solid var(--border) !important;
  margin-top: 0 !important;
  margin-right: 0 !important;
  flex-shrink: 0 !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  background-color: white !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.credit-simulator-form .form-check-input[type="radio"]:focus {
  border-color: var(--theme) !important;
  box-shadow: 0 0 0 0.2rem rgba(0, 102, 204, 0.15) !important;
}

.credit-simulator-form .form-check-input[type="radio"]:hover {
  border-color: var(--theme) !important;
}

.credit-simulator-form .form-check-input[type="radio"]:checked {
  background-color: var(--theme) !important;
  border-color: var(--theme) !important;
  background-image: none !important;
  position: relative !important;
}

.credit-simulator-form .form-check-input[type="radio"]:checked::after {
  content: '' !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background-color: white !important;
}

.credit-simulator-form .form-check {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 10px 0 !important;
  margin-bottom: 0 !important;
}

.credit-simulator-form .form-check-label {
  font-size: 15px !important;
  color: var(--text) !important;
  margin: 0 !important;
  cursor: pointer !important;
  user-select: none !important;
}

.advantages-list,
.info-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.advantages-list li,
.info-list li {
  padding: 12px 0;
  color: var(--text);
  font-size: 15px;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  transition: all 0.3s ease;
  position: relative;
  padding-left: 0;
}

.advantages-list li:hover,
.info-list li:hover {
  color: var(--theme);
  transform: translateX(5px);
}

.advantages-list li i,
.info-list li i {
  color: var(--theme);
  font-size: 18px;
  flex-shrink: 0;
  margin-top: 2px;
}

.advantages-list li:not(:last-child),
.info-list li:not(:last-child) {
  border-bottom: 1px solid rgba(0, 102, 204, 0.1);
}

.credit-info-card {
  background: linear-gradient(135deg, var(--theme) 0%, var(--theme-2) 100%);
  color: var(--white);
}

.credit-info-card h4 {
  color: var(--white);
}

.credit-info-card .info-list li {
  color: rgba(255, 255, 255, 0.95);
  border-bottom-color: rgba(255, 255, 255, 0.2);
}

.credit-info-card .info-list li:hover {
  color: var(--white);
}

.credit-info-card .info-list li i {
  color: rgba(255, 255, 255, 0.9);
}

/* ===========================
   CONTATO SECTION
   =========================== */
.contact-form-card,
.contact-info-card,
.donation-cta-card {
  background: var(--white);
  padding: 40px;
  border-radius: 15px;
  box-shadow: var(--box-shadow);
  transition: all 0.3s ease;
  border: 2px solid transparent;
}

.contact-form-card:hover,
.contact-info-card:hover {
  box-shadow: 0 15px 40px rgba(0, 102, 204, 0.15);
  border-color: var(--theme);
}

.contact-form h3,
.contact-info-card h3,
.donation-cta-card h3 {
  color: var(--header);
  font-weight: 700;
}

.contact-form .form-group label {
  font-weight: 600;
  color: var(--header);
  margin-bottom: 8px;
  font-size: 14px;
}

.contact-form .form-control,
.contact-form textarea {
  border: 2px solid var(--border);
  border-radius: 10px;
  padding: 12px 16px;
  font-size: 15px;
  transition: all 0.3s ease;
  background-color: var(--white);
}

.contact-form .form-control:focus,
.contact-form textarea:focus {
  border-color: var(--theme);
  box-shadow: 0 0 0 0.2rem rgba(0, 102, 204, 0.15);
  outline: none;
}

.info-item {
  display: flex;
  gap: 20px;
  align-items: center;
}

.info-item .icon-box {
  width: 50px;
  height: 50px;
  background: linear-gradient(135deg, var(--theme) 0%, var(--theme-2) 100%);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: all 0.3s ease;
}

.info-item:hover .icon-box {
  transform: scale(1.1) rotate(5deg);
}

.info-item .icon-box i {
  color: var(--white);
  font-size: 20px;
}

.info-item .info-text h5 {
  color: var(--header);
  font-weight: 700;
  font-size: 16px;
  margin-bottom: 5px;
}

.info-item .info-text p {
  color: var(--text);
  margin: 0;
  line-height: 1.6;
  font-size: 14px;
}

.info-item .info-text a {
  color: var(--text);
  text-decoration: none;
  transition: color 0.3s ease;
}

.info-item .info-text a:hover {
  color: var(--theme);
}

.donation-cta-card {
  background: linear-gradient(135deg, var(--theme) 0%, var(--theme-2) 100%);
  color: var(--white);
  border: none;
}

.donation-cta-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 50px rgba(0, 102, 204, 0.3);
}

.donation-cta-card h3 {
  color: var(--white);
}

.donation-cta-card p {
  color: rgba(255, 255, 255, 0.95);
}

.donation-cta-card .theme-btn {
  background-color: var(--white);
  color: var(--theme);
  font-weight: 700;
}

.donation-cta-card .theme-btn:hover {
  background-color: rgba(255, 255, 255, 0.9);
  color: var(--theme-2);
}

/* Section Title Styling */
.section-title h2 {
  color: var(--header);
  font-weight: 700;
  font-size: 42px;
  margin-bottom: 15px;
}

.section-title p {
  color: var(--text);
  font-size: 18px;
  max-width: 700px;
  margin: 0 auto;
}

/* Background Light */
.bg-light {
  background-color: var(--bg);
}

/* ===========================
   DARKEN IMAGES FOR BETTER TEXT READABILITY
   =========================== */
.causes-image img {
  filter: brightness(0.6) contrast(1.2);
  transition: all 0.3s ease;
}

.causes-image:hover img {
  filter: brightness(0.7) contrast(1.1);
}

.causes-card-items-2 .causes-image img {
  filter: brightness(0.6) contrast(1.2);
  transition: all 0.3s ease;
}

.causes-card-items-2 .causes-image:hover img {
  filter: brightness(0.7) contrast(1.1);
}

/* Responsive Adjustments */
@media (max-width: 991px) {
  .inclusao-card,
  .credit-form-card,
  .credit-advantages-card,
  .credit-info-card,
  .contact-form-card,
  .contact-info-card,
  .donation-cta-card {
    padding: 30px;
  }

  .section-title h2 {
    font-size: 32px;
  }

  .inclusao-card .icon-wrapper {
    width: 80px;
    height: 80px;
  }

  .inclusao-card .icon-wrapper i {
    font-size: 2.5rem;
  }
}

@media (max-width: 575px) {
  .inclusao-card,
  .credit-form-card,
  .credit-advantages-card,
  .credit-info-card,
  .contact-form-card,
  .contact-info-card,
  .donation-cta-card {
    padding: 20px;
  }

  .section-title h2 {
    font-size: 28px;
  }

  .inclusao-card h4 {
    font-size: 20px;
  }
}

/* ===========================
   HEADER REDESIGN - DESIGN LIMPO E MODERNO
   =========================== */

/* Header Top Section - Fundo Branco com Texto Azul Escuro */
.header-top-section-2 {
  background-color: #ffffff !important;
  border-bottom: 1px solid #e5e7eb;
  padding: 10px 0;
}

.header-top-section-2 .header-top-wrapper-2 .header-left ul.list-icon li {
  color: #003366 !important;
  font-size: 14px;
}

.header-top-section-2 .header-top-wrapper-2 .header-left ul.list-icon li i {
  color: #0066CC !important;
  margin-right: 6px;
}

.header-top-section-2 .header-top-wrapper-2 .header-left ul.list-icon li a {
  color: #003366 !important;
  transition: color 0.3s ease;
}

.header-top-section-2 .header-top-wrapper-2 .header-left ul.list-icon li a:hover {
  color: #0066CC !important;
}

.header-top-section-2 .social-icon a {
  background-color: transparent;
  border: 2px solid #0066CC;
  color: #0066CC;
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  transition: all 0.3s ease;
}

.header-top-section-2 .social-icon a:hover {
  background-color: #0066CC;
  color: #ffffff;
  transform: translateY(-2px);
}

/* Header Principal - Fundo Branco Limpo */
.header-1.header-2 {
  background-color: #ffffff !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
  padding: 15px 0;
}

.header-1.header-2::before {
  display: none !important;
}

/* Menu de Navegação - Texto Azul Escuro */
.header-1.header-2 .main-menu ul {
  display: flex;
  align-items: center;
  gap: 5px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.header-1.header-2 .main-menu ul li {
  margin: 0;
  padding: 0;
}

.header-1.header-2 .main-menu ul li a {
  color: #003366 !important;
  font-weight: 500;
  font-size: 16px;
  padding: 10px 18px;
  display: inline-block;
  transition: all 0.3s ease;
  white-space: nowrap;
}

.header-1.header-2 .main-menu ul li a:hover,
.header-1.header-2 .main-menu ul li.active a {
  color: #0066CC !important;
}

/* Ícone de Busca */
.header-1.header-2 .main-header__search {
  color: #003366;
  font-size: 18px;
  transition: color 0.3s ease;
}

.header-1.header-2 .main-header__search:hover {
  color: #0066CC;
}

/* Botão Simule Seu Crédito - SEMPRE FUNDO BRANCO E TEXTO AZUL */
.header-1.header-2 .header-button .theme-btn,
.header-1.header-2 .header-button a.theme-btn {
  background-color: #ffffff !important;
  background: #ffffff !important;
  color: #0066CC !important;
  font-weight: 600 !important;
  padding: 12px 24px !important;
  border-radius: 8px !important;
  border: 2px solid #0066CC !important;
  transition: all 0.3s ease !important;
  box-shadow: 0 4px 12px rgba(0, 102, 204, 0.2) !important;
}

.header-1.header-2 .header-button .theme-btn::before,
.header-1.header-2 .header-button a.theme-btn::before {
  display: none !important;
}

.header-1.header-2 .header-button .theme-btn i,
.header-1.header-2 .header-button a.theme-btn i {
  color: #0066CC !important;
  transition: all 0.3s ease !important;
}

.header-1.header-2 .header-button .theme-btn:hover,
.header-1.header-2 .header-button a.theme-btn:hover {
  background-color: #0066CC !important;
  background: #0066CC !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px rgba(0, 102, 204, 0.3) !important;
  border: 2px solid #0066CC !important;
}

.header-1.header-2 .header-button .theme-btn:hover i,
.header-1.header-2 .header-button a.theme-btn:hover i {
  color: #ffffff !important;
}

.header-1.header-2 .header-button .theme-btn:active,
.header-1.header-2 .header-button .theme-btn:focus,
.header-1.header-2 .header-button a.theme-btn:active,
.header-1.header-2 .header-button a.theme-btn:focus {
  background-color: #ffffff !important;
  background: #ffffff !important;
  color: #0066CC !important;
  transform: translateY(0) !important;
  box-shadow: 0 2px 8px rgba(0, 102, 204, 0.2) !important;
  border: 2px solid #0066CC !important;
}

.header-1.header-2 .header-button .theme-btn:active i,
.header-1.header-2 .header-button .theme-btn:focus i,
.header-1.header-2 .header-button a.theme-btn:active i,
.header-1.header-2 .header-button a.theme-btn:focus i {
  color: #0066CC !important;
}

/* Header Sticky (quando rola a página) */
.sticky.header-2 {
  background-color: #ffffff !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
  padding: 10px 0;
}

.sticky.header-2::before {
  display: none !important;
}

/* Botão Simule Seu Crédito no Header Sticky - FUNDO BRANCO E TEXTO AZUL */
.sticky.header-2 .header-button .theme-btn {
  background-color: #ffffff !important;
  color: #0066CC !important;
  border: 2px solid #0066CC !important;
  transition: all 0.3s ease !important;
  box-shadow: 0 2px 8px rgba(0, 102, 204, 0.2) !important;
}

.sticky.header-2 .header-button .theme-btn i {
  color: #0066CC !important;
  transition: all 0.3s ease !important;
}

.sticky.header-2 .header-button .theme-btn:hover {
  background-color: #0066CC !important;
  color: #ffffff !important;
  border: 2px solid #0066CC !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px rgba(0, 102, 204, 0.3) !important;
}

.sticky.header-2 .header-button .theme-btn:hover i {
  color: #ffffff !important;
}

.sticky.header-2 .header-button .theme-btn:active,
.sticky.header-2 .header-button .theme-btn:focus,
.sticky.header-2 .header-button .theme-btn.active {
  background-color: #ffffff !important;
  color: #0066CC !important;
  border: 2px solid #0066CC !important;
  transform: translateY(0) !important;
  box-shadow: 0 4px 12px rgba(0, 102, 204, 0.25) !important;
}

.sticky.header-2 .header-button .theme-btn:active i,
.sticky.header-2 .header-button .theme-btn:focus i,
.sticky.header-2 .header-button .theme-btn.active i {
  color: #0066CC !important;
}

/* Hamburguer Menu (Mobile) */
.header-1.header-2 .header__hamburger .sidebar__toggle i {
  color: #003366;
  font-size: 24px;
}

/* Header Páginas Internas (.header-3.header-inner) */
.header-1.header-2.header-3.header-inner {
  background-color: #ffffff !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.header-1.header-2.header-3.header-inner::before {
  display: none !important;
}

.header-1.header-2.header-3.header-inner .main-menu ul li a {
  color: #003366 !important;
}

.header-1.header-2.header-3.header-inner .main-menu ul li a:hover,
.header-1.header-2.header-3.header-inner .main-menu ul li.active a {
  color: #0066CC !important;
}

.header-1.header-2.header-3.header-inner .main-header__search {
  color: #003366;
}

.header-1.header-2.header-3.header-inner .main-header__search:hover {
  color: #0066CC;
}

/* Botão no header das páginas internas - SEMPRE FUNDO BRANCO E TEXTO AZUL */
.header-1.header-2.header-3.header-inner .header-button .theme-btn {
  background-color: #ffffff !important;
  color: #0066CC !important;
  border: 2px solid #0066CC !important;
  box-shadow: 0 2px 8px rgba(0, 102, 204, 0.2) !important;
  transition: all 0.3s ease !important;
}

.header-1.header-2.header-3.header-inner .header-button .theme-btn i {
  color: #0066CC !important;
  transition: all 0.3s ease;
}

.header-1.header-2.header-3.header-inner .header-button .theme-btn:hover {
  background-color: #0066CC !important;
  color: #ffffff !important;
  border: 2px solid #0066CC !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px rgba(0, 102, 204, 0.3) !important;
}

.header-1.header-2.header-3.header-inner .header-button .theme-btn:hover i {
  color: #ffffff !important;
}

.header-1.header-2.header-3.header-inner .header-button .theme-btn:active,
.header-1.header-2.header-3.header-inner .header-button .theme-btn:focus {
  background-color: #ffffff !important;
  color: #0066CC !important;
  border: 2px solid #0066CC !important;
  transform: translateY(0) !important;
  box-shadow: 0 4px 12px rgba(0, 102, 204, 0.25) !important;
}

.header-1.header-2.header-3.header-inner .header-button .theme-btn:active i,
.header-1.header-2.header-3.header-inner .header-button .theme-btn:focus i {
  color: #0066CC !important;
}

/* Header Páginas Internas quando Sticky */
.sticky.header-1.header-2.header-3.header-inner .header-button .theme-btn {
  background-color: #ffffff !important;
  color: #0066CC !important;
  border: 2px solid #0066CC !important;
  box-shadow: 0 2px 8px rgba(0, 102, 204, 0.2) !important;
  transition: all 0.3s ease !important;
}

.sticky.header-1.header-2.header-3.header-inner .header-button .theme-btn i {
  color: #0066CC !important;
  transition: all 0.3s ease !important;
}

.sticky.header-1.header-2.header-3.header-inner .header-button .theme-btn:hover {
  background-color: #0066CC !important;
  color: #ffffff !important;
  border: 2px solid #0066CC !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px rgba(0, 102, 204, 0.3) !important;
}

.sticky.header-1.header-2.header-3.header-inner .header-button .theme-btn:hover i {
  color: #ffffff !important;
}

.sticky.header-1.header-2.header-3.header-inner .header-button .theme-btn:active,
.sticky.header-1.header-2.header-3.header-inner .header-button .theme-btn:focus {
  background-color: #ffffff !important;
  color: #0066CC !important;
  border: 2px solid #0066CC !important;
  transform: translateY(0) !important;
  box-shadow: 0 4px 12px rgba(0, 102, 204, 0.25) !important;
}

.sticky.header-1.header-2.header-3.header-inner .header-button .theme-btn:active i,
.sticky.header-1.header-2.header-3.header-inner .header-button .theme-btn:focus i {
  color: #0066CC !important;
}

/* Header Top Inner (para páginas internas) */
.header-top-section-2.header-inner {
  background-color: #ffffff !important;
  border-bottom: 1px solid #e5e7eb;
}

.header-top-section-2.header-inner .header-top-wrapper-2 .header-left ul.list-icon li {
  color: #003366 !important;
}

.header-top-section-2.header-inner .header-top-wrapper-2 .header-left ul.list-icon li i {
  color: #0066CC !important;
}

.header-top-section-2.header-inner .header-top-wrapper-2 .header-left ul.list-icon li a {
  color: #003366 !important;
}

.header-top-section-2.header-inner .header-top-wrapper-2 .header-left ul.list-icon li a:hover {
  color: #0066CC !important;
}

/* ===========================
   LOGO SIZING - REDIMENSIONAMENTO DAS LOGOS
   =========================== */

/* Logo do Header (desktop) - logo-grande.png */
.header-1 .header-main .header-left .logo img,
.header-1 .header-main .header-left .logo .header-logo img,
.header-1 .header-main .header-left .logo .header-logo-2 img {
  max-width: 140px;
  height: auto;
  transition: all 0.3s ease;
}

/* Logo do Header quando sticky (quando rola a página) */
.sticky .header-main .header-left .logo img,
.sticky .header-main .header-left .logo .header-logo img,
.sticky .header-main .header-left .logo .header-logo-2 img {
  max-width: 140px;
  height: auto;
}

/* Logo do Offcanvas (menu mobile) - logo-pequena.png */
.offcanvas__logo img {
  max-width: 150px;
  height: auto;
  transition: all 0.3s ease;
}

/* Ocultar botão X do offcanvas */
.offcanvas__close {
  display: none !important;
}

/* Logo do Footer */
.footer-section-2 .footer-left-content img,
.footer-section-2 .single-footer-widget img {
  max-width: 280px;
  height: auto;
  transition: all 0.3s ease;
}

/* Responsivo - Telas médias (abaixo de 1399px) */
@media (max-width: 1399px) {
  .header-1 .header-main .header-left .logo img,
  .header-1 .header-main .header-left .logo .header-logo img,
  .header-1 .header-main .header-left .logo .header-logo-2 img {
    max-width: 120px;
  }

  .header-top-section-2 .header-top-wrapper-2 .header-left ul.list-icon li {
    font-size: 13px;
  }

  .header-1.header-2 .main-menu ul {
    gap: 3px;
  }

  .header-1.header-2 .main-menu ul li a {
    font-size: 15px;
    padding: 8px 14px;
  }

  .footer-section-2 .footer-left-content img,
  .footer-section-2 .single-footer-widget img {
    max-width: 240px;
  }
}

/* Responsivo - Tablets (abaixo de 991px) */
@media (max-width: 991px) {
  .header-top-section-2 {
    padding: 8px 0;
  }

  .header-top-section-2 .header-top-wrapper-2 {
    flex-wrap: wrap;
    justify-content: center;
    text-align: center;
  }

  .header-top-section-2 .header-top-wrapper-2 .header-left ul.list-icon {
    justify-content: center;
    margin-bottom: 8px;
  }

  .header-1.header-2 {
    padding: 12px 0;
  }

  .header-1 .header-main .header-left .logo img,
  .header-1 .header-main .header-left .logo .header-logo img,
  .header-1 .header-main .header-left .logo .header-logo-2 img {
    max-width: 110px;
  }

  .sticky .header-main .header-left .logo img,
  .sticky .header-main .header-left .logo .header-logo img,
  .sticky .header-main .header-left .logo .header-logo-2 img {
    max-width: 100px;
  }

  .header-1.header-2 .header-button .theme-btn {
    padding: 10px 18px;
    font-size: 14px;
  }

  .offcanvas__logo img {
    max-width: 110px;
  }

  .footer-section-2 .footer-left-content img,
  .footer-section-2 .single-footer-widget img {
    max-width: 200px;
  }
}

/* Responsivo - Mobile (abaixo de 575px) */
@media (max-width: 575px) {
  /* Ocultar header-top no mobile para economizar espaço */
  .header-top-section-2 {
    display: none !important;
  }

  .header-1.header-2 {
    padding: 0 !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08) !important;
    background: #fff !important;
    position: relative !important;
  }

  .header-1 .header-main {
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    position: relative !important;
    height: 56px !important;
    min-height: 56px !important;
    max-height: 56px !important;
    gap: 0 !important;
    overflow: hidden !important;
  }

  /* Menu hambúrguer - bem no canto esquerdo */
  .header-1 .header-main .header-right {
    order: 1 !important;
    padding: 0 !important;
    margin: 0 !important;
    z-index: 10 !important;
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    height: 100% !important;
    flex-shrink: 0 !important;
  }

  .header-1 .header-main .header-right .header__hamburger {
    order: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding-left: 8px !important;
  }

  .header-1 .header-main .header__hamburger .sidebar__toggle {
    width: 40px !important;
    height: 40px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background-color: transparent !important;
    border: none !important;
    cursor: pointer !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .header-1 .header-main .header__hamburger .sidebar__toggle i {
    font-size: 24px !important;
    color: #003366 !important;
    line-height: 1 !important;
    display: block !important;
  }

  /* Logo - mais à esquerda, próxima ao menu */
  .header-1 .header-main .header-left {
    order: 2 !important;
    position: relative !important;
    margin: 0 !important;
    padding-left: 12px !important;
    z-index: 5 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    height: 100% !important;
    flex: 1 !important;
  }

  .header-1 .header-main .header-left .logo {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 100% !important;
  }

  .header-1 .header-main .header-left .logo img,
  .header-1 .header-main .header-left .logo .header-logo img,
  .header-1 .header-main .header-left .logo .header-logo-2 img {
    max-width: 80px !important;
    height: auto !important;
    max-height: 40px !important;
    display: block !important;
  }

  .sticky .header-main .header-left .logo img,
  .sticky .header-main .header-left .logo .header-logo img,
  .sticky .header-main .header-left .logo .header-logo-2 img {
    max-width: 80px !important;
    max-height: 40px !important;
  }

  /* Esconder botão de crédito completamente */
  .header-1 .header-main .header-button {
    display: none !important;
  }

  /* Ocultar ícone de busca no mobile */
  .header-1.header-2 .main-header__search {
    display: none !important;
  }

  /* Esconder o mean menu wrapper no mobile */
  .header-1 .header-main .mean__menu-wrapper {
    display: none !important;
  }

  /* Esconder elementos extras que podem causar sobreposição */
  .header-1 .header-main .main-menu,
  .header-1 .header-main nav,
  .header-1 .header-main .header__search,
  .header-1 .header-main .header-top,
  .header-1 .header-main .header-search-icon,
  .header-1 .header-main a[href*="arrow"],
  .header-1 .header-main .fa-arrow-up-right-from-square,
  .header-1 .header-main .fa-arrow,
  .header-1 .header-main i.fa-arrow-up-right-from-square {
    display: none !important;
  }

  /* Esconder qualquer link ou botão com seta/arrow */
  .header-1 .header-main a i[class*="arrow"],
  .header-1 .header-main button i[class*="arrow"] {
    display: none !important;
  }

  /* Garantir que apenas menu e logo apareçam */
  .header-1 .header-main .header-right,
  .header-1 .header-main .header-left {
    display: flex !important;
  }

  /* Menu offcanvas - Tela cheia abre da ESQUERDA com cor original IAVI */
  .offcanvas__info,
  .offcanvas__area {
    position: fixed !important;
    top: 0 !important;
    left: -100% !important;
    right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100vh !important;
    background: #ffffff !important;
    z-index: 9999999 !important;
    transition: all 0.4s ease-in-out !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 20px !important;
    border-right: 2px solid #0066CC !important;
  }

  /* Estado inicial - escondido */
  .offcanvas__info:not(.info-open),
  .offcanvas__area:not(.offcanvas-opened) {
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  /* Estado aberto - visível */
  .offcanvas__info.info-open,
  .offcanvas__area.offcanvas-opened {
    left: 0 !important;
    right: auto !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  /* Overlay escuro quando menu aberto */
  .offcanvas__overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100vh !important;
    background: rgba(0, 0, 0, 0.5) !important;
    z-index: 9998 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: all 0.3s ease !important;
  }

  .offcanvas__overlay.overlay-open {
    opacity: 1 !important;
    visibility: visible !important;
  }

  /* Wrapper e conteúdo do offcanvas */
  .offcanvas__wrapper {
    width: 100% !important;
    height: 100% !important;
  }

  .offcanvas__content {
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
  }

  /* Topo com logo e botão fechar */
  .offcanvas__top {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 30px !important;
    padding: 10px 0 !important;
  }

  /* Fechar botão X - azul IAVI no topo direito - SEMPRE VISÍVEL */
  .offcanvas__close {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .offcanvas__close button,
  .offcanvas__close-btn {
    width: 44px !important;
    height: 44px !important;
    background: transparent !important;
    border: none !important;
    color: #003366 !important;
    font-size: 30px !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    outline: none !important;
    transition: transform 0.2s ease !important;
  }

  .offcanvas__close button:hover,
  .offcanvas__close-btn:hover {
    transform: rotate(90deg) !important;
  }

  .offcanvas__close button i,
  .offcanvas__close-btn i {
    color: #003366 !important;
    font-size: 30px !important;
    line-height: 1 !important;
  }

  /* Garantir que o X seja visível */
  .offcanvas__close button .fa-times,
  .offcanvas__close button .fas.fa-times {
    display: block !important;
    opacity: 1 !important;
  }

  /* Logo do menu offcanvas */
  .offcanvas__logo {
    text-align: left !important;
  }

  .offcanvas__logo img {
    max-width: 90px !important;
    height: auto !important;
    filter: none !important;
  }

  /* Texto descritivo */
  .offcanvas__content > p.text {
    color: #666666 !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
  }

  /* Menu offcanvas principal */
  .offcanvas__menu {
    margin-bottom: 25px !important;
    padding-bottom: 20px !important;
    border-bottom: 2px solid #e5e5e5 !important;
  }

  .offcanvas__menu ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .offcanvas__menu ul li {
    border-bottom: 1px solid #e5e5e5 !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .offcanvas__menu ul li:last-child {
    border-bottom: none !important;
  }

  .offcanvas__menu ul li a {
    display: block !important;
    padding: 18px 0 !important;
    color: #003366 !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    position: relative !important;
    padding-left: 8px !important;
  }

  .offcanvas__menu ul li a:hover {
    color: #0066CC !important;
    padding-left: 16px !important;
  }

  .offcanvas__menu ul li a::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 0 !important;
    height: 2px !important;
    background: #0066CC !important;
    transition: width 0.3s ease !important;
  }

  .offcanvas__menu ul li a:hover::before {
    width: 4px !important;
  }

  /* Esconder mobile-menu antigo */
  .mobile-menu {
    display: none !important;
  }

  /* Informações de contato */
  .offcanvas__contact h4 {
    color: #003366 !important;
    font-size: 16px !important;
    margin-bottom: 15px !important;
    font-weight: 600 !important;
  }

  .offcanvas__contact ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 20px 0 !important;
  }

  .offcanvas__contact ul li {
    margin-bottom: 12px !important;
    border-bottom: none !important;
  }

  .offcanvas__contact ul li a {
    color: #666666 !important;
    font-size: 13px !important;
    text-decoration: none !important;
    display: block !important;
  }

  .offcanvas__contact-icon {
    color: #0066CC !important;
    margin-right: 10px !important;
  }

  .offcanvas__contact-icon i {
    color: #0066CC !important;
    font-size: 16px !important;
  }

  .offcanvas__contact-text a {
    color: #666666 !important;
  }

  .offcanvas__contact-text a:hover {
    color: #0066CC !important;
  }

  /* Ícones sociais */
  .social-icon a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    background: #f5f5f5 !important;
    border-radius: 50% !important;
    margin-right: 10px !important;
    color: #0066CC !important;
    transition: all 0.3s ease !important;
  }

  .social-icon a:hover {
    background: #0066CC !important;
    color: #ffffff !important;
  }

  .social-icon a i {
    color: inherit !important;
    font-size: 18px !important;
  }

  .footer-section-2 .footer-left-content img,
  .footer-section-2 .single-footer-widget img {
    max-width: 160px;
  }
}

/* ===========================
   MELHORIAS ADICIONAIS DE UX
   =========================== */

/* Animação suave ao rolar para sticky */
.header-1.header-2,
.sticky.header-2 {
  transition: all 0.4s ease-in-out;
}

/* Efeito hover no menu */
.header-1.header-2 .main-menu ul li {
  position: relative;
}

.header-1.header-2 .main-menu ul li::after {
  content: '';
  position: absolute;
  bottom: 5px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 2px;
  background-color: #0066CC;
  transition: width 0.3s ease;
}

.header-1.header-2 .main-menu ul li:hover::after,
.header-1.header-2 .main-menu ul li.active::after {
  width: 70%;
}

/* Sombra suave no botão do header */
.header-1.header-2 .header-button .theme-btn i {
  margin-left: 6px;
  transition: transform 0.3s ease;
}

.header-1.header-2 .header-button .theme-btn:hover i {
  transform: translateX(4px);
}

/* ===========================
   BOTÃO QUERO DOAR AGORA - ESTILO CUSTOMIZADO
   =========================== */
.donate-btn-custom {
  background: #ffffff !important;
  color: #0066CC !important;
  border: 2px solid #0066CC !important;
  padding: 12px 24px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  display: block !important;
  transition: all 0.3s ease !important;
  border-radius: 8px !important;
}

.donate-btn-custom::before {
  display: none !important;
}

.donate-btn-custom:hover {
  background: #0066CC !important;
  color: #ffffff !important;
  border: 2px solid #0066CC !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px rgba(0, 102, 204, 0.3) !important;
}

.donate-btn-custom:active {
  transform: translateY(0) scale(0.98) !important;
  box-shadow: 0 2px 8px rgba(0, 102, 204, 0.2) !important;
}

/* ===========================
   TEAM CARDS - HOVER EFFECTS
   =========================== */
/* Quando o card de equipe tiver efeito azul (hover), o texto deve ficar branco */
.team-card-items:hover .team-content h5 a,
.team-card-items:hover .team-content p {
  color: #ffffff !important;
}

/* ===========================
   ACCORDION FAQ - TÍTULO BRANCO QUANDO ABERTO
   =========================== */
/* Quando o accordion estiver aberto (não collapsed), o título fica branco */
.accordion-button:not(.collapsed) {
  color: #ffffff !important;
  background-color: #0066CC !important;
}

.accordion-button:not(.collapsed)::after {
  filter: brightness(0) invert(1);
}

/* ===========================
   TEXTO CIRCULAR ANIMADO NO VÍDEO
   =========================== */
.circle-text-wrapper {
  position: absolute;
  top: 52%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  animation: rotate 20s linear infinite;
}

@keyframes rotate {
  from {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}

.circular-text {
  width: 150px;
  height: 150px;
}

.rotating-text {
  fill: #2563EB;
  font-size: 11px;
  font-weight: 700;
  font-family: 'Arial', sans-serif;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}

/* Ajuste do botão de vídeo para ficar acima do texto */
.circle-image .video-btn {
  position: relative;
  z-index: 2;
}

/* Espaçamento entre o botão de vídeo e o texto abaixo */
.cta-content .circle-image {
  margin-bottom: 120px !important;
}

.cta-content .section-title.style-2 {
  margin-top: 80px !important;
  padding-top: 60px !important;
}

/* Responsivo */
@media (max-width: 991px) {
  .circle-text-wrapper {
    width: 130px;
    height: 130px;
    top: 52%;
  }

  .circular-text {
    width: 130px;
    height: 130px;
  }

  .rotating-text {
    font-size: 10px;
  }
}

@media (max-width: 575px) {
  .circle-text-wrapper {
    width: 110px;
    height: 110px;
    top: 52%;
  }

  .circular-text {
    width: 110px;
    height: 110px;
  }

  .rotating-text {
    font-size: 9px;
    letter-spacing: 1px;
  }
}

/* ===========================
   CORREÇÃO DE IMAGENS DECORATIVAS NA SEÇÃO NOSSO IMPACTO
   =========================== */

/* Imagem decorativa blur.png - reduzir opacidade para ficar mais discreta */
.counter-section-2 .right-shape {
  opacity: 0.15 !important;
  pointer-events: none;
  z-index: -1 !important;
}

.counter-section-2 .right-shape img {
  opacity: 0.3 !important;
  filter: blur(2px);
}

/* Imagem decorativa map.png - MAPA MUNDO BEM VISÍVEL */
.counter-main-wrapper .map-shape {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 100% !important;
  max-width: 1600px !important;
  display: block !important;
  opacity: 0.6 !important;
  pointer-events: none !important;
  z-index: 1 !important;
  overflow: visible !important;
}

.counter-main-wrapper .map-shape img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
  opacity: 1 !important;
  filter: grayscale(100%) brightness(1.9) contrast(0.6) !important;
}

/* Garantir que o conteúdo fique sempre acima das imagens decorativas */
.counter-section-2 .container {
  position: relative !important;
  z-index: 10 !important;
}

.counter-main-wrapper {
  position: relative !important;
  z-index: 2 !important;
  overflow: visible !important;
}

.counter-main-wrapper p,
.counter-main-wrapper .counter-wrapper-2 {
  position: relative !important;
  z-index: 10 !important;
}

.counter-main-wrapper .counter-wrapper-2 .counter-image,
.counter-main-wrapper .counter-wrapper-2 .counter-item {
  position: relative !important;
  z-index: 10 !important;
}

/* FORÇAR o mapa a aparecer em TODAS as telas - sobrescreve main.css */
@media (max-width: 1399px) {
  .counter-main-wrapper .map-shape {
    display: block !important;
    max-width: 1400px !important;
    opacity: 0.55 !important;
  }
}

@media (max-width: 1199px) {
  .counter-section-2 .right-shape {
    display: none !important;
  }

  .counter-main-wrapper .map-shape {
    display: block !important;
    max-width: 1200px !important;
    opacity: 0.50 !important;
  }
}

@media (max-width: 768px) {
  .counter-main-wrapper .map-shape {
    display: block !important;
    max-width: 900px !important;
    opacity: 0.45 !important;
  }
}

/* ===========================
   FAQ SECTION - DECORAÇÕES VISUAIS
   =========================== */
.faq-image-wrapper {
  position: relative;
  margin-top: 30px;
}

.faq-image {
  position: relative;
  border-radius: 15px;
  overflow: hidden;
  box-shadow: 0 10px 40px rgba(0, 102, 204, 0.15);
}

.faq-image img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 15px;
  transition: transform 0.4s ease;
}

.faq-image:hover img {
  transform: scale(1.05);
}

/* Decorações - Círculos azuis */
.faq-decorations {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 1;
}

.faq-circle {
  position: absolute;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(0, 102, 204, 0.3) 0%, rgba(0, 51, 102, 0.2) 100%);
  animation: pulse-faq 3s ease-in-out infinite;
}

.faq-circle-1 {
  width: 80px;
  height: 80px;
  top: -20px;
  right: -20px;
  animation-delay: 0s;
}

.faq-circle-2 {
  width: 120px;
  height: 120px;
  bottom: -30px;
  left: -30px;
  animation-delay: 1.5s;
}

@keyframes pulse-faq {
  0%, 100% {
    transform: scale(1);
    opacity: 0.4;
  }
  50% {
    transform: scale(1.1);
    opacity: 0.6;
  }
}

/* Botão de vídeo */
.faq-image .video-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  width: 80px;
  height: 80px;
  background: var(--white);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 30px rgba(0, 102, 204, 0.3);
  transition: all 0.3s ease;
}

.faq-image .video-btn:hover {
  transform: translate(-50%, -50%) scale(1.1);
  box-shadow: 0 15px 40px rgba(0, 102, 204, 0.5);
}

.faq-image .video-btn i {
  color: var(--theme);
  font-size: 28px;
  padding-left: 4px;
}

/* ===========================
   FIX OVERFLOW - CORRIGE O CORTE NAS LATERAIS
   =========================== */
body {
  overflow-x: hidden !important;
  width: 100%;
  max-width: 100vw;
}

html {
  overflow-x: hidden !important;
  width: 100%;
  max-width: 100vw;
}

.container,
.container-fluid {
  overflow-x: visible !important;
}

/* FIX PARA BREADCRUMB E HERO SECTIONS */
.breadcrumb-wrapper,
.hero-section {
  max-width: 100%;
  overflow: hidden !important;
}

.breadcrumb-wrapper img,
.hero-section img {
  max-width: 100%;
  height: auto;
}

/* ===========================
   TESTIMONIALS SECTION - DECORAÇÕES VISUAIS
   =========================== */
.testimonial-image-container {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px 20px;
}

.testimonial-image {
  position: relative;
  width: 450px;
  height: 450px;
  border-radius: 50%;
  overflow: hidden;
  box-shadow: 0 20px 60px rgba(0, 102, 204, 0.25);
}

.testimonial-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform 0.4s ease;
  min-width: 100%;
  min-height: 100%;
}

.testimonial-image:hover img {
  transform: scale(1.05);
}

/* Decorações - Formas verdes nas laterais */
.testimonial-decorations {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: -1;
}

.testimonial-circle {
  position: absolute;
  background: #2D5F3F;
  opacity: 0.85;
}

.testimonial-circle-1 {
  width: 180px;
  height: 220px;
  top: 5%;
  left: -60px;
  border-radius: 45% 55% 60% 40% / 50% 60% 40% 50%;
  animation: float-shape-1 8s ease-in-out infinite;
}

.testimonial-circle-2 {
  width: 200px;
  height: 180px;
  bottom: 8%;
  right: -50px;
  border-radius: 60% 40% 50% 50% / 60% 50% 50% 40%;
  animation: float-shape-2 7s ease-in-out infinite;
}

@keyframes float-shape-1 {
  0%, 100% {
    transform: translateY(0) rotate(0deg);
  }
  50% {
    transform: translateY(-20px) rotate(5deg);
  }
}

@keyframes float-shape-2 {
  0%, 100% {
    transform: translateY(0) rotate(0deg);
  }
  50% {
    transform: translateY(15px) rotate(-5deg);
  }
}

/* Decorações tipo "folhas" - círculos menores */
.testimonial-leaf {
  position: absolute;
  width: 80px;
  height: 80px;
  background: #1E4430;
  border-radius: 50%;
  opacity: 0.7;
  animation: float-leaf 6s ease-in-out infinite;
}

.testimonial-leaf-1 {
  top: 15%;
  left: -30px;
  width: 60px;
  height: 60px;
  animation-delay: 1s;
}

.testimonial-leaf-2 {
  bottom: 18%;
  right: -25px;
  width: 70px;
  height: 70px;
  animation-delay: 2s;
}

@keyframes float-leaf {
  0%, 100% {
    transform: translateY(0) scale(1);
    opacity: 0.7;
  }
  50% {
    transform: translateY(-12px) scale(1.05);
    opacity: 0.85;
  }
}

/* Responsivo */
@media (max-width: 991px) {
  .faq-circle-1 {
    width: 60px;
    height: 60px;
    top: -15px;
    right: -15px;
  }

  .faq-circle-2 {
    width: 90px;
    height: 90px;
    bottom: -20px;
    left: -20px;
  }

  .faq-image .video-btn {
    width: 70px;
    height: 70px;
  }

  .faq-image .video-btn i {
    font-size: 24px;
  }

  /* Testimonials - Tablet */
  .testimonial-image {
    width: 380px;
    height: 380px;
  }

  .testimonial-circle-1 {
    width: 140px;
    height: 170px;
    left: -45px;
  }

  .testimonial-circle-2 {
    width: 160px;
    height: 140px;
    right: -40px;
  }

  .testimonial-leaf-1 {
    width: 50px;
    height: 50px;
    left: -25px;
  }

  .testimonial-leaf-2 {
    width: 55px;
    height: 55px;
    right: -20px;
  }
}

@media (max-width: 575px) {
  .faq-circle-1 {
    width: 50px;
    height: 50px;
  }

  .faq-circle-2 {
    width: 80px;
    height: 80px;
  }

  .faq-image .video-btn {
    width: 60px;
    height: 60px;
  }

  .faq-image .video-btn i {
    font-size: 20px;
  }

  /* Testimonials - Mobile */
  .testimonial-image {
    width: 300px;
    height: 300px;
  }

  .testimonial-circle-1 {
    width: 100px;
    height: 120px;
    left: -30px;
  }

  .testimonial-circle-2 {
    width: 120px;
    height: 100px;
    right: -30px;
  }

  .testimonial-leaf-1 {
    width: 40px;
    height: 40px;
    left: -20px;
  }

  .testimonial-leaf-2 {
    width: 45px;
    height: 45px;
    right: -18px;
  }
}

/* ===========================
   FAQ IMAGE - IMAGEM DENTRO DO BLOCO BRANCO
   =========================== */
.faq-image-wrapper {
  margin-top: 30px;
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
}

.faq-image-wrapper .faq-image {
  background: #ffffff !important;
  padding: 40px !important;
  border-radius: 15px !important;
  box-shadow: 0 8px 30px rgba(0, 102, 204, 0.15) !important;
  overflow: hidden !important;
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1 / 1;
}

.faq-image-wrapper .faq-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  margin: 0 auto !important;
  background: transparent !important;
  border-radius: 12px !important;
}

/* Responsivo para FAQ Image */
@media (max-width: 991px) {
  .faq-image-wrapper {
    max-width: 420px;
  }

  .faq-image-wrapper .faq-image {
    padding: 30px !important;
  }
}

@media (max-width: 575px) {
  .faq-image-wrapper {
    max-width: 100%;
  }

  .faq-image-wrapper .faq-image {
    padding: 25px !important;
  }
}

/* ===========================
   COUNTER IMAGES - VISUAL PROFISSIONAL SEM CORTES
   =========================== */
.counter-wrapper-2 .counter-image {
  width: 160px;
  height: 160px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
  position: relative;
}

.counter-wrapper-2 .counter-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain;
  filter: drop-shadow(0 8px 16px rgba(0, 102, 204, 0.2));
  transition: all 0.3s ease;
  background: transparent;
}

.counter-wrapper-2 .counter-image img:hover {
  transform: scale(1.05);
  filter: drop-shadow(0 12px 24px rgba(0, 102, 204, 0.3));
}

/* Responsivo para imagens do contador */
@media (max-width: 991px) {
  .counter-wrapper-2 .counter-image {
    width: 140px;
    height: 140px;
  }
}

@media (max-width: 575px) {
  .counter-wrapper-2 .counter-image {
    width: 120px;
    height: 120px;
  }
}

/* ===========================
   OTIMIZAÇÕES MOBILE - RESPONSIVIDADE COMPLETA
   =========================== */

/* Mobile - Correções Gerais */
@media (max-width: 768px) {
  /* Container com padding adequado */
  .container {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  /* Seções com padding reduzido */
  .section-padding {
    padding: 60px 0 !important;
  }

  /* Títulos responsivos */
  h1 {
    font-size: 28px !important;
    line-height: 1.3 !important;
  }

  h2 {
    font-size: 24px !important;
    line-height: 1.4 !important;
  }

  h3 {
    font-size: 20px !important;
    line-height: 1.4 !important;
  }

  h4 {
    font-size: 18px !important;
    line-height: 1.5 !important;
  }

  h5 {
    font-size: 16px !important;
  }

  /* Textos */
  p {
    font-size: 15px !important;
    line-height: 1.7 !important;
  }

  /* Imagens responsivas centralizadas */
  img {
    max-width: 100% !important;
    height: auto !important;
    display: block;
    margin-left: auto;
    margin-right: auto;
  }

  /* About Section Mobile */
  .about-wrapper-2 .row {
    flex-direction: column;
  }

  .about-wrapper-2 .col-lg-8,
  .about-wrapper-2 .col-lg-4 {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  .about-left-item .about-image img {
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
    max-height: 300px !important;
  }

  .about-right-item .about-image {
    margin-top: 30px;
    text-align: center;
  }

  .about-right-item .about-image img {
    width: 100% !important;
    height: auto !important;
    max-width: 400px !important;
    margin: 0 auto;
  }

  /* About Icons Mobile */
  .about-icon-main-item {
    margin-top: 30px;
  }

  .about-icon-item {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }

  .about-icon-item .icon-item {
    width: 100% !important;
    margin-bottom: 20px;
  }

  /* Counter Section Mobile */
  .counter-section-2 {
    padding: 60px 0 !important;
  }

  .counter-wrapper-2 {
    display: grid !important;
    grid-template-columns: auto 1fr auto !important;
    grid-template-rows: auto !important;
    gap: 0 !important;
    align-items: center !important;
    justify-items: center !important;
  }

  .counter-wrapper-2 .counter-image:first-child {
    grid-column: 1 !important;
    grid-row: 1 !important;
    margin: 0 !important;
    width: 90px !important;
    height: auto !important;
    align-self: center !important;
  }

  .counter-wrapper-2 .counter-item {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 25px !important;
    margin: 0 !important;
    padding: 0 15px !important;
    width: 100% !important;
  }

  .counter-wrapper-2 .counter-image:last-child {
    grid-column: 3 !important;
    grid-row: 1 !important;
    margin: 0 !important;
    width: 90px !important;
    height: auto !important;
    align-self: center !important;
  }

  .counter-wrapper-2 .counter-content {
    text-align: center !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .counter-wrapper-2 .counter-content h2 {
    font-size: 32px !important;
    margin-bottom: 8px !important;
    line-height: 1.2 !important;
  }

  .counter-wrapper-2 .counter-content h5 {
    font-size: 14px !important;
    line-height: 1.4 !important;
    margin: 0 !important;
  }

  /* CTA Section Mobile */
  .cta-content {
    text-align: center;
    padding: 30px 15px !important;
  }

  .cta-content .circle-image {
    margin-bottom: 40px !important;
  }

  .cta-content .section-title.style-2 {
    margin-top: 30px !important;
    padding-top: 20px !important;
  }

  /* Forms Mobile */
  .credit-form-card,
  .contact-form-card,
  .credit-advantages-card,
  .credit-info-card,
  .contact-info-card {
    padding: 25px 20px !important;
    margin-bottom: 30px;
  }

  .form-control,
  .form-select,
  textarea {
    font-size: 16px !important;
    padding: 12px 15px !important;
  }

  /* Centralizar radio buttons no mobile */
  .credit-simulator-form .d-flex.gap-3 {
    justify-content: center !important;
    gap: 30px !important;
  }

  /* Buttons Mobile */
  .theme-btn,
  .donate-btn-custom {
    width: 100% !important;
    max-width: 100% !important;
    padding: 14px 20px !important;
    font-size: 15px !important;
    text-align: center;
    display: block !important;
  }

  /* Cards Mobile */
  .causes-card-items-2,
  .donation-card-item-2,
  .news-card-items-2,
  .team-card-items {
    margin-bottom: 30px;
  }

  /* Instagram Banner Mobile */
  .instagram-banner-slider {
    margin-top: 40px;
  }

  .instagram-banner-slider .swiper-slide {
    text-align: center;
  }

  /* Footer Mobile - Compacto e organizado */
  .footer-section-2 {
    padding: 25px 0 15px 0 !important;
  }

  .footer-widget-wrapper {
    text-align: center;
    margin-bottom: 15px;
  }

  /* Logo centralizada no footer */
  .footer-left-content {
    text-align: center;
    margin-bottom: 15px;
    order: 1;
  }

  .footer-left-content img {
    margin: 0 auto 10px auto;
    max-width: 100px !important;
  }

  /* Organizar widgets do footer */
  .footer-right-contact {
    text-align: center;
    margin-bottom: 15px;
    order: 2;
  }

  .single-footer-widget {
    margin-bottom: 15px;
  }

  .single-footer-widget h4 {
    font-size: 16px !important;
    margin-bottom: 10px !important;
  }

  .single-footer-widget ul li {
    margin-bottom: 5px !important;
  }

  .single-footer-widget ul li a {
    font-size: 14px !important;
  }

  /* Copyright compacto */
  .footer-bottom {
    padding: 10px 0 !important;
  }

  .footer-bottom p {
    font-size: 12px !important;
    margin: 0 !important;
  }

  /* Breadcrumb Mobile */
  .breadcrumb-wrapper {
    min-height: 400px !important;
    padding: 80px 0 !important;
  }

  .breadcrumb-wrapper .page-heading {
    text-align: center;
  }

  .breadcrumb-wrapper .breadcrumb-sub-title h1 {
    font-size: 32px !important;
  }

  /* FAQ Section Mobile */
  .faq-wrapper {
    padding: 20px 15px;
  }

  .accordion-button {
    font-size: 16px !important;
    padding: 15px 20px !important;
  }

  .accordion-body {
    font-size: 15px !important;
    padding: 20px !important;
  }

  /* Testimonials Mobile */
  .testimonial-section-2 {
    padding: 60px 0 !important;
  }

  .testimonial-card-items {
    padding: 25px 20px !important;
    margin-bottom: 30px;
  }

  /* Events Mobile */
  .upcoming-event-box {
    margin-bottom: 25px;
    padding: 20px 15px !important;
  }

  /* Pricing Cards Mobile */
  .pricing-card-item-2 {
    margin-bottom: 30px;
    padding: 30px 20px !important;
  }

  /* Hero Section Mobile - Ajustes de altura */
  .hero-section.hero-2 {
    min-height: 500px !important;
    padding: 60px 0 40px 0 !important;
  }

  .hero-content {
    padding: 0 20px !important;
  }

  /* Seção "Quem Somos" Mobile */
  .about-section {
    padding: 50px 0 !important;
  }

  .about-content p {
    text-align: justify;
    margin-bottom: 20px;
  }

  /* Grid Layout Mobile */
  .row.g-4 {
    gap: 30px !important;
  }

  [class*="col-"] {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }

  /* Centralizar conteúdo em mobile */
  .text-center-mobile {
    text-align: center !important;
  }

  /* Esconder elementos decorativos em mobile */
  .left-shape,
  .right-shape,
  .left-shape-2,
  .right-shape-2 {
    display: none !important;
  }
}

/* Mobile Pequeno (até 425px) */
@media (max-width: 425px) {
  .container {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }

  h1 {
    font-size: 24px !important;
  }

  h2 {
    font-size: 20px !important;
  }

  h3 {
    font-size: 18px !important;
  }

  p {
    font-size: 14px !important;
  }

  .theme-btn,
  .donate-btn-custom {
    padding: 12px 18px !important;
    font-size: 14px !important;
  }

  .section-padding {
    padding: 50px 0 !important;
  }

  /* Header mobile pequeno */
  .header-top-section-2 {
    display: none;
  }

  .breadcrumb-wrapper {
    min-height: 350px !important;
    padding: 60px 0 !important;
  }

  .breadcrumb-wrapper .breadcrumb-sub-title h1 {
    font-size: 26px !important;
  }

  /* Cards mais compactos */
  .credit-form-card,
  .contact-form-card,
  .credit-advantages-card,
  .credit-info-card,
  .contact-info-card {
    padding: 20px 15px !important;
  }

  /* Counter Section - Mobile pequeno */
  .counter-wrapper-2 .counter-image:first-child,
  .counter-wrapper-2 .counter-image:last-child {
    width: 70px !important;
  }

  .counter-wrapper-2 .counter-image img {
    width: 70px !important;
    max-height: 100px !important;
  }

  .counter-wrapper-2 .counter-item {
    padding: 0 5px !important;
    gap: 15px !important;
  }

  .counter-wrapper-2 .counter-content h2 {
    font-size: 28px !important;
  }

  .counter-wrapper-2 .counter-content h5 {
    font-size: 13px !important;
  }

  /* Footer compacto */
  .footer-section-2 {
    padding: 40px 0 20px 0 !important;
  }

  .footer-bottom.style-2 {
    padding: 20px 0 !important;
  }

  .footer-bottom.style-2 p {
    font-size: 13px !important;
  }
}

/* ===========================
   IMAGENS ESPECÍFICAS - MOBILE RESPONSIVO
   =========================== */
@media (max-width: 768px) {
  /* Imagem Hero "Seção Sobre" */
  .about-left-item .about-image {
    margin-top: 25px;
    margin-bottom: 25px;
    width: 100%;
    text-align: center;
  }

  .about-left-item .about-image img {
    width: 100% !important;
    height: auto !important;
    max-height: 280px !important;
    object-fit: cover !important;
    border-radius: 12px;
  }

  /* Imagem mobile "Seção Sobre" */
  .about-right-item .about-image img {
    width: 100% !important;
    height: auto !important;
    max-width: 350px !important;
    border-radius: 12px;
  }

  /* Imagens do contador (Nosso Impacto) */
  .counter-wrapper-2 .counter-image {
    width: 90px !important;
    height: auto !important;
  }

  .counter-wrapper-2 .counter-image img {
    width: 90px !important;
    height: auto !important;
    max-height: 130px !important;
    object-fit: contain !important;
  }

  /* Imagens de Cards */
  .causes-image img,
  .donation-image img,
  .news-image img {
    width: 100% !important;
    height: 220px !important;
    object-fit: cover !important;
  }

  /* Team Cards */
  .team-image img {
    width: 100% !important;
    height: 280px !important;
    object-fit: cover !important;
  }

  /* Testimonial Image */
  .testimonial-image {
    width: 280px !important;
    height: 280px !important;
    margin: 0 auto !important;
  }

  /* Video/CTA Circle */
  .circle-image {
    width: 200px !important;
    height: 200px !important;
    margin: 0 auto !important;
  }

  /* Instagram Images */
  .instagram-banner-slider img {
    width: 100% !important;
    height: auto !important;
    max-height: 300px !important;
    object-fit: cover !important;
  }
}

/* ===========================
   MELHORIAS DE UX MOBILE
   =========================== */
@media (max-width: 768px) {
  /* Touch-friendly - Áreas de toque maiores */
  a, button, .accordion-button, input, select, textarea {
    min-height: 44px;
    touch-action: manipulation;
  }

  /* Espaçamento entre elementos clicáveis */
  .list-area li,
  .breadcrumb-items li,
  .footer-bottom-list li {
    margin-bottom: 12px;
  }

  /* Scroll suave */
  html {
    scroll-behavior: smooth;
  }

  /* Prevenir zoom em inputs no iOS */
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="number"],
  select,
  textarea {
    font-size: 16px !important;
  }

  /* Tabelas responsivas */
  table {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  /* Links e botões com espaçamento */
  .header-button,
  .hero-button-item,
  .about-button {
    margin-top: 20px;
    width: 100%;
  }

  /* Menu mobile */
  .main-menu {
    display: none;
  }

  /* Offcanvas visible */
  .header__hamburger {
    display: block !important;
  }

  /* Cards com sombra reduzida */
  .inclusao-card,
  .credit-form-card,
  .contact-form-card {
    box-shadow: 0 4px 15px rgba(0, 102, 204, 0.1) !important;
  }

  /* Melhor legibilidade */
  body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
}

/* ===========================
   FIX PARA OVERFLOW HORIZONTAL MOBILE
   =========================== */
@media (max-width: 768px) {
  body, html {
    overflow-x: hidden !important;
    max-width: 100vw !important;
    position: relative;
  }

  * {
    max-width: 100%;
  }

  .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  [class*="col-"] {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  /* Container fluid sem overflow */
  .container-fluid {
    padding-left: 15px !important;
    padding-right: 15px !important;
    overflow-x: hidden !important;
  }
}

/* ===========================
   AJUSTES FINAIS PARA TODAS AS PÁGINAS
   =========================== */
@media (max-width: 768px) {
  /* Privacy & Terms Pages */
  .privacy-content,
  .terms-content {
    padding: 20px 15px !important;
  }

  .privacy-content h2,
  .terms-content h2 {
    font-size: 22px !important;
    margin-top: 30px !important;
  }

  .privacy-content p,
  .terms-content p {
    font-size: 15px !important;
    line-height: 1.7 !important;
    text-align: justify;
  }

  /* Contact Page */
  .contact-section {
    padding: 50px 0 !important;
  }

  .contact-form-card {
    margin-bottom: 30px;
  }

  .info-item {
    flex-direction: row;
    gap: 15px;
    margin-bottom: 25px;
  }

  .info-item .icon-box {
    width: 45px !important;
    height: 45px !important;
  }

  /* Event Page */
  .event-wrapper {
    padding: 20px 15px !important;
  }

  .event-card-items {
    margin-bottom: 30px;
  }

  .event-image img {
    width: 100% !important;
    height: 220px !important;
    object-fit: cover !important;
  }

  /* Project Page */
  .project-card-items {
    margin-bottom: 30px;
  }

  .project-image img {
    width: 100% !important;
    height: 240px !important;
    object-fit: cover !important;
  }
}
