    /* Mobile-friendly tweaks */
    .glass{
      -webkit-backdrop-filter:saturate(160%) blur(16px);
      backdrop-filter:saturate(160%) blur(16px);
      /* subtle frosted border + depth */
      border-bottom:1px solid rgba(255,255,255,.08);
      box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 8px 24px rgba(0,0,0,.18);
    }
    .grad{background-image:radial-gradient(60% 40% at 50% -10%,rgba(34,197,94,.25),transparent 60%),radial-gradient(40% 30% at 100% 10%,rgba(34,211,238,.2),transparent 60%),radial-gradient(40% 30% at 0% 20%,rgba(99,102,241,.2),transparent 60%)}
    summary::-webkit-details-marker {display:none;}
    
    /* Scroll Animations */
    :root{
      --easing:cubic-bezier(.2,.8,.2,1);
      --distance:24px;
      --blur:12px;
    }

    /* Acessibilidade: respeita usuários que preferem menos movimento */
    @media (prefers-reduced-motion: reduce){
      [data-animate]{transition:none !important; transform:none !important; opacity:1 !important; filter:none !important;}
    }

    /* Estado inicial (pré-reveal) */
    [data-animate]{
      will-change: transform, opacity, filter;
      opacity:0;
      transition-property: opacity, transform, filter;
      transition-timing-function: var(--easing);
      transition-duration: 700ms; /* default; pode ajustar via data-duration */
    }

    /* Tipos */
    [data-animate].preset-fade-up   { transform: translate3d(0, var(--distance), 0); }
    [data-animate].preset-fade-down { transform: translate3d(0, calc(var(--distance)*-1), 0); }
    [data-animate].preset-fade-left { transform: translate3d(var(--distance), 0, 0); }
    [data-animate].preset-fade-right{ transform: translate3d(calc(var(--distance)*-1), 0, 0); }
    [data-animate].preset-blur-in   { filter: blur(var(--blur)); }
    [data-animate].preset-scale-in  { transform: scale(.96); }

    /* Estado revelado */
    [data-animate].in{
      opacity:1;
      transform:none;
      filter:none;
    }

    /* Stagger: quando splitado em spans, cada um pode ter delay incremental */
    .split > span{
      display:inline-block;
      will-change: transform, opacity, filter;
    }
