.site-footer {
      position: relative;
      z-index: 10;
      padding: 1.5rem 1rem 2rem;
      color: rgba(245, 247, 251, 0.48);
      font-size: 0.72rem;
      font-weight: 700;
      letter-spacing: 0.16em;
      text-align: center;
      text-transform: lowercase;
    }

    .site-footer span {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0.45rem 0.75rem;
      border: 1px solid rgba(145, 196, 255, 0.14);
      border-radius: 999px;
      background: rgba(5, 12, 22, 0.34);
      backdrop-filter: blur(10px);
      box-shadow: 0 0 1rem rgba(20, 119, 255, 0.06);
    }

/* v35 homepage stability pass
       Removes the risky CSS animation/compositing layer that caused iOS/WebKit
       flicker and repeated page crashes. Keeps the homepage visually styled,
       but static and safe. */
    body.home-page {
      position: relative;
    }

    body.home-page::before {
      content: "";
      position: fixed;
      inset: 0;
      z-index: 0;
      pointer-events: none;
      opacity: 0.24;
      background:
        radial-gradient(circle at 18% 22%, rgba(20, 119, 255, 0.16), transparent 18rem),
        radial-gradient(circle at 78% 64%, rgba(76, 255, 104, 0.075), transparent 20rem),
        repeating-linear-gradient(90deg, rgba(145, 196, 255, 0.045) 0 1px, transparent 1px 4.9rem),
        repeating-linear-gradient(0deg, rgba(145, 196, 255, 0.03) 0 1px, transparent 1px 4.2rem);
    }

    body.home-page::after {
      content: none;
    }

    .home-page .site-shell {
      position: relative;
      z-index: 3;
    }

    .home-page *,
    .home-page *::before,
    .home-page *::after {
      animation: none !important;
    }

    /* v67: Restore the small construction-status pulse only.
       The broader homepage animation lock remains in place for stability. */
    .home-page .status__light {
      animation: pulse 2.2s ease-in-out infinite !important;
      transform-origin: center;
      will-change: opacity, transform;
    }

    .home-page .brand-sign,
    .home-page .status,
    .home-page .topics,
    .home-page .social,
    .home-page .menu-panel:not([hidden]) .menu-list > li {
      opacity: 1 !important;
      transform: none !important;
    }

    .home-page .site-nav {
      opacity: 1 !important;
      transform: translateX(-50%) !important;
    }

    .home-page .menu-panel:not([hidden]) {
      opacity: 1 !important;
      transform: translateX(-50%) !important;
    }

    .home-page .brand-sign img {
      filter:
        drop-shadow(0 0 1rem rgba(20, 119, 255, 0.24))
        drop-shadow(0 0 1.25rem rgba(76, 255, 104, 0.09));
    }

    .home-page .social,
    .home-page .menu-item,
    .home-page .menu-category__button,
    .home-page .submenu-item {
      transition:
        box-shadow 160ms ease,
        border-color 160ms ease,
        background-color 160ms ease,
        color 160ms ease;
    }

    .home-page .social:hover,
    .home-page .social:focus-visible,
    .home-page .menu-item:hover,
    .home-page .menu-item:focus-visible,
    .home-page .menu-category__button:hover,
    .home-page .menu-category__button:focus-visible,
    .home-page .menu-category__button[aria-expanded="true"],
    .home-page .submenu-item:hover,
    .home-page .submenu-item:focus-visible {
      box-shadow:
        inset 0 0 1rem rgba(20, 119, 255, 0.08),
        0 0 1rem rgba(20, 119, 255, 0.12);
    }

    .home-page .submenu-heading-link {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.75rem;
      margin-top: 0.35rem;
      border: 1px solid rgba(91, 134, 171, 0.18);
      border-radius: 0.85rem;
      background: rgba(20, 119, 255, 0.045);
      color: rgba(202, 216, 238, 0.84);
      text-decoration: none;
      transition: border-color 160ms ease, background-color 160ms ease, box-shadow 160ms ease, color 160ms ease;
    }

    .home-page .submenu-heading-link::after {
      content: "";
      width: 0.38rem;
      height: 0.38rem;
      border-top: 2px solid currentColor;
      border-right: 2px solid currentColor;
      transform: rotate(45deg);
      opacity: 0.62;
    }

    .home-page .submenu-heading-link:hover,
    .home-page .submenu-heading-link:focus-visible {
      border-color: rgba(104, 255, 241, 0.28);
      background: rgba(20, 119, 255, 0.075);
      color: rgba(232, 244, 255, 0.96);
      box-shadow: inset 0 0 1rem rgba(20, 119, 255, 0.08), 0 0 1rem rgba(20, 119, 255, 0.12);
    }

/* v37 homepage hierarchy pass
       Places the controller menu beneath the jackalmuse sign and above the
       under-construction notice, while preserving the v35 stability fix. */
    .home-page .hero .site-nav {
      position: relative;
      top: auto;
      left: auto;
      z-index: 20;
      width: max-content;
      margin: clamp(0.25rem, 1.2vw, 0.75rem) auto clamp(0.55rem, 1.7vw, 1rem);
      transform: none !important;
    }

    .home-page .hero .site-nav + .status {
      margin-top: clamp(0.45rem, 1.5vw, 0.9rem);
    }

    .home-page .hero .menu-panel:not([hidden]) {
      transform: translateX(-50%) !important;
    }

    @media (max-width: 640px) {
      .home-page .hero .site-nav {
        margin-top: 0.1rem;
        margin-bottom: 0.45rem;
      }
    }

