/* ==========================================
   Paulo Guimarães - Custom Styles
   ========================================== */


    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; overflow-x: hidden; }
    body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -webkit-tap-highlight-color: transparent; }
    button, a, [role="button"] { touch-action: manipulation; }
    .animate-on-scroll { opacity: 0; transform: translateY(40px); transition: opacity 0.7s ease-out, transform 0.7s ease-out; }
    .animate-on-scroll.show { opacity: 1; transform: translateY(0); }
    .animate-on-scroll-left { opacity: 0; transform: translateX(-40px); transition: opacity 0.7s ease-out, transform 0.7s ease-out; }
    .animate-on-scroll-left.show { opacity: 1; transform: translateX(0); }
    .animate-on-scroll-right { opacity: 0; transform: translateX(40px); transition: opacity 0.7s ease-out, transform 0.7s ease-out; }
    .animate-on-scroll-right.show { opacity: 1; transform: translateX(0); }
    .animate-stagger > * { opacity: 0; transition: opacity 0.5s ease-out; }
    .animate-stagger.show > * { opacity: 1; }
    .animate-stagger.show > *:nth-child(1) { transition-delay: 0.05s; }
    .animate-stagger.show > *:nth-child(2) { transition-delay: 0.15s; }
    .animate-stagger.show > *:nth-child(3) { transition-delay: 0.25s; }
    .animate-stagger.show > *:nth-child(4) { transition-delay: 0.35s; }
    .animate-stagger.show > *:nth-child(5) { transition-delay: 0.45s; }
    .animate-stagger.show > *:nth-child(6) { transition-delay: 0.55s; }
    ::-webkit-scrollbar { width: 8px; }
    ::-webkit-scrollbar-track { background: #000; }
    ::-webkit-scrollbar-thumb { background: #D4AF37; border-radius: 4px; }
    ::-webkit-scrollbar-thumb:hover { background: #B8960F; }
    .video-container { position: relative; width: 100%; padding-bottom: 56.25%; }
    .video-container iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 12px; }
    @media (prefers-reduced-motion: reduce) { .animate-on-scroll, .animate-on-scroll-left, .animate-on-scroll-right, .animate-stagger > * { opacity: 1; transform: none; } .recebe-card { animation: none; } html { scroll-behavior: auto; } }
    .metodo-card { position: relative; overflow: hidden; transition: all 0.4s cubic-bezier(0.4,0,0.2,1); }
    .metodo-card::after { content: ''; position: absolute; bottom: 0; left: 0; width: 0; height: 3px; background: linear-gradient(90deg, #D4AF37, #F3E3B3); transition: width 0.4s ease-out; }
    .metodo-card .metodo-number { opacity: 0; transform: translateY(10px); transition: all 0.3s ease-out; }
    .metodo-card .metodo-icon { transition: all 0.3s ease-out; }
    @keyframes iconPop { 0% { transform: scale(1) rotate(0deg); } 50% { transform: scale(1.2) rotate(10deg); } 100% { transform: scale(1.1) rotate(0deg); } }
    @media (hover: hover) {
      .metodo-card:hover::after { width: 100%; }
      .metodo-card:hover { transform: translateY(-8px) scale(1.03); border-color: rgba(212,175,55,0.5); box-shadow: 0 20px 40px rgba(212,175,55,0.15); }
      .metodo-card:hover .metodo-icon { animation: iconPop 0.5s ease-out forwards; }
      .metodo-card:hover .metodo-number { opacity: 1; transform: translateY(0); }
    }
    /* --- Efeitos Método: Onda nos cards --- */
    @keyframes metodoWave {
      0%, 100% { border-color: rgba(212,175,55,0.08); transform: translateY(0); box-shadow: 0 0 0 rgba(212,175,55,0); }
      12% { border-color: rgba(212,175,55,0.35); transform: translateY(-5px); box-shadow: 0 12px 35px rgba(212,175,55,0.15); }
      25% { border-color: rgba(212,175,55,0.08); transform: translateY(0); box-shadow: 0 0 0 rgba(212,175,55,0); }
    }
    @keyframes metodoIconGlow {
      0%, 100% { background: rgba(212,175,55,0.1); transform: scale(1); }
      12% { background: rgba(212,175,55,0.3); transform: scale(1.12); }
      25% { background: rgba(212,175,55,0.1); transform: scale(1); }
    }
    .metodo-card { animation: metodoWave 7s ease-in-out infinite; }
    .metodo-card .metodo-icon { animation: metodoIconGlow 7s ease-in-out infinite; }
    .metodo-card:nth-child(1) { animation-delay: 0s; }
    .metodo-card:nth-child(2) { animation-delay: 0.6s; }
    .metodo-card:nth-child(3) { animation-delay: 1.2s; }
    .metodo-card:nth-child(4) { animation-delay: 1.8s; }
    .metodo-card:nth-child(5) { animation-delay: 2.4s; }
    .metodo-card:nth-child(1) .metodo-icon { animation-delay: 0s; }
    .metodo-card:nth-child(2) .metodo-icon { animation-delay: 0.6s; }
    .metodo-card:nth-child(3) .metodo-icon { animation-delay: 1.2s; }
    .metodo-card:nth-child(4) .metodo-icon { animation-delay: 1.8s; }
    .metodo-card:nth-child(5) .metodo-icon { animation-delay: 2.4s; }
    /* Pulse contínuo para cards "O que você recebe" */
    @keyframes pulseCard {
      0%, 100% { transform: scale(1); border-color: rgba(212,175,55,0.15); box-shadow: 0 0 0 rgba(212,175,55,0); }
      15% { transform: scale(1.05) translateY(-6px); border-color: #D4AF37; box-shadow: 0 16px 40px rgba(212,175,55,0.3); }
      30% { transform: scale(1); border-color: rgba(212,175,55,0.15); box-shadow: 0 0 0 rgba(212,175,55,0); }
    }
    .recebe-card { animation: pulseCard 6s ease-in-out infinite; }
    .recebe-card:nth-child(2) { animation-delay: 1s; }
    .recebe-card:nth-child(3) { animation-delay: 2s; }
    .recebe-card:nth-child(4) { animation-delay: 3s; }
    .recebe-card:nth-child(5) { animation-delay: 4s; }
    .recebe-card:nth-child(6) { animation-delay: 5s; }
    #back-to-top { opacity: 0; visibility: hidden; transition: opacity 0.3s, visibility 0.3s; }
    #back-to-top.visible { opacity: 1; visibility: visible; }

    /* --- Efeitos Problema --- */
    @keyframes problemaBreathing {
      0%, 100% { opacity: 0.04; transform: scale(1); }
      50% { opacity: 0.1; transform: scale(1.2); }
    }
    @keyframes problemaUnderline {
      0% { width: 0; left: 50%; }
      100% { width: 100%; left: 0; }
    }
    #problema .problema-glow-1 { animation: problemaBreathing 6s ease-in-out infinite; }
    #problema .problema-glow-2 { animation: problemaBreathing 8s ease-in-out infinite reverse; }
    #problema .problema-highlight {
      position: relative;
      display: inline-block;
    }
    #problema .problema-highlight::after {
      content: '';
      position: absolute;
      bottom: 2px; left: 0;
      height: 3px;
      background: linear-gradient(90deg, #D4AF37, transparent);
      animation: problemaUnderline 1.5s ease-out 0.5s forwards;
    }
    /* --- Efeitos Problema --- */
    @keyframes problemaBreath {
      0%, 100% { opacity: 0.05; transform: scale(1); }
      50% { opacity: 0.12; transform: scale(1.2); }
    }
    @keyframes problemaGlowShift {
      0%, 100% { opacity: 0.04; transform: scale(1) translate(0, 0); }
      33% { opacity: 0.1; transform: scale(1.15) translate(30px, -20px); }
      66% { opacity: 0.07; transform: scale(0.9) translate(-20px, 15px); }
    }
    @keyframes problemaUnderline {
      0% { width: 0; opacity: 0; }
      60% { width: 100%; opacity: 1; }
      100% { width: 100%; opacity: 1; }
    }
    .problema-glow-1 { animation: problemaBreath 6s ease-in-out infinite; }
    .problema-glow-2 { animation: problemaGlowShift 8s ease-in-out infinite; }
    .problema-highlight {
      display: inline-block;
      position: relative;
    }
    .problema-highlight::after {
      content: '';
      position: absolute;
      bottom: 2px;
      left: 0;
      height: 3px;
      background: linear-gradient(90deg, #D4AF37, #f5d97a, #D4AF37);
      border-radius: 2px;
      animation: problemaUnderline 2s ease-out 0.5s forwards;
      width: 0;
      opacity: 0;
    }
    /* --- Efeitos Problema: Radar/Sonar --- */
    @keyframes problemaRadar {
      0% { transform: scale(0.3); opacity: 0.4; }
      100% { transform: scale(3); opacity: 0; }
    }
    .problema-ring {
      position: absolute;
      top: 50%; left: 50%;
      width: 200px; height: 200px;
      margin-left: -100px; margin-top: -100px;
      border: 1px solid rgba(212,175,55,0.3);
      border-radius: 50%;
      pointer-events: none;
      opacity: 0;
    }
    .problema-ring:nth-child(1) { animation: problemaRadar 4s ease-out infinite; animation-delay: 0s; }
    .problema-ring:nth-child(2) { animation: problemaRadar 4s ease-out infinite; animation-delay: 1.3s; }
    .problema-ring:nth-child(3) { animation: problemaRadar 4s ease-out infinite; animation-delay: 2.6s; }

    /* --- Novos Efeitos Problema: Container --- */
    .problema-effects {
      position: absolute;
      inset: 0;
      pointer-events: none;
      z-index: 0;
      overflow: hidden;
    }
    .problema-effects-particles,
    .problema-effects-rings,
    .problema-effects-corners {
      position: absolute;
      inset: 0;
    }

    /* --- Partículas Flutuantes --- */
    @keyframes problemaParticle {
      0% { transform: translateY(0) translateX(0) scale(0); opacity: 0; }
      8% { opacity: 0.8; transform: translateY(-20px) translateX(5px) scale(1); }
      100% { transform: translateY(-100vh) translateX(-15px) scale(0.3); opacity: 0; }
    }
    .problema-effects .problema-particle {
      position: absolute;
      background: radial-gradient(circle, #D4AF37, rgba(212,175,55,0.2));
      border-radius: 50%;
      box-shadow: 0 0 6px rgba(212,175,55,0.4);
      opacity: 0;
    }
    .problema-effects-particles .problema-particle:nth-child(1) { width: 4px; height: 4px; left: 5%; top: 20%; animation: problemaParticle 8s linear infinite; animation-delay: 0s; }
    .problema-effects-particles .problema-particle:nth-child(2) { width: 3px; height: 3px; left: 18%; top: 50%; animation: problemaParticle 10s linear infinite; animation-delay: 1.5s; }
    .problema-effects-particles .problema-particle:nth-child(3) { width: 5px; height: 5px; left: 30%; top: 10%; animation: problemaParticle 7s linear infinite; animation-delay: 2.5s; }
    .problema-effects-particles .problema-particle:nth-child(4) { width: 2px; height: 2px; left: 45%; top: 70%; animation: problemaParticle 12s linear infinite; animation-delay: 0.8s; }
    .problema-effects-particles .problema-particle:nth-child(5) { width: 4px; height: 4px; left: 58%; top: 35%; animation: problemaParticle 9s linear infinite; animation-delay: 3.2s; }
    .problema-effects-particles .problema-particle:nth-child(6) { width: 3px; height: 3px; left: 70%; top: 80%; animation: problemaParticle 11s linear infinite; animation-delay: 1.8s; }
    .problema-effects-particles .problema-particle:nth-child(7) { width: 2px; height: 2px; left: 82%; top: 15%; animation: problemaParticle 6.5s linear infinite; animation-delay: 4s; }
    .problema-effects-particles .problema-particle:nth-child(8) { width: 5px; height: 5px; left: 92%; top: 55%; animation: problemaParticle 9.5s linear infinite; animation-delay: 2.2s; }
    .problema-effects-particles .problema-particle:nth-child(9) { width: 3px; height: 3px; left: 12%; top: 85%; animation: problemaParticle 13s linear infinite; animation-delay: 0.5s; }
    .problema-effects-particles .problema-particle:nth-child(10) { width: 4px; height: 4px; left: 75%; top: 5%; animation: problemaParticle 14s linear infinite; animation-delay: 3.8s; }

    /* --- Linha de Varredura --- */
    @keyframes problemaScan {
      0% { top: -2px; opacity: 0; }
      8% { opacity: 0.5; }
      45% { opacity: 0.35; }
      50% { opacity: 0.08; }
      55% { opacity: 0.35; }
      92% { opacity: 0.5; }
      100% { top: 100%; opacity: 0; }
    }
    .problema-effects .problema-scan {
      position: absolute;
      left: 8%;
      right: 8%;
      height: 2px;
      background: linear-gradient(90deg, transparent, rgba(212,175,55,0.6), #D4AF37, rgba(212,175,55,0.6), transparent);
      animation: problemaScan 7s ease-in-out infinite;
      filter: blur(0.5px);
    }

    /* --- Cantos Decorativos --- */
    @keyframes problemaCornerDrawW {
      0% { width: 0; opacity: 0; }
      100% { width: 45px; opacity: 1; }
    }
    @keyframes problemaCornerDrawH {
      0% { height: 0; opacity: 0; }
      100% { height: 45px; opacity: 1; }
    }
    .problema-effects [class*="problema-corner"] {
      position: absolute;
      z-index: 2;
    }
    .problema-effects .problema-corner-tl { top: 25px; left: 25px; border-top: 2px solid rgba(212,175,55,0.3); border-left: 2px solid rgba(212,175,55,0.3); animation: problemaCornerDrawW 0.7s ease-out 0.3s forwards, problemaCornerDrawH 0.7s ease-out 0.3s forwards; }
    .problema-effects .problema-corner-tr { top: 25px; right: 25px; border-top: 2px solid rgba(212,175,55,0.3); border-right: 2px solid rgba(212,175,55,0.3); animation: problemaCornerDrawW 0.7s ease-out 0.6s forwards, problemaCornerDrawH 0.7s ease-out 0.6s forwards; }
    .problema-effects .problema-corner-bl { bottom: 25px; left: 25px; border-bottom: 2px solid rgba(212,175,55,0.3); border-left: 2px solid rgba(212,175,55,0.3); animation: problemaCornerDrawW 0.7s ease-out 0.9s forwards, problemaCornerDrawH 0.7s ease-out 0.9s forwards; }
    .problema-effects .problema-corner-br { bottom: 25px; right: 25px; border-bottom: 2px solid rgba(212,175,55,0.3); border-right: 2px solid rgba(212,175,55,0.3); animation: problemaCornerDrawW 0.7s ease-out 1.2s forwards, problemaCornerDrawH 0.7s ease-out 1.2s forwards; }

    /* --- Anéis Centrais Expandidos --- */
    @keyframes problemaRingLarge {
      0% { transform: scale(0.3); opacity: 0.25; }
      100% { transform: scale(4); opacity: 0; }
    }
    .problema-effects .problema-ring-large {
      position: absolute;
      top: 50%; left: 50%;
      width: 120px; height: 120px;
      margin-left: -60px; margin-top: -60px;
      border: 1px solid rgba(212,175,55,0.2);
      border-radius: 50%;
      opacity: 0;
    }
    .problema-effects-rings .problema-ring-large:nth-child(1) { animation: problemaRingLarge 5s ease-out infinite; animation-delay: 0s; }
    .problema-effects-rings .problema-ring-large:nth-child(2) { animation: problemaRingLarge 5s ease-out infinite; animation-delay: 1.7s; }
    .problema-effects-rings .problema-ring-large:nth-child(3) { animation: problemaRingLarge 5s ease-out infinite; animation-delay: 3.4s; }

    /* --- Grade Diagonal --- */
    @keyframes problemaGridShift {
      0% { transform: translate(0, 0); }
      100% { transform: translate(50px, 50px); }
    }
    .problema-effects .problema-grid {
      position: absolute;
      inset: 0;
      background-image: linear-gradient(45deg, rgba(212,175,55,0.04) 1px, transparent 1px);
      background-size: 50px 50px;
      animation: problemaGridShift 20s linear infinite;
    }
    /* --- Efeitos Hero --- */
    @keyframes heroZoom {
      0% { transform: scale(1); }
      100% { transform: scale(1.15); }
    }
    @keyframes heroShimmer {
      0% { background-position: -200% center; }
      100% { background-position: 200% center; }
    }
    @keyframes heroParticle {
      0% { transform: translate(0, 0) scale(0); opacity: 0; }
      20% { opacity: 0.6; transform: translate(20px, -30px) scale(1); }
      80% { opacity: 0.3; }
      100% { transform: translate(-40px, -200px) scale(0.5); opacity: 0; }
    }
    #hero .hero-bg-img { animation: heroZoom 20s ease-in-out infinite alternate; }
    #hero .hero-title {
      background: linear-gradient(90deg, #D4AF37, #f5d97a, #D4AF37, #f5d97a);
      background-size: 200% 100%;
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
      animation: heroShimmer 6s linear infinite;
    }
    .hero-particle {
      position: absolute;
      width: 4px; height: 4px;
      background: #D4AF37;
      border-radius: 50%;
      pointer-events: none;
      opacity: 0;
      filter: blur(0.5px);
    }
    .hero-particle:nth-child(1) { left: 10%; top: 60%; animation: heroParticle 6s ease-in-out infinite; animation-delay: 0s; }
    .hero-particle:nth-child(2) { left: 20%; top: 40%; width: 3px; height: 3px; animation: heroParticle 7s ease-in-out infinite; animation-delay: 1.5s; }
    .hero-particle:nth-child(3) { left: 50%; top: 55%; width: 5px; height: 5px; animation: heroParticle 5.5s ease-in-out infinite; animation-delay: 3s; }
    .hero-particle:nth-child(4) { left: 70%; top: 35%; width: 3px; height: 3px; animation: heroParticle 6.5s ease-in-out infinite; animation-delay: 0.8s; }
    .hero-particle:nth-child(5) { left: 80%; top: 65%; width: 4px; height: 4px; animation: heroParticle 7.5s ease-in-out infinite; animation-delay: 2.2s; }
    .hero-particle:nth-child(6) { left: 35%; top: 70%; width: 2px; height: 2px; animation: heroParticle 5s ease-in-out infinite; animation-delay: 4s; }
    /* --- Anéis sonoros do Hero --- */
    @keyframes heroRing {
      0%   { transform: translate(-50%, -50%) scale(0.15); opacity: 0.5; border-width: 2px; }
      60%  { opacity: 0.12; }
      100% { transform: translate(-50%, -50%) scale(4); opacity: 0; border-width: 0.5px; }
    }
    .hero-rings {
      position: absolute;
      inset: 0;
      pointer-events: none;
      z-index: 1;
      overflow: hidden;
    }
    .hero-ring {
      position: absolute;
      top: 50%;
      left: 50%;
      border: 1px solid rgba(212,175,55,0.2);
      border-radius: 50%;
      animation: heroRing 5s cubic-bezier(0.22, 1, 0.36, 1) infinite;
    }
    .hero-ring:nth-child(1) { width: 22vmin; height: 22vmin; animation-delay: 0s; }
    .hero-ring:nth-child(2) { width: 32vmin; height: 32vmin; animation-delay: 1.7s; }
    .hero-ring:nth-child(3) { width: 26vmin; height: 26vmin; animation-delay: 3.3s; }
    /* --- Notas musicais flutuantes --- */
    @keyframes heroNoteFloat {
      0%   { transform: translateY(0) translateX(0) rotate(0deg); opacity: 0; }
      15%  { opacity: 0.7; }
      50%  { transform: translateY(-40vh) translateX(30px) rotate(180deg); opacity: 0.5; }
      85%  { opacity: 0.2; }
      100% { transform: translateY(-80vh) translateX(-20px) rotate(360deg); opacity: 0; }
    }
    .hero-note {
      position: absolute;
      bottom: -20px;
      pointer-events: none;
      z-index: 1;
      color: #D4AF37;
      text-shadow: 0 0 10px rgba(212,175,55,0.4);
      opacity: 0;
      font-family: serif;
      animation: heroNoteFloat 8s ease-in-out infinite;
    }
    .hero-note:nth-child(14) { left: 8%;  font-size: 1.6rem; animation-duration: 9s; animation-delay: 0s; }
    .hero-note:nth-child(15) { left: 22%; font-size: 2rem;   animation-duration: 11s; animation-delay: 2.5s; }
    .hero-note:nth-child(16) { left: 38%; font-size: 1.3rem; animation-duration: 8s;  animation-delay: 5s; }
    .hero-note:nth-child(17) { left: 55%; font-size: 2.2rem; animation-duration: 10s; animation-delay: 1s; }
    .hero-note:nth-child(18) { left: 70%; font-size: 1.5rem; animation-duration: 9.5s; animation-delay: 4s; }
    .hero-note:nth-child(19) { left: 85%; font-size: 1.8rem; animation-duration: 12s; animation-delay: 3s; }
    .hero-note:nth-child(20) { left: 45%; font-size: 1rem;   animation-duration: 7s;  animation-delay: 6.5s; }
    .hero-note:nth-child(21) { left: 92%; font-size: 1.4rem; animation-duration: 10.5s; animation-delay: 7s; }
    /* --- Efeitos Diferencial --- */
    @keyframes difOrbit {
      0% { transform: rotate(0deg) scale(1); opacity: 0.04; }
      50% { transform: rotate(180deg) scale(1.1); opacity: 0.08; }
      100% { transform: rotate(360deg) scale(1); opacity: 0.04; }
    }
    .dif-orbit {
      background: radial-gradient(circle, transparent 40%, rgba(212,175,55,0.15) 50%, transparent 55%);
      animation: difOrbit 12s linear infinite;
    }
    @keyframes difTagUnderline {
      0% { width: 0; left: 50%; }
      60% { width: 100%; left: 0; }
      100% { width: 100%; left: 0; }
    }
    .diferencial-tag::after {
      content: '';
      position: absolute;
      bottom: -4px;
      height: 2px;
      background: linear-gradient(90deg, #D4AF37, transparent);
      animation: difTagUnderline 2s ease-out forwards;
    }
    @keyframes difItemIn {
      0% { opacity: 0; transform: translateX(30px) scale(0.95); }
      100% { opacity: 1; transform: translateX(0) scale(1); }
    }
    .diferencial-item {
      opacity: 0;
      animation: difItemIn 0.6s ease-out forwards;
    }
    .diferencial-item:nth-child(1) { animation-delay: 0.1s; }
    .diferencial-item:nth-child(2) { animation-delay: 0.2s; }
    .diferencial-item:nth-child(3) { animation-delay: 0.3s; }
    .diferencial-item:nth-child(4) { animation-delay: 0.4s; }
    .diferencial-item:nth-child(5) { animation-delay: 0.5s; }
    .diferencial-item:nth-child(6) { animation-delay: 0.6s; }
    .diferencial-item:nth-child(7) { animation-delay: 0.7s; }

    /* --- Efeitos Diferencial: Bounce ícones --- */
    @keyframes difIconBounce {
      0%, 100% { transform: translateY(0) scale(1); }
      40% { transform: translateY(-6px) scale(1.2); color: #f5d97a; }
      60% { transform: translateY(-3px) scale(1.1); }
    }
    .diferencial-item .diferencial-icon {
      display: inline-block;
      transition: transform 0.3s;
      animation: difIconBounce 3.5s ease-in-out infinite;
    }
    .diferencial-item:nth-child(1) .diferencial-icon { animation-delay: 0s; }
    .diferencial-item:nth-child(2) .diferencial-icon { animation-delay: 0.4s; }
    .diferencial-item:nth-child(3) .diferencial-icon { animation-delay: 0.8s; }
    .diferencial-item:nth-child(4) .diferencial-icon { animation-delay: 1.2s; }
    .diferencial-item:nth-child(5) .diferencial-icon { animation-delay: 1.6s; }
    .diferencial-item:nth-child(6) .diferencial-icon { animation-delay: 2.0s; }
    .diferencial-item:nth-child(7) .diferencial-icon { animation-delay: 2.4s; }
    /* --- Efeitos Diferencial: Equalizador --- */
    @keyframes difEqualizer {
      0%, 100% { height: 8px; }
      25% { height: 40px; }
      50% { height: 20px; }
      75% { height: 50px; }
    }
    .dif-equalizer {
      position: absolute;
      right: 5%;
      top: 50%;
      transform: translateY(-50%);
      display: flex;
      align-items: center;
      gap: 4px;
      z-index: 1;
      pointer-events: none;
      opacity: 0.15;
    }
    .dif-equalizer span {
      display: block;
      width: 4px;
      background: linear-gradient(to top, #D4AF37, #f5d97a);
      border-radius: 2px;
      animation: difEqualizer 1.2s ease-in-out infinite;
    }
    .dif-equalizer span:nth-child(1) { animation-delay: 0s; height: 30px; }
    .dif-equalizer span:nth-child(2) { animation-delay: 0.15s; height: 45px; }
    .dif-equalizer span:nth-child(3) { animation-delay: 0.3s; height: 20px; }
    .dif-equalizer span:nth-child(4) { animation-delay: 0.45s; height: 50px; }
    .dif-equalizer span:nth-child(5) { animation-delay: 0.6s; height: 15px; }
    .dif-equalizer span:nth-child(6) { animation-delay: 0.75s; height: 40px; }
    .dif-equalizer span:nth-child(7) { animation-delay: 0.9s; height: 25px; }
    .dif-equalizer span:nth-child(8) { animation-delay: 1.05s; height: 48px; }
    .dif-equalizer span:nth-child(9) { animation-delay: 0.2s; height: 12px; }
    .dif-equalizer span:nth-child(10) { animation-delay: 0.5s; height: 35px; }
    /* --- Efeitos CTA --- */
    @keyframes ctaPulse {
      0%, 100% { opacity: 0.08; transform: scale(1); }
      50% { opacity: 0.2; transform: scale(1.15); }
    }
    @keyframes ctaFloat {
      0%, 100% { transform: translateY(0) scale(1); opacity: 0; }
      20% { opacity: 0.6; }
      80% { opacity: 0.3; }
      100% { transform: translateY(-120px) scale(1.3); opacity: 0; }
    }
    @keyframes ctaFloat2 {
      0%, 100% { transform: translate(0, 0) scale(1); opacity: 0; }
      25% { opacity: 0.4; }
      75% { opacity: 0.2; }
      100% { transform: translate(60px, -180px) scale(1.5); opacity: 0; }
    }
    @keyframes ctaFloat3 {
      0%, 100% { transform: translate(0, 0) scale(1); opacity: 0; }
      30% { opacity: 0.5; }
      70% { opacity: 0.2; }
      100% { transform: translate(-80px, -140px) scale(1.2); opacity: 0; }
    }
    @keyframes ctaShimmer {
      0% { transform: translateX(-100%) skewX(-20deg); }
      60% { transform: translateX(100%) skewX(-20deg); }
      100% { transform: translateX(100%) skewX(-20deg); }
    }
    @keyframes ctaBorderGlow {
      0%, 100% { border-color: rgba(212,175,55,0.1); }
      50% { border-color: rgba(212,175,55,0.4); }
    }
    @keyframes ctaButtonPulse {
      0%, 100% { box-shadow: 0 0 20px rgba(212,175,55,0.2); }
      50% { box-shadow: 0 0 40px rgba(212,175,55,0.5); }
    }
    @keyframes ctaNoteFloat {
      0% { transform: translateY(0) rotate(0deg) scale(0.5); opacity: 0; }
      15% { opacity: 0.5; transform: translateY(-30px) rotate(15deg) scale(1); }
      80% { opacity: 0.25; }
      100% { transform: translateY(-280px) rotate(45deg) scale(0.8); opacity: 0; }
    }
    .cta-notes-container {
      position: absolute;
      inset: 0;
      pointer-events: none;
      z-index: 1;
    }
    .cta-note {
      position: absolute;
      font-size: 36px;
      color: #D4AF37;
      pointer-events: none;
      opacity: 0;
    }
    .cta-notes-container .cta-note:nth-child(1) { left: 8%; bottom: 15%; animation: ctaNoteFloat 8s ease-in-out infinite; animation-delay: 0s; }
    .cta-notes-container .cta-note:nth-child(2) { left: 20%; bottom: 8%; font-size: 28px; animation: ctaNoteFloat 9s ease-in-out infinite; animation-delay: 2.5s; }
    .cta-notes-container .cta-note:nth-child(3) { left: 50%; bottom: 12%; font-size: 30px; animation: ctaNoteFloat 7.5s ease-in-out infinite; animation-delay: 1.5s; }
    .cta-notes-container .cta-note:nth-child(4) { left: 70%; bottom: 18%; font-size: 24px; animation: ctaNoteFloat 8.5s ease-in-out infinite; animation-delay: 4s; }
    .cta-notes-container .cta-note:nth-child(5) { left: 85%; bottom: 10%; font-size: 32px; animation: ctaNoteFloat 9.5s ease-in-out infinite; animation-delay: 3s; }
    .cta-notes-container .cta-note:nth-child(6) { left: 92%; bottom: 22%; font-size: 20px; animation: ctaNoteFloat 7s ease-in-out infinite; animation-delay: 5.5s; }
    .cta-glow { animation: ctaPulse 4s ease-in-out infinite; }
    .cta-particle {
      position: absolute;
      width: 6px; height: 6px;
      background: #D4AF37;
      border-radius: 50%;
      pointer-events: none;
      filter: blur(1px);
      opacity: 0;
    }
    .cta-particle:nth-child(1) { left: 15%; top: 70%; animation: ctaFloat 5s ease-in-out infinite; animation-delay: 0s; }
    .cta-particle:nth-child(2) { left: 30%; top: 80%; width: 4px; height: 4px; animation: ctaFloat2 6s ease-in-out infinite; animation-delay: 1s; }
    .cta-particle:nth-child(3) { left: 60%; top: 75%; width: 5px; height: 5px; animation: ctaFloat 7s ease-in-out infinite; animation-delay: 2s; }
    .cta-particle:nth-child(4) { left: 75%; top: 65%; width: 3px; height: 3px; animation: ctaFloat3 5.5s ease-in-out infinite; animation-delay: 0.5s; }
    .cta-particle:nth-child(5) { left: 45%; top: 85%; width: 7px; height: 7px; animation: ctaFloat 6.5s ease-in-out infinite; animation-delay: 3s; }
    .cta-particle:nth-child(6) { left: 85%; top: 70%; width: 4px; height: 4px; animation: ctaFloat2 5s ease-in-out infinite; animation-delay: 1.5s; }
    .cta-btn-shimmer {
      position: relative;
      overflow: hidden;
    }
    .cta-btn-shimmer::after {
      content: '';
      position: absolute;
      top: 0; left: 0; right: 0; bottom: 0;
      background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
      transform: translateX(-100%) skewX(-20deg);
      animation: ctaShimmer 4s ease-in-out infinite;
      pointer-events: none;
    }
    .cta-border-animate {
      animation: ctaBorderGlow 3s ease-in-out infinite;
    }
    .cta-btn-pulse {
      animation: ctaButtonPulse 2.5s ease-in-out infinite;
    }
    /* --- Efeitos Sobre (redesigned) --- */
    @keyframes sobreOrbSlow {
      0% { transform: translate(0, 0) scale(0.8); opacity: 0; }
      15% { opacity: 0.15; }
      85% { opacity: 0.08; }
      100% { transform: translate(120px, -150px) scale(1.6); opacity: 0; }
    }
    @keyframes sobreOrbMedium {
      0% { transform: translate(0, 0) scale(0.8); opacity: 0; }
      15% { opacity: 0.12; }
      85% { opacity: 0.06; }
      100% { transform: translate(-100px, 180px) scale(1.4); opacity: 0; }
    }
    @keyframes sobreOrbFast {
      0% { transform: translate(0, 0) scale(0.8); opacity: 0; }
      15% { opacity: 0.1; }
      85% { opacity: 0.05; }
      100% { transform: translate(80px, -200px) scale(1.8); opacity: 0; }
    }
    @keyframes sobreSparkle {
      0%, 100% { opacity: 0; transform: scale(0) rotate(0deg); }
      30% { opacity: 0.8; transform: scale(1) rotate(180deg); }
      55% { opacity: 0.2; transform: scale(0.4) rotate(360deg); }
      80% { opacity: 0.7; transform: scale(1.1) rotate(480deg); }
    }
    @keyframes sobreEqBar {
      0%, 100% { transform: scaleY(0.2); }
      20% { transform: scaleY(0.8); opacity: 0.3; }
      40% { transform: scaleY(1); opacity: 0.6; }
      60% { transform: scaleY(0.4); opacity: 0.3; }
      80% { transform: scaleY(0.7); opacity: 0.5; }
    }
    @keyframes sobreEqBar2 {
      0%, 100% { transform: scaleY(0.3); }
      25% { transform: scaleY(1); opacity: 0.4; }
      50% { transform: scaleY(0.5); opacity: 0.3; }
      75% { transform: scaleY(0.9); opacity: 0.5; }
    }
    @keyframes sobreRipple {
      0% { transform: scale(0.3); opacity: 0.5; }
      100% { transform: scale(3); opacity: 0; }
    }
    @keyframes sobreBorderGlow {
      0%, 100% { border-color: rgba(212,175,55,0.08); box-shadow: 0 0 15px rgba(212,175,55,0.05); }
      33% { border-color: rgba(212,175,55,0.35); box-shadow: 0 0 50px rgba(212,175,55,0.18); }
      66% { border-color: rgba(212,175,55,0.15); box-shadow: 0 0 30px rgba(212,175,55,0.1); }
    }
    @keyframes sobreTextFlow {
      0% { background-position: 0% 50%; filter: drop-shadow(0 0 4px rgba(212,175,55,0.1)); }
      50% { background-position: 100% 50%; filter: drop-shadow(0 0 12px rgba(212,175,55,0.3)); }
      100% { background-position: 0% 50%; filter: drop-shadow(0 0 4px rgba(212,175,55,0.1)); }
    }
    @keyframes sobreTagDrift {
      0%, 100% { opacity: 0.5; transform: translateY(0) rotate(0deg); }
      50% { opacity: 1; transform: translateY(-3px) rotate(1deg); }
    }
    #sobre .sobre-effects {
      position: absolute;
      inset: 0;
      pointer-events: none;
      overflow: hidden;
      z-index: 1;
    }
    #sobre .sobre-orb {
      position: absolute;
      border-radius: 50%;
      filter: blur(60px);
      background: radial-gradient(circle, rgba(212,175,55,0.25), transparent 70%);
      pointer-events: none;
      opacity: 0;
    }
    #sobre .sobre-effects .sobre-orb:nth-child(1) { width: 320px; height: 320px; left: -12%; top: -15%; animation: sobreOrbSlow 16s ease-in-out infinite; animation-delay: 0s; }
    #sobre .sobre-effects .sobre-orb:nth-child(2) { width: 260px; height: 260px; right: -10%; bottom: -8%; background: radial-gradient(circle, rgba(212,175,55,0.18), transparent 70%); animation: sobreOrbMedium 20s ease-in-out infinite; animation-delay: 4s; }
    #sobre .sobre-effects .sobre-orb:nth-child(3) { width: 200px; height: 200px; left: 45%; top: 60%; background: radial-gradient(circle, rgba(255,215,0,0.12), transparent 70%); animation: sobreOrbFast 14s ease-in-out infinite; animation-delay: 8s; }
    #sobre .sobre-sparkle {
      position: absolute;
      width: 6px; height: 6px;
      background: #D4AF37;
      clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
      opacity: 0;
      pointer-events: none;
      filter: blur(0.5px);
      box-shadow: 0 0 8px rgba(212,175,55,0.5);
    }
    #sobre .sobre-effects .sobre-sparkle:nth-child(4) { left: 8%; top: 18%; width: 5px; height: 5px; animation: sobreSparkle 5s ease-in-out infinite; animation-delay: 0s; }
    #sobre .sobre-effects .sobre-sparkle:nth-child(5) { left: 88%; top: 22%; width: 4px; height: 4px; animation: sobreSparkle 6s ease-in-out infinite; animation-delay: 1.2s; }
    #sobre .sobre-effects .sobre-sparkle:nth-child(6) { left: 92%; top: 72%; width: 5px; height: 5px; animation: sobreSparkle 4.5s ease-in-out infinite; animation-delay: 3s; }
    #sobre .sobre-effects .sobre-sparkle:nth-child(7) { left: 12%; top: 78%; width: 3px; height: 3px; animation: sobreSparkle 5.8s ease-in-out infinite; animation-delay: 4.5s; }
    #sobre .sobre-effects .sobre-sparkle:nth-child(8) { left: 52%; top: 8%; width: 4px; height: 4px; animation: sobreSparkle 7s ease-in-out infinite; animation-delay: 2.5s; }
    #sobre .sobre-eq {
      position: absolute;
      bottom: 24px;
      right: 32px;
      display: flex;
      align-items: flex-end;
      gap: 3px;
      height: 40px;
      pointer-events: none;
      opacity: 0;
      animation: sobreFadeIn 2s ease-out 1s forwards;
    }
    @keyframes sobreFadeIn { to { opacity: 0.5; } }
    #sobre .sobre-eq-bar {
      width: 3px;
      background: linear-gradient(to top, rgba(212,175,55,0.15), rgba(212,175,55,0.6));
      border-radius: 2px;
      transform-origin: bottom;
      animation: sobreEqBar 1.2s ease-in-out infinite;
    }
    #sobre .sobre-eq .sobre-eq-bar:nth-child(1) { height: 28px; animation-delay: 0s; }
    #sobre .sobre-eq .sobre-eq-bar:nth-child(2) { height: 18px; animation-delay: 0.15s; }
    #sobre .sobre-eq .sobre-eq-bar:nth-child(3) { height: 36px; animation: sobreEqBar2 1.4s ease-in-out infinite; animation-delay: 0.3s; }
    #sobre .sobre-eq .sobre-eq-bar:nth-child(4) { height: 14px; animation-delay: 0.45s; }
    #sobre .sobre-eq .sobre-eq-bar:nth-child(5) { height: 24px; animation-delay: 0.6s; }
    #sobre .sobre-ripple-ring {
      position: absolute;
      top: 50%; left: 50%;
      width: 80px; height: 80px;
      margin-left: -40px; margin-top: -40px;
      border: 1px solid rgba(212,175,55,0.2);
      border-radius: 50%;
      pointer-events: none;
      animation: sobreRipple 4.5s ease-out infinite;
    }
    #sobre .sobre-ripple-ring + .sobre-ripple-ring {
      animation-delay: 2.25s;
    }
    #sobre .sobre-img-wrap {
      position: relative;
      border-radius: 1rem;
      border: 1px solid rgba(212,175,55,0.1);
      animation: sobreBorderGlow 2s ease-in-out infinite;
      transition: box-shadow 0.3s, border-color 0.3s;
    }
    #sobre .sobre-img-wrap:hover {
      border-color: rgba(212,175,55,0.5) !important;
      box-shadow: 0 0 60px rgba(212,175,55,0.2) !important;
    }
    #sobre .sobre-img-wrap img {
      border-radius: inherit;
    }
    #sobre .sobre-text-glow {
      background: linear-gradient(135deg, #D4AF37 0%, #f5d97a 25%, #D4AF37 50%, #f5d97a 75%, #D4AF37 100%);
      background-size: 200% 200%;
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
      animation: sobreTextFlow 5s ease-in-out infinite;
    }
    #sobre .sobre-tags span {
      display: inline-block;
      animation: sobreTagDrift 4s ease-in-out infinite;
    }
    #sobre .sobre-tags span:nth-child(2) { animation-delay: 0.8s; }
    #sobre .sobre-tags span:nth-child(3) { animation-delay: 1.6s; }
    /* --- Modal --- */
    .modal-overlay { position: fixed; inset: 0; z-index: 9999; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,0.85); opacity: 0; visibility: hidden; transition: opacity 0.3s, visibility 0.3s; backdrop-filter: blur(4px); padding: 1rem; }
    .modal-overlay.open { opacity: 1; visibility: visible; }
    .modal-content { background: linear-gradient(135deg, #111827, #0A0F1A); border: 1px solid rgba(212,175,55,0.2); border-radius: 1rem; max-width: 720px; width: 100%; max-height: 85vh; display: flex; flex-direction: column; position: relative; transform: scale(0.9); transition: transform 0.3s ease-out; box-shadow: 0 0 60px rgba(212,175,55,0.1); }
    .modal-overlay.open .modal-content { transform: scale(1); }
    .modal-header { display: flex; align-items: center; justify-content: space-between; padding: 1.5rem 2rem; border-bottom: 1px solid rgba(212,175,55,0.15); flex-shrink: 0; }
    .modal-header h2 { font-family: 'Playfair Display', serif; font-size: 1.5rem; color: #D4AF37; margin: 0; }
    .modal-close { width: 2.5rem; height: 2.5rem; display: flex; align-items: center; justify-content: center; background: rgba(212,175,55,0.1); border: none; border-radius: 50%; color: #D4AF37; cursor: pointer; transition: background 0.2s; font-size: 1.25rem; flex-shrink: 0; }
    .modal-close:hover { background: rgba(212,175,55,0.25); }
    .modal-body { padding: 2rem; overflow-y: auto; flex: 1; }
    .modal-body::-webkit-scrollbar { width: 6px; }
    .modal-body::-webkit-scrollbar-track { background: transparent; }
    .modal-body::-webkit-scrollbar-thumb { background: rgba(212,175,55,0.3); border-radius: 3px; }
    .modal-body h3 { color: #D4AF37; font-size: 1.1rem; font-weight: 700; margin-top: 1.5rem; margin-bottom: 0.75rem; font-family: 'Playfair Display', serif; }
    .modal-body h3:first-child { margin-top: 0; }
    .modal-body p { color: #9CA3AF; font-size: 0.9rem; line-height: 1.7; margin-bottom: 1rem; }
    .modal-body ul { list-style: none; padding: 0; margin: 0 0 1rem 0; }
    .modal-body ul li { color: #9CA3AF; font-size: 0.9rem; line-height: 1.7; padding-left: 1.25rem; position: relative; margin-bottom: 0.25rem; }
    .modal-body ul li::before { content: '▸'; position: absolute; left: 0; color: #D4AF37; }
    @media (max-width: 640px) {
      .modal-content { max-height: 90vh; border-radius: 0.75rem; }
      .modal-header { padding: 1rem 1.25rem; }
      .modal-header h2 { font-size: 1.25rem; }
      .modal-body { padding: 1.25rem; }
    }
    /* --- Efeitos Mentoria --- */
    @keyframes mentoriaGlowPulse {
      0%, 100% { opacity: 0.04; transform: scale(1); }
      50% { opacity: 0.1; transform: scale(1.15); }
    }
    #mentoria .mentoria-glow-1 {
      animation: mentoriaGlowPulse 5s ease-in-out infinite;
    }
    #mentoria .mentoria-glow-2 {
      animation: mentoriaGlowPulse 7s ease-in-out infinite reverse;
    }
    /* --- Notas musicais flutuantes --- */
    @keyframes mentoriaNoteFloat {
      0%   { transform: translateY(0) translateX(0) rotate(0deg); opacity: 0; }
      8%  { opacity: 0.25; }
      50%  { transform: translateY(350px) translateX(15px) rotate(180deg); opacity: 0.12; }
      100% { transform: translateY(700px) translateX(-10px) rotate(360deg); opacity: 0; }
    }
    #mentoria .mentoria-note {
      position: absolute;
      top: 80px;
      pointer-events: none;
      z-index: 0;
      color: #D4AF37;
      text-shadow: 0 0 8px rgba(212,175,55,0.2);
      opacity: 0;
      font-family: serif;
      animation: mentoriaNoteFloat 7s ease-in-out infinite;
    }
    #mentoria .mentoria-note:nth-child(3)  { left: 4%;  font-size: 1.2rem; animation-duration: 6s;  animation-delay: 0s; }
    #mentoria .mentoria-note:nth-child(4)  { left: 12%; font-size: 1.5rem; animation-duration: 7s;  animation-delay: 0.8s; }
    #mentoria .mentoria-note:nth-child(5)  { left: 20%; font-size: 1rem;   animation-duration: 5.5s; animation-delay: 1.6s; }
    #mentoria .mentoria-note:nth-child(6)  { left: 28%; font-size: 1.7rem; animation-duration: 7.5s; animation-delay: 0.4s; }
    #mentoria .mentoria-note:nth-child(7)  { left: 36%; font-size: 1.1rem; animation-duration: 6.5s; animation-delay: 2.2s; }
    #mentoria .mentoria-note:nth-child(8)  { left: 44%; font-size: 1.4rem; animation-duration: 8s;   animation-delay: 1.2s; }
    #mentoria .mentoria-note:nth-child(9)  { left: 52%; font-size: 1rem;   animation-duration: 5.8s; animation-delay: 3s; }
    #mentoria .mentoria-note:nth-child(10) { left: 60%; font-size: 1.6rem; animation-duration: 7.2s; animation-delay: 0.6s; }
    #mentoria .mentoria-note:nth-child(11) { left: 68%; font-size: 1.2rem; animation-duration: 6.2s; animation-delay: 2.8s; }
    #mentoria .mentoria-note:nth-child(12) { left: 76%; font-size: 1.5rem; animation-duration: 8.5s; animation-delay: 1.8s; }
    #mentoria .mentoria-note:nth-child(13) { left: 84%; font-size: 1rem;   animation-duration: 5s;   animation-delay: 3.5s; }
    #mentoria .mentoria-note:nth-child(14) { left: 92%; font-size: 1.3rem; animation-duration: 6.8s; animation-delay: 2.4s; }
    #mentoria .mentoria-note:nth-child(15) { left: 9%;  font-size: 1.8rem; animation-duration: 9s;   animation-delay: 4s; }
    #mentoria .mentoria-note:nth-child(16) { left: 63%; font-size: 0.9rem; animation-duration: 5.2s; animation-delay: 4.5s; }
    #mentoria .mentoria-note:nth-child(17) { left: 30%; font-size: 1.6rem; animation-duration: 7s;   animation-delay: 1.4s; }
    #mentoria .mentoria-note:nth-child(18) { left: 75%; font-size: 1.1rem; animation-duration: 6.3s; animation-delay: 3.2s; }
    @keyframes mentoriaListItemGlow {
      0%, 100% { border-color: rgba(212,175,55,0.08); box-shadow: 0 0 0 rgba(212,175,55,0); }
      25% { border-color: rgba(212,175,55,0.25); box-shadow: 0 0 20px rgba(212,175,55,0.06); }
      50% { border-color: rgba(212,175,55,0.08); box-shadow: 0 0 0 rgba(212,175,55,0); }
    }
    @keyframes mentoriaCardPulse {
      0%, 100% { border-color: rgba(212,175,55,0.2); box-shadow: 0 0 0 rgba(212,175,55,0); }
      50% { border-color: rgba(212,175,55,0.45); box-shadow: 0 0 40px rgba(212,175,55,0.08); }
    }
    @keyframes mentoriaIconPulse {
      0%, 100% { transform: scale(1); background: rgba(212,175,55,0.1); }
      50% { transform: scale(1.1); background: rgba(212,175,55,0.18); }
    }
    #mentoria .mentoria-list-item {
      animation: mentoriaListItemGlow 5s ease-in-out infinite;
    }
    #mentoria .mentoria-list-item:nth-child(2) { animation-delay: 1.25s; }
    #mentoria .mentoria-list-item:nth-child(3) { animation-delay: 2.5s; }
    #mentoria .mentoria-list-item:nth-child(4) { animation-delay: 3.75s; }
    #mentoria .mentoria-card-target {
      animation: mentoriaCardPulse 4s ease-in-out infinite;
    }
    #mentoria .mentoria-icon-animate {
      animation: mentoriaIconPulse 3s ease-in-out infinite;
    }
    /* --- Efeito Vagas Limitadas (destaque) --- */
    @keyframes mentoriaVagasBorder {
      0%, 100% { border-color: rgba(212,175,55,0.15); box-shadow: 0 0 0 rgba(212,175,55,0); }
      15% { border-color: #D4AF37; box-shadow: 0 0 50px rgba(212,175,55,0.25); }
      30% { border-color: rgba(212,175,55,0.15); box-shadow: 0 0 0 rgba(212,175,55,0); }
    }
    @keyframes mentoriaVagasIcon {
      0%, 100% { transform: scale(1) rotate(0deg); filter: drop-shadow(0 0 4px rgba(212,175,55,0.2)); }
      10% { transform: scale(1.2) rotate(-8deg); filter: drop-shadow(0 0 20px rgba(212,175,55,0.6)); }
      20% { transform: scale(1.1) rotate(5deg); filter: drop-shadow(0 0 12px rgba(212,175,55,0.4)); }
      30% { transform: scale(1) rotate(0deg); filter: drop-shadow(0 0 4px rgba(212,175,55,0.2)); }
    }
    @keyframes mentoriaVagasShimmer {
      0% { transform: translateX(-100%) skewX(-15deg); }
      20% { transform: translateX(100%) skewX(-15deg); }
      100% { transform: translateX(100%) skewX(-15deg); }
    }
    @keyframes mentoriaVagasRing {
      0% { transform: scale(0.6); opacity: 0.5; }
      100% { transform: scale(2.5); opacity: 0; }
    }
    @keyframes mentoriaVagasTextPulse {
      0%, 100% { opacity: 1; }
      50% { opacity: 0.6; }
    }
    #mentoria .mentoria-vagas-card {
      position: relative;
      overflow: hidden;
      animation: mentoriaVagasBorder 1s ease-in-out infinite;
      transition: all 0.3s;
    }
    #mentoria .mentoria-vagas-card::before {
      content: '';
      position: absolute;
      top: 0; left: 0; right: 0; bottom: 0;
      background: linear-gradient(90deg, transparent, rgba(212,175,55,0.06), transparent);
      transform: translateX(-100%) skewX(-15deg);
      animation: mentoriaVagasShimmer 4s ease-in-out infinite;
      pointer-events: none;
    }
    #mentoria .mentoria-vagas-card::after {
      content: '';
      position: absolute;
      top: -2px; left: -2px; right: -2px; bottom: -2px;
      border-radius: inherit;
      background: linear-gradient(45deg, transparent, rgba(212,175,55,0.1), transparent, rgba(212,175,55,0.05), transparent);
      z-index: -1;
      opacity: 0.5;
      animation: mentoriaVagasRing 3s ease-out infinite;
    }
    #mentoria .mentoria-vagas-icon {
      display: inline-block;
      animation: mentoriaVagasIcon 3s ease-in-out infinite;
    }
    #mentoria .mentoria-vagas-title {
      animation: mentoriaVagasTextPulse 2s ease-in-out infinite;
    }
    @media (hover: hover) {
      #mentoria .mentoria-list-item:hover {
        border-color: rgba(212,175,55,0.5) !important;
        box-shadow: 0 0 30px rgba(212,175,55,0.12) !important;
        transform: translateX(4px);
      }
    }
    /* --- Animação das barras de progresso --- */
    .caminho-bar {
      position: relative;
      background: linear-gradient(90deg, #B8960F, #D4AF37, #f5d97a);
      transform-origin: left;
      animation: caminhoBarFill 2s ease-out forwards;
    }
    @keyframes caminhoBarFill {
      0% { transform: scaleX(0); opacity: 0; }
      20% { opacity: 1; }
      100% { transform: scaleX(1); opacity: 1; }
    }
    .caminho-bar::after {
      content: '';
      position: absolute;
      top: 0; left: 0; right: 0; bottom: 0;
      background: linear-gradient(90deg, transparent, rgba(255,255,255,0.25), transparent);
      animation: caminhoBarShine 2.5s ease-in-out infinite;
    }
    @keyframes caminhoBarShine {
      0% { transform: translateX(-100%); }
      60% { transform: translateX(100%); }
      100% { transform: translateX(100%); }
    }
    @media (prefers-reduced-motion: reduce) {
      .caminho-bar { animation: none !important; transform: scaleX(1) !important; opacity: 1 !important; }
      .caminho-bar::after { animation: none !important; }
    }
    @media (prefers-reduced-motion: reduce) {
      .cta-glow, .cta-particle, .cta-btn-shimmer::after, .cta-border-animate, .cta-btn-pulse, .dif-orbit, .dif-equalizer span, .diferencial-tag::after, .diferencial-item, .diferencial-icon, .metodo-card, .metodo-icon, .hero-bg-img, .hero-title, .hero-particle, .hero-ring, .hero-rings, .problema-glow-1, .problema-glow-2, .problema-highlight::after, .problema-particle, .problema-scan, .problema-ring-large, .problema-grid, [class*="problema-corner"], #sobre .sobre-orb, #sobre .sobre-sparkle, #sobre .sobre-eq, #sobre .sobre-eq-bar, #sobre .sobre-ripple-ring, #sobre .sobre-img-wrap, #sobre .sobre-text-glow, #sobre .sobre-tags span { animation: none !important; }
      .diferencial-item { opacity: 1; transform: none; }
      .diferencial-icon { transform: none !important; }
      .metodo-card { transform: none !important; }
      .metodo-icon { transform: none !important; background: rgba(212,175,55,0.1) !important; }
      .hero-bg-img { transform: scale(1) !important; }
      .hero-title { -webkit-text-fill-color: #D4AF37 !important; color: #D4AF37 !important; background: none !important; }
      .problema-ring { animation: none !important; display: none !important; }
      .problema-glow-1, .problema-glow-2 { opacity: 0.05 !important; transform: none !important; }
      .problema-highlight::after { width: 100% !important; opacity: 1 !important; }
      .problema-particle { display: none !important; }
      .problema-ring-large { display: none !important; }
      .problema-scan { display: none !important; }
      .problema-grid { display: none !important; }
      [class*="problema-corner"] { opacity: 0 !important; display: none !important; }
      #sobre .sobre-text-glow { -webkit-text-fill-color: #D4AF37 !important; color: #D4AF37 !important; background: none !important; }
      #sobre .sobre-img-wrap { border-color: rgba(212,175,55,0.2) !important; box-shadow: none !important; }
      #sobre .sobre-img-wrap img { box-shadow: none !important; }
      #sobre .sobre-tags span { opacity: 0.5 !important; transform: none !important; }
      #sobre .sobre-eq { display: none !important; }
      #mentoria .mentoria-glow-1, #mentoria .mentoria-glow-2 { opacity: 0.05 !important; transform: none !important; }
      #mentoria .mentoria-list-item, #mentoria .mentoria-card-target, #mentoria .mentoria-icon-animate, #mentoria .mentoria-vagas-card, #mentoria .mentoria-vagas-icon, #mentoria .mentoria-vagas-title { animation: none !important; }
      #mentoria .mentoria-vagas-card::after { display: none !important; }
      #mentoria .mentoria-list-item { border-color: rgba(212,175,55,0.08) !important; transform: none !important; box-shadow: none !important; }
      #mentoria .mentoria-vagas-card::before { display: none !important; }
    }
  