/* Estilos dos componentes (antes injetados por components.js) */
.main-header {
    height: var(--header-height);
    background-color: var(--color-primary);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    display: flex;
    align-items: center;
    box-shadow: var(--shadow-sm);
  }
  .lp-header {
    background-color: var(--color-primary) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    padding: 0.5rem 0 !important;
  }
  .header-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
  }
  .logo, .lp-logo {
    display: flex;
    align-items: center;
    height: 100%;
  }
  .logo-img {
    height: 54px;
    width: auto;
    display: block;
    mix-blend-mode: screen; /* Torna o fundo preto do logo 100% transparente */
  }
  .nav-menu {
    display: flex;
    align-items: center;
    gap: 1.75rem;
  }
  .nav-link {
    font-family: var(--font-sans);
    font-size: 0.95rem;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.85);
    padding: 0.5rem 0;
    position: relative;
  }
  .nav-link::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 2px;
    background-color: var(--color-accent);
    transition: var(--transition-normal);
  }
  .nav-link:hover {
    color: var(--color-accent);
  }
  .nav-link:hover::after, .nav-link.active::after {
    width: 100%;
  }
  .nav-link.active {
    color: var(--color-accent);
    font-weight: 600;
  }
  .btn-header-mobile {
    display: none;
    margin-top: var(--spacing-sm);
    width: 100%;
  }
  .header-actions {
    display: flex;
    align-items: center;
    gap: 1rem;
  }
  .hamburger-btn {
    display: none;
    flex-direction: column;
    justify-content: space-between;
    width: 26px;
    height: 18px;
    background: transparent;
    border: none;
    cursor: pointer;
    z-index: 1001;
  }
  .hamburger-btn span {
    width: 100%;
    height: 2px;
    background-color: #FFFFFF;
    transition: var(--transition-normal);
    border-radius: var(--radius-pill);
  }
  
  @media (max-width: 991px) {
    .btn-header-desktop {
      display: none;
    }
    .hamburger-btn {
      display: flex;
    }
    .hamburger-btn.active span:nth-child(1) {
      transform: translateY(8px) rotate(45deg);
    }
    .hamburger-btn.active span:nth-child(2) {
      opacity: 0;
    }
    .hamburger-btn.active span:nth-child(3) {
      transform: translateY(-8px) rotate(-45deg);
    }
    .nav-menu {
      position: fixed;
      top: var(--header-height);
      left: 0;
      width: 100%;
      height: calc(100vh - var(--header-height));
      background-color: var(--color-primary);
      flex-direction: column;
      align-items: flex-start;
      padding: var(--spacing-lg) var(--spacing-md);
      gap: 1.5rem;
      transform: translateX(-100%);
      transition: var(--transition-normal);
      box-shadow: 0 10px 15px -5px rgba(0,0,0,0.15);
      overflow-y: auto;
    }
    .nav-menu.active {
      transform: translateX(0);
    }
    .nav-link {
      font-size: 1.1rem;
      width: 100%;
      border-bottom: 1px solid rgba(255,255,255,0.06);
      padding-bottom: 0.75rem;
    }
    .btn-header-mobile {
      display: inline-flex;
    }
  }

  /* CLINICAL TICKER (ESTEIRA PREMIUM) */
  clinical-ticker {
    display: block;
    width: 100%;
    overflow: hidden;
  }
  .ticker-container {
    overflow: hidden;
    width: 100%;
    background-color: var(--color-primary); /* Deep navy background for visual integration and authority */
    padding: 1.15rem 0;
    display: flex;
    align-items: center;
    border-top: 1px solid rgba(182, 148, 66, 0.25); /* Elegant, thin champagne gold border lines */
    border-bottom: 1px solid rgba(182, 148, 66, 0.25);
    position: relative;
    z-index: 10;
    box-shadow: 0 4px 10px rgba(10, 25, 47, 0.15);
  }
  .ticker-track {
    display: flex;
    width: max-content;
    animation: marquee-scroll 38s linear infinite; /* Glides slowly and elegantly */
  }
  .ticker-container:hover .ticker-track {
    animation-play-state: paused;
  }
  .ticker-list {
    display: flex;
    align-items: center;
    gap: 4.5rem; /* Spacious breathability */
    padding-right: 4.5rem;
  }
  .ticker-item {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    color: var(--color-accent); /* Prestigious gold letters on dark navy background */
    font-family: var(--font-sans);
    font-weight: 500; /* Sophisticated medium weight instead of heavy bold */
    font-size: 0.95rem;
    letter-spacing: 0.04em;
    white-space: nowrap;
    text-transform: none; /* Refined mixed-case instead of loud block letters */
  }
  .ticker-item svg {
    width: 17px;
    height: 17px;
    stroke: var(--color-accent); /* Accents in prestigious gold */
    stroke-width: 2;
    fill: none;
    flex-shrink: 0;
  }
  @keyframes marquee-scroll {
    0% {
      transform: translate3d(0, 0, 0);
    }
    100% {
      transform: translate3d(-50%, 0, 0);
    }
  }

