/**
 * Scroll-driven presentation (no JS) - view / scroll timelines when supported.
 * First paint is readable: content stays visible; motion is optional polish under
 * prefers-reduced-motion: no-preference. Static fallbacks when APIs are missing.
 */

/* In-page anchors (home nav “Swap now” → #swap): smooth scroll without JS */
html:has(body.page-home) {
  scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
  html:has(body.page-home) {
    scroll-behavior: auto;
  }
}

/* Hero exchange clears sticky header when navigated via fragment */
.page-home #swap {
  scroll-margin-top: 5.5rem;
}

@media (min-width: 960px) {
  .page-home #swap {
    scroll-margin-top: var(--home-swap-rail-top);
  }
}

@media (max-width: 640px) {
  html:has(body.page-home) {
    scroll-behavior: auto;
  }

  .page-home #swap,
  .page-home #security,
  .page-home #faq {
    scroll-margin-top: 6.3rem;
  }
}

@supports (animation-timeline: scroll()) {
  @media (prefers-reduced-motion: no-preference) {
    html {
      scroll-timeline: --dr-page block;
    }
  }
}

/*
 * Home nav “Swap now” - scroll-linked polish without JS (enhance.js off / Tor Safest).
 */
@keyframes nav-swap-scroll-reveal {
  from {
    opacity: 1;
    transform: scale(0.96);
  }

  to {
    opacity: 1;
    transform: scale(1);
  }
}

@supports (animation-timeline: scroll()) {
  @media (prefers-reduced-motion: no-preference) and (max-width: 640px) {
    body:not(.js-enabled).page-home .nav-swap-cta {
      opacity: 1;
      transform: scale(0.96);
      animation: nav-swap-scroll-reveal linear forwards;
      animation-timeline: --dr-page;
      animation-range: 10rem 38rem;
    }
  }
}

/*
 * No scroll-timeline API - CTA always visible (no motion accent).
 */
@supports not (animation-timeline: scroll()) {
  @media (max-width: 640px) {
    body:not(.js-enabled).page-home .nav-swap-cta {
      opacity: 1;
      transform: none;
    }
  }
}

/* ---- Layout for split hero title (works with or without scroll animations) ---- */
.home-hero__title--scroll {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.08em;
  max-width: min(40ch, 100%);
}

@media (max-width: 959px) {
  .home-hero__title--scroll {
    align-items: center;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }
}

.home-hero__title-line {
  display: flex;
  flex-wrap: wrap;
  gap: 0.15em 0.35em;
  justify-content: inherit;
}

@media (max-width: 959px) {
  .home-hero__title-line {
    justify-content: center;
  }
}

.home-hero__title-line--accent .home-hero__title-word {
  font-style: italic;
  color: var(--color-brine-mid);
}

.home-hero__title-word {
  display: inline-block;
}

