/* ============================================================
   EFEITOS — estilo "agência moderna" (código original)
   Cursor personalizado, reveal cinematográfico, botão magnético,
   parallax de hero e tipografia ampliada. Nada copiado de terceiros.
   ============================================================ */

/* ---------- Cursor personalizado (desktop com ponteiro fino) ---------- */
@media (hover:hover) and (pointer:fine){
  body{cursor:none}
  input,textarea{cursor:text}
}
.fx-cursor{
  position:fixed;top:0;left:0;z-index:9999;pointer-events:none;border-radius:50%;
  width:7px;height:7px;background:var(--color-accent-hi,#F2D27A);will-change:transform;
}
.fx-cursor--ring{
  width:40px;height:40px;background:transparent;border:1.5px solid rgba(228,50,43,.75);
  transition:width .3s ease,height .3s ease,border-color .3s ease,background .3s ease;
}
body.fx-hover .fx-cursor{background:#E4322B}
body.fx-hover .fx-cursor--ring{width:64px;height:64px;border-color:var(--color-accent);background:rgba(221,178,74,.08)}
@media (hover:none),(pointer:coarse){ .fx-cursor{display:none!important} }

/* ---------- Reveal cinematográfico ao rolar ---------- */
@media (prefers-reduced-motion:no-preference){
  [data-reveal]{
    opacity:0;transform:translateY(46px);filter:blur(8px);
    transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1),filter 1s cubic-bezier(.16,1,.3,1);
  }
  [data-reveal].is-visible{opacity:1;transform:none;filter:none}
  [data-reveal-stagger]>*{
    opacity:0;transform:translateY(30px);filter:blur(6px);
    transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1),filter .9s cubic-bezier(.16,1,.3,1);
  }
  [data-reveal-stagger].is-visible>*{opacity:1;transform:none;filter:none}
  [data-reveal-stagger].is-visible>*:nth-child(2){transition-delay:.08s}
  [data-reveal-stagger].is-visible>*:nth-child(3){transition-delay:.16s}
  [data-reveal-stagger].is-visible>*:nth-child(4){transition-delay:.24s}
  [data-reveal-stagger].is-visible>*:nth-child(5){transition-delay:.32s}
  [data-reveal-stagger].is-visible>*:nth-child(6){transition-delay:.4s}
}

/* ---------- Hero ampliado (tipografia + parallax) ---------- */
.hero__title{font-size:clamp(2.6rem,7.4vw,6rem);letter-spacing:-.035em;line-height:.98}
.hero__video{will-change:transform}

/* ---------- Botão primário: base do efeito magnético ---------- */
.btn--primary{will-change:transform;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .3s,background .3s}