/* Depoimentos */
testimonials-section {
          display: block;
          width: 100%;
          overflow: hidden;
          padding-top: var(--spacing-xxl);
          padding-bottom: var(--spacing-xxl);
          background-color: var(--color-primary);
        }
        testimonials-section h2 {
          color: var(--color-text-white);
        }
        testimonials-section p {
          color: rgba(255, 255, 255, 0.7);
        }
        .testimonials-marquee-container {
          overflow: hidden;
          width: 100%;
          padding: var(--spacing-md) 0;
          position: relative;
          display: flex;
          align-items: center;
        }
        .testimonials-marquee-container::before,
        .testimonials-marquee-container::after {
          content: '';
          position: absolute;
          top: 0;
          width: 120px;
          height: 100%;
          z-index: 5;
          pointer-events: none;
          transition: width 0.3s ease;
        }
        .testimonials-marquee-container::before {
          left: 0;
          background: linear-gradient(to right, var(--color-primary) 0%, rgba(13,28,47,0) 100%);
        }
        .testimonials-marquee-container::after {
          right: 0;
          background: linear-gradient(to left, var(--color-primary) 0%, rgba(13,28,47,0) 100%);
        }
        @media (max-width: 768px) {
          .testimonials-marquee-container::before,
          .testimonials-marquee-container::after {
            width: 40px;
          }
        }
        .testimonials-marquee-track {
          display: flex;
          width: max-content;
          animation: testimonials-scroll 45s linear infinite;
        }
        .testimonials-marquee-container:hover .testimonials-marquee-track {
          animation-play-state: paused;
        }
        .testimonials-list {
          display: flex;
          align-items: stretch;
          gap: var(--spacing-md);
          padding-right: var(--spacing-md);
        }
        .testimonial-card {
          width: 360px;
          background: var(--color-primary-light);
          border: 1px solid rgba(182, 148, 66, 0.22);
          border-radius: var(--radius-lg);
          padding: var(--spacing-lg);
          box-shadow: 0 10px 30px -15px rgba(0, 0, 0, 0.3);
          display: flex;
          flex-direction: column;
          justify-content: space-between;
          transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
        }
        .testimonial-card:hover {
          transform: translateY(-5px);
          border-color: var(--color-accent);
          box-shadow: var(--shadow-lg), 0 5px 15px rgba(182, 148, 66, 0.15);
        }
        .testimonial-stars {
          display: flex;
          gap: 3px;
          margin-bottom: var(--spacing-sm);
          color: var(--color-accent);
        }
        .testimonial-stars svg {
          width: 16px;
          height: 16px;
          fill: currentColor;
        }
        .testimonial-text {
          font-size: 0.92rem;
          line-height: 1.6;
          color: rgba(255, 255, 255, 0.9);
          margin-bottom: var(--spacing-md);
          font-style: italic;
          flex-grow: 1;
        }
        .testimonial-footer {
          display: flex;
          flex-direction: column;
          border-top: 1px solid rgba(255, 255, 255, 0.08);
          padding-top: var(--spacing-xs);
        }
        .testimonial-author {
          font-family: var(--font-sans);
          font-weight: 600;
          font-size: 0.95rem;
          color: var(--color-accent);
        }
        .testimonial-date {
          font-size: 0.78rem;
          color: rgba(255, 255, 255, 0.55);
          margin-top: 2px;
        }
        .testimonial-badge {
          display: inline-flex;
          align-items: center;
          gap: 4px;
          font-size: 0.75rem;
          color: #4ADE80;
          font-weight: 600;
          margin-top: var(--spacing-xs);
        }
        .testimonial-badge svg {
          width: 12px;
          height: 12px;
          fill: currentColor;
        }
        @keyframes testimonials-scroll {
          0% {
            transform: translate3d(0, 0, 0);
          }
          100% {
            transform: translate3d(-50%, 0, 0);
          }
        }

/* ==========================================================================
   Ajustes específicos do WordPress
   ========================================================================== */
.admin-bar .main-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .main-header { top: 46px; } }
@media (max-width: 991px) {
  .admin-bar .nav-menu { top: calc(var(--header-height) + 32px); height: calc(100vh - var(--header-height) - 32px); }
}
@media (max-width: 782px) {
  .admin-bar .nav-menu { top: calc(var(--header-height) + 46px); height: calc(100vh - var(--header-height) - 46px); }
}
.screen-reader-text { position: absolute; clip: rect(1px,1px,1px,1px); width: 1px; height: 1px; overflow: hidden; }