/* ---- Scroll-linked polish (view timelines) - visible throughout ---- */
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .home-hero--scroll {
      view-timeline-name: --dr-hero;
      view-timeline-axis: block;
    }

    .home-pillars--scroll {
      view-timeline-name: --dr-pillars;
      view-timeline-axis: block;
    }

    .home-assets--scroll {
      view-timeline-name: --dr-assets;
      view-timeline-axis: block;
    }

    #security.home-section--scroll {
      view-timeline-name: --dr-sec-security;
      view-timeline-axis: block;
    }

      view-timeline-axis: block;
    }

      view-timeline-axis: block;
    }

    #faq.home-section--scroll {
      view-timeline-name: --dr-sec-faq;
      view-timeline-axis: block;
    }

    /* Hero words */
    .home-hero__title-word {
      display: inline-block;
      opacity: 1;
      animation: dr-soft-rise 1.45s cubic-bezier(0.22, 1, 0.36, 1) both;
      animation-timeline: --dr-hero;
    }

    .home-hero__title-line:first-child .home-hero__title-word:nth-child(1) {
      animation-range: entry 0% entry 62%;
    }
    .home-hero__title-line:first-child .home-hero__title-word:nth-child(2) {
      animation-range: entry 6% entry 68%;
    }
    .home-hero__title-line:first-child .home-hero__title-word:nth-child(3) {
      animation-range: entry 12% entry 74%;
    }

    .home-hero__title-line:last-child .home-hero__title-word:nth-child(1) {
      animation-range: entry 18% entry 80%;
    }
    .home-hero__title-line:last-child .home-hero__title-word:nth-child(2) {
      animation-range: entry 24% entry 86%;
    }
    .home-hero__title-line:last-child .home-hero__title-word:nth-child(3) {
      animation-range: entry 30% entry 92%;
    }
    .home-hero__title-line:last-child .home-hero__title-word:nth-child(4) {
      animation-range: entry 36% entry 97%;
    }

    .home-hero__tag--scroll {
      opacity: 1;
      animation: dr-hero-tag-depth 1.65s cubic-bezier(0.22, 1, 0.36, 1) both;
      animation-timeline: --dr-hero;
      animation-range: entry 28% entry 97%;
    }

    .home-hero__launch-bonus {
      opacity: 1;
      animation: dr-soft-rise 1.45s cubic-bezier(0.22, 1, 0.36, 1) both;
      animation-timeline: --dr-hero;
      animation-range: entry 18% entry 88%;
    }

    .home-rate-callout--scroll {
      opacity: 1;
      animation: dr-hero-tag-depth 1.65s cubic-bezier(0.22, 1, 0.36, 1) both;
      animation-timeline: --dr-hero;
      animation-range: entry 14% entry 94%;
    }

    .home-hero--scroll .proto-status-row {
      opacity: 1;
      animation: dr-soft-rise 1.45s cubic-bezier(0.22, 1, 0.36, 1) both;
      animation-timeline: --dr-hero;
      animation-range: entry 40% entry 98%;
    }

    .home-hero__chains li {
      opacity: 1;
      animation: dr-coin-pop 1.38s cubic-bezier(0.34, 1.2, 0.64, 1) both;
      animation-timeline: --dr-hero;
    }
    .home-hero__chains li:nth-child(1) {
      animation-range: entry 22% entry 82%;
    }
    .home-hero__chains li:nth-child(2) {
      animation-range: entry 26% entry 85%;
    }
    .home-hero__chains li:nth-child(3) {
      animation-range: entry 30% entry 88%;
    }
    .home-hero__chains li:nth-child(4) {
      animation-range: entry 34% entry 90%;
    }
    .home-hero__chains li:nth-child(5) {
      animation-range: entry 38% entry 92%;
    }
    .home-hero__chains li:nth-child(6) {
      animation-range: entry 42% entry 93%;
    }
    .home-hero__chains li:nth-child(7) {
      animation-range: entry 46% entry 95%;
    }
    .home-hero__chains li:nth-child(8) {
      animation-range: entry 50% entry 96%;
    }
    .home-hero__chains li:nth-child(n + 9) {
      animation-range: entry 54% entry 97%;
    }

    /* Pillars - subtle opacity polish only (no transform on scene - preserves 3D carousel) */
    .home-pillars--carousel-section .home-pillars-scene {
      opacity: 1;
      animation: dr-pillars-scene-reveal 1.45s cubic-bezier(0.25, 0.9, 0.3, 1) both;
      animation-timeline: --dr-pillars;
      animation-range: cover 5% cover 58%;
    }

    /* Networks band */
    .home-assets__h {
      opacity: 1;
      animation: dr-assets-heading 1.45s cubic-bezier(0.22, 1, 0.36, 1) both;
      animation-timeline: --dr-assets;
      animation-range: cover 4% cover 44%;
    }

    .home-assets .asset-pill-list > li {
      opacity: 1;
      animation: dr-coin-pop 1.38s cubic-bezier(0.34, 1.2, 0.64, 1) both;
      animation-timeline: --dr-assets;
    }
    .home-assets .asset-pill-list > li:nth-child(1) {
      animation-range: cover 12% cover 50%;
    }
    .home-assets .asset-pill-list > li:nth-child(2) {
      animation-range: cover 16% cover 54%;
    }
    .home-assets .asset-pill-list > li:nth-child(3) {
      animation-range: cover 20% cover 58%;
    }
    .home-assets .asset-pill-list > li:nth-child(4) {
      animation-range: cover 24% cover 62%;
    }
    .home-assets .asset-pill-list > li:nth-child(5) {
      animation-range: cover 28% cover 66%;
    }
    .home-assets .asset-pill-list > li:nth-child(n + 6) {
      animation-range: cover 32% cover 70%;
    }

    /* Long-form sections */
    .home-section--scroll .home-section__kicker {
      opacity: 1;
      animation: dr-kicker-tight 1.45s cubic-bezier(0.22, 1, 0.36, 1) both;
    }
    .home-section--scroll .home-section__title {
      opacity: 1;
      animation: dr-section-title 1.65s cubic-bezier(0.2, 1, 0.35, 1) both;
    }
    .home-section--scroll .home-section__lead {
      opacity: 1;
      animation: dr-lead-blur 1.55s cubic-bezier(0.25, 0.85, 0.35, 1) both;
    }
    .home-section--scroll .home-points > li {
      opacity: 1;
      animation: dr-li-slide 1.45s cubic-bezier(0.22, 1, 0.36, 1) both;
    }
    .home-section--scroll .security-spotlight__board {
      opacity: 1;
      animation: dr-lead-blur 1.45s cubic-bezier(0.22, 1, 0.36, 1) both;
    }
    .home-section--scroll .security-spotlight__content {
      opacity: 1;
      animation: dr-lead-blur 1.45s cubic-bezier(0.22, 1, 0.36, 1) both;
    }
    .home-section--scroll .security-spotlight__signals .security-spotlight__signal {
      opacity: 1;
      animation: dr-li-slide 1.45s cubic-bezier(0.22, 1, 0.36, 1) both;
    }
    .home-section--scroll .home-section__note {
      opacity: 1;
      animation: dr-lead-blur 1.25s cubic-bezier(0.25, 0.85, 0.35, 1) both;
    }

      opacity: 1;
      animation: dr-lead-blur 1.45s cubic-bezier(0.22, 1, 0.36, 1) both;
    }

      animation-range: cover 0% cover 26%;
    }

      animation-range: cover 6% cover 34%;
    }

      animation-range: cover 12% cover 40%;
    }

      animation-range: cover 18% cover 48%;
    }

      animation-range: cover 23% cover 53%;
    }

      animation-range: cover 28% cover 58%;
    }

      animation-range: cover 26% cover 60%;
    }

      animation-range: cover 32% cover 66%;
    }

    /* Section handoff transitions (desktop): smooth, non-overlapping, varied motion styles */
    @media (min-width: 960px) {
        animation: dr-section-enter-from-left 0.9s cubic-bezier(0.22, 1, 0.36, 1) both;
        animation-timeline: view(block);
        animation-range: entry 8% cover 44%;
      }

      .home-main > .home-assets--scroll {
        animation: dr-section-enter-fade 0.8s cubic-bezier(0.22, 1, 0.36, 1) both;
        animation-timeline: view(block);
        animation-range: entry 10% cover 46%;
      }

      .home-main > #security.home-section--scroll {
        animation: dr-section-enter-scroll 0.9s cubic-bezier(0.22, 1, 0.36, 1) both;
        animation-timeline: view(block);
        animation-range: entry 8% cover 44%;
      }

        animation: dr-section-enter-from-right 0.9s cubic-bezier(0.22, 1, 0.36, 1) both;
        animation-timeline: view(block);
        animation-range: entry 8% cover 44%;
      }

      .home-main > #faq.home-section--scroll {
        animation: dr-section-enter-fade 0.8s cubic-bezier(0.22, 1, 0.36, 1) both;
        animation-timeline: view(block);
        animation-range: entry 10% cover 46%;
      }
    }

    #security .home-section__kicker {
      animation-timeline: --dr-sec-security;
      animation-range: cover 0% cover 28%;
    }
    #security .home-section__title {
      animation-timeline: --dr-sec-security;
      animation-range: cover 6% cover 34%;
    }
    #security .home-section__lead {
      animation-timeline: --dr-sec-security;
      animation-range: cover 12% cover 40%;
    }
    #security .security-spotlight__board {
      animation-timeline: --dr-sec-security;
      animation-range: cover 18% cover 48%;
    }
    #security .security-spotlight__content {
      animation-timeline: --dr-sec-security;
      animation-range: cover 22% cover 52%;
    }
    #security .security-spotlight__signals .security-spotlight__signal:nth-child(1) {
      animation-timeline: --dr-sec-security;
      animation-range: cover 26% cover 56%;
    }
    #security .security-spotlight__signals .security-spotlight__signal:nth-child(2) {
      animation-timeline: --dr-sec-security;
      animation-range: cover 30% cover 60%;
    }
    #security .security-spotlight__signals .security-spotlight__signal:nth-child(3) {
      animation-timeline: --dr-sec-security;
      animation-range: cover 34% cover 64%;
    }
    #security .security-spotlight__signals .security-spotlight__signal:nth-child(4) {
      animation-timeline: --dr-sec-security;
      animation-range: cover 36% cover 66%;
    }
    #security .home-section__note {
      animation-timeline: --dr-sec-security;
      animation-range: cover 38% cover 72%;
    }

      animation-range: cover 0% cover 28%;
    }
      animation-range: cover 6% cover 34%;
    }
      animation-range: cover 12% cover 40%;
    }
      animation-range: cover 18% cover 48%;
    }
      animation-range: cover 22% cover 52%;
    }
      animation-range: cover 26% cover 56%;
    }
      animation-range: cover 30% cover 60%;
    }

    #faq .home-section__kicker {
      animation-timeline: --dr-sec-faq;
      animation-range: cover 0% cover 28%;
    }
    #faq .home-section__title {
      animation-timeline: --dr-sec-faq;
      animation-range: cover 6% cover 34%;
    }
    #faq .home-section__lead {
      animation-timeline: --dr-sec-faq;
      animation-range: cover 12% cover 40%;
    }
  }
}