/* v45 approved neon controller/homepage theme
       Built from the current v43 baseline. Uses the approved neon controller as
       the menu asset, the approved no-controller stage image as the homepage
       background, and lightweight drift overlays for a live-wallpaper feel. */
    body.home-page {
      min-height: 100svh;
      background: #000000;
    }

    body.home-page::before,
    body.home-page::after {
      content: none !important;
    }

    .home-wallpaper {
      position: fixed;
      inset: 0;
      z-index: 0;
      overflow: hidden;
      pointer-events: none;
      background:
        linear-gradient(180deg, rgba(0,0,0,0.08), rgba(0,0,0,0.10)),
        url("assets/home-neon-stage-v45.png") center bottom / cover no-repeat,
        #000000;
    }

    .home-wallpaper::after {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 2;
      pointer-events: none;
      background:
        radial-gradient(circle at 18% 18%, rgba(92, 58, 255, 0.14), transparent 23rem),
        radial-gradient(circle at 78% 24%, rgba(17, 209, 255, 0.12), transparent 22rem),
        radial-gradient(circle at 50% 88%, rgba(76, 255, 104, 0.10), transparent 17rem),
        linear-gradient(180deg, rgba(0,0,0,0.10), rgba(0,0,0,0.18));
      mix-blend-mode: screen;
      opacity: 0.58;
    }

    .home-wallpaper__drift {
      position: absolute;
      z-index: 1;
      display: block;
      width: 62vmax;
      height: 62vmax;
      border-radius: 999px;
      opacity: 0.24;
      pointer-events: none;
      will-change: transform;
    }

    .home-wallpaper__drift--a {
      left: -22vmax;
      top: -16vmax;
      background:
        radial-gradient(circle, rgba(117, 73, 255, 0.34), transparent 63%),
        radial-gradient(circle at 68% 55%, rgba(24, 204, 255, 0.18), transparent 58%);
      animation: wallpaperDriftA 34s ease-in-out infinite alternate !important;
    }

    .home-wallpaper__drift--b {
      right: -24vmax;
      bottom: -18vmax;
      background:
        radial-gradient(circle, rgba(16, 215, 255, 0.25), transparent 62%),
        radial-gradient(circle at 36% 42%, rgba(76, 255, 104, 0.16), transparent 54%),
        radial-gradient(circle at 70% 70%, rgba(255, 52, 139, 0.12), transparent 56%);
      animation: wallpaperDriftB 42s ease-in-out infinite alternate !important;
    }

    @keyframes wallpaperDriftA {
      0% { transform: translate3d(0, 0, 0) scale(1); }
      50% { transform: translate3d(18vw, 7vh, 0) scale(1.08); }
      100% { transform: translate3d(7vw, 20vh, 0) scale(0.96); }
    }

    @keyframes wallpaperDriftB {
      0% { transform: translate3d(0, 0, 0) scale(1); }
      50% { transform: translate3d(-14vw, -9vh, 0) scale(1.06); }
      100% { transform: translate3d(-6vw, -20vh, 0) scale(0.98); }
    }

    .home-page .site-shell {
      position: relative;
      z-index: 3;
      gap: clamp(1.4rem, 5vh, 3.1rem);
      padding-bottom: clamp(0.7rem, 2.5vw, 1.2rem);
    }

    .home-page .hero {
      align-self: center;
      transform: translateY(clamp(-0.4rem, -1.5vh, -0.1rem));
    }

    .home-page .menu-button {
      position: relative;
      width: clamp(6.9rem, 16vw, 8.9rem);
      border-radius: 1.45rem;
      perspective: 800px;
      transform-style: preserve-3d;
      transition: transform 180ms ease, filter 180ms ease;
    }

    .home-page .menu-button::before {
      content: "";
      position: absolute;
      inset: 10% 8%;
      z-index: -1;
      border-radius: 999px;
      background: radial-gradient(circle, rgba(171, 92, 255, 0.42), transparent 62%);
      opacity: 0.58;
      transform: translateY(10%) scale(0.94);
      transition: opacity 180ms ease, transform 180ms ease;
      pointer-events: none;
    }

    .home-page .menu-button__image {
      filter:
        drop-shadow(0 0 0.5rem rgba(24, 210, 255, 0.85))
        drop-shadow(0 0 0.8rem rgba(120, 74, 255, 0.70))
        drop-shadow(0 0 1.15rem rgba(76, 255, 104, 0.32));
      transform: translate3d(0,0,0) scale(1);
      transition: transform 180ms ease, filter 180ms ease;
    }

    .home-page .menu-button:hover,
    .home-page .menu-button:focus-visible,
    .home-page .menu-button[aria-expanded="true"],
    .home-page .menu-button:active {
      transform: translateY(-4px) scale(1.04);
    }

    .home-page .menu-button:hover::before,
    .home-page .menu-button:focus-visible::before,
    .home-page .menu-button[aria-expanded="true"]::before,
    .home-page .menu-button:active::before {
      opacity: 0.95;
      transform: translateY(14%) scale(1.18);
    }

    .home-page .menu-button:hover .menu-button__image,
    .home-page .menu-button:focus-visible .menu-button__image,
    .home-page .menu-button[aria-expanded="true"] .menu-button__image,
    .home-page .menu-button:active .menu-button__image {
      transform: rotateX(6deg) translateY(-2px) scale(1.09);
      filter:
        drop-shadow(0 0 0.65rem rgba(57, 235, 255, 1))
        drop-shadow(0 0 1.1rem rgba(168, 92, 255, 0.90))
        drop-shadow(0 0 1.5rem rgba(76, 255, 104, 0.46))
        drop-shadow(0 1rem 1.15rem rgba(0, 0, 0, 0.58));
    }

    .home-page .status {
      background: rgba(3, 6, 14, 0.70);
      backdrop-filter: blur(10px);
    }

    .home-page .socials {
      width: min(100%, 62rem);
      margin: 0 auto;
      padding-top: 0;
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 0.55rem;
      border-top: 0;
    }

    .home-page .social {
      min-height: 3.15rem;
      padding: 0.45rem 0.56rem;
      grid-template-columns: 2.05rem 1fr;
      gap: 0.52rem;
      border-radius: 0.95rem;
      background: rgba(2, 8, 17, 0.55);
      border-color: rgba(164, 92, 255, 0.22);
      box-shadow:
        inset 0 0 0.9rem rgba(20, 119, 255, 0.055),
        0 0.55rem 1.2rem rgba(0, 0, 0, 0.22);
      backdrop-filter: blur(8px);
    }

    .home-page .social__icon {
      width: 2.05rem;
      height: 2.05rem;
      border-radius: 0.62rem;
    }

    .home-page .social__platform {
      font-size: 0.66rem;
      line-height: 1.05;
    }

    .home-page .social__handle {
      margin-top: 0.08rem;
      font-size: 0.58rem;
      line-height: 1.05;
    }

    @media (max-width: 760px) {
      .home-page .site-shell {
        gap: 1.2rem;
        padding-bottom: 0.7rem;
      }

      .home-page .socials {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (max-width: 430px) {
      .home-page .social {
        min-height: 2.95rem;
        padding: 0.4rem 0.48rem;
        grid-template-columns: 1.8rem 1fr;
        border-radius: 0.82rem;
      }

      .home-page .social__icon {
        width: 1.8rem;
        height: 1.8rem;
      }
    }

    @media (prefers-reduced-motion: reduce) {
      .home-wallpaper__drift {
        animation: none !important;
      }
    }

/* v46 social/menu polish pass
       Fixes the controller asset transparency, makes the social links one joined
       object, moves all menu indicators to purple, and gives the menu higher
       stacking priority above the socials. */

    .home-page .brand-sign {
      position: relative;
      isolation: isolate;
    }

    .home-page .brand-sign::after {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 2;
      pointer-events: none;
      background:
        linear-gradient(
          110deg,
          transparent 0%,
          transparent 36%,
          rgba(255, 255, 255, 0.0) 41%,
          rgba(255, 255, 255, 0.86) 48%,
          rgba(255, 255, 255, 0.38) 52%,
          transparent 60%,
          transparent 100%
        );
      background-size: 230% 100%;
      mix-blend-mode: screen;
      opacity: 0.76;
      -webkit-mask: url("assets/jackalmuse-green-mask-v46.png") center / contain no-repeat;
      mask: url("assets/jackalmuse-green-mask-v46.png") center / contain no-repeat;
      animation: jackalmuseGreenShimmer 5.6s linear infinite !important;
    }

    @keyframes jackalmuseGreenShimmer {
      0% { background-position: 135% 50%; }
      100% { background-position: -135% 50%; }
    }

    .home-page .hero {
      position: relative;
      z-index: 20;
    }

    .home-page .site-nav,
    .home-page .hero .site-nav {
      position: relative;
      z-index: 1000 !important;
    }

    .home-page .menu-panel {
      z-index: 10000;
      width: min(22rem, calc(100vw - 1.4rem));
      border-color: rgba(181, 101, 255, 0.42);
      box-shadow:
        0 1.35rem 3.25rem rgba(0, 0, 0, 0.60),
        0 0 2.2rem rgba(178, 92, 255, 0.18),
        0 0 1.5rem rgba(30, 213, 255, 0.08),
        inset 0 0 1.5rem rgba(178, 92, 255, 0.045);
    }

    .home-page .menu-item::after,
    .home-page .submenu-item::after {
      background: #bd5cff;
      box-shadow:
        0 0 0.55rem rgba(189, 92, 255, 0.78),
        0 0 0.95rem rgba(145, 66, 255, 0.36);
    }

    .home-page .menu-item:hover,
    .home-page .menu-item:focus-visible,
    .home-page .menu-category__button:hover,
    .home-page .menu-category__button:focus-visible,
    .home-page .menu-category__button[aria-expanded="true"],
    .home-page .submenu-item:hover,
    .home-page .submenu-item:focus-visible {
      border-color: rgba(189, 92, 255, 0.44);
      box-shadow:
        inset 0 0 1rem rgba(189, 92, 255, 0.09),
        0 0 1rem rgba(189, 92, 255, 0.14);
    }

    .home-page .menu-button {
      z-index: 10001;
    }

    .home-page .menu-button__image {
      filter:
        drop-shadow(0 0 0.58rem rgba(24, 210, 255, 0.95))
        drop-shadow(0 0 0.95rem rgba(120, 74, 255, 0.78))
        drop-shadow(0 0 1.25rem rgba(76, 255, 104, 0.36));
    }

    .home-page .menu-button:hover,
    .home-page .menu-button:focus-visible,
    .home-page .menu-button[aria-expanded="true"],
    .home-page .menu-button:active {
      transform: translateY(-5px) scale(1.055);
    }

    .home-page .menu-button:hover .menu-button__image,
    .home-page .menu-button:focus-visible .menu-button__image,
    .home-page .menu-button[aria-expanded="true"] .menu-button__image,
    .home-page .menu-button:active .menu-button__image {
      transform: rotateX(7deg) translateY(-2px) scale(1.105);
      filter:
        drop-shadow(0 0 0.7rem rgba(57, 235, 255, 1))
        drop-shadow(0 0 1.22rem rgba(189, 92, 255, 0.98))
        drop-shadow(0 0 1.55rem rgba(76, 255, 104, 0.46))
        drop-shadow(0 1rem 1.2rem rgba(0, 0, 0, 0.60));
    }

    .home-page .socials {
      position: relative;
      z-index: 4;
      isolation: isolate;
      overflow: hidden;
      width: min(100%, 50rem);
      margin: 0 auto;
      padding: 0.18rem;
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 0;
      border: 1px solid rgba(255, 255, 255, 0.11);
      border-radius: 1.18rem;
      background: rgba(1, 5, 12, 0.58);
      box-shadow:
        0 0.9rem 2rem rgba(0, 0, 0, 0.34),
        0 0 1.4rem rgba(255, 255, 255, 0.05),
        inset 0 0 1.1rem rgba(255, 255, 255, 0.035);
      backdrop-filter: blur(10px);
      -webkit-backdrop-filter: blur(10px);
    }

    .home-page .socials::before {
      content: "";
      position: absolute;
      inset: -150%;
      z-index: 0;
      background:
        conic-gradient(
          from 0deg,
          transparent 0deg,
          transparent 46deg,
          rgba(255, 255, 255, 0.12) 58deg,
          rgba(255, 255, 255, 0.92) 66deg,
          rgba(255, 255, 255, 0.18) 76deg,
          transparent 92deg,
          transparent 188deg,
          rgba(255, 255, 255, 0.10) 202deg,
          rgba(255, 255, 255, 0.72) 210deg,
          rgba(255, 255, 255, 0.12) 222deg,
          transparent 238deg,
          transparent 360deg
        );
      opacity: 0.86;
      animation: socialShellShimmer 6.2s linear infinite !important;
    }

    .home-page .socials::after {
      content: "";
      position: absolute;
      inset: 2px;
      z-index: 1;
      border-radius: calc(1.18rem - 2px);
      background:
        linear-gradient(90deg, rgba(2, 8, 17, 0.88), rgba(0, 0, 0, 0.76), rgba(2, 8, 17, 0.88));
      box-shadow:
        inset 0 0 1.2rem rgba(255, 255, 255, 0.035),
        inset 0 0 0.75rem rgba(0, 0, 0, 0.56);
    }

    @keyframes socialShellShimmer {
      0% { transform: rotate(0deg); }
      100% { transform: rotate(360deg); }
    }

    .home-page .social {
      position: relative;
      z-index: 2;
      min-height: 3.08rem;
      padding: 0.46rem 0.58rem;
      display: grid;
      grid-template-columns: 1.88rem minmax(0, 1fr);
      align-items: center;
      gap: 0.48rem;
      border: 0;
      border-radius: 0;
      background: transparent;
      box-shadow: none;
      overflow: visible;
      backdrop-filter: none;
      -webkit-backdrop-filter: none;
      transform: none;
    }

    .home-page .social::before,
    .home-page .social::after {
      content: none !important;
      display: none !important;
    }

    .home-page .social:not(:last-child) {
      border-right: 1px solid rgba(255, 255, 255, 0.085);
    }

    .home-page .social:hover,
    .home-page .social:focus-visible {
      transform: none;
      background: rgba(255, 255, 255, 0.045);
      border-color: transparent;
      outline: none;
      box-shadow: inset 0 0 0.85rem rgba(255, 255, 255, 0.05);
    }

    .home-page .social__icon {
      width: 1.82rem;
      height: 1.82rem;
      border-radius: 0.48rem;
      overflow: hidden;
    }

    .home-page .social__icon img {
      width: 100%;
      height: 100%;
      object-fit: contain;
      filter:
        drop-shadow(0 0 0.32rem rgba(255, 255, 255, 0.18))
        drop-shadow(0 0 0.5rem rgba(0, 0, 0, 0.32));
    }

    .home-page .social__copy {
      min-width: 0;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      justify-content: center;
      gap: 0.08rem;
    }

    .home-page .social__platform,
    .home-page .social__handle {
      max-width: 100%;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .home-page .social__platform {
      color: rgba(232, 238, 252, 0.82);
      font-size: 0.58rem;
      line-height: 1;
      letter-spacing: 0.12em;
    }

    .home-page .social__handle {
      color: rgba(255, 255, 255, 0.96);
      font-size: 0.62rem;
      line-height: 1.05;
      font-weight: 760;
    }

    @media (max-width: 760px) {
      .home-page .socials {
        width: min(100%, 28rem);
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .home-page .social:nth-child(2n) {
        border-right: 0;
      }

      .home-page .social:nth-child(-n + 2) {
        border-bottom: 1px solid rgba(255, 255, 255, 0.085);
      }
    }

    @media (max-width: 430px) {
      .home-page .social {
        min-height: 2.9rem;
        padding: 0.42rem 0.46rem;
        grid-template-columns: 1.65rem minmax(0, 1fr);
        gap: 0.42rem;
      }

      .home-page .social__icon {
        width: 1.6rem;
        height: 1.6rem;
      }

      .home-page .social__platform {
        font-size: 0.53rem;
      }

      .home-page .social__handle {
        font-size: 0.58rem;
      }
    }

    @media (prefers-reduced-motion: reduce) {
      .home-page .socials::before,
      .home-page .brand-sign::after {
        animation: none !important;
      }
    }

/* v47 authoritative repair pass */
  .home-page .site-shell { position: relative; isolation: isolate; }
  .home-page .hero { position: relative; z-index: 5000 !important; overflow: visible; }
  .home-page .site-nav,
  .home-page .hero .site-nav { z-index: 6000 !important; overflow: visible; }
  .home-page .menu-panel,
  .home-page .menu-panel:not([hidden]) {
    z-index: 7000 !important;
    width: min(25rem, calc(100vw - 1rem));
  }
  .home-page .socials { z-index: 20 !important; }

  .home-page .menu-button {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
  }
  .home-page .menu-button__image {
    display: block;
    width: clamp(5.3rem, 10vw, 7rem);
    height: auto;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  .home-page .menu-item::after,
  .home-page .submenu-item::after,
  .home-page .menu-category__button::after {
    background: #c15cff !important;
    border-color: #c15cff !important;
    box-shadow: 0 0 .55rem rgba(193,92,255,.95), 0 0 1rem rgba(154,67,255,.52) !important;
  }

  .home-page .socials {
    width: min(calc(100% - 1rem), 54rem);
    margin-inline: auto;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    overflow: hidden;
    border: 2px solid #050505;
    border-radius: 1.2rem;
    background: rgba(0,0,0,.72);
  }
  .home-page .socials::before {
    inset: -180%;
    background: conic-gradient(from 0deg, transparent 0 74deg, rgba(255,255,255,.08) 82deg, rgba(255,255,255,.98) 90deg, rgba(255,255,255,.18) 98deg, transparent 108deg 254deg, rgba(255,255,255,.1) 262deg, rgba(255,255,255,.76) 270deg, rgba(255,255,255,.12) 278deg, transparent 288deg 360deg);
  }
  .home-page .socials::after { inset: 3px; background: rgba(0,0,0,.82); }
  .home-page .social {
    min-width: 0;
    min-height: 3.5rem;
    padding: .5rem .62rem;
    grid-template-columns: 2rem minmax(0,1fr);
    gap: .52rem;
  }
  .home-page .social__copy { min-width:0; overflow:hidden; }
  .home-page .social__platform,
  .home-page .social__handle {
    position: static !important;
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .home-page .social__platform { font-size: .63rem; }
  .home-page .social__handle { font-size: .64rem; }
  .home-page .social__icon { width: 2rem; height:2rem; flex:0 0 2rem; border-radius:.52rem; }
  .home-page .social__icon img { object-fit: contain; }

  @media (max-width: 760px) {
    .home-page .socials { grid-template-columns: repeat(2,minmax(0,1fr)); width:min(calc(100% - 1rem),31rem); }
  }
  @media (max-width: 380px) {
    .home-page .social { grid-template-columns: 1.7rem minmax(0,1fr); padding:.45rem; gap:.4rem; }
    .home-page .social__icon { width:1.7rem;height:1.7rem; }
    .home-page .social__platform { font-size:.56rem; }
    .home-page .social__handle { font-size:.58rem; }
  }

/* v48 compact menu, letter-only shimmer, perimeter runner, and stronger live wallpaper */
.home-page .site-shell{min-height:100svh;height:100svh;padding-top:clamp(.35rem,1.4vh,.8rem);padding-bottom:.45rem;gap:.55rem;overflow:visible}
.home-page .hero{align-self:start;transform:none!important}
.home-page .brand-sign{width:min(100%,66rem);margin-top:-.25rem}
.home-page .site-footer{position:relative;z-index:5;padding:.35rem 1rem .25rem}
.home-page .site-footer span{padding:.28rem .65rem}

/* Shine only through the letter pixels, never the rectangular banner */
.home-page .brand-sign::after{
  inset:0;
  background:linear-gradient(105deg,transparent 0 40%,rgba(255,255,255,.12) 44%,rgba(255,255,255,.98) 49%,rgba(255,255,255,.28) 54%,transparent 60% 100%);
  background-size:240% 100%;
  -webkit-mask:url("assets/jackalmuse-letter-mask-v48.png") center/contain no-repeat;
  mask:url("assets/jackalmuse-letter-mask-v48.png") center/contain no-repeat;
  animation:letterShineV48 4.8s linear infinite!important;
  opacity:.9;
}
@keyframes letterShineV48{from{background-position:145% 50%}to{background-position:-145% 50%}}

/* Menu swaps views instead of growing accordion-style */
.home-page .menu-panel{width:min(24rem,calc(100vw - 1rem));max-height:min(68svh,34rem);overflow:auto;z-index:50000!important}
.home-page .menu-view[hidden]{display:none!important}
.home-page .menu-view{animation:menuViewIn .18s ease-out both!important}
@keyframes menuViewIn{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}
.home-page .menu-back{width:100%;display:flex;align-items:center;gap:.55rem;margin:0 0 .55rem;padding:.65rem .8rem;border:1px solid rgba(189,92,255,.24);border-radius:.85rem;background:rgba(0,0,0,.56);color:#fff;font:inherit;font-weight:750;cursor:pointer}
.home-page .menu-view__title{margin:.15rem 0 .65rem;color:#d9b7ff;font-size:.78rem;font-weight:850;letter-spacing:.18em;text-transform:uppercase}
.home-page .menu-list--subview{gap:.38rem}
.home-page .menu-list--subview .submenu-heading{margin-top:.45rem}
.home-page .site-nav{z-index:50000!important}
.home-page .site-footer{z-index:3!important}

/* One black social object with a true perimeter-travelling shine */
.home-page .socials{position:relative;isolation:isolate;overflow:visible;background:rgba(0,0,0,.76)!important;border:2px solid #050505!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.045),0 .75rem 1.8rem rgba(0,0,0,.34)!important}
.home-page .socials::before{
  content:"";position:absolute;z-index:4;left:0;top:0;width:2.2rem;height:.24rem;border-radius:999px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent);
  box-shadow:0 0 .45rem rgba(255,255,255,.9),0 0 .9rem rgba(145,196,255,.55);
  offset-path:inset(2px round 1.25rem);offset-distance:0%;offset-rotate:0deg;
  animation:socialPerimeterV48 7s linear infinite!important;pointer-events:none;
}
.home-page .socials::after{content:none!important}
@keyframes socialPerimeterV48{to{offset-distance:100%}}
.home-page .social{background:transparent!important;border:0!important;box-shadow:none!important;min-width:0}
.home-page .social + .social{border-left:1px solid rgba(255,255,255,.07)!important}
.home-page .social__copy{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:.08rem!important;overflow:hidden}
.home-page .social__platform{font-size:clamp(.52rem,1.05vw,.66rem)!important;letter-spacing:.075em!important;max-width:100%;text-overflow:ellipsis;overflow:hidden}
.home-page .social__handle{font-size:clamp(.52rem,1vw,.61rem)!important;margin:0!important}

/* More obvious moving liquid-smoke layers */
.home-wallpaper__drift{filter:blur(34px);mix-blend-mode:screen;opacity:.38!important;border-radius:42% 58% 63% 37%/55% 38% 62% 45%;will-change:transform,border-radius}
.home-wallpaper__drift--a{width:56vmax;height:48vmax;animation:liquidA 18s ease-in-out infinite alternate!important}
.home-wallpaper__drift--b{width:54vmax;height:50vmax;animation:liquidB 23s ease-in-out infinite alternate!important}
.home-wallpaper__drift--c{left:18vw;top:24vh;width:42vmax;height:34vmax;background:radial-gradient(ellipse,rgba(191,31,255,.26),transparent 67%),radial-gradient(circle at 70% 35%,rgba(31,134,255,.28),transparent 57%);animation:liquidC 27s ease-in-out infinite alternate!important}
.home-wallpaper__drift--d{right:8vw;top:4vh;width:38vmax;height:42vmax;background:radial-gradient(ellipse,rgba(0,206,255,.25),transparent 66%),radial-gradient(circle at 25% 70%,rgba(255,30,164,.19),transparent 58%);animation:liquidD 21s ease-in-out infinite alternate!important}
@keyframes liquidA{0%{transform:translate(-5vw,-4vh) rotate(0) scale(.92);border-radius:42% 58% 63% 37%/55% 38% 62% 45%}50%{transform:translate(23vw,12vh) rotate(22deg) scale(1.13);border-radius:61% 39% 38% 62%/42% 60% 40% 58%}100%{transform:translate(9vw,28vh) rotate(-14deg) scale(1.02);border-radius:36% 64% 55% 45%/63% 42% 58% 37%}}
@keyframes liquidB{0%{transform:translate(4vw,9vh) rotate(0) scale(1)}50%{transform:translate(-25vw,-12vh) rotate(-28deg) scale(1.16)}100%{transform:translate(-10vw,-27vh) rotate(16deg) scale(.96)}}
@keyframes liquidC{0%{transform:translate(-16vw,12vh) rotate(-18deg) scale(.9)}50%{transform:translate(16vw,-15vh) rotate(25deg) scale(1.18)}100%{transform:translate(32vw,8vh) rotate(-8deg) scale(1.04)}}
@keyframes liquidD{0%{transform:translate(13vw,-10vh) rotate(15deg) scale(1.08)}50%{transform:translate(-18vw,22vh) rotate(-24deg) scale(.94)}100%{transform:translate(-35vw,5vh) rotate(12deg) scale(1.15)}}

@media(max-width:760px){
 .home-page .site-shell{height:auto;min-height:100svh;padding-top:.15rem}
 .home-page .brand-sign{margin-top:-.45rem}
 .home-page .socials{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .home-page .social + .social{border-left:0!important}
 .home-page .social:nth-child(even){border-left:1px solid rgba(255,255,255,.07)!important}
 .home-page .social:nth-child(n+3){border-top:1px solid rgba(255,255,255,.07)!important}
}
@media(prefers-reduced-motion:reduce){.home-page .socials::before,.home-page .brand-sign::after,.home-wallpaper__drift{animation:none!important}}

/* v49 final polish pass: letter-only title shine, calmer edge shimmer, matched submenu text, live smoke canvas */
.home-page .site-shell {
  position: relative;
  z-index: 6;
}

.home-page .brand-sign {
  position: relative;
  display: block;
  isolation: isolate;
  overflow: visible;
}

.home-page .brand-sign::after {
  content: none !important;
  display: none !important;
}

.home-page .brand-letter-shine-v49 {
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  background:
    linear-gradient(
      100deg,
      transparent 0%,
      transparent 38%,
      rgba(255, 255, 255, 0.06) 43%,
      rgba(255, 255, 255, 0.96) 49%,
      rgba(255, 255, 255, 0.36) 53%,
      transparent 60%,
      transparent 100%
    );
  background-size: 300% 100%;
  background-position: 145% 50%;
  mix-blend-mode: screen;
  opacity: 0.95;
  filter:
    drop-shadow(0 0 0.28rem rgba(255, 255, 255, 0.42))
    drop-shadow(0 0 0.42rem rgba(104, 255, 241, 0.30));
  -webkit-mask: url("assets/jackalmuse-letter-mask-v49.png") center / contain no-repeat;
  mask: url("assets/jackalmuse-letter-mask-v49.png") center / contain no-repeat;
  animation: jackalmuseLetterSweepV49 5.8s linear infinite !important;
}

@keyframes jackalmuseLetterSweepV49 {
  0% { background-position: 150% 50%; }
  100% { background-position: -150% 50%; }
}

.home-page .menu-list--subview .submenu-item,
.home-page [data-menu-view="movies-tv"] .submenu-item {
  min-height: 2.8rem;
  padding: 0.72rem 0.9rem;
  border-radius: 0.85rem;
  font-size: 0.74rem;
  font-weight: 760;
  letter-spacing: 0.145em;
}

.home-page .menu-view__title {
  font-size: 0.74rem;
  letter-spacing: 0.17em;
}

.home-page .submenu-heading {
  font-size: 0.61rem;
  letter-spacing: 0.16em;
}

.home-page .socials {
  overflow: hidden !important;
  border: 2px solid transparent !important;
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.86), rgba(2, 8, 17, 0.90), rgba(0, 0, 0, 0.86)) padding-box,
    linear-gradient(105deg, #050505 0%, #050505 33%, rgba(255, 255, 255, 0.16) 42%, rgba(255, 255, 255, 0.98) 49%, rgba(255, 255, 255, 0.24) 55%, #050505 66%, #050505 100%) border-box !important;
  background-size: 100% 100%, 260% 100% !important;
  background-position: 0 0, 150% 50% !important;
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.05),
    inset 0 0 1.1rem rgba(255, 255, 255, 0.025),
    0 0.75rem 1.8rem rgba(0, 0, 0, 0.34),
    0 0 1.1rem rgba(255, 255, 255, 0.035) !important;
  animation: socialBorderShimmerV49 5.4s linear infinite !important;
}

.home-page .socials::before,
.home-page .socials::after {
  content: none !important;
  display: none !important;
}

@keyframes socialBorderShimmerV49 {
  0% { background-position: 0 0, 150% 50%; }
  100% { background-position: 0 0, -150% 50%; }
}

.home-page .social__platform {
  letter-spacing: 0.085em !important;
}

.live-smoke-canvas {
  position: absolute;
  inset: 0;
  z-index: 3;
  width: 100%;
  height: 100%;
  display: block;
  pointer-events: none;
  mix-blend-mode: screen;
  opacity: 0.52;
  filter: blur(0.2px) saturate(1.25);
}

.home-wallpaper::after {
  z-index: 4 !important;
  opacity: 0.35 !important;
}

.home-wallpaper__drift {
  opacity: 0.48 !important;
}

@media (max-width: 760px) {
  .home-page .menu-list--subview .submenu-item,
  .home-page [data-menu-view="movies-tv"] .submenu-item {
    font-size: 0.70rem;
    letter-spacing: 0.12em;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-page .socials,
  .home-page .brand-letter-shine-v49 {
    animation: none !important;
  }

  .live-smoke-canvas {
    display: none !important;
  }
}

/* v50 final nudge pass: slower title shimmer, angular submenu arrows, larger TikTok icon, social lift */
.home-page .brand-letter-shine-v49 {
  animation-duration: 11.6s !important;
}

.home-page .menu-category__button .menu-category__chevron {
  width: 1.05rem !important;
  height: 1.05rem !important;
  border: 0 !important;
  display: inline-grid !important;
  place-items: center !important;
  transform: none !important;
  filter: drop-shadow(0 0 0.44rem rgba(193, 92, 255, 0.72)) !important;
}

.home-page .menu-category__button .menu-category__chevron::before {
  content: "↗";
  color: #d88cff;
  font-size: 1.02rem;
  font-weight: 850;
  line-height: 1;
  text-shadow:
    0 0 0.45rem rgba(193, 92, 255, 0.82),
    0 0 0.85rem rgba(109, 224, 255, 0.22);
}

.home-page .menu-category__button[aria-expanded="true"] .menu-category__chevron {
  transform: none !important;
}

.home-page .socials {
  margin-top: -0.42rem !important;
  transform: translateY(-0.18rem);
}

.home-page .social {
  min-height: 3.55rem !important;
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.home-page .social__platform {
  font-size: clamp(0.62rem, 1.15vw, 0.73rem) !important;
  letter-spacing: 0.082em !important;
}

.home-page .social__handle {
  font-size: clamp(0.61rem, 1.08vw, 0.68rem) !important;
}

.home-page .social__icon {
  width: 2.1rem !important;
  height: 2.1rem !important;
}

.home-page .social:nth-child(2) .social__icon img {
  transform: scale(1.08);
  transform-origin: center;
}

.home-page .site-shell {
  gap: 0.36rem !important;
  padding-bottom: 0.22rem !important;
}

.home-page .site-footer {
  padding-top: 0.12rem !important;
  padding-bottom: 0.18rem !important;
}

@media (max-width: 760px) {
  .home-page .socials {
    margin-top: -0.28rem !important;
    transform: translateY(-0.08rem);
  }

  .home-page .social__platform {
    font-size: clamp(0.58rem, 2.2vw, 0.68rem) !important;
  }

  .home-page .social__handle {
    font-size: clamp(0.57rem, 2vw, 0.65rem) !important;
  }
}

/* v51 final alignment + genuinely live wallpaper pass */

/* Keep the approved header shimmer speed/aesthetic from v50. */

/* Re-centre the controller asset inside the menu button after the v50 icon-size nudge. */
.home-page .hero .site-nav {
  display: grid !important;
  justify-items: center !important;
  align-items: center !important;
}

.home-page .menu-button {
  width: clamp(6.55rem, 13.5vw, 7.7rem) !important;
  min-width: 0 !important;
  display: grid !important;
  place-items: center !important;
  margin-inline: auto !important;
  transform-origin: center center !important;
}

.home-page .menu-button__image {
  width: 100% !important;
  max-width: 7.7rem !important;
  margin-inline: auto !important;
  transform-origin: center center !important;
}

/* Make the whole home view fit as one page with the copyright visible. */
body.home-page {
  min-height: 100svh !important;
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) auto !important;
}

.home-page .site-shell {
  min-height: calc(100svh - 2.15rem) !important;
  padding-top: clamp(0.05rem, 0.75vh, 0.45rem) !important;
  padding-bottom: 0 !important;
  gap: 0.16rem !important;
  align-content: center !important;
}

.home-page .socials {
  margin-top: -1.05rem !important;
  transform: translateY(-0.74rem) !important;
}

.home-page .site-footer {
  padding-top: 0.04rem !important;
  padding-bottom: 0.18rem !important;
}

.home-page .site-footer span {
  padding-top: 0.32rem !important;
  padding-bottom: 0.32rem !important;
}

/* Slightly larger TikTok mark to visually match the other company icons. */
.home-page .social:nth-child(2) .social__icon img {
  transform: none !important;
}

/* Make the background obviously alive: large colour-smoke fields drift, swell, and bounce across the page. */
.home-wallpaper {
  isolation: isolate;
}

.home-wallpaper::before {
  content: "" !important;
  position: absolute;
  inset: -22vmax;
  z-index: 2;
  pointer-events: none;
  opacity: 0.72;
  mix-blend-mode: screen;
  filter: blur(42px) saturate(1.45);
  background:
    radial-gradient(ellipse at 18% 58%, rgba(255, 21, 172, 0.42), transparent 28%),
    radial-gradient(ellipse at 42% 42%, rgba(161, 55, 255, 0.34), transparent 31%),
    radial-gradient(ellipse at 68% 52%, rgba(35, 103, 255, 0.36), transparent 30%),
    radial-gradient(ellipse at 84% 62%, rgba(0, 210, 255, 0.34), transparent 29%),
    radial-gradient(ellipse at 52% 82%, rgba(104, 255, 188, 0.14), transparent 25%);
  transform: translate3d(-5vw, -2vh, 0) scale(1.06) rotate(0deg);
  animation: liveWallpaperSmokeFieldV51 18s ease-in-out infinite alternate !important;
  will-change: transform, opacity, filter;
}

.home-wallpaper::after {
  content: "" !important;
  position: absolute;
  inset: -16vmax;
  z-index: 4 !important;
  pointer-events: none;
  opacity: 0.42 !important;
  mix-blend-mode: screen;
  filter: blur(24px) saturate(1.55);
  background:
    radial-gradient(ellipse at 22% 76%, rgba(255, 42, 156, 0.32), transparent 23%),
    radial-gradient(ellipse at 48% 62%, rgba(183, 75, 255, 0.28), transparent 25%),
    radial-gradient(ellipse at 74% 74%, rgba(0, 196, 255, 0.34), transparent 24%),
    radial-gradient(ellipse at 62% 35%, rgba(56, 83, 255, 0.24), transparent 28%);
  transform: translate3d(4vw, 2vh, 0) scale(1.02) rotate(0deg);
  animation: liveWallpaperSmokeFieldV51b 14s ease-in-out infinite alternate !important;
  will-change: transform, opacity, filter;
}

.home-wallpaper__drift {
  z-index: 3 !important;
  opacity: 0.72 !important;
  mix-blend-mode: screen !important;
  filter: blur(48px) saturate(1.65) !important;
  will-change: transform, border-radius, opacity !important;
}

.home-wallpaper__drift--a {
  left: -20vmax !important;
  top: 4vh !important;
  width: 74vmax !important;
  height: 54vmax !important;
  background:
    radial-gradient(ellipse at 35% 55%, rgba(255, 24, 174, 0.46), transparent 60%),
    radial-gradient(ellipse at 72% 42%, rgba(163, 47, 255, 0.28), transparent 55%) !important;
  animation: liveBlobBounceA51 16s ease-in-out infinite alternate !important;
}

.home-wallpaper__drift--b {
  right: -20vmax !important;
  top: 10vh !important;
  bottom: auto !important;
  width: 74vmax !important;
  height: 58vmax !important;
  background:
    radial-gradient(ellipse at 62% 52%, rgba(0, 205, 255, 0.44), transparent 62%),
    radial-gradient(ellipse at 34% 48%, rgba(49, 82, 255, 0.30), transparent 55%) !important;
  animation: liveBlobBounceB51 17s ease-in-out infinite alternate !important;
}

.home-wallpaper__drift--c {
  left: 18vw !important;
  top: 18vh !important;
  width: 52vmax !important;
  height: 38vmax !important;
  background:
    radial-gradient(ellipse at 50% 56%, rgba(181, 52, 255, 0.35), transparent 63%),
    radial-gradient(ellipse at 72% 38%, rgba(31, 151, 255, 0.22), transparent 58%) !important;
  animation: liveBlobBounceC51 20s ease-in-out infinite alternate !important;
}

.home-wallpaper__drift--d {
  right: 6vw !important;
  top: 2vh !important;
  width: 48vmax !important;
  height: 48vmax !important;
  background:
    radial-gradient(ellipse at 58% 50%, rgba(0, 222, 255, 0.34), transparent 65%),
    radial-gradient(ellipse at 28% 70%, rgba(255, 34, 166, 0.18), transparent 58%) !important;
  animation: liveBlobBounceD51 15s ease-in-out infinite alternate !important;
}

.live-smoke-canvas {
  z-index: 5 !important;
  opacity: 0.74 !important;
  filter: blur(0.15px) saturate(1.75) contrast(1.05) !important;
}

@keyframes liveWallpaperSmokeFieldV51 {
  0% {
    transform: translate3d(-9vw, -4vh, 0) scale(1.04) rotate(-2deg);
    opacity: 0.58;
  }
  42% {
    transform: translate3d(7vw, 5vh, 0) scale(1.13) rotate(6deg);
    opacity: 0.78;
  }
  100% {
    transform: translate3d(-2vw, 10vh, 0) scale(1.08) rotate(-5deg);
    opacity: 0.68;
  }
}

@keyframes liveWallpaperSmokeFieldV51b {
  0% {
    transform: translate3d(8vw, 2vh, 0) scale(1.00) rotate(4deg);
    opacity: 0.32;
  }
  50% {
    transform: translate3d(-6vw, -5vh, 0) scale(1.10) rotate(-6deg);
    opacity: 0.52;
  }
  100% {
    transform: translate3d(3vw, 8vh, 0) scale(1.05) rotate(5deg);
    opacity: 0.42;
  }
}

@keyframes liveBlobBounceA51 {
  0% { transform: translate3d(-7vw, 4vh, 0) scale(1) rotate(-4deg); border-radius: 42% 58% 62% 38% / 56% 42% 58% 44%; }
  48% { transform: translate3d(24vw, -2vh, 0) scale(1.16) rotate(8deg); border-radius: 63% 37% 45% 55% / 42% 64% 36% 58%; }
  100% { transform: translate3d(10vw, 15vh, 0) scale(1.05) rotate(-6deg); border-radius: 37% 63% 54% 46% / 60% 38% 62% 40%; }
}

@keyframes liveBlobBounceB51 {
  0% { transform: translate3d(8vw, 8vh, 0) scale(1) rotate(5deg); border-radius: 58% 42% 36% 64% / 48% 58% 42% 52%; }
  52% { transform: translate3d(-22vw, -4vh, 0) scale(1.14) rotate(-8deg); border-radius: 38% 62% 61% 39% / 62% 38% 57% 43%; }
  100% { transform: translate3d(-9vw, 15vh, 0) scale(1.05) rotate(6deg); border-radius: 64% 36% 48% 52% / 42% 62% 38% 58%; }
}

@keyframes liveBlobBounceC51 {
  0% { transform: translate3d(-12vw, -2vh, 0) scale(.95) rotate(0deg); }
  50% { transform: translate3d(13vw, 11vh, 0) scale(1.18) rotate(12deg); }
  100% { transform: translate3d(-4vw, -10vh, 0) scale(1.02) rotate(-8deg); }
}

@keyframes liveBlobBounceD51 {
  0% { transform: translate3d(4vw, -5vh, 0) scale(1) rotate(0deg); }
  45% { transform: translate3d(-18vw, 12vh, 0) scale(1.13) rotate(-12deg); }
  100% { transform: translate3d(2vw, 18vh, 0) scale(1.04) rotate(8deg); }
}

@media (max-width: 760px) {
  .home-page .site-shell {
    min-height: calc(100svh - 2.05rem) !important;
    gap: 0.05rem !important;
  }

  .home-page .socials {
    margin-top: -1.18rem !important;
    transform: translateY(-0.82rem) !important;
  }

  .home-page .menu-button {
    width: clamp(5.85rem, 22vw, 6.9rem) !important;
  }
}

/* v52 final live-wallpaper softening pass
     Keeps the one-page layout and existing approved header/menu/social polish.
     Softens the animated colour fields so they read as drifting smoke/light
     instead of visible moving blobs, and slows the motion down significantly. */

  .home-wallpaper__drift {
    opacity: 0.14 !important;
    filter: blur(7.5rem) saturate(1.16) !important;
    mix-blend-mode: screen !important;
    transform-origin: center center !important;
  }

  .home-wallpaper__drift--a {
    animation: wallpaperDriftA 92s ease-in-out infinite alternate !important;
  }

  .home-wallpaper__drift--b {
    animation: wallpaperDriftB 108s ease-in-out infinite alternate !important;
  }

  .home-wallpaper__smoke,
  .home-wallpaper__liquid,
  .home-wallpaper__glow {
    filter: blur(8rem) saturate(1.12) !important;
    opacity: 0.12 !important;
    mix-blend-mode: screen !important;
  }

  .home-wallpaper__smoke {
    animation-duration: 120s !important;
  }

  .home-wallpaper__liquid {
    animation-duration: 132s !important;
  }

  .home-wallpaper__glow {
    animation-duration: 104s !important;
  }

  @keyframes wallpaperDriftA {
    0% {
      transform: translate3d(-4vw, -3vh, 0) scale(1.18) rotate(0deg);
    }
    50% {
      transform: translate3d(8vw, 5vh, 0) scale(1.28) rotate(10deg);
    }
    100% {
      transform: translate3d(3vw, 11vh, 0) scale(1.14) rotate(-7deg);
    }
  }

  @keyframes wallpaperDriftB {
    0% {
      transform: translate3d(4vw, 3vh, 0) scale(1.2) rotate(0deg);
    }
    50% {
      transform: translate3d(-7vw, -5vh, 0) scale(1.3) rotate(-9deg);
    }
    100% {
      transform: translate3d(-3vw, -10vh, 0) scale(1.16) rotate(8deg);
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .home-wallpaper__drift,
    .home-wallpaper__smoke,
    .home-wallpaper__liquid,
    .home-wallpaper__glow {
      animation: none !important;
    }
  }

/* v58 impact-end tuning pass
     Preserve the approved homepage structure/assets.
     Hide travelling sources completely, move spark payoff to the far/impact
     end of lightning instead of the source point, reduce overblown spark and
     lightning scale, and halve strike frequency from v57. */

  .home-wallpaper::before,
  .home-wallpaper::after,
  .home-wallpaper__drift {
    content: none !important;
    display: none !important;
    opacity: 0 !important;
    animation: none !important;
    background: none !important;
    filter: none !important;
  }

  .live-smoke-canvas {
    z-index: 5 !important;
    opacity: 0.98 !important;
    mix-blend-mode: screen !important;
    filter: saturate(1.18) contrast(1.05) !important;
  }

  @media (prefers-reduced-motion: reduce) {
    .live-smoke-canvas {
      display: none !important;
    }
  }

/* v64 opacity correction
     Test pass only: set the entire homepage menu/nav area and socials block
     to 95% opacity while preserving all layout, behaviour, links, assets, and
     the approved v62 electric wallpaper. */

  .home-page .site-nav,
  .home-page .socials {
    opacity: 0.95 !important;
  }
