/* AA Web Studio V14.5 — Neon de contorno e movimento discreto.
   Camada aditiva; não altera layout, scroll, dados nem lógica dos componentes. */
:root{--aa-neon:#42d9ff;--aa-neon-blue:#397aff;--aa-neon-green:#4fe5ac;--aa-neon-ease:cubic-bezier(.2,.75,.25,1)}

/* CTAs: halo externo leve em repouso; luz se intensifica apenas na interação. */
.button:not(:disabled),
.aa-slide__cta,
.aa-case-floating__score,
.aa-portfolio-more__button,
.aa-carousel__nav:not(:disabled),
.aa-case-results__cta,
.ghost-link,
.service-context a{
  transition:box-shadow .36s ease,filter .36s ease,transform .36s var(--aa-neon-ease),border-color .36s ease,background-color .36s ease;
}
.button:not(:disabled){
  box-shadow:0 13px 32px rgba(20,116,229,.18),0 0 0 1px rgba(90,216,255,.16),0 0 20px rgba(29,151,255,.10);
}
.button:not(:disabled):is(:hover,:focus-visible){
  transform:translateY(-2px);
  box-shadow:0 16px 44px rgba(13,105,219,.33),0 0 0 1px rgba(116,241,255,.56),0 0 28px rgba(53,193,255,.36);
  filter:saturate(1.08);
}
.button .fi,.nav-wrap a .fi,.aa-slide__cta svg,.aa-carousel__nav svg,
.aa-portfolio-more__button svg,.service-context a .fi{
  display:inline-block;
  transition:transform .35s var(--aa-neon-ease),filter .35s ease;
}
.button:is(:hover,:focus-visible) .fi,
.nav-wrap a:is(:hover,:focus-visible) .fi,
.aa-slide__cta:is(:hover,:focus-visible) svg,
.aa-carousel__nav:is(:hover,:focus-visible) svg{
  transform:translateX(3px);
  filter:drop-shadow(0 0 5px rgba(70,218,255,.42));
}
.ghost-link:is(:hover,:focus-visible){color:#a9f2ff;filter:drop-shadow(0 0 9px rgba(60,216,255,.3))}
.aa-slide__cta:is(:hover,:focus-visible){box-shadow:0 12px 35px rgba(42,169,255,.28),0 0 0 1px rgba(135,239,255,.5)}
.aa-carousel__nav:not(:disabled):is(:hover,:focus-visible){border-color:rgba(86,215,255,.73);box-shadow:0 0 0 1px rgba(64,215,255,.2),0 0 18px rgba(64,215,255,.27);transform:translateY(-2px)}
.aa-portfolio-more__button:is(:hover,:focus-visible){box-shadow:0 0 24px rgba(61,207,255,.25),inset 0 0 16px rgba(53,144,218,.10)}

/* Destaques: luz refletida na borda e nos dados, sem mover o slide ou os mockups. */
.aa-carousel{border-color:rgba(70,179,255,.27);box-shadow:0 28px 90px rgba(0,0,0,.4),0 0 0 1px rgba(63,150,255,.08),0 0 36px rgba(25,105,220,.10)}
.aa-showcase__pulse{box-shadow:0 0 0 5px rgba(64,217,255,.1),0 0 13px rgba(64,217,255,.54);animation:aa-neon-pulse 4s ease-in-out infinite}
.aa-case-floating__score,.aa-case-floating__growth,.aa-case-floating__mini{
  border-color:rgba(80,190,255,.24);
  box-shadow:0 16px 40px rgba(0,0,0,.34),0 0 0 1px rgba(54,143,230,.08),0 0 19px rgba(52,145,236,.10);
}
.aa-case-floating__ring{filter:drop-shadow(0 0 8px rgba(79,229,172,.22));animation:aa-neon-ring 5s ease-in-out infinite}
.aa-case-floating__growth-icon{filter:drop-shadow(0 0 8px rgba(74,229,167,.35));animation:aa-neon-icon-breathe 4.4s ease-in-out infinite}
.aa-case-floating__growth.is-frame .aa-case-floating__growth-icon{filter:drop-shadow(0 0 9px rgba(197,142,255,.32))}
.aa-case-floating__growth-copy strong,.aa-case-floating__ring-inner strong{text-shadow:0 0 18px rgba(80,238,184,.09)}

/* Elementos em destaque: contorno azul e pequeno reflexo luminoso no hover. */
.format-card,.process-step-card,.review-card,.aa-grid-card__inner,.client-logo{
  transition:border-color .35s ease,box-shadow .35s ease,transform .35s var(--aa-neon-ease);
}
.format-card:is(:hover,:focus-within),.process-step-card:is(:hover,:focus-within),
.review-card:is(:hover,:focus-within),.aa-grid-card__inner:is(:hover,:focus-visible),
.client-logo:hover{
  border-color:rgba(65,191,255,.4);
  box-shadow:0 20px 60px rgba(0,0,0,.28),0 0 0 1px rgba(64,217,255,.12),0 0 24px rgba(51,155,244,.16);
}
.format-card>.fi,.process-step-card>.fi,.capability-card>.fi,.showcase-note .fi{
  transition:transform .4s var(--aa-neon-ease),filter .4s ease,color .4s ease;
}
.format-card:hover>.fi,.process-step-card:hover>.fi,.capability-card:hover>.fi{
  transform:translateY(-3px) rotate(-5deg);
  filter:drop-shadow(0 0 11px rgba(65,217,255,.48));
  color:#8aeaff;
}
.process-section .process-step>b{
  box-shadow:0 0 0 5px rgba(4,14,23,.9),0 0 16px rgba(55,200,250,.16);
  transition:box-shadow .4s ease;
}
.process-section .process-step:hover>b{
  box-shadow:0 0 0 5px rgba(4,14,23,.9),0 0 23px rgba(55,200,250,.37);
}
.review-stars,.review-stars span{transition:filter .3s ease}
.review-card:hover .review-stars{filter:drop-shadow(0 0 7px rgba(63,191,255,.22))}

/* Movimento minimalista, restrito a pequenos elementos de realce. */
@keyframes aa-neon-pulse{0%,100%{opacity:.78;filter:brightness(1)}50%{opacity:1;filter:brightness(1.25)}}
@keyframes aa-neon-ring{0%,100%{filter:drop-shadow(0 0 7px rgba(79,229,172,.14))}50%{filter:drop-shadow(0 0 13px rgba(79,229,172,.35))}}
@keyframes aa-neon-icon-breathe{0%,100%{filter:drop-shadow(0 0 5px rgba(74,229,167,.16))}50%{filter:drop-shadow(0 0 13px rgba(74,229,167,.42))}}

/* Tela touch: manter halo sutil, sem hover artificial. */
@media (hover:none){
  .format-card:hover,.process-step-card:hover,.review-card:hover,.client-logo:hover{transform:none}
  .format-card:hover>.fi,.process-step-card:hover>.fi,.capability-card:hover>.fi{transform:none}
}
@media (prefers-reduced-motion:reduce){
  .aa-showcase__pulse,.aa-case-floating__ring,.aa-case-floating__growth-icon{animation:none!important}
  .button,.button .fi,.nav-wrap a .fi,.aa-slide__cta,.aa-slide__cta svg,
  .aa-carousel__nav,.aa-carousel__nav svg,.aa-portfolio-more__button,.ghost-link,
  .format-card,.format-card>.fi,.process-step-card,.process-step-card>.fi,
  .review-card,.aa-grid-card__inner,.client-logo,.process-section .process-step>b{
    transition:none!important;
  }
}