@keyframes dr-soft-rise {
  from {
    opacity: 1;
    transform: translateY(0.14em);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes dr-hero-tag-depth {
  from {
    opacity: 1;
    transform: translateY(0.12em) scale(0.998);
    filter: blur(2px);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
    filter: blur(0);
  }
}

@keyframes dr-pillars-scene-reveal {
  from {
    opacity: 0.96;
  }

  to {
    opacity: 1;
  }
}

@keyframes dr-section-enter-from-left {
  from {
    opacity: 0.7;
    transform: translateX(-0.85rem);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes dr-section-enter-from-right {
  from {
    opacity: 0.7;
    transform: translateX(0.85rem);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes dr-section-enter-scroll {
  from {
    opacity: 0.72;
    transform: translateY(0.8rem);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes dr-section-enter-fade {
  from {
    opacity: 0.72;
  }

  to {
    opacity: 1;
  }
}

@keyframes dr-section-title {
  from {
    opacity: 1;
    transform: translateY(0.22em);
    filter: blur(3px);
    letter-spacing: -0.005em;
  }

  to {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
    letter-spacing: -0.015em;
  }
}

@keyframes dr-assets-heading {
  from {
    opacity: 1;
    transform: translateY(0.18em);
    filter: blur(2px);
    letter-spacing: 0.14em;
  }

  to {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
    letter-spacing: 0.12em;
  }
}

@keyframes dr-kicker-tight {
  from {
    opacity: 1;
    transform: translateY(0.18em);
    letter-spacing: 0.22em;
    filter: blur(2px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
    letter-spacing: 0.16em;
    filter: blur(0);
  }
}

@keyframes dr-lead-blur {
  from {
    opacity: 1;
    transform: translateY(0.2em);
    filter: blur(2px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
  }
}

@keyframes dr-li-slide {
  from {
    opacity: 1;
    transform: translateX(-0.18em);
    filter: blur(1px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
    filter: blur(0);
  }
}

@keyframes dr-trust-snap {
  from {
    opacity: 1;
    transform: translateY(0.15em) scale(0.98);
    filter: blur(1px);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
    filter: blur(0);
  }
}

@keyframes dr-coin-pop {
  from {
    opacity: 1;
    transform: scale(0.92) translateY(0.12em);
    filter: blur(1px);
  }

  to {
    opacity: 1;
    transform: scale(1) translateY(0);
    filter: blur(0);
  }
}

/* Scroll-root fallbacks when view() is missing */
@keyframes dr-fallback-scroll-rise {
  from {
    opacity: 1;
    transform: translateY(0.35rem);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* No view timelines: time-based hero + scroll-document bands for the rest */
@supports not (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .home-hero__title-word {
      opacity: 1;
      animation: dr-fallback-rise 0.95s cubic-bezier(0.22, 1, 0.36, 1) both;
    }

    .home-hero__title-line:first-child .home-hero__title-word:nth-child(1) {
      animation-delay: 0.05s;
    }
    .home-hero__title-line:first-child .home-hero__title-word:nth-child(2) {
      animation-delay: 0.14s;
    }
    .home-hero__title-line:first-child .home-hero__title-word:nth-child(3) {
      animation-delay: 0.24s;
    }
    .home-hero__title-line:last-child .home-hero__title-word:nth-child(1) {
      animation-delay: 0.34s;
    }
    .home-hero__title-line:last-child .home-hero__title-word:nth-child(2) {
      animation-delay: 0.44s;
    }
    .home-hero__title-line:last-child .home-hero__title-word:nth-child(3) {
      animation-delay: 0.54s;
    }
    .home-hero__title-line:last-child .home-hero__title-word:nth-child(4) {
      animation-delay: 0.64s;
    }

    .home-hero__tag--scroll,
    .home-hero__launch-bonus,
    .home-rate-callout--scroll,
    .home-hero--scroll .proto-status-row {
      opacity: 1;
      animation: dr-fallback-rise-soft 1.08s cubic-bezier(0.22, 1, 0.36, 1) both;
    }

    .home-hero__tag--scroll {
      animation-delay: 0.52s;
    }

    .home-hero__launch-bonus {
      animation-delay: 0.38s;
    }

    .home-rate-callout--scroll {
      animation-delay: 0.68s;
    }

    .home-hero--scroll .proto-status-row {
      animation-delay: 0.82s;
    }

    .home-hero__chains li {
      opacity: 1;
      animation: dr-fallback-pop 0.88s cubic-bezier(0.34, 1.2, 0.64, 1) both;
    }
    .home-hero__chains li:nth-child(1) {
      animation-delay: 0.55s;
    }
    .home-hero__chains li:nth-child(2) {
      animation-delay: 0.63s;
    }
    .home-hero__chains li:nth-child(3) {
      animation-delay: 0.71s;
    }
    .home-hero__chains li:nth-child(4) {
      animation-delay: 0.79s;
    }
    .home-hero__chains li:nth-child(5) {
      animation-delay: 0.87s;
    }
    .home-hero__chains li:nth-child(6) {
      animation-delay: 0.95s;
    }
    .home-hero__chains li:nth-child(7) {
      animation-delay: 1.03s;
    }
    .home-hero__chains li:nth-child(8) {
      animation-delay: 1.12s;
    }
    .home-hero__chains li:nth-child(n + 9) {
      animation-delay: 1.2s;
    }

    @supports (animation-timeline: scroll()) {
      .home-pillars--carousel-section .home-pillars-scene {
        opacity: 1;
        animation: dr-fallback-scroll-rise 1.45s cubic-bezier(0.22, 1, 0.36, 1) both;
        animation-timeline: --dr-page;
        animation-range: 4% 22%;
      }

      .trust-row--scroll {
        opacity: 1;
        animation: dr-fallback-scroll-rise 1.38s cubic-bezier(0.22, 1, 0.36, 1) both;
        animation-timeline: --dr-page;
        animation-range: 7% 26%;
      }

      .home-assets--scroll {
        opacity: 1;
        animation: dr-fallback-scroll-rise 1.45s cubic-bezier(0.22, 1, 0.36, 1) both;
        animation-timeline: --dr-page;
        animation-range: 10% 30%;
      }

      .home-section--scroll {
        opacity: 1;
        animation: dr-fallback-scroll-rise 1.6s cubic-bezier(0.2, 1, 0.35, 1) both;
        animation-timeline: --dr-page;
      }

        opacity: 1;
        animation: dr-fallback-scroll-rise 1.6s cubic-bezier(0.2, 1, 0.35, 1) both;
        animation-timeline: --dr-page;
      }

      #security.home-section--scroll {
        animation-range: 16% 38%;
      }

        animation-range: 30% 52%;
      }

        animation-range: 44% 66%;
      }

      #faq.home-section--scroll {
        animation-range: 58% 86%;
      }
    }
  }

  @supports not (animation-timeline: scroll()) {
    .home-pillars--carousel-section .home-pillars-scene,
    .home-assets__h,
    .home-assets .asset-pill-list > li,
    .home-section--scroll .home-section__kicker,
    .home-section--scroll .home-section__title,
    .home-section--scroll .home-section__lead,
    .home-section--scroll .home-points > li,
    .home-section--scroll .security-spotlight__board,
    .home-section--scroll .security-spotlight__content,
    .home-section--scroll .security-spotlight__signals .security-spotlight__signal,
    .home-section--scroll .home-section__note,
    .trust-row--scroll .trust-row__item {
      opacity: 1 !important;
      animation: none !important;
      transform: none !important;
      filter: none !important;
    }
  }
}

@keyframes dr-fallback-rise {
  from {
    opacity: 1;
    transform: translateY(0.1em);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes dr-fallback-rise-soft {
  from {
    opacity: 1;
    transform: translateY(0.14em);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes dr-fallback-pop {
  from {
    opacity: 1;
    transform: scale(0.96) translateY(0.08em);
  }
  to {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}

/* Reduced motion: show everything static */
@media (prefers-reduced-motion: reduce) {
  .page-home .nav-swap-cta,
  .home-hero__title-word,
  .home-rate-callout--scroll,
  .home-hero__tag--scroll,
  .home-hero__launch-bonus,
  .home-hero--scroll .proto-status-row,
  .home-hero__chains li,
  .home-pillars--carousel-section .home-pillars-scene,
  .trust-row--scroll,
  .home-assets--scroll,
  .home-section--scroll,
  .home-assets__h,
  .home-assets .asset-pill-list > li,
  .home-section--scroll .home-section__kicker,
  .home-section--scroll .home-section__title,
  .home-section--scroll .home-section__lead,
  .home-section--scroll .home-points > li,
  .home-section--scroll .security-spotlight__board,
  .home-section--scroll .security-spotlight__content,
  .home-section--scroll .security-spotlight__signals .security-spotlight__signal,
  .home-section--scroll .home-section__note,
  .home-desktop-rest > .home-pillars--scroll,
  .home-desktop-rest .home-main,
  .trust-row--scroll .trust-row__item {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }
}

/* Desktop flicker guard: disable scroll-linked transforms/blur effects that can
 * retrigger and shimmer on long pages. Keep content fully visible/static. */
@media (min-width: 960px) {
  .home-hero__title-word,
  .home-rate-callout--scroll,
  .home-hero__tag--scroll,
  .home-hero__launch-bonus,
  .home-hero--scroll .proto-status-row,
  .home-hero__chains li,
  .home-pillars--carousel-section .home-pillars-scene,
  .home-assets--scroll,
  .home-section--scroll,
  .home-assets__h,
  .home-assets .asset-pill-list > li,
  .home-section--scroll .home-section__kicker,
  .home-section--scroll .home-section__title,
  .home-section--scroll .home-section__lead,
  .home-section--scroll .home-points > li,
  .home-section--scroll .security-spotlight__board,
  .home-section--scroll .security-spotlight__content,
  .home-section--scroll .security-spotlight__signals .security-spotlight__signal,
  .home-section--scroll .home-section__note,
  .home-desktop-rest > .home-pillars--scroll,
  .home-desktop-rest .home-main,
  .trust-row--scroll .trust-row__item {
    animation: none !important;
    animation-timeline: auto !important;
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }
}

/*
 * Split hero (≥960px): view-timeline entry progress for `--dr-hero` can be unreliable;
 * keep callout fully static on wide split layout (matches prior safeguard).
 */
@supports (animation-timeline: view()) {
  @media (min-width: 960px) {
    .home-rate-callout--scroll {
      opacity: 1 !important;
      transform: none !important;
      filter: none !important;
      animation: none !important;
    }
  }
}

@media (max-width: 640px) {
  .home-hero__title-word,
  .home-rate-callout--scroll,
  .home-hero__tag--scroll,
  .home-hero__launch-bonus,
  .home-hero--scroll .proto-status-row,
  .home-hero__chains li,
  .home-pillars--carousel-section .home-pillars-scene,
  .trust-row--scroll,
  .home-assets--scroll,
  .home-section--scroll,
  .home-assets__h,
  .home-assets .asset-pill-list > li,
  .home-section--scroll .home-section__kicker,
  .home-section--scroll .home-section__title,
  .home-section--scroll .home-section__lead,
  .home-section--scroll .home-points > li,
  .home-section--scroll .security-spotlight__board,
  .home-section--scroll .security-spotlight__content,
  .home-section--scroll .security-spotlight__signals .security-spotlight__signal,
  .home-section--scroll .home-section__note,
  .home-desktop-rest > .home-pillars--scroll,
  .home-desktop-rest .home-main,
  .trust-row--scroll .trust-row__item {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }
}
