
    :root { --header-h: 76px; }
    html { background: #070a0f; }
    body {
      background:
        radial-gradient(circle at 13% 12%, rgba(183,255,60,.08), transparent 28rem),
        radial-gradient(circle at 88% 18%, rgba(87,230,255,.06), transparent 32rem),
        #070a0f;
      text-rendering: optimizeLegibility;
    }
    .noise::before {
      content: '';
      position: fixed;
      inset: 0;
      pointer-events: none;
      opacity: .03;
      z-index: 50;
      background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");
    }
    .grid-bg {
      background-image:
        linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
      background-size: 44px 44px;
      mask-image: linear-gradient(to bottom, rgba(0,0,0,.8), transparent);
    }
    .gradient-text {
      background: linear-gradient(115deg, #ffffff 8%, #b7ff3c 50%, #57e6ff 92%);
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
    }
    .glass { background: rgba(14,20,29,.74); backdrop-filter: blur(16px); }
    .reveal { opacity: 1; transform: none; }
    .js .reveal { opacity: 0; transform: translateY(22px); transition: opacity .7s ease, transform .7s ease; }
    .js .reveal.in-view { opacity: 1; transform: none; }
    html:not(.js) #mobile-menu { display: block; }
    html:not(.js) #menu-button { display: none; }
    .scan { position: relative; overflow: hidden; }
    .scan::after {
      content: '';
      position: absolute;
      inset: -100% 0 auto;
      height: 44%;
      background: linear-gradient(to bottom, transparent, rgba(183,255,60,.09), transparent);
      animation: scan 7s linear infinite;
      pointer-events: none;
    }
    @keyframes scan { to { transform: translateY(460%); } }
    @keyframes pulse-ring {
      0% { box-shadow: 0 0 0 0 rgba(37,211,102,.55); }
      72%, 100% { box-shadow: 0 0 0 18px rgba(37,211,102,0); }
    }
    .whatsapp-pulse { animation: pulse-ring 2.1s infinite; }
    .prose-copy p { color: #cbd5e1; line-height: 1.82; }
    .prose-copy h2, .prose-copy h3 { scroll-margin-top: calc(var(--header-h) + 20px); }
    .table-wrap { scrollbar-width: thin; scrollbar-color: #334155 transparent; }
    summary::-webkit-details-marker { display: none; }
    details[open] .faq-plus { transform: rotate(45deg); color: #b7ff3c; }
    .progress-bar { transform-origin: left; transform: scaleX(0); }
    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
      .js .reveal { opacity: 1; transform: none; }
    }
 