.rise-stack {
      --rise-stack-pad-x: 1.25rem;
      position: relative;
      isolation: isolate;
      /* clip moved to .rise-stack__mosaic-breakout so position:sticky previews work (clip breaks sticky). */
      overflow-x: visible;
      overflow-y: visible;
      scroll-margin-top: calc(var(--header-offset) + 0.75rem);
      padding: clamp(2.5rem, 6vw, 4.75rem) var(--rise-stack-pad-x) clamp(3rem, 8vw, 5.5rem);
      border-top: 1px solid var(--hero-border);
      background: radial-gradient(ellipse 120% 80% at 50% -20%, rgba(56, 189, 248, 0.12), transparent 55%),
        radial-gradient(ellipse 90% 60% at 100% 40%, rgba(139, 92, 246, 0.14), transparent 50%),
        linear-gradient(180deg, #040a14 0%, #050d1a 45%, #040812 100%);
      color: var(--text);
    }

.rise-stack__bg {
      position: absolute;
      inset: 0;
      pointer-events: none;
      z-index: 0;
      opacity: 0.35;
      background: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='rsn'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23rsn)'/%3E%3C/svg%3E");
      mix-blend-mode: overlay;
    }

.rise-stack__inner {
      position: relative;
      z-index: 1;
      max-width: none;
      width: 100%;
      margin: 0 auto;
      padding-inline: clamp(1rem, 4vw, 2rem);
    }

.rise-stack__intro {
      text-align: center;
      max-width: 40rem;
      margin: 0 auto clamp(2.5rem, 5vw, 3.5rem);
    }

.rise-stack__eyebrow {
      font-size: 0.72rem;
      font-weight: 800;
      letter-spacing: 0.22em;
      text-transform: uppercase;
      color: rgba(148, 163, 184, 0.95);
      margin: 0 0 0.65rem;
    }

