  /* ---------- Hero: documento com cadeado sendo fragmentado ---------- */
  @keyframes hero-paper-feed{
    0%{ transform: translateY(0); opacity:1; }
    42%{ transform: translateY(78px); opacity:1; }
    52%{ transform: translateY(84px); opacity:0; }
    100%{ transform: translateY(0); opacity:0; }
  }
  .hero-paper-feed{ animation: hero-paper-feed 3.4s ease-in-out infinite; }

  @keyframes hero-lock-fade{
    0%, 38%{ opacity:1; transform: scale(1); }
    50%{ opacity:0; transform: scale(.4); }
    100%{ opacity:0; transform: scale(.4); }
  }
  .hero-lock-fade{ animation: hero-lock-fade 3.4s ease-in-out infinite; transform-origin:center; }

  @keyframes confetti-1{ 0%,48%{ transform: translate(0,0) rotate(0deg); opacity:0; } 60%{ opacity:1; } 100%{ transform: translate(-46px,86px) rotate(-140deg); opacity:0; } }
  @keyframes confetti-2{ 0%,48%{ transform: translate(0,0) rotate(0deg); opacity:0; } 60%{ opacity:1; } 100%{ transform: translate(-18px,98px) rotate(110deg); opacity:0; } }
  @keyframes confetti-3{ 0%,48%{ transform: translate(0,0) rotate(0deg); opacity:0; } 60%{ opacity:1; } 100%{ transform: translate(10px,90px) rotate(-95deg); opacity:0; } }
  @keyframes confetti-4{ 0%,48%{ transform: translate(0,0) rotate(0deg); opacity:0; } 60%{ opacity:1; } 100%{ transform: translate(38px,100px) rotate(150deg); opacity:0; } }
  @keyframes confetti-5{ 0%,48%{ transform: translate(0,0) rotate(0deg); opacity:0; } 60%{ opacity:1; } 100%{ transform: translate(58px,80px) rotate(-120deg); opacity:0; } }
  @keyframes confetti-6{ 0%,48%{ transform: translate(0,0) rotate(0deg); opacity:0; } 60%{ opacity:1; } 100%{ transform: translate(-58px,108px) rotate(80deg); opacity:0; } }
  @keyframes confetti-7{ 0%,48%{ transform: translate(0,0) rotate(0deg); opacity:0; } 60%{ opacity:1; } 100%{ transform: translate(-4px,116px) rotate(-60deg); opacity:0; } }
  @keyframes confetti-8{ 0%,48%{ transform: translate(0,0) rotate(0deg); opacity:0; } 60%{ opacity:1; } 100%{ transform: translate(26px,70px) rotate(200deg); opacity:0; } }
  .confetti-1{ animation: confetti-1 3.4s ease-out infinite; transform-origin:center; }
  .confetti-2{ animation: confetti-2 3.4s ease-out infinite; transform-origin:center; }
  .confetti-3{ animation: confetti-3 3.4s ease-out infinite; transform-origin:center; }
  .confetti-4{ animation: confetti-4 3.4s ease-out infinite; transform-origin:center; }
  .confetti-5{ animation: confetti-5 3.4s ease-out infinite; transform-origin:center; }
  .confetti-6{ animation: confetti-6 3.4s ease-out infinite; transform-origin:center; }
  .confetti-7{ animation: confetti-7 3.4s ease-out infinite; transform-origin:center; }
  .confetti-8{ animation: confetti-8 3.4s ease-out infinite; transform-origin:center; }

  /* ---------- Pilares: hover nos cartões ---------- */
  .pillar-card{ transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
  .pillar-card:hover{ transform: translateY(-6px); box-shadow: 0 20px 40px -12px rgba(22,35,61,.18); border-color:#0E6B58; }
  .pillar-card:hover .pillar-icon{ background:#0E6B58; }
  .pillar-card:hover .pillar-icon svg{ stroke:#F5F3EC; }

  /* ---------- Processo: linha e ponto de fluxo ---------- */
  .flow-line-h{ position:relative; }
  .flow-line-h::before{
    content:"";
    position:absolute;
    top:28px; left:0; right:0;
    height:2px;
    background:linear-gradient(90deg, #F2994A 0%, #0E6B58 100%);
    z-index:0;
  }
  @keyframes flow-dot-move{
    0%{ left:0%; opacity:0; }
    8%{ opacity:1; }
    92%{ opacity:1; }
    100%{ left:100%; opacity:0; }
  }
  .flow-dot{
    position:absolute; top:28px; width:10px; height:10px; margin-top:-4px; margin-left:-5px;
    border-radius:9999px; background:#F5F3EC;
    box-shadow:0 0 10px 2px rgba(245,243,236,.7);
    animation: flow-dot-move 5s linear infinite;
    z-index:1;
  }

  @keyframes step-pulse{
    0%, 100%{ box-shadow:0 0 0 0 rgba(14,107,88,.5); }
    50%{ box-shadow:0 0 0 8px rgba(14,107,88,0); }
  }
  .step-pulse{ animation: step-pulse 2.4s ease-in-out infinite; }