.rise-stack__title {
      font-size: clamp(1.65rem, 4.2vw, 2.45rem);
      font-weight: 850;
      line-height: 1.12;
      letter-spacing: -0.02em;
      margin: 0 0 0.85rem;
      background: linear-gradient(120deg, #f8fafc 0%, #bae6fd 35%, #e9d5ff 70%, #f8fafc 100%);
      background-size: 200% auto;
      background-position: 0% center;
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
      animation: rise-stack-title-shimmer 14s linear infinite;
    }

.rise-stack__lead {
      margin: 0 0 1.25rem;
      font-size: clamp(0.95rem, 2.1vw, 1.08rem);
      line-height: 1.6;
      color: rgba(226, 232, 240, 0.88);
    }

.rise-stack__cta {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0.55rem 1.35rem;
      border-radius: 999px;
      font-size: 0.72rem;
      font-weight: 800;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      text-decoration: none;
      color: #0f172a;
      background: linear-gradient(135deg, #e0f2fe, #fae8ff);
      border: 1px solid rgba(255, 255, 255, 0.35);
      box-shadow: 0 12px 36px rgba(0, 0, 0, 0.35);
      transition: transform 0.2s ease, box-shadow 0.2s ease;
    }

.rise-stack__cta:hover {
      transform: translateY(-2px);
      box-shadow: 0 16px 44px rgba(0, 0, 0, 0.42);
    }

.rise-stack__mosaic-breakout {
      display: flex;
      flex-direction: column;
      align-items: stretch;
      gap: clamp(1.25rem, 4vw, 2rem);
      width: calc(100% + 2 * var(--rise-stack-pad-x));
      max-width: none;
      margin-left: calc(-1 * var(--rise-stack-pad-x));
      margin-right: calc(-1 * var(--rise-stack-pad-x));
      padding-top: clamp(0.35rem, 1.5vw, 0.85rem);
      border-top: 1px solid rgba(255, 255, 255, 0.06);
      box-sizing: border-box;
      overflow-x: clip;
    }

.rise-stack__hive-wrap {
      display: block;
      width: 100%;
    }

.rise-stack__hive-cluster {
      --mosaic-a: #475569;
      --mosaic-b: #0ea5e9;
      position: relative;
      overflow: visible;
      border: none;
      border-radius: 0;
      background: transparent;
      box-shadow: none;
    }

.rise-stack__hive-cluster.is-expanded {
      box-shadow: none;
    }

.rise-stack__mosaic-stage {
      position: relative;
      display: grid;
      grid-template-columns: 1fr;
      grid-template-rows: auto;
      gap: 0;
      align-content: start;
    }

.rise-stack__mosaic-nav-hidden {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
      pointer-events: none;
    }

.rise-stack__mosaic-side {
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
      gap: 0.42rem;
      padding: clamp(0.65rem, 1.85vw, 1.05rem) clamp(0.65rem, 2.2vw, 1.2rem);
      z-index: 3;
    }

.rise-stack__mosaic-side-kicker {
      margin: 0 0 0.12rem;
      padding-bottom: 0.42rem;
      font-size: 0.66rem;
      font-weight: 850;
      letter-spacing: 0.24em;
      text-transform: uppercase;
      color: rgba(226, 232, 240, 0.92);
      border-bottom: 1px solid rgba(148, 163, 184, 0.28);
      text-shadow: 0 0 24px rgba(56, 189, 248, 0.12);
    }

.rise-stack__mosaic-nav {
      display: flex;
      flex-direction: column;
      align-items: stretch;
      gap: 0.28rem;
    }

.rise-stack__mosaic-hit {
      --hit-c1: #a78bfa;
      --hit-c2: #38bdf8;
      display: flex;
      align-items: center;
      gap: 0.42rem;
      width: 100%;
      text-align: left;
      padding: 0.42rem 0.52rem 0.42rem 0.45rem;
      margin: 0;
      border: 1px solid color-mix(in srgb, var(--hit-c1) 28%, rgba(255, 255, 255, 0.08));
      border-radius: 0.55rem;
      border-bottom: 1px solid color-mix(in srgb, var(--hit-c1) 28%, rgba(255, 255, 255, 0.08));
      background: linear-gradient(
        135deg,
        color-mix(in srgb, var(--hit-c1) 14%, rgba(15, 23, 42, 0.55)) 0%,
        rgba(2, 6, 23, 0.35) 100%
      );
      color: rgba(248, 250, 252, 0.94);
      font: inherit;
      cursor: pointer;
      scroll-margin-top: calc(var(--header-offset) + 0.75rem);
      -webkit-tap-highlight-color: transparent;
      box-shadow:
        0 1px 0 color-mix(in srgb, var(--hit-c1) 18%, transparent) inset,
        0 8px 22px rgba(0, 0, 0, 0.2);
      transition:
        color 0.2s ease,
        border-color 0.2s ease,
        opacity 0.3s ease,
        background 0.2s ease,
        box-shadow 0.2s ease,
        transform 0.2s ease;
    }

.rise-stack__mosaic-hit:focus-visible {
      outline: 2px solid var(--cyan);
      outline-offset: 3px;
    }

.rise-stack__mosaic-hit-icon {
      flex-shrink: 0;
      width: 1.05rem;
      height: 1.05rem;
      display: grid;
      place-items: center;
      border-radius: 0.38rem;
      background: color-mix(in srgb, var(--hit-c1) 22%, rgba(2, 6, 23, 0.45));
      border: 1px solid color-mix(in srgb, var(--hit-c1) 42%, rgba(255, 255, 255, 0.1));
      box-shadow: 0 4px 14px color-mix(in srgb, var(--hit-c1) 28%, transparent);
      opacity: 0.92;
      transition: opacity 0.2s ease, color 0.2s ease, background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
    }

.rise-stack__mosaic-hit-icon svg {
      width: 0.88rem;
      height: 0.88rem;
      color: color-mix(in srgb, var(--hit-c1) 82%, rgba(248, 250, 252, 0.95));
      filter: none;
    }

.rise-stack__mosaic-hit-label {
      display: flex;
      flex-direction: column;
      gap: 0.08rem;
      min-width: 0;
    }

.rise-stack__mosaic-hit-name {
      font-size: clamp(0.8rem, 1.22vw, 0.92rem);
      font-weight: 820;
      letter-spacing: 0.01em;
      text-transform: none;
      line-height: 1.2;
    }

/* Public scope: align section/card surfaces with dashboard dark treatment. */
html[data-rise-scope="public"] .rise-hub-hero__inner,
html[data-rise-scope="public"] .product-showcase-strip__card,
html[data-rise-scope="public"] .portfolio-item__window,
html[data-rise-scope="public"] .rise-stack__product-preview,
html[data-rise-scope="public"] .rise-stack__product-preview__shot-frame {
      border-color: color-mix(in srgb, var(--hero-border) 88%, rgba(255, 255, 255, 0.08));
      background: color-mix(in srgb, var(--bg-elevated) 88%, rgba(2, 6, 23, 0.2));
      box-shadow:
        0 14px 36px rgba(2, 6, 23, 0.36),
        inset 0 1px 0 rgba(255, 255, 255, 0.04);
      backdrop-filter: blur(8px) saturate(1.05);
    }

.rise-stack__mosaic-hit-hint {
      font-size: clamp(0.54rem, 0.85vw, 0.6rem);
      font-weight: 720;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: color-mix(in srgb, var(--hit-c1) 48%, rgba(148, 163, 184, 0.88));
    }

.rise-stack__mosaic-hit:hover,
    .rise-stack__mosaic-hit:focus-visible {
      color: #f8fafc;
      border-color: color-mix(in srgb, var(--hit-c1) 58%, rgba(255, 255, 255, 0.16));
      border-bottom-color: color-mix(in srgb, var(--hit-c1) 58%, rgba(255, 255, 255, 0.16));
      background: linear-gradient(
        135deg,
        color-mix(in srgb, var(--hit-c1) 26%, rgba(15, 23, 42, 0.65)) 0%,
        color-mix(in srgb, var(--hit-c1) 10%, rgba(2, 6, 23, 0.5)) 100%
      );
      box-shadow:
        0 1px 0 color-mix(in srgb, var(--hit-c1) 28%, transparent) inset,
        0 12px 32px rgba(0, 0, 0, 0.28),
        0 0 36px color-mix(in srgb, var(--hit-c1) 22%, transparent);
      transform: translateY(-1px);
    }

.rise-stack__mosaic-hit:hover .rise-stack__mosaic-hit-icon,
    .rise-stack__mosaic-hit:focus-visible .rise-stack__mosaic-hit-icon {
      opacity: 1;
      background: color-mix(in srgb, var(--hit-c1) 34%, rgba(2, 6, 23, 0.35));
      border-color: color-mix(in srgb, var(--hit-c1) 55%, rgba(255, 255, 255, 0.18));
      box-shadow: 0 6px 18px color-mix(in srgb, var(--hit-c1) 38%, transparent);
    }

.rise-stack__mosaic-hit--suite {
      --hit-c1: #a78bfa;
      --hit-c2: #38bdf8;
    }

.rise-stack__mosaic-hit--trade {
      --hit-c1: #34d399;
      --hit-c2: #2dd4bf;
    }

.rise-stack__mosaic-hit--predict {
      --hit-c1: #818cf8;
      --hit-c2: #fbbf24;
    }

.rise-stack__mosaic-hit--bet {
      --hit-c1: #fb7185;
      --hit-c2: #fb923c;
    }

.rise-stack__mosaic-hit--merch {
      --hit-c1: #f0d875;
      --hit-c2: #f472b6;
    }

.rise-stack__hive-cluster.is-expanded .rise-stack__mosaic-hit[aria-expanded="false"] {
      opacity: 0.38;
      transform: none;
      box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
    }

.rise-stack__hive-cluster.is-expanded .rise-stack__mosaic-hit[aria-expanded="true"] {
      opacity: 1;
      border-color: color-mix(in srgb, var(--hit-c1) 62%, rgba(255, 255, 255, 0.2));
      border-bottom-color: color-mix(in srgb, var(--hit-c1) 62%, rgba(255, 255, 255, 0.2));
      background: linear-gradient(
        135deg,
        color-mix(in srgb, var(--hit-c1) 32%, rgba(15, 23, 42, 0.72)) 0%,
        color-mix(in srgb, var(--hit-c1) 14%, rgba(2, 6, 23, 0.55)) 100%
      );
      box-shadow:
        0 1px 0 color-mix(in srgb, var(--hit-c1) 32%, transparent) inset,
        0 14px 36px rgba(0, 0, 0, 0.32),
        0 0 44px color-mix(in srgb, var(--hit-c1) 28%, transparent);
    }

.rise-stack__mosaic-visual {
      position: relative;
      align-self: stretch;
      min-height: clamp(400px, 72vh, 760px);
      background: transparent;
      display: flex;
      flex-direction: column;
    }

@media (min-width: 900px) {
      .rise-stack__mosaic-visual {
        min-height: clamp(420px, 72vh, 760px);
      }
    }

.rise-stack__mosaic-idle {
      position: relative;
      z-index: 2;
      width: 100%;
      box-sizing: border-box;
      /* Mosaic breakout negates section padding  restore horizontal rhythm here. */
      padding-inline: clamp(1rem, 4vw, 2rem);
      pointer-events: auto;
      background: transparent;
      transition:
        opacity 0.45s ease,
        visibility 0s linear 0s;
    }

.rise-stack__mosaic-idle.rise-stack__mosaic-idle--hidden {
      position: absolute;
      inset: 0;
      width: 100%;
      height: auto;
      aspect-ratio: 1 / 1;
      min-height: 0;
      overflow: hidden;
      opacity: 0;
      visibility: hidden;
      pointer-events: none;
      transition:
        opacity 0.35s ease,
        visibility 0s linear 0.35s;
    }

.rise-stack__arch__sr {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
    }

.rise-stack__arch {
      --arch-accent: #a78bfa;
      --arch-cta-bg: #c4b5fd;
      /* 1 = no inner zoom; below 1 zooms the shot out from center (more of the SVG visible). */
      --rise-arch-preview-inner-scale: 0.92;
      background-color: transparent;
      display: flex;
      flex-direction: column;
      gap: 0;
      width: 100%;
      max-width: none;
      margin: 0;
      padding: clamp(0.35rem, 1.2vw, 0.65rem) 0 clamp(1rem, 3vw, 1.75rem);
      box-sizing: border-box;
    }

.rise-stack__arch-left {
      display: flex;
      flex-direction: column;
      min-width: 0;
      flex: 1 1 auto;
      position: relative;
    }

.rise-stack__arch-info {
      min-height: 0;
      display: flex;
      align-items: flex-start;
      justify-content: flex-start;
      padding: clamp(0.75rem, 2.2vh, 1.15rem) 0;
      box-sizing: border-box;
    }

.rise-stack__arch-info[data-rise-product="suite"] {
      --arch-accent: #a78bfa;
      --arch-cta-bg: color-mix(in srgb, #a78bfa 55%, #f5f3ff);
    }

.rise-stack__arch-info[data-rise-product="trade"] {
      --arch-accent: #34d399;
      --arch-cta-bg: color-mix(in srgb, #34d399 50%, #ecfdf5);
    }

.rise-stack__arch-info[data-rise-product="predict"] {
      --arch-accent: #818cf8;
      --arch-cta-bg: color-mix(in srgb, #818cf8 45%, #eef2ff);
    }

.rise-stack__arch-info[data-rise-product="bet"] {
      --arch-accent: #fb7185;
      --arch-cta-bg: color-mix(in srgb, #fb7185 48%, #fff1f2);
    }

.rise-stack__arch-content {
      max-width: 22rem;
      width: 100%;
      position: relative;
      border: 1px solid color-mix(in srgb, var(--arch-accent) 30%, var(--hero-border));
      border-radius: 1rem;
      background:
        linear-gradient(165deg, color-mix(in srgb, var(--bg-elevated) 82%, transparent), color-mix(in srgb, var(--bg-page) 88%, transparent));
      box-shadow:
        0 1px 0 color-mix(in srgb, #ffffff 12%, transparent) inset,
        0 16px 46px color-mix(in srgb, #020617 28%, transparent);
      padding: clamp(0.92rem, 2.1vw, 1.15rem);
      transition: transform 0.24s ease, border-color 0.24s ease, box-shadow 0.24s ease, background 0.24s ease;
    }

.rise-stack__arch-content::before {
      content: "";
      position: absolute;
      left: 0.78rem;
      right: 0.78rem;
      top: 0;
      height: 2px;
      border-radius: 999px;
      background: linear-gradient(
        90deg,
        color-mix(in srgb, var(--arch-accent) 70%, transparent),
        color-mix(in srgb, var(--arch-accent) 24%, transparent)
      );
      opacity: 0.9;
    }

.rise-stack__arch-info.is-active .rise-stack__arch-content,
    .rise-stack__arch-info:hover .rise-stack__arch-content {
      transform: translateY(-2px);
      border-color: color-mix(in srgb, var(--arch-accent) 55%, var(--hero-border));
      box-shadow:
        0 1px 0 color-mix(in srgb, #ffffff 16%, transparent) inset,
        0 24px 56px color-mix(in srgb, var(--arch-accent) 23%, transparent);
      background:
        linear-gradient(165deg, color-mix(in srgb, var(--bg-elevated) 88%, var(--arch-accent) 8%), color-mix(in srgb, var(--bg-page) 90%, transparent));
    }

.rise-stack__arch-kicker {
      margin: 0 0 0.42rem;
      font-size: 0.67rem;
      font-weight: 800;
      letter-spacing: 0.16em;
      text-transform: uppercase;
      color: color-mix(in srgb, var(--arch-accent) 88%, rgba(226, 232, 240, 0.94));
    }

.rise-stack__arch-h {
      margin: 0;
      font-size: clamp(1.32rem, 3vw, 1.72rem);
      font-weight: 800;
      letter-spacing: -0.025em;
      line-height: 1.1;
      color: #f8fafc;
      text-wrap: balance;
    }

.rise-stack__arch-desc {
      margin: 0.48rem 0 0.88rem;
      font-size: clamp(0.88rem, 1.8vw, 0.95rem);
      line-height: 1.5;
      color: rgba(226, 232, 240, 0.86);
    }

.rise-stack__arch-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 0.5rem 0.65rem;
      align-items: center;
    }

.rise-stack__arch-cta {
      text-decoration: none;
      padding: 0.62rem 0.98rem;
      border-radius: 0.72rem;
      font-size: 0.83rem;
      font-weight: 760;
      letter-spacing: 0.01em;
      display: inline-flex;
      align-items: center;
      gap: 0.35rem;
      color: #f8fafc;
      background: color-mix(in srgb, var(--arch-accent) 23%, rgba(2, 6, 23, 0.78));
      border: 1px solid color-mix(in srgb, var(--arch-accent) 56%, rgba(255, 255, 255, 0.2));
      box-shadow:
        0 1px 0 color-mix(in srgb, #ffffff 20%, transparent) inset,
        0 10px 26px color-mix(in srgb, var(--arch-accent) 20%, transparent);
      transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease, background 0.2s ease;
    }

.rise-stack__arch-cta:hover {
      transform: translateY(-1px) scale(1.01);
      border-color: color-mix(in srgb, var(--arch-accent) 74%, rgba(255, 255, 255, 0.24));
      background: color-mix(in srgb, var(--arch-accent) 31%, rgba(2, 6, 23, 0.86));
      box-shadow:
        0 1px 0 color-mix(in srgb, #ffffff 24%, transparent) inset,
        0 16px 30px color-mix(in srgb, var(--arch-accent) 30%, transparent);
    }

.rise-stack__arch-cta svg {
      flex-shrink: 0;
      opacity: 0.95;
    }

.rise-stack__arch-info {
      perspective: 1000px;
    }

.rise-stack__arch-content {
      overflow: hidden;
      transform-style: preserve-3d;
      backdrop-filter: blur(14px) saturate(1.2);
      position: relative;
    }

.rise-stack__arch-content::after {
      content: "";
      position: absolute;
      inset: -45% -120% auto;
      height: 65%;
      background: linear-gradient(
        110deg,
        transparent 0%,
        color-mix(in srgb, var(--arch-accent) 24%, rgba(255, 255, 255, 0.35)) 42%,
        transparent 72%
      );
      filter: blur(2px);
      opacity: 0.42;
      transform: translateX(-16%);
      animation: riseArchSweep 6.8s cubic-bezier(0.22, 1, 0.36, 1) infinite;
      pointer-events: none;
    }

.rise-stack__arch-info:nth-child(2) .rise-stack__arch-content::after {
      animation-delay: 0.7s;
    }

.rise-stack__arch-info:nth-child(3) .rise-stack__arch-content::after {
      animation-delay: 1.35s;
    }

.rise-stack__arch-info:nth-child(4) .rise-stack__arch-content::after {
      animation-delay: 2s;
    }

.rise-stack__arch-h {
      text-shadow:
        0 0 28px color-mix(in srgb, var(--arch-accent) 26%, transparent),
        0 8px 24px rgba(0, 0, 0, 0.34);
    }

.rise-stack__arch-desc {
      max-width: 31ch;
    }

.rise-stack__arch-meta {
      margin: 0 0 0.82rem;
      padding: 0;
      list-style: none;
      display: flex;
      flex-wrap: wrap;
      gap: 0.42rem;
    }

.rise-stack__arch-meta li {
      position: relative;
      display: inline-flex;
      align-items: center;
      gap: 0.32rem;
      border-radius: 999px;
      padding: 0.32rem 0.6rem;
      font-size: 0.68rem;
      font-weight: 760;
      letter-spacing: 0.05em;
      text-transform: uppercase;
      color: color-mix(in srgb, #ffffff 90%, var(--arch-accent));
      border: 1px solid color-mix(in srgb, var(--arch-accent) 42%, rgba(255, 255, 255, 0.18));
      background:
        linear-gradient(145deg, color-mix(in srgb, var(--arch-accent) 16%, rgba(15, 23, 42, 0.62)), rgba(2, 6, 23, 0.7));
      box-shadow:
        0 0 0 1px color-mix(in srgb, #ffffff 4%, transparent) inset,
        0 10px 26px color-mix(in srgb, var(--arch-accent) 18%, transparent);
    }

.rise-stack__arch-meta li::before {
      content: "";
      width: 0.32rem;
      height: 0.32rem;
      border-radius: 999px;
      background: color-mix(in srgb, var(--arch-accent) 78%, #ffffff);
      box-shadow: 0 0 0 5px color-mix(in srgb, var(--arch-accent) 18%, transparent);
      animation: riseArchPulse 2.4s ease-in-out infinite;
    }

.rise-stack__arch-info.is-active .rise-stack__arch-content {
      transform: translateY(-3px) rotateX(1.8deg);
    }

.rise-stack__arch-info.is-active .rise-stack__arch-meta li,
    .rise-stack__arch-info:hover .rise-stack__arch-meta li {
      border-color: color-mix(in srgb, var(--arch-accent) 66%, rgba(255, 255, 255, 0.28));
      box-shadow:
        0 0 0 1px color-mix(in srgb, #ffffff 7%, transparent) inset,
        0 14px 30px color-mix(in srgb, var(--arch-accent) 24%, transparent);
    }

.rise-stack__arch-cta {
      position: relative;
      overflow: hidden;
    }

.rise-stack__arch-cta::after {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(
        120deg,
        transparent 20%,
        color-mix(in srgb, #ffffff 32%, transparent) 48%,
        transparent 70%
      );
      opacity: 0;
      transform: translateX(-115%);
      transition: opacity 0.2s ease, transform 0.42s cubic-bezier(0.22, 1, 0.36, 1);
      pointer-events: none;
    }

.rise-stack__arch-cta:hover::after {
      opacity: 0.75;
      transform: translateX(135%);
    }

.rise-stack__arch-cta span {
      position: relative;
      z-index: 1;
    }

.rise-stack__arch-cta svg {
      position: relative;
      z-index: 1;
    }

@media (prefers-reduced-motion: reduce) {
      .rise-stack__arch-content::after,
      .rise-stack__arch-meta li::before {
        animation: none !important;
      }
      .rise-stack__arch-info.is-active .rise-stack__arch-content {
        transform: none;
      }
      .rise-stack__arch-cta::after {
        display: none;
      }
    }

.rise-stack__arch-right {
      flex-shrink: 0;
      position: relative;
      width: min(100%, 520px);
      max-width: 520px;
      margin: 0 auto;
      aspect-ratio: 1 / 1;
      min-height: 0;
      height: auto;
    }

.rise-stack__arch-frame {
      position: absolute;
      inset: 0;
      transform: none;
      height: auto;
      aspect-ratio: 1 / 1;
      max-height: none;
      border-radius: 1rem;
      overflow: hidden;
      contain: layout paint;
      border: 1px solid color-mix(in srgb, var(--arch-accent, #64748b) 22%, var(--hero-border));
      box-shadow: 0 12px 36px rgba(0, 0, 0, 0.22);
      /* Opaque background avoids stacked-frame edge bleed. */
      background: #0a1628;
    }

.rise-stack__arch-frame .rise-stack__product-preview--arch {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      margin: 0;
      display: flex;
      flex-direction: column;
      min-height: 0;
      box-sizing: border-box;
    }

.rise-stack__arch-frame .rise-stack__product-preview--arch .rise-stack__product-preview__canvas--shot {
      flex: 1 1 auto;
      min-height: 0;
      overflow: hidden;
      border-radius: 0 0 0.38rem 0.38rem;
    }

.rise-stack__arch-frame .rise-stack__product-preview--arch .rise-stack__product-preview__shot-frame {
      flex: 1 1 auto;
      min-height: 0;
      height: auto;
      aspect-ratio: 1 / 1;
      max-height: none;
      margin-inline: 0;
      /* Slight zoom-out from center so more of the static SVG reads inside the card (chrome untouched). */
      transform: scale(var(--rise-arch-preview-inner-scale, 0.94));
      transform-origin: center center;
    }

.rise-stack__arch-frame .rise-stack__product-preview__shot-frame .rise-stack__product-preview__img {
      object-fit: contain;
      object-position: center center;
    }

.rise-stack--tube-three .rise-stack__arch-right {
      perspective: 1600px;
    }

.rise-stack--tube-three .rise-stack__arch-sticky {
      position: sticky;
      top: calc(var(--header-offset) + 10px);
      height: auto;
      min-height: 0;
    }

.rise-stack--tube-three .rise-stack__arch-frame {
      display: none !important;
    }

.rise-stack__tube-stage {
      position: relative;
      width: min(100%, 820px);
      aspect-ratio: 1 / 1;
      margin-inline: auto;
      border-radius: 1rem;
      overflow: hidden;
      border: 1px solid color-mix(in srgb, var(--rs-c1) 26%, var(--hero-border));
      box-shadow: 0 20px 48px rgba(0, 0, 0, 0.35);
      background: radial-gradient(circle at center, rgba(2, 6, 23, 0.72), rgba(2, 6, 23, 0.96));
    }

.rise-stack__tube-stage canvas {
      width: 100% !important;
      height: 100% !important;
      display: block;
    }

.rise-stack--tube-three .rise-stack__arch-left .rise-stack__arch-info {
      transition: opacity 220ms ease;
    }

.rise-stack--tube .rise-stack__arch-right {
      perspective: 1400px;
      transform-style: preserve-3d;
    }

.rise-stack--tube .rise-stack__arch-sticky {
      position: sticky;
      top: calc(var(--header-offset) + 10px);
      display: grid;
      place-items: center;
      overflow: visible;
      transform-style: preserve-3d;
    }

.rise-stack--tube .rise-stack__arch-frame {
      width: min(100%, 440px);
      max-width: 94%;
      margin: auto;
      transform-style: preserve-3d;
      backface-visibility: hidden;
      transform:
        rotateY(calc(var(--rise-tube-rotate, 0deg) + (var(--tube-i, 0) * var(--rise-tube-step, 90deg))))
        translateZ(var(--rise-tube-radius, 26vmin));
      opacity: 0.42;
      filter: saturate(0.72) brightness(0.82);
      transition: opacity 240ms ease, filter 240ms ease, box-shadow 240ms ease;
    }

.rise-stack--tube .rise-stack__arch-frame.is-front {
      opacity: 1;
      filter: none;
      box-shadow: 0 18px 42px rgba(0, 0, 0, 0.35), 0 0 0 1px color-mix(in srgb, var(--rs-c1) 20%, rgba(255, 255, 255, 0.16));
    }

.rise-stack--tube .rise-stack__arch-left .rise-stack__arch-info {
      opacity: 0.3;
      transform: translateY(14px);
      transition: opacity 240ms ease, transform 240ms ease;
    }

.rise-stack--tube .rise-stack__arch-left .rise-stack__arch-info.is-active {
      opacity: 1;
      transform: translateY(0);
    }

@media (max-width: 639px) {
      .rise-stack--tube .rise-stack__arch-frame {
        width: min(92vw, 360px);
      }
    }

.rise-stack__arch-sticky {
      display: block;
      min-height: 0;
      width: 100%;
      aspect-ratio: 1 / 1;
      height: auto;
    }

@media (min-width: 640px) {
      /* Grid: copy | wider preview (~2 copy track)  cards use full preview column; copy still margin-left:auto at gap. */
      .rise-stack__arch {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
        align-items: stretch;
        column-gap: clamp(0.35rem, 1.6vw, 1rem);
        row-gap: 0;
        padding-left: 0;
        padding-right: 0;
      }
      .rise-stack__arch-left {
        grid-column: 1;
        grid-row: 1;
        width: 100%;
        min-width: 0;
        max-width: none;
        flex: unset;
      }
      /* Pull copy toward the preview; drop the big left inset. */
      .rise-stack__arch .rise-stack__arch-content {
        display: block;
        width: min(22rem, 100%);
        max-width: 22rem;
        margin-left: auto;
        margin-right: 0;
      }
      /* Scroll length: five steps. Copy sits in stacked bands; JS pins the rail class, GSAP scrubs preview wipes. */
      .rise-stack__arch-left--steps {
        position: relative;
        --rise-arch-step: min(88svh, 820px);
        min-height: calc(5 * var(--rise-arch-step));
      }
      .rise-stack__arch-info {
        min-height: min(88svh, 820px);
        align-items: center;
        padding: clamp(0.75rem, 2vh, 1.25rem) clamp(0.35rem, 1.2vw, 0.75rem) clamp(0.75rem, 2vh, 1.25rem) 0;
      }
      /* One band per step down the column (all at top:0 = only first viewport had copy; rest felt empty). */
      .rise-stack__arch-left--steps .rise-stack__arch-info {
        position: absolute;
        left: 0;
        right: 0;
        height: var(--rise-arch-step);
        min-height: 0;
        box-sizing: border-box;
      }
      .rise-stack__arch-left--steps .rise-stack__arch-info:nth-child(1) {
        top: 0;
      }
      .rise-stack__arch-left--steps .rise-stack__arch-info:nth-child(2) {
        top: calc(1 * var(--rise-arch-step));
      }
      .rise-stack__arch-left--steps .rise-stack__arch-info:nth-child(3) {
        top: calc(2 * var(--rise-arch-step));
      }
      .rise-stack__arch-left--steps .rise-stack__arch-info:nth-child(4) {
        top: calc(3 * var(--rise-arch-step));
      }
      .rise-stack__arch-left--steps .rise-stack__arch-info:nth-child(5) {
        top: calc(4 * var(--rise-arch-step));
      }
      .rise-stack__arch-right {
        grid-column: 2;
        grid-row: 1;
        justify-self: start;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        margin: 0;
        /* Pull preview into the right gutter (padding-right:0 on parents wasnt enough). Copy column untouched. */
        margin-right: clamp(-28px, -3.5vw, -10px);
        align-self: stretch;
        height: auto;
        min-height: 0;
        position: relative;
      }
      .rise-stack__arch-sticky {
        position: sticky;
        top: calc(var(--header-offset) + 10px);
        height: auto;
        min-height: 0;
      }
      .rise-stack__arch-frame {
        height: 100%;
      }
    }

@media (prefers-reduced-motion: reduce) {
      .rise-stack__arch-cta {
        transition: none;
      }
      .rise-stack__arch-cta:hover {
        transform: none;
      }
    }

.rise-stack__hive-cluster:has([data-rise-product="suite"]:hover),
    .rise-stack__hive-cluster:has([data-rise-product="suite"][aria-expanded="true"]) {
      --mosaic-a: #a78bfa;
      --mosaic-b: #38bdf8;
    }

.rise-stack__hive-cluster:has([data-rise-product="trade"]:hover),
    .rise-stack__hive-cluster:has([data-rise-product="trade"][aria-expanded="true"]) {
      --mosaic-a: #34d399;
      --mosaic-b: #2dd4bf;
    }

.rise-stack__hive-cluster:has([data-rise-product="predict"]:hover),
    .rise-stack__hive-cluster:has([data-rise-product="predict"][aria-expanded="true"]) {
      --mosaic-a: #818cf8;
      --mosaic-b: #fbbf24;
    }

.rise-stack__hive-cluster:has([data-rise-product="bet"]:hover),
    .rise-stack__hive-cluster:has([data-rise-product="bet"][aria-expanded="true"]) {
      --mosaic-a: #fb7185;
      --mosaic-b: #fb923c;
    }

.rise-stack__hive-cluster.rise-stack--bursting {
      pointer-events: none;
    }

.rise-stack__detail-panel--enter .rise-stack__product-sheet {
      animation: rise-stack-detail-pop 0.72s cubic-bezier(0.22, 1, 0.36, 1) both;
      animation-delay: 0.03s;
    }

.rise-stack__detail-panel--enter .rise-stack__product-sheet__head {
      animation: rise-stack-detail-pop 0.7s cubic-bezier(0.22, 1, 0.36, 1) both;
      animation-delay: 0.07s;
    }

.rise-stack__detail-panel--enter .rise-stack__product-row:nth-child(1) {
      animation: rise-stack-detail-pop 0.64s cubic-bezier(0.22, 1, 0.36, 1) both;
      animation-delay: 0.11s;
    }

.rise-stack__detail-panel--enter .rise-stack__product-row:nth-child(2) {
      animation: rise-stack-detail-pop 0.64s cubic-bezier(0.22, 1, 0.36, 1) both;
      animation-delay: 0.16s;
    }

.rise-stack__detail-panel--enter .rise-stack__product-row:nth-child(3) {
      animation: rise-stack-detail-pop 0.64s cubic-bezier(0.22, 1, 0.36, 1) both;
      animation-delay: 0.21s;
    }

.rise-stack__detail-panel--enter .rise-stack__product-preview {
      animation: rise-stack-detail-pop 0.68s cubic-bezier(0.22, 1, 0.36, 1) both;
      animation-delay: 0.26s;
    }

.rise-stack__detail-panel--enter .rise-stack__product-sheet__foot .rise-stack__reveal-cta {
      animation: rise-stack-detail-pop 0.58s cubic-bezier(0.22, 1, 0.36, 1) both;
      animation-delay: 0.32s;
    }

.rise-stack__detail {
      position: absolute;
      inset: 0;
      z-index: 4;
      width: auto;
      max-width: none;
      margin: 0;
      padding: clamp(0.55rem, 1.8vw, 0.95rem) clamp(0.3rem, 1.2vw, 0.55rem) clamp(0.75rem, 2.5vw, 1.25rem);
      overflow-x: hidden;
      /* Tall mosaic row + min visual height: prefer page scroll; keep auto for small / overflowing viewports. */
      overflow-y: auto;
      overscroll-behavior: contain;
      border: none;
      border-radius: 0;
      background: transparent;
      box-shadow: none;
      transition: opacity 0.4s ease, transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
      display: flex;
      flex-direction: column;
      min-height: 0;
      scrollbar-gutter: stable;
      scrollbar-width: thin;
      scrollbar-color: color-mix(in srgb, var(--rs-c1) 45%, rgba(148, 163, 184, 0.35)) rgba(15, 23, 42, 0.35);
      padding-bottom: max(0.75rem, env(safe-area-inset-bottom, 0px));
      -webkit-overflow-scrolling: touch;
    }

.rise-stack__detail[hidden] {
      display: none !important;
    }

.rise-stack__detail-panel {
      text-align: left;
      scroll-margin-top: calc(var(--header-offset) + 0.75rem);
    }

.rise-stack__detail-panel[hidden] {
      display: none !important;
    }

.rise-stack__detail-panel:not([hidden]) {
      flex: 1 1 auto;
      min-height: 0;
      display: flex;
      flex-direction: column;
    }

.rise-stack__reveal {
      position: relative;
      flex: 1 1 auto;
      min-height: 0;
      display: flex;
      flex-direction: column;
    }

.rise-stack__product-sheet {
      position: relative;
      isolation: isolate;
      flex: 0 0 auto;
      min-height: 0;
      width: 100%;
      max-width: none;
      margin: 0;
      max-height: none;
      overflow-x: hidden;
      overflow-y: visible;
      overscroll-behavior: auto;
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      grid-template-areas:
        "intro"
        "split";
      row-gap: clamp(0.3rem, 1vw, 0.48rem);
      align-content: start;
      border-radius: 0.65rem;
      border: 1px solid color-mix(in srgb, var(--rs-c1) 32%, var(--hero-border));
      background: linear-gradient(
        158deg,
        color-mix(in srgb, var(--bg-elevated) 86%, transparent) 0%,
        color-mix(in srgb, var(--rs-c1) 11%, #020617) 48%,
        color-mix(in srgb, var(--bg-elevated) 80%, transparent) 100%
      );
      box-shadow:
        0 1px 0 rgba(255, 255, 255, 0.06) inset,
        0 18px 40px rgba(0, 0, 0, 0.38);
      padding: clamp(0.45rem, 1.2vw, 0.58rem) clamp(0.48rem, 1.35vw, 0.65rem) clamp(0.42rem, 1.1vw, 0.55rem);
      box-sizing: border-box;
    }

.rise-stack__product-sheet::before {
      content: "";
      position: absolute;
      inset: 0;
      border-radius: inherit;
      pointer-events: none;
      z-index: 0;
      background: linear-gradient(180deg, rgba(255, 255, 255, 0.07) 0%, transparent 40%);
    }

.rise-stack__product-sheet > * {
      position: relative;
      z-index: 1;
    }

.rise-stack__product-sheet > .rise-stack__product-sheet__intro {
      grid-area: intro;
    }

.rise-stack__product-sheet > .rise-stack__product-sheet__split {
      grid-area: split;
      display: grid;
      grid-template-columns: minmax(0, 3fr) minmax(0, 7fr);
      gap: clamp(0.45rem, 1.5vw, 0.85rem);
      align-items: start;
    }

@media (max-width: 900px) {
      .rise-stack__product-sheet > .rise-stack__product-sheet__split {
        grid-template-columns: 1fr;
      }
    }

@media (min-width: 901px) {
      .rise-stack__product-sheet__split-preview {
        position: sticky;
        top: calc(var(--header-offset, 0px) + 0.75rem);
      }
    }

.rise-stack__product-sheet__split-preview {
      min-width: 0;
    }

.rise-stack__product-sheet__split-preview .rise-stack__product-preview {
      width: 100%;
      max-width: none;
    }

.rise-stack__product-sheet__kicker {
      margin: 0;
      padding-top: 0;
      font-size: 0.68rem;
      font-weight: 850;
      letter-spacing: 0.22em;
      text-transform: uppercase;
      color: color-mix(in srgb, var(--rs-c1) 78%, rgba(226, 232, 240, 0.98));
      text-shadow: 0 0 28px color-mix(in srgb, var(--rs-c1) 35%, transparent);
      border-top: 1px solid color-mix(in srgb, var(--hero-border) 82%, var(--rs-c1));
    }

.rise-stack__product-sheet__head {
      display: flex;
      align-items: flex-start;
      gap: 0.65rem;
      margin: 0 0 clamp(0.48rem, 1.35vw, 0.72rem);
      padding: clamp(0.55rem, 1.45vw, 0.78rem) clamp(0.55rem, 1.5vw, 0.82rem);
      border-radius: 0.55rem;
      border: 1px solid color-mix(in srgb, var(--rs-c1) 48%, rgba(255, 255, 255, 0.12));
      background:
        radial-gradient(110% 120% at 0% 0%, color-mix(in srgb, var(--rs-c1) 48%, transparent) 0%, transparent 52%),
        radial-gradient(90% 90% at 100% 0%, color-mix(in srgb, var(--rs-c2) 34%, transparent) 0%, transparent 46%),
        linear-gradient(168deg, rgba(15, 23, 42, 0.72) 0%, rgba(2, 6, 23, 0.32) 100%);
      box-shadow:
        0 1px 0 rgba(255, 255, 255, 0.09) inset,
        0 0 0 1px color-mix(in srgb, var(--rs-c1) 18%, transparent),
        0 22px 56px rgba(0, 0, 0, 0.32),
        0 0 64px color-mix(in srgb, var(--rs-c1) 22%, transparent);
    }

.rise-stack__product-sheet__mark {
      flex-shrink: 0;
      width: 2.1rem;
      height: 2.1rem;
      border-radius: 0.48rem;
      display: grid;
      place-items: center;
      background: color-mix(in srgb, var(--rs-c1) 22%, rgba(2, 6, 23, 0.35));
      color: var(--rs-c1);
      border: 1px solid color-mix(in srgb, var(--rs-c1) 42%, rgba(255, 255, 255, 0.1));
      box-shadow:
        0 10px 28px color-mix(in srgb, var(--rs-c1) 35%, transparent),
        0 0 0 1px rgba(0, 0, 0, 0.18) inset,
        0 1px 0 rgba(255, 255, 255, 0.14) inset;
    }

.rise-stack__product-sheet__mark svg {
      width: 1.08rem;
      height: 1.08rem;
    }

.rise-stack__product-sheet__headcopy {
      min-width: 0;
    }

.rise-stack__product-sheet__eyebrow {
      margin: 0 0 0.36rem;
      display: inline-flex;
      align-items: center;
      width: fit-content;
      max-width: 100%;
      padding: 0.24rem 0.55rem;
      font-size: 0.66rem;
      font-weight: 850;
      letter-spacing: 0.2em;
      text-transform: uppercase;
      color: rgba(248, 250, 252, 0.98);
      background: color-mix(in srgb, var(--rs-c1) 38%, rgba(2, 6, 23, 0.62));
      border: 1px solid color-mix(in srgb, var(--rs-c1) 58%, rgba(255, 255, 255, 0.14));
      border-radius: 0.45rem;
      box-shadow:
        0 1px 0 color-mix(in srgb, var(--rs-c1) 25%, transparent) inset,
        0 6px 24px color-mix(in srgb, var(--rs-c1) 28%, transparent);
    }

.rise-stack__product-sheet__title {
      margin: 0 0 0.38rem;
      font-size: clamp(1.22rem, 3.05vw, 1.62rem);
      font-weight: 850;
      letter-spacing: -0.035em;
      line-height: 1.08;
      color: #f8fafc;
      text-wrap: balance;
    }

.rise-stack__product-sheet__lead {
      margin: 0;
      font-size: clamp(0.88rem, 1.55vw, 1.02rem);
      line-height: 1.52;
      font-weight: 520;
      color: rgba(226, 232, 240, 0.96);
    }

.rise-stack__product-preview {
      border-radius: 0.45rem;
      overflow: hidden;
      border: 1px solid color-mix(in srgb, var(--hero-border) 80%, var(--rs-c1));
      margin-top: clamp(0.28rem, 1vw, 0.45rem);
      margin-bottom: clamp(0.25rem, 0.9vw, 0.4rem);
      background: color-mix(in srgb, #020617 55%, var(--bg-page));
    }

.rise-stack__product-preview__chrome {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.35rem;
      padding: 0.24rem 0.4rem;
      background: rgba(15, 23, 42, 0.72);
      border-bottom: 1px solid rgba(148, 163, 184, 0.12);
    }

.rise-stack__product-preview__dots {
      display: flex;
      gap: 0.28rem;
      align-items: center;
    }

.rise-stack__product-preview__dots span {
      width: 0.38rem;
      height: 0.38rem;
      border-radius: 999px;
      background: rgba(148, 163, 184, 0.35);
    }

.rise-stack__product-preview__dots span:nth-child(1) {
      background: rgba(251, 113, 133, 0.55);
    }

.rise-stack__product-preview__dots span:nth-child(2) {
      background: rgba(251, 191, 36, 0.55);
    }

.rise-stack__product-preview__dots span:nth-child(3) {
      background: rgba(52, 211, 153, 0.55);
    }

.rise-stack__product-preview__chrome-label {
      font-size: 0.48rem;
      font-weight: 750;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: rgba(226, 232, 240, 0.55);
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      max-width: 70%;
    }

.rise-stack__product-preview__canvas {
      padding: 0.55rem 0.6rem 0.65rem;
      min-height: clamp(5.5rem, 22vw, 7.5rem);
      box-sizing: border-box;
    }

.rise-stack__product-preview__canvas--shot {
      padding: 0;
      min-height: 0;
      line-height: 0;
      position: relative;
      user-select: none;
      -webkit-user-select: none;
    }

.rise-stack__product-preview__img {
      display: block;
      width: 100%;
      height: auto;
      vertical-align: middle;
      pointer-events: none;
      user-select: none;
      -webkit-user-select: none;
      -webkit-user-drag: none;
    }

.rise-stack__product-preview__theme-img--light {
      display: none;
    }

.rise-stack__product-sheet__intro {
      display: flex;
      flex-direction: column;
      gap: clamp(0.48rem, 1.35vw, 0.72rem);
      margin-bottom: 0;
    }

.rise-stack__product-sheet__intro .rise-stack__product-preview--compact {
      margin-top: 0;
      margin-bottom: 0;
    }

.rise-stack__product-preview__shot-frame {
      position: relative;
      width: 100%;
      margin-inline: auto;
      aspect-ratio: 1 / 1;
      height: auto;
      max-height: none;
      min-height: 0;
      border-radius: 0.55rem;
      overflow: hidden;
      background: rgba(2, 6, 23, 0.5);
      box-shadow:
        0 0 0 1px color-mix(in srgb, var(--rs-c1) 28%, rgba(255, 255, 255, 0.08)),
        0 20px 50px rgba(0, 0, 0, 0.45),
        0 0 80px color-mix(in srgb, var(--rs-c1) 18%, transparent);
    }

.rise-stack__product-preview__shot-frame .rise-stack__product-preview__img {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      object-fit: contain;
      object-position: center center;
      max-width: none;
    }

.rise-stack__mock-k {
      margin: 0 0 0.35rem;
      font-size: 0.58rem;
      font-weight: 800;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: rgba(148, 163, 184, 0.85);
    }

.rise-stack__mock-job {
      display: flex;
      align-items: stretch;
      gap: 0.45rem;
      padding: 0.35rem 0.4rem;
      border-radius: 0.35rem;
      background: rgba(15, 23, 42, 0.45);
      border: 1px solid rgba(148, 163, 184, 0.1);
      margin-bottom: 0.35rem;
    }

.rise-stack__mock-job:last-child {
      margin-bottom: 0;
    }

.rise-stack__mock-job__rail {
      width: 3px;
      border-radius: 2px;
      background: linear-gradient(180deg, var(--rs-c1), var(--rs-c2));
      flex-shrink: 0;
    }

.rise-stack__mock-job__lines {
      flex: 1;
      min-width: 0;
      display: flex;
      flex-direction: column;
      gap: 0.22rem;
      justify-content: center;
    }

.rise-stack__mock-job__lines i {
      display: block;
      height: 0.28rem;
      border-radius: 2px;
      background: rgba(226, 232, 240, 0.12);
    }

.rise-stack__mock-job__lines i:nth-child(1) {
      width: 88%;
    }

.rise-stack__mock-job__lines i:nth-child(2) {
      width: 62%;
    }

.rise-stack__mock-job__lines i:nth-child(3) {
      width: 44%;
    }

.rise-stack__mock-tag {
      align-self: center;
      font-size: 0.52rem;
      font-weight: 850;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      padding: 0.12rem 0.32rem;
      border-radius: 999px;
      border: 1px solid color-mix(in srgb, var(--rs-c1) 42%, transparent);
      color: rgba(248, 250, 252, 0.78);
      flex-shrink: 0;
    }

.rise-stack__product-preview__canvas--split {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
      gap: 0.45rem;
      align-items: stretch;
    }

@media (max-width: 520px) {
      .rise-stack__product-preview__canvas--split {
        grid-template-columns: 1fr;
      }
    }

.rise-stack__mock-policy {
      padding: 0.4rem 0.45rem;
      border-radius: 0.35rem;
      background: rgba(15, 23, 42, 0.5);
      border: 1px solid rgba(52, 211, 153, 0.18);
    }

.rise-stack__mock-lines {
      display: flex;
      flex-direction: column;
      gap: 0.22rem;
      margin-bottom: 0.4rem;
    }

.rise-stack__mock-lines i {
      display: block;
      height: 0.26rem;
      border-radius: 2px;
      background: rgba(226, 232, 240, 0.1);
    }

.rise-stack__mock-lines i:nth-child(1) {
      width: 100%;
    }

.rise-stack__mock-lines i:nth-child(2) {
      width: 78%;
    }

.rise-stack__mock-lines i:nth-child(3) {
      width: 56%;
    }

.rise-stack__mock-pill {
      display: inline-block;
      font-size: 0.52rem;
      font-weight: 850;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      padding: 0.15rem 0.4rem;
      border-radius: 0.25rem;
      background: rgba(52, 211, 153, 0.14);
      color: rgba(167, 243, 208, 0.95);
      border: 1px solid rgba(52, 211, 153, 0.28);
    }

.rise-stack__mock-chart {
      padding: 0.4rem 0.45rem;
      border-radius: 0.35rem;
      background: rgba(2, 6, 23, 0.55);
      border: 1px solid rgba(148, 163, 184, 0.12);
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }

.rise-stack__mock-candles {
      display: flex;
      align-items: flex-end;
      justify-content: space-between;
      gap: 0.18rem;
      height: 2.6rem;
      padding: 0.15rem 0.05rem 0;
    }

.rise-stack__mock-candles span {
      flex: 1;
      max-width: 0.55rem;
      margin: 0 auto;
      border-radius: 2px;
      background: linear-gradient(180deg, color-mix(in srgb, var(--rs-c1) 55%, transparent), rgba(148, 163, 184, 0.25));
      opacity: 0.85;
    }

.rise-stack__mock-candles span:nth-child(1) {
      height: 38%;
    }

.rise-stack__mock-candles span:nth-child(2) {
      height: 72%;
    }

.rise-stack__mock-candles span:nth-child(3) {
      height: 52%;
    }

.rise-stack__mock-candles span:nth-child(4) {
      height: 88%;
    }

.rise-stack__mock-candles span:nth-child(5) {
      height: 44%;
    }

.rise-stack__mock-outcomes {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 0.4rem;
      margin-bottom: 0.45rem;
    }

.rise-stack__mock-outcomes__opt {
      padding: 0.45rem 0.4rem;
      border-radius: 0.35rem;
      border: 1px dashed rgba(148, 163, 184, 0.28);
      background: rgba(15, 23, 42, 0.4);
      text-align: center;
    }

.rise-stack__mock-outcomes__opt span {
      display: block;
      font-size: 0.62rem;
      font-weight: 850;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: rgba(248, 250, 252, 0.88);
      margin-bottom: 0.2rem;
    }

.rise-stack__mock-outcomes__opt small {
      font-size: 0.62rem;
      color: rgba(148, 163, 184, 0.9);
    }

.rise-stack__mock-pool {
      font-size: 0.62rem;
      line-height: 1.35;
      color: rgba(226, 232, 240, 0.55);
      text-align: center;
      padding: 0.35rem;
      border-radius: 0.35rem;
      background: rgba(129, 140, 248, 0.08);
      border: 1px solid rgba(129, 140, 248, 0.2);
    }

.rise-stack__mock-event {
      display: flex;
      align-items: center;
      gap: 0.45rem;
      padding: 0.4rem 0.45rem;
      border-radius: 0.35rem;
      background: rgba(15, 23, 42, 0.45);
      border: 1px solid rgba(251, 113, 133, 0.22);
      margin-bottom: 0.4rem;
    }

.rise-stack__mock-event__badge {
      flex-shrink: 0;
      width: 2.1rem;
      height: 2.1rem;
      border-radius: 0.35rem;
      background: linear-gradient(135deg, var(--rs-c1), var(--rs-c2));
      opacity: 0.55;
    }

.rise-stack__mock-event__lines {
      flex: 1;
      min-width: 0;
      display: flex;
      flex-direction: column;
      gap: 0.22rem;
    }

.rise-stack__mock-event__lines i {
      display: block;
      height: 0.28rem;
      border-radius: 2px;
      background: rgba(226, 232, 240, 0.12);
    }

.rise-stack__mock-event__lines i:nth-child(1) {
      width: 55%;
    }

.rise-stack__mock-event__lines i:nth-child(2) {
      width: 80%;
    }

.rise-stack__mock-feed {
      display: flex;
      align-items: center;
      gap: 0.35rem;
      padding: 0.32rem 0.4rem;
      border-radius: 0.3rem;
      background: rgba(2, 6, 23, 0.55);
      border: 1px solid rgba(148, 163, 184, 0.12);
    }

.rise-stack__mock-feed__ico {
      width: 1.35rem;
      height: 1.35rem;
      border-radius: 0.25rem;
      background: rgba(251, 146, 60, 0.18);
      flex-shrink: 0;
    }

.rise-stack__mock-feed__txt {
      flex: 1;
      min-width: 0;
    }

.rise-stack__mock-feed__txt i {
      display: block;
      height: 0.26rem;
      border-radius: 2px;
      background: rgba(226, 232, 240, 0.1);
      margin-bottom: 0.18rem;
    }

.rise-stack__mock-feed__txt i:last-child {
      margin-bottom: 0;
      width: 70%;
    }

.rise-stack__mock-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 0.35rem;
    }

.rise-stack__mock-grid span {
      aspect-ratio: 1;
      border-radius: 0.35rem;
      background: linear-gradient(145deg, color-mix(in srgb, var(--rs-c1) 22%, transparent), rgba(15, 23, 42, 0.35));
      border: 1px solid rgba(244, 114, 182, 0.15);
    }

.rise-stack__product-sheet__body {
      min-width: 0;
    }

.rise-stack__product-sheet__body--stack {
      display: flex;
      flex-direction: column;
      gap: clamp(0.38rem, 1.15vw, 0.55rem);
      align-items: stretch;
      min-width: 0;
    }

.rise-stack__product-row {
      display: flex;
      gap: 0.55rem;
      align-items: flex-start;
      padding: 0.55rem 0.55rem 0.55rem 0.58rem;
      border-radius: 0.48rem;
      border: 1px solid color-mix(in srgb, var(--rs-c1) 30%, rgba(255, 255, 255, 0.08));
      border-left: 3px solid color-mix(in srgb, var(--rs-c1) 78%, var(--rs-c2));
      background: linear-gradient(
        135deg,
        color-mix(in srgb, var(--rs-c1) 12%, rgba(15, 23, 42, 0.52)) 0%,
        rgba(2, 6, 23, 0.38) 100%
      );
      box-shadow:
        0 1px 0 color-mix(in srgb, var(--rs-c1) 12%, transparent) inset,
        0 8px 26px rgba(0, 0, 0, 0.22);
    }

.rise-stack__product-row__icon {
      flex-shrink: 0;
      width: 1.88rem;
      height: 1.88rem;
      border-radius: 0.44rem;
      display: grid;
      place-items: center;
      background: color-mix(in srgb, var(--rs-c1) 18%, rgba(2, 6, 23, 0.35));
      color: var(--rs-c1);
      border: 1px solid color-mix(in srgb, var(--rs-c1) 32%, rgba(255, 255, 255, 0.08));
      box-shadow: 0 6px 18px color-mix(in srgb, var(--rs-c1) 24%, transparent);
    }

.rise-stack__product-row__icon svg {
      width: 0.98rem;
      height: 0.98rem;
    }

.rise-stack__product-row__text {
      min-width: 0;
    }

.rise-stack__product-row__h {
      margin: 0 0 0.22rem;
      font-size: 0.72rem;
      font-weight: 850;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: color-mix(in srgb, var(--rs-c1) 22%, rgba(248, 250, 252, 0.99));
    }

.rise-stack__product-row__p {
      margin: 0;
      font-size: 0.86rem;
      line-height: 1.5;
      font-weight: 480;
      color: rgba(226, 232, 240, 0.94);
    }

.rise-stack__product-sheet__body--stack .rise-stack__product-row {
      flex-direction: row;
      align-items: flex-start;
      gap: 0.55rem;
      padding: 0.55rem 0.55rem 0.55rem 0.58rem;
      height: auto;
      box-sizing: border-box;
      border: 1px solid color-mix(in srgb, var(--rs-c1) 30%, rgba(255, 255, 255, 0.08));
      border-left: 3px solid color-mix(in srgb, var(--rs-c1) 78%, var(--rs-c2));
    }

.rise-stack__product-sheet__foot {
      margin-top: 0;
      padding-top: clamp(0.45rem, 1.25vw, 0.68rem);
      border-top: 1px solid color-mix(in srgb, var(--hero-border) 85%, var(--rs-c1));
    }

.rise-stack__product-sheet__foot .rise-stack__reveal-cta {
      margin-top: 0;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0.58rem 1.08rem;
      border-radius: 0.55rem;
      font-size: 0.72rem;
      font-weight: 850;
      letter-spacing: 0.17em;
      text-transform: uppercase;
      text-decoration: none;
      color: #f8fafc !important;
      border: 1px solid color-mix(in srgb, var(--rs-c1) 55%, rgba(255, 255, 255, 0.2));
      border-bottom: 1px solid color-mix(in srgb, var(--rs-c1) 55%, rgba(255, 255, 255, 0.2));
      padding-bottom: 0.58rem;
      background: linear-gradient(
        165deg,
        color-mix(in srgb, var(--rs-c1) 42%, rgba(15, 23, 42, 0.9)) 0%,
        color-mix(in srgb, var(--rs-c1) 22%, rgba(2, 6, 23, 0.95)) 100%
      );
      box-shadow:
        0 1px 0 color-mix(in srgb, var(--rs-c1) 35%, transparent) inset,
        0 10px 32px color-mix(in srgb, var(--rs-c1) 28%, rgba(0, 0, 0, 0.45));
      transition:
        color 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s ease;
    }

.rise-stack__product-sheet__foot .rise-stack__reveal-cta:hover {
      color: #ffffff !important;
      border-color: color-mix(in srgb, var(--rs-c1) 75%, rgba(255, 255, 255, 0.35));
      border-bottom-color: color-mix(in srgb, var(--rs-c1) 75%, rgba(255, 255, 255, 0.35));
      transform: translateY(-1px);
      box-shadow:
        0 1px 0 color-mix(in srgb, var(--rs-c1) 45%, transparent) inset,
        0 14px 40px color-mix(in srgb, var(--rs-c1) 38%, rgba(0, 0, 0, 0.5));
    }

.rise-stack__product-sheet__foot .rise-stack__reveal-cta:focus-visible {
      outline: 2px solid color-mix(in srgb, var(--rs-c1) 85%, #ffffff);
      outline-offset: 3px;
    }

.rise-stack__reveal-cta {
      display: inline-flex;
      margin-top: clamp(0.45rem, 1.35vw, 0.65rem);
      font-size: 0.56rem;
      font-weight: 800;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      text-decoration: none;
      color: var(--rs-c1);
      border-bottom: 1px solid color-mix(in srgb, var(--rs-c1) 48%, transparent);
      padding-bottom: 0.1rem;
      transition: color 0.2s ease, border-color 0.2s ease;
    }

.rise-stack__reveal-cta:hover {
      color: #f8fafc;
      border-bottom-color: rgba(248, 250, 252, 0.45);
    }

.rise-stack__detail-panel--suite {
      --rs-c1: #a78bfa;
      --rs-c2: #38bdf8;
    }

.rise-stack__detail-panel--trade {
      --rs-c1: #34d399;
      --rs-c2: #2dd4bf;
    }

.rise-stack__detail-panel--predict {
      --rs-c1: #818cf8;
      --rs-c2: #fbbf24;
    }

.rise-stack__detail-panel--bet {
      --rs-c1: #fb7185;
      --rs-c2: #fb923c;
    }

.rise-stack__detail-panel--merch {
      --rs-c1: #f0d875;
      --rs-c2: #f472b6;
    }

.product-deep {
      --pd-accent: #38bdf8;
      --pd-accent-soft: rgba(56, 189, 248, 0.2);
      --pd-glow-a: rgba(139, 92, 246, 0.35);
      --pd-glow-b: rgba(56, 189, 248, 0.28);
      scroll-margin-top: calc(var(--header-offset) + 0.75rem);
      position: relative;
      isolation: isolate;
      overflow: hidden;
      border-top: 1px solid var(--hero-border);
      padding: clamp(2rem, 5vw, 3.25rem) 1.25rem;
    }

.product-deep::before,
    .product-deep::after {
      content: "";
      position: absolute;
      width: min(72vw, 420px);
      height: min(72vw, 420px);
      border-radius: 50%;
      filter: blur(72px);
      opacity: 0.42;
      pointer-events: none;
      z-index: 0;
      animation: pd-float 14s ease-in-out infinite;
    }

.product-deep::before {
      top: -18%;
      left: -12%;
      background: var(--pd-glow-a);
      animation-delay: -2s;
    }

.product-deep::after {
      bottom: -22%;
      right: -14%;
      background: var(--pd-glow-b);
      animation-delay: -5s;
    }

.product-deep--suite {
      --pd-accent: #a78bfa;
      --pd-accent-soft: rgba(167, 139, 250, 0.22);
      --pd-glow-a: rgba(167, 139, 250, 0.45);
      --pd-glow-b: rgba(56, 189, 248, 0.32);
    }

.product-deep--trade {
      --pd-accent: #34d399;
      --pd-accent-soft: rgba(52, 211, 153, 0.18);
      --pd-glow-a: rgba(16, 185, 129, 0.38);
      --pd-glow-b: rgba(45, 212, 191, 0.25);
    }

.product-deep--predict {
      --pd-accent: #818cf8;
      --pd-accent-soft: rgba(129, 140, 248, 0.22);
      --pd-glow-a: rgba(99, 102, 241, 0.42);
      --pd-glow-b: rgba(251, 191, 36, 0.18);
    }

.product-deep--bet {
      --pd-accent: #fb7185;
      --pd-accent-soft: rgba(251, 113, 133, 0.2);
      --pd-glow-a: rgba(251, 113, 133, 0.35);
      --pd-glow-b: rgba(251, 191, 36, 0.22);
    }

.product-deep--merch {
      --pd-accent: #f0d875;
      --pd-accent-soft: rgba(201, 162, 39, 0.28);
      --pd-glow-a: rgba(201, 162, 39, 0.38);
      --pd-glow-b: rgba(244, 114, 182, 0.15);
    }

.product-deep__inner {
      position: relative;
      z-index: 1;
      width: 100%;
      max-width: 52rem;
      margin: 0 auto;
      text-align: left;
    }

.product-deep--trade .product-deep__inner::before {
      content: "";
      position: absolute;
      inset: -4px;
      border-radius: 26px;
      background: linear-gradient(
        180deg,
        transparent 0%,
        rgba(52, 211, 153, 0.06) 48%,
        transparent 52%
      );
      animation: pd-scan 5s linear infinite;
      pointer-events: none;
      z-index: 0;
      opacity: 0.55;
    }

.product-deep__shell {
      position: relative;
      z-index: 1;
      border-radius: 22px;
      padding: clamp(1.35rem, 3.5vw, 2rem) clamp(1.15rem, 3vw, 1.75rem);
      background: linear-gradient(
        155deg,
        rgba(255, 255, 255, 0.07) 0%,
        rgba(255, 255, 255, 0.02) 42%,
        rgba(0, 0, 0, 0.12) 100%
      );
      border: 1px solid rgba(255, 255, 255, 0.1);
      backdrop-filter: blur(18px) saturate(1.25);
      box-shadow:
        0 0 0 1px rgba(0, 0, 0, 0.15) inset,
        0 24px 48px rgba(0, 0, 0, 0.28),
        0 0 80px var(--pd-accent-soft);
      transition:
        transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),
        box-shadow 0.45s ease,
        border-color 0.35s ease;
    }

.product-deep:hover .product-deep__shell {
      transform: translateY(-5px);
      border-color: color-mix(in srgb, var(--pd-accent) 35%, transparent);
      box-shadow:
        0 0 0 1px rgba(0, 0, 0, 0.12) inset,
        0 32px 64px rgba(0, 0, 0, 0.35),
        0 0 100px var(--pd-accent-soft);
    }

.product-deep__head {
      display: flex;
      align-items: center;
      gap: 1rem;
      margin-bottom: 1.1rem;
    }

.product-deep__head.story-bit--shown {
      animation: pd-head-in 0.65s cubic-bezier(0.22, 1, 0.36, 1) both;
    }

.product-deep__ico {
      flex-shrink: 0;
      width: 52px;
      height: 52px;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 14px;
      border: 1px solid color-mix(in srgb, var(--pd-accent) 40%, transparent);
      background: linear-gradient(145deg, var(--pd-accent-soft), rgba(0, 0, 0, 0.15));
      color: var(--text);
      box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);
      transition: transform 0.35s ease, box-shadow 0.35s ease;
    }

.product-deep:hover .product-deep__ico {
      transform: scale(1.06) rotate(-3deg);
      box-shadow: 0 12px 32px var(--pd-accent-soft);
    }

.product-deep__ico svg {
      width: 26px;
      height: 26px;
      display: block;
    }

.product-deep__title {
      font-size: clamp(1.2rem, 3vw, 1.55rem);
      font-weight: 800;
      margin: 0;
      letter-spacing: 0.03em;
      line-height: 1.15;
      color: var(--text);
      text-shadow: 0 0 36px var(--pd-accent-soft), 0 2px 16px rgba(0, 0, 0, 0.35);
    }

.product-deep__lead {
      margin: 0 0 1.25rem;
      font-size: 0.95rem;
      color: var(--text);
      line-height: 1.65;
    }

.product-deep__lead.story-bit--shown {
      animation: pd-head-in 0.55s 0.1s cubic-bezier(0.22, 1, 0.36, 1) both;
    }

.product-deep__cards {
      display: grid;
      grid-template-columns: 1fr;
      gap: 0.8rem;
      margin-bottom: 1.15rem;
    }

@media (min-width: 560px) {
      .product-deep__cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

@media (min-width: 900px) {
      .product-deep__cards--tri {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }
    }

.product-deep__card {
      position: relative;
      border-radius: 14px;
      padding: 1rem 1.05rem 1.05rem;
      background: rgba(0, 0, 0, 0.2);
      border: 1px solid rgba(255, 255, 255, 0.06);
      transition:
        transform 0.35s cubic-bezier(0.22, 1, 0.36, 1),
        border-color 0.3s ease,
        box-shadow 0.35s ease,
        background 0.3s ease;
    }

.product-deep__card:hover {
      transform: translateY(-4px);
      border-color: color-mix(in srgb, var(--pd-accent) 45%, transparent);
      box-shadow: 0 16px 36px rgba(0, 0, 0, 0.25), 0 0 40px var(--pd-accent-soft);
      background: rgba(0, 0, 0, 0.28);
    }

.product-deep__card.story-bit--shown {
      animation: pd-card-in 0.55s cubic-bezier(0.22, 1, 0.36, 1) both;
    }

.product-deep__cards .product-deep__card:nth-child(1).story-bit--shown {
      animation-delay: 0.06s;
    }

.product-deep__cards .product-deep__card:nth-child(2).story-bit--shown {
      animation-delay: 0.12s;
    }

.product-deep__cards .product-deep__card:nth-child(3).story-bit--shown {
      animation-delay: 0.18s;
    }

.product-deep__cards .product-deep__card:nth-child(4).story-bit--shown {
      animation-delay: 0.24s;
    }

.product-deep__cards .product-deep__card:nth-child(5).story-bit--shown {
      animation-delay: 0.3s;
    }

.product-deep__cards .product-deep__card:nth-child(6).story-bit--shown {
      animation-delay: 0.36s;
    }

.product-deep__card-label {
      display: inline-block;
      font-size: 0.68rem;
      font-weight: 800;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: var(--pd-accent);
      margin-bottom: 0.45rem;
    }

.product-deep__card-text {
      margin: 0;
      font-size: 0.84rem;
      color: var(--text-muted);
      line-height: 1.52;
    }

.product-deep__note {
      margin: 0;
      font-size: 0.82rem;
      color: var(--text-muted);
      line-height: 1.55;
      padding-top: 0.35rem;
      border-top: 1px dashed rgba(255, 255, 255, 0.1);
    }

.product-deep__note.story-bit--shown {
      animation: pd-head-in 0.6s 0.35s cubic-bezier(0.22, 1, 0.36, 1) both;
    }

.product-deep.product-deep--story:not(.product-deep--complete) .product-deep__shell .product-deep__head:not(.story-bit--shown),
    .product-deep.product-deep--story:not(.product-deep--complete) .product-deep__shell .product-deep__lead:not(.story-bit--shown),
    .product-deep.product-deep--story:not(.product-deep--complete) .product-deep__shell .product-deep__cards .product-deep__card:not(.story-bit--shown),
    .product-deep.product-deep--story:not(.product-deep--complete) .product-deep__shell .product-deep__note:not(.story-bit--shown) {
      opacity: 0;
      transform: translateY(22px);
      filter: blur(8px);
      pointer-events: none;
    }

.product-deep.product-deep--story.product-deep--ahead:not(.product-deep--complete) .product-deep__shell .product-deep__lead:not(.story-bit--shown),
    .product-deep.product-deep--story.product-deep--ahead:not(.product-deep--complete) .product-deep__shell .product-deep__cards .product-deep__card:not(.story-bit--shown),
    .product-deep.product-deep--story.product-deep--ahead:not(.product-deep--complete) .product-deep__shell .product-deep__note:not(.story-bit--shown) {
      opacity: 0;
      transform: translateY(28px);
      filter: blur(10px);
    }

.product-deep.product-deep--story:not(.product-deep--complete) .product-deep__shell .story-bit--shown {
      opacity: 1;
      transform: none;
      filter: none;
      pointer-events: auto;
    }

.product-deep.product-deep--complete .product-deep__shell .product-deep__head,
    .product-deep.product-deep--complete .product-deep__shell .product-deep__lead,
    .product-deep.product-deep--complete .product-deep__shell .product-deep__cards .product-deep__card,
    .product-deep.product-deep--complete .product-deep__shell .product-deep__note {
      opacity: 1 !important;
      transform: none !important;
      filter: none !important;
      pointer-events: auto !important;
    }

@media (prefers-reduced-motion: reduce) {
      .product-deep::before,
      .product-deep::after {
        animation: none !important;
      }
      .product-deep--trade .product-deep__inner::before {
        display: none;
      }
      .product-deep:hover .product-deep__shell {
        transform: none;
      }
      .product-deep:hover .product-deep__ico {
        transform: none;
      }
      .product-deep__card:hover {
        transform: none;
      }
      .product-deep__head,
      .product-deep__lead,
      .product-deep__note,
      .product-deep__card {
        opacity: 1 !important;
        transform: none !important;
        filter: none !important;
        animation: none !important;
      }
    }

.rise-stack__studio-iframe-host {
      position: absolute;
      inset: 0;
      overflow: hidden;
      background: var(--bg-page);
      transform: translateZ(0);
    }

.rise-stack__studio-iframe {
      width: 100%;
      height: 100%;
      border: 0;
      display: block;
    }

.rise-hub-hero__visual .rise-stack__product-preview__shot-frame {
      height: clamp(200px, 32vw, 340px);
      max-height: min(42vh, 380px);
      min-height: 200px;
      margin-top: 0;
      border-radius: 0 0 0.55rem 0.55rem;
    }

.suite-hub__preview-stage .rise-stack__product-preview__shot-frame {
      height: auto;
      max-height: none;
      min-height: 0;
      aspect-ratio: 16 / 9;
      margin-top: 0;
      border-radius: 0 0 0.55rem 0.55rem;
    }

@media (max-width: 720px) {
      .suite-hub__preview-stage {
        margin-top: -0.1rem;
      }
      .suite-hub__preview-stage .rise-stack__product-preview__shot-frame {
        aspect-ratio: 16 / 10;
      }
    }

.product-showcase-strip {
      margin: 0.95rem 0 1.2rem;
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 0.62rem;
    }

@media (max-width: 900px) {
      .product-showcase-strip {
        grid-template-columns: minmax(0, 1fr);
      }
    }

.product-showcase-strip__card {
      border: 1px solid color-mix(in srgb, var(--hero-border) 72%, transparent);
      border-radius: 0.82rem;
      padding: 0.78rem 0.86rem;
      background: linear-gradient(164deg, color-mix(in srgb, var(--bg-elevated) 90%, transparent), color-mix(in srgb, var(--bg-page) 84%, transparent));
      box-shadow: 0 12px 36px rgba(0, 0, 0, 0.22);
    }

.product-showcase-strip__kicker {
      margin: 0 0 0.32rem;
      font-size: 0.66rem;
      font-weight: 800;
      letter-spacing: 0.11em;
      text-transform: uppercase;
      color: var(--text-muted);
    }

.product-showcase-strip__text {
      margin: 0;
      font-size: 0.83rem;
      line-height: 1.52;
      color: var(--text);
      font-weight: 620;
    }

.portfolio-clone__head { display: grid; gap: 0.65rem; margin-bottom: clamp(1.5rem, 4vw, 3rem); }

.portfolio-clone__kicker {
          margin: 0;
          font-size: var(--pf-kicker);
          text-transform: uppercase;
          letter-spacing: var(--pf-kicker-spacing);
          color: rgba(255, 255, 255, 0.4);
          font-weight: 800;
        }

.portfolio-clone__title {
          margin: 0;
          font-size: var(--pf-title);
          line-height: var(--pf-title-lh);
          letter-spacing: var(--pf-title-ls);
          text-transform: uppercase;
          font-weight: 800;
          color: var(--text);
        }

.portfolio-clone__list { display: grid; gap: clamp(2rem, 5vw, 4rem); }

.portfolio-item { cursor: default; display: grid; gap: 1.25rem; align-items: center; opacity: 0; transform: translateY(56px); transition: opacity .7s cubic-bezier(.22,1,.36,1), transform .9s cubic-bezier(.22,1,.36,1); }

.portfolio-item.is-visible { opacity: 1; transform: translateY(0); }

@media (min-width: 1000px) { .portfolio-item { grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); gap: clamp(1.4rem, 2.4vw, 2rem); } .portfolio-item:nth-child(even) .portfolio-item__media { order: 2; } .portfolio-item:nth-child(even) .portfolio-item__copy { order: 1; } }

.portfolio-item__media {
          position: relative;
          cursor: pointer;
          border-radius: 1.2rem;
          overflow: hidden;
          border: 1px solid color-mix(in srgb, var(--hero-border) 72%, transparent);
          box-shadow: 0 26px 68px rgba(0,0,0,.34);
          background: linear-gradient(180deg, #111827, #0b1020 35%, #070b15);
        }

.portfolio-item__window {
          position: relative;
          border-radius: 1.2rem;
          overflow: hidden;
          border: 1px solid rgba(255,255,255,.08);
          background: rgba(6, 10, 20, 0.92);
        }

.portfolio-item__window-chrome {
          height: 34px;
          display: flex;
          align-items: center;
          gap: .42rem;
          padding: 0 .8rem;
          border-bottom: 1px solid rgba(255,255,255,.08);
          background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.02));
        }

.portfolio-item__window-dot {
          width: 10px;
          height: 10px;
          border-radius: 999px;
          box-shadow: 0 0 0 1px rgba(0,0,0,.22) inset;
        }

.portfolio-item__window-dot--red { background: #ff5f57; }

.portfolio-item__window-dot--amber { background: #febc2e; }

.portfolio-item__window-dot--green { background: #28c840; }

.portfolio-item__window-canvas {
          aspect-ratio: 16/10;
          display: grid;
          grid-template: 1fr / 1fr;
          place-items: center;
          padding: .85rem;
          background: radial-gradient(circle at 20% 0%, rgba(148,163,184,.09), transparent 42%);
        }

.portfolio-item__img { width: 100%; height: 100%; display: block; object-fit: contain; transition: transform .9s ease; grid-area: 1 / 1; }

.portfolio-item__preview--light { display: none !important; }

.portfolio-item__preview--dark { display: block !important; }

.portfolio-item:hover .portfolio-item__img { transform: scale(1.04); }

.portfolio-item__copy { display: grid; gap: 0.55rem; transition: transform .45s cubic-bezier(.22,1,.36,1); }

.portfolio-item:hover .portfolio-item__copy { transform: translateX(6px); }

.portfolio-item__meta {
          margin: 0;
          display: inline-flex;
          align-items: center;
          gap: 0.55rem;
          font-size: var(--pf-kicker);
          text-transform: uppercase;
          letter-spacing: var(--pf-kicker-spacing);
          color: rgba(255, 255, 255, 0.35);
          font-weight: 760;
        }

.portfolio-item__meta::after { content: ""; width: 36px; height: 1px; background: rgba(255,255,255,.18); }

.portfolio-item__title {
          margin: 0;
          font-size: var(--pf-title);
          line-height: var(--pf-title-lh);
          letter-spacing: var(--pf-title-ls);
          font-weight: 800;
          color: var(--text);
        }

.portfolio-item__cta {
          margin-top: 0.25rem;
          display: inline-flex;
          align-items: center;
          gap: 0.45rem;
          font-size: var(--pf-cta);
          font-weight: 760;
          color: var(--text);
          background: transparent;
          border: 0;
          padding: 0;
          cursor: pointer;
          text-transform: uppercase;
          letter-spacing: var(--pf-cta-spacing);
        }

.portfolio-item__cta svg { width: 20px; height: 20px; opacity: .7; transition: transform .2s ease; }

.portfolio-item:hover .portfolio-item__cta svg { transform: translate(3px,-3px); }

/* Same type scale as .portfolio-clone (Platform Tools) */

.portfolio-modal.is-open {
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: flex-start;
          box-sizing: border-box;
          padding-top: clamp(5rem, 14vh, 9rem);
          padding-left: clamp(0.65rem, 2.2vw, 1.25rem);
          padding-right: clamp(0.65rem, 2.2vw, 1.25rem);
          padding-bottom: clamp(1.25rem, 4vh, 2.5rem);
          overflow-y: auto;
          -webkit-overflow-scrolling: touch;
        }

.portfolio-modal.is-open.is-active { opacity: 1; }

.portfolio-modal__backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.94); backdrop-filter: blur(10px); opacity: 0; transition: opacity .3s ease; z-index: 0; }

.portfolio-modal.is-active .portfolio-modal__backdrop { opacity: 1; }

.portfolio-modal__panel {
          position: relative;
          z-index: 1;
          display: flex;
          flex-direction: column;
          max-width: min(1040px, 94vw);
          max-height: min(98vh, 1180px);
          height: auto;
          min-height: 0;
          margin: 0 auto;
          border-radius: 1.35rem;
          overflow: auto;
          border: 1px solid rgba(255,255,255,.1);
          background: #080808;
          box-shadow: 0 42px 110px rgba(0,0,0,.55);
          transform: translateY(42px) scale(.985);
          opacity: 0;
          transition: transform .46s cubic-bezier(.22,1,.36,1), opacity .28s ease;
        }

.portfolio-modal.is-active .portfolio-modal__panel { transform: translateY(0) scale(1); opacity: 1; }

.portfolio-modal__close {
          position: absolute;
          top: 0.65rem;
          right: 0.65rem;
          width: 40px;
          height: 40px;
          margin: 0;
          border-radius: 999px;
          border: 1px solid rgba(255, 255, 255, 0.14);
          background: rgba(10, 14, 26, 0.88);
          color: #ffffff;
          font-size: 1.35rem;
          line-height: 1;
          cursor: pointer;
          z-index: 5;
          box-shadow: 0 4px 18px rgba(0, 0, 0, 0.55);
          transition: background 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
        }

.portfolio-modal__close:hover {
          background: rgba(15, 23, 42, 0.95);
          border-color: rgba(255, 255, 255, 0.22);
        }

.portfolio-modal__close:focus-visible {
          outline: 2px solid rgba(255, 255, 255, 0.45);
          outline-offset: 2px;
        }

.portfolio-modal__hero-wrap {
          flex-shrink: 0;
          display: flex;
          flex-direction: column;
          width: 100%;
          max-height: min(58vh, 580px);
          min-height: 0;
          padding: 0.35rem clamp(0.65rem, 2vw, 1rem) 0;
          box-sizing: border-box;
        }

.portfolio-modal__hero-top {
          position: relative;
          z-index: 2;
          display: flex;
          flex-wrap: wrap;
          align-items: center;
          justify-content: space-between;
          gap: 0.45rem 0.75rem;
          padding-bottom: 0.4rem;
          flex-shrink: 0;
        }

.portfolio-modal__hero-hint {
          margin: 0;
          font-size: 0.58rem;
          letter-spacing: 0.05em;
          text-transform: uppercase;
          color: rgba(255, 255, 255, 0.4);
          font-weight: 650;
        }

.portfolio-modal__hero-toolbar {
          display: inline-flex;
          align-items: center;
          gap: 0.2rem;
          padding: 0.18rem 0.35rem;
          border-radius: 999px;
          border: 1px solid rgba(255, 255, 255, 0.14);
          background: rgba(10, 14, 26, 0.94);
          backdrop-filter: blur(8px);
          box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35);
        }

.portfolio-modal__hero-zoom {
          margin: 0;
          width: 28px;
          height: 28px;
          display: inline-flex;
          align-items: center;
          justify-content: center;
          border-radius: 8px;
          border: 1px solid rgba(255, 255, 255, 0.12);
          background: rgba(255, 255, 255, 0.06);
          color: #fff;
          font-size: 1.05rem;
          line-height: 1;
          cursor: pointer;
          transition: background 0.15s ease;
        }

.portfolio-modal__hero-zoom:hover {
          background: rgba(255, 255, 255, 0.12);
        }

.portfolio-modal__hero-zoom:focus-visible {
          outline: 2px solid rgba(255, 255, 255, 0.45);
          outline-offset: 2px;
        }

.portfolio-modal__hero-zoom--fit {
          width: auto;
          min-width: 36px;
          padding: 0 0.35rem;
          font-size: 0.56rem;
          font-weight: 800;
          letter-spacing: 0.06em;
          text-transform: uppercase;
        }

.portfolio-modal__hero-zoom-pct {
          font-size: 0.56rem;
          font-weight: 760;
          letter-spacing: 0.06em;
          color: rgba(255, 255, 255, 0.55);
          min-width: 2.6rem;
          text-align: center;
        }

.portfolio-modal__hero-scroll {
          flex: 1;
          min-height: 0;
          overflow: auto;
          -webkit-overflow-scrolling: touch;
          overscroll-behavior: contain;
          border-radius: 0.42rem;
        }

.portfolio-modal__hero-scroll.is-zoomed {
          cursor: grab;
        }

.portfolio-modal__hero-scroll.is-zoomed:active {
          cursor: grabbing;
        }

.portfolio-modal__hero {
          display: block;
          width: 100%;
          height: auto;
          max-width: none;
          margin: 0;
          padding: 0;
          object-fit: contain;
          object-position: center top;
          border-radius: 0.42rem;
          vertical-align: top;
          transition: width 0.12s ease;
        }

.portfolio-modal__body {
          padding: clamp(0.55rem, 1.5vw, 0.95rem) clamp(0.75rem, 1.8vw, 1.15rem) clamp(0.75rem, 1.6vw, 1.05rem);
          display: grid;
          gap: 0.55rem;
        }

@media (min-width: 1000px) {
          .portfolio-modal__body {
            grid-template-columns: minmax(0, 1.5fr) minmax(0, 0.8fr);
            gap: 0.85rem;
          }
        }

.portfolio-modal__cat {
          margin: 0;
          font-size: var(--pf-kicker);
          text-transform: uppercase;
          letter-spacing: var(--pf-kicker-spacing);
          color: rgba(255, 255, 255, 0.36);
          font-weight: 760;
        }

.portfolio-modal__title {
          margin: 0.2rem 0 0.38rem;
          font-size: var(--pf-title);
          line-height: var(--pf-title-lh);
          letter-spacing: var(--pf-title-ls);
          font-weight: 800;
          color: var(--text);
        }

.portfolio-modal__tags {
          margin-top: 0.38rem;
          display: flex;
          flex-wrap: wrap;
          gap: 0.3rem;
        }

.portfolio-modal__tags span {
          border-radius: 999px;
          border: 1px solid rgba(255, 255, 255, 0.15);
          padding: 0.18rem 0.48rem;
          font-size: var(--pf-tag);
          text-transform: uppercase;
          letter-spacing: var(--pf-tag-spacing);
          color: rgba(255, 255, 255, 0.62);
          font-weight: 650;
        }

.portfolio-modal__stats {
          display: grid;
          gap: 0.4rem;
          align-content: start;
        }

.portfolio-modal__stat {
          border: 1px solid rgba(255, 255, 255, 0.1);
          border-radius: 0.65rem;
          padding: 0.45rem 0.52rem;
          background: rgba(255, 255, 255, 0.03);
        }

.portfolio-modal__stat-value {
          margin: 0;
          font-size: var(--pf-stat-value);
          line-height: 1.15;
          font-weight: 800;
          letter-spacing: var(--pf-title-ls);
          color: var(--text);
        }

.portfolio-modal__stat-label {
          margin: 0.18rem 0 0;
          font-size: var(--pf-stat-label);
          text-transform: uppercase;
          letter-spacing: var(--pf-stat-label-spacing);
          color: rgba(255, 255, 255, 0.46);
          font-weight: 650;
        }

.portfolio-modal__launch {
          margin-top: 0.35rem;
          display: inline-flex;
          align-items: center;
          justify-content: center;
          text-decoration: none;
          width: 100%;
          padding: 0.52rem 0.75rem;
          border-radius: 999px;
          border: 1px solid rgba(255, 255, 255, 0.12);
          background: #fff;
          color: #000;
          font-size: var(--pf-cta);
          text-transform: uppercase;
          letter-spacing: var(--pf-cta-spacing);
          font-weight: 800;
          transition: transform 0.2s ease;
        }

.portfolio-modal__launch:hover { transform: translateY(-2px); }

.portfolio-modal.is-open,
        .portfolio-modal__panel {
          scrollbar-width: none;
          -ms-overflow-style: none;
        }

.portfolio-modal.is-open::-webkit-scrollbar,
        .portfolio-modal__panel::-webkit-scrollbar {
          width: 0;
          height: 0;
          display: none;
        }

@media (prefers-reduced-motion: reduce) {
          .portfolio-item,
          .portfolio-item__copy,
          .portfolio-item__img,
          .portfolio-modal,
          .portfolio-modal__backdrop,
          .portfolio-modal__panel,
          .portfolio-modal__launch {
            transition: none !important;
            animation: none !important;
          }
          .portfolio-item { opacity: 1; transform: none; }
        }
