.animate-on-scroll, .reveal, [class*="animate"] { opacity: 1 !important; transform: none !important; visibility: visible !important; }
    :root {
      --navy: #0B1D36;
      --navy-2: #0C2844;
      --navy-3: #0D3555;
      --dark-teal: #0A4D5E;
      --teal: #00C2B2;
      --gold: #D4AF37;
      --white: #FFFFFF;
      --warm: #F4F2EE;
      --light: #F8F9FA;
      --green: #22C55E;
      --purple: #A78BFA;
      --red: #EF4444;
      --gray: #6B7280;
      --gray-light: #9BA3AE;
      --dark: #111827;
      --font-head: 'DM Sans', sans-serif;
      --font-body: 'Open Sans', sans-serif;
    }

    .gradient-radial {
      background: radial-gradient(ellipse 70% 80% at 50% 45%,
          #0B1D36 0%,
          #0C2844 25%,
          #0D3555 45%,
          #0A4D5E 68%,
          #088F8A 100%);
    }

    .container {
      width: 100%;
      max-width: var(--container-max);
      margin: 0 auto;
      padding: 0 var(--container-padding);
    }

    .container--wide {
      max-width: var(--container-wide);
    }

    .container--narrow {
      max-width: var(--container-narrow);
    }

    #router {
      position: relative;
      color: var(--text-white);
      line-height: 1.7;
    }

    #router p {
      color: rgba(255, 255, 255, 0.7);
    }

    *,
    *::before,
    *::after {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
    }

    html {
      scroll-behavior: auto;
    }

    body {
      font-family: var(--font-body);
      background: var(--navy);
      color: var(--white);
      overflow-x: hidden;
      -webkit-font-smoothing: antialiased;
    }

    /* Scroll reveal styles */
    .reveal {
      opacity: 0;
      transform: translateY(30px);
      transition: all .3s ease .9s forwards;
    }

    .reveal.active {
      opacity: 1;
      transform: translateY(0);
    }

    .component-frame {
      display: block;
      width: 100%;
      border: 0;
      background: transparent;
      overflow: hidden;
    }

    .component-frame--nav {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 1000;
      height: 82px;
    }

    .component-frame--pricing {
      min-height: 520px;
    }

    .component-frame--footer {
      min-height: 300px;
    }

    .component-shell {
      position: relative;
      width: 100%;
    }

    .component-shell--pricing,
    .component-shell--footer {
      overflow: hidden;
    }

    .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
    }

    .skip-link {
      position: absolute;
      top: -40px;
      left: 1rem;
      z-index: 1100;
      padding: 0.5rem 1rem;
      background: var(--teal);
      color: var(--navy);
      font-family: var(--font-head);
      font-size: 0.875rem;
      font-weight: 700;
      text-decoration: none;
      transition: top .15s ease;
    }

    .skip-link:focus {
      top: 1rem;
    }

    .component-shell--pricing::before {
      content: none;
    }


    .nav {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 1000;
      background: rgba(11, 29, 54, 0.92);
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);
      border-bottom: 1px solid rgba(0, 194, 178, 0.12);
      transition: all var(--transition-base);
    }

    .nav.scrolled {
      background: rgba(11, 29, 54, 0.97);
      backdrop-filter: blur(16px);
      -webkit-backdrop-filter: blur(16px);
      box-shadow: 0 2px 20px rgba(0, 0, 0, 0.3);
      border-bottom-color: rgba(0, 194, 178, 0.08);
    }

    .nav__inner {
      max-width: var(--container-wide);
      margin: 0 auto;
      padding: 0 var(--container-padding);
      display: flex;
      align-items: center;
      justify-content: space-between;
      height: 82px;
    }

    .nav__logo {
      display: flex;
      align-items: center;
      gap: 12px;
      text-decoration: none;
      height: 82px;
      font-size: 26px;
      white-space: nowrap;
      flex-shrink: 0;
    }

    .nav__dot {
      width: 6px;
      height: 6px;
      border-radius: 50%;
      display: inline-block;
      flex-shrink: 0;
    }


    .hero {
      position: relative;
      height: 100vh;
      min-height: 600px;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
    }

    .hero__bg {
      position: absolute;
      inset: 0;
      background: radial-gradient(ellipse 65% 70% at 50% 45%, var(--navy) 0%, var(--navy-2) 30%, var(--navy-3) 55%, var(--dark-teal) 75%, #0B7B75 90%, #00A89A 100%);
      z-index: 0;
    }

    .hero__media {
      position: absolute;
      inset: 0;
      margin: 0;
    }

    .hero__bg::before {
      content: '';
      position: absolute;
      inset: 0;
      background:
        radial-gradient(ellipse 400px 300px at 20% 30%, rgba(0, 194, 178, .06) 0%, transparent 70%),
        radial-gradient(ellipse 350px 250px at 80% 70%, rgba(0, 194, 178, .04) 0%, transparent 70%);
    }

    .hero__bg::after {
      content: '';
      position: absolute;
      inset: 0;
      background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.03'/%3E%3C/svg%3E");
      opacity: .4;
      pointer-events: none;
    }

    .hero__inner {
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-100%, -50%);
      z-index: 4;
      text-align: left;
      width: clamp(280px, 38vw, 480px);
      pointer-events: none;
    }

    @media (max-width: 900px) {
      .hero {
        align-items: center;
        justify-content: center;
      }

      .hero__inner {
        position: relative !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        transform: none !important;
        width: clamp(280px, 88vw, 520px) !important;
        text-align: center;
        margin: 0 auto;
        padding: 0 1.5rem;
        opacity: 1 !important;
      }

      .hero__sub {
        margin-left: auto;
        margin-right: auto;
        font-size: clamp(.9rem, 3.5vw, 1.1rem);
      }

      .hero h3 {
        font-size: clamp(1.75rem, 6vw, 2.75rem);
      }

      #arcCanvas {
        display: none !important;
      }
    }

    @media (max-width: 480px) {
      .hero h3 {
        font-size: clamp(1.4rem, 7vw, 1.9rem);
      }

      .hero__inner {
        padding: 0 1.25rem !important;
      }
    }

    #arcCanvas {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      display: block;
      z-index: 3;
      pointer-events: auto;
      cursor: grab;
    }

    #arcCanvas:active {
      cursor: grabbing;
    }

    #flowCanvas {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      display: block;
      z-index: 1;
      pointer-events: none;
      opacity: 1;
    }

    .hero__overline {
      font-family: var(--font-head);
      font-size: 16px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .14em;
      color: rgba(212, 175, 55, .75);
      margin-bottom: 1.5rem;
      opacity: 0;
      transform: translateY(16px);
    }

    .hero h3 {
      font-family: var(--font-head);
      font-size: clamp(2rem, 4.5vw, 4rem);
      font-weight: 800;
      line-height: 1.1;
      letter-spacing: -.03em;
      color: #fff;
      margin-bottom: 1.5rem;
      opacity: 0;
      transform: translateY(24px);
    }

    .hero h3 .accent {
      color: #D4AF37;
    }

    .hero__sub {
      font-size: clamp(1rem, 1.8vw, 1.125rem);
      color: rgba(255, 255, 255, .6);
      max-width: 580px;
      margin: 0 auto 2.5rem;
      line-height: 1.75;
      opacity: 0;
      transform: translateY(16px);
    }

    .hero__sub a {
      color: var(--teal);
      border-bottom: 1px solid rgba(0, 194, 178, .3);
      text-decoration: none;
      pointer-events: auto;
      transition: border-color .2s;
    }

    .hero__sub a:hover {
      border-bottom-color: var(--teal);
    }

    .hero__scroll-hint {
      position: absolute;
      bottom: 2.5rem;
      left: 50%;
      transform: translateX(-50%);
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: .5rem;
      opacity: 0;
      z-index: 10;
    }

    .hero__scroll-hint p {
      font-family: var(--font-head);
      font-size: .65rem;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: .12em;
      color: rgba(255, 255, 255, .35);
    }

    .hero__scroll-line {
      width: 1px;
      height: 48px;
      background: linear-gradient(to bottom, rgba(0, 194, 178, .6), transparent);
      animation: scrollLine 2s ease-in-out infinite;
    }

    @keyframes scrollLine {
      0% {
        transform: scaleY(0);
        transform-origin: top;
      }

      50% {
        transform: scaleY(1);
        transform-origin: top;
      }

      51% {
        transform: scaleY(1);
        transform-origin: bottom;
      }

      100% {
        transform: scaleY(0);
        transform-origin: bottom;
      }
    }


    .act {
      position: relative;
      will-change: transform;
    }


    .act:not(.act--cta):not(.act--router) {
      padding-bottom: 100px;
      margin-bottom: -100px;
    }

    .act--sales {
      background: var(--white);
      color: var(--dark);
    }

    .act--investment {
      background: var(--warm);
      color: var(--dark);
    }

    .act--risk {
      background: #F4F2EE;
      color: var(--dark);
    }

    .act--router {
      background: radial-gradient(ellipse 65% 70% at 50% 45%, var(--navy) 0%, var(--navy-2) 30%, var(--navy-3) 55%, var(--dark-teal) 75%, #0B7B75 90%, #00A89A 100%);
      color: var(--white);
    }

    .act--cta {
      background: var(--warm);
      color: var(--dark);
    }


    .act__header {
      padding: 3rem 2rem 3rem;
      max-width: 1060px;
      margin: 0 auto;
      position: relative;
      z-index: 1;
    }

    .act__overline {
      font-family: var(--font-head);
      font-size: 16px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .16em;
      color: var(--teal);
      margin-bottom: 1rem;
      display: block;
    }

    #sales .act__overline,
    #ops .act__overline {
      color: var(--green);
    }

    #investment .act__overline,
    #advisory .act__overline {
      color: var(--purple);
    }

    #risk .act__overline {
      color: var(--red);
    }

    .act__title {
      font-family: var(--font-head);
      font-size: clamp(2rem, 4vw, 3.25rem);
      font-weight: 800;
      line-height: 1.1;
      letter-spacing: -.025em;
      max-width: 800px;
      margin-bottom: .75rem;
    }

    .act--sales .act__title,
    .act--investment .act__title,
    .act--risk .act__title {
      color: var(--dark);
    }

    .act__sub {
      font-size: 1rem;
      line-height: 1.7;
      color: var(--gray);
      max-width: 560px;
    }

    .act__sub a,
    .act__header a {
      color: var(--teal);
      border-bottom: 1px solid rgba(0, 194, 178, .25);
      text-decoration: none;
      transition: border-color .2s;
    }

    .act__sub a:hover,
    .act__header a:hover {
      border-bottom-color: var(--teal);
    }


    .cards-wrapper {
      max-width: 1060px;
      margin: 0 auto;
      padding: 0 2rem 5rem;
    }

    /* UC CARD DROPDOWN REFACTOR */
    .uc-card {
      position: relative;
      background: #fff;
      border: 1px solid #E2E8F0;
      margin-bottom: 1.5rem;
      box-shadow: 0 2px 8px rgba(0, 0, 0, .04);
      overflow: hidden;
      transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .uc-card__link[href="pre-intent-intelligence.html"]:hover {
      border-bottom-color: var(--green);
    }

    .uc-card.open {
      box-shadow: 0 12px 32px rgba(0, 0, 0, 0.08);
      transform: translateY(-2px);
    }

    .uc-card__cap {
      position: relative;
      z-index: 20;
      width: 100%;
      display: flex;
      align-items: center;
      gap: 1.5rem;
      padding: 1.25rem 2rem;
      background: #fff;
      border: none;
      border-bottom: 1px solid rgba(0, 0, 0, .08);
      text-align: left;
      cursor: pointer;
      transition: background-color 0.3s ease;
    }

    .uc-card__accent {
      height: 3px;
    }

    .accent--green {
      background: var(--green);
    }

    .accent--purple {
      background: var(--purple);
    }

    .accent--red {
      background: var(--red);
    }

    .accent--green-red {
      background: linear-gradient(90deg, var(--green) 50%, var(--red) 50%);
    }

    .accent--green-purple {
      background: linear-gradient(90deg, var(--green) 50%, var(--purple) 50%);
    }

    .accent--purple-green {
      background: linear-gradient(90deg, #6D28D9 0%, #7C3AED 25%, #A78BFA 50%, #4ADE80 75%, #22C55E 100%);
    }

    .uc-card__cap .uc-card__accent {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 3px;
    }


    .uc-card__num {
      position: static;
      font-family: var(--font-head);
      font-size: 2.25rem;
      font-weight: 800;
      line-height: 1;
      color: var(--dark);
      opacity: .15;
      letter-spacing: -.04em;
      flex-shrink: 0;
      width: 55px;
    }

    .uc-card__header {
      flex: 1;
      padding: 0;
      display: flex;
      flex-direction: column;
    }

    .uc-card__title {
      font-family: var(--font-head);
      font-size: clamp(1rem, 2vw, 1.35rem);
      font-weight: 700;
      color: var(--dark);
      margin-bottom: .15rem;
      line-height: 1.2;
    }

    .uc-card__buyer {
      font-size: .75rem;
      color: var(--gray);
      margin-bottom: 0.4rem;
    }

    .uc-card__tags {
      display: flex;
      gap: .5rem;
      flex-wrap: wrap;
      list-style: none;
      margin: 0;
      padding: 0;
    }

    .uc-card__tag {
      font-family: var(--font-head);
      font-size: .55rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .08em;
      padding: 1px 6px;
      border: 1px solid rgba(0, 0, 0, .15);
      border-radius: 0;
      color: var(--gray);
    }

    .tag--pre {
      color: var(--purple);
      border-color: var(--purple);
    }

    .tag--pbf {
      color: var(--green);
      border-color: var(--green);
    }

    .faq-question__icon {
      flex-shrink: 0;
      width: 24px;
      height: 24px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--teal);
      transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1), color 0.4s ease;
      transform: rotate(180deg);
    }

    .uc-card.open .faq-question__icon {
      transform: rotate(360deg);
      color: var(--gold);
    }

    .faq-answer {
      max-height: 0;
      overflow: hidden;
      opacity: 0;
      transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s ease;
      background: #fff;
    }

    .uc-card.open .faq-answer {
      opacity: 1;
    }

    /* Specific Caps Colors - Collapsed Row Background */
    .cap--green {
      background: #152f24;
      border-bottom-color: rgba(34, 197, 94, .2);
    }

    .cap--green:hover {
      background-color: #1a3a2d;
    }

    .cap--green .uc-card__num {
      color: #22C55E;
      opacity: 0.3;
    }

    .cap--green .uc-card__title {
      color: #fff;
    }

    .cap--green .uc-card__buyer {
      color: rgba(255, 255, 255, .5);
    }

    .cap--green .uc-card__tag {
      border-color: rgba(34, 197, 94, .3);
      color: #22C55E;
    }

    .cap--purple {
      background: #1f1730;
      border-bottom-color: rgba(167, 139, 250, .2);
    }

    .cap--purple:hover {
      background-color: #261d3b;
    }

    .cap--purple .uc-card__num {
      color: #A78BFA;
      opacity: 0.3;
    }

    .cap--purple .uc-card__title {
      color: #fff;
    }

    .cap--purple .uc-card__buyer {
      color: rgba(255, 255, 255, .5);
    }

    .cap--purple .uc-card__tag {
      border-color: rgba(167, 139, 250, .3);
      color: #A78BFA;
    }

    .cap--red {
      background: #2a1914;
      border-bottom-color: rgba(239, 68, 68, .2);
    }

    .cap--red:hover {
      background-color: #331f19;
    }

    .cap--red .uc-card__num {
      color: #EF4444;
      opacity: 0.3;
    }

    .cap--red .uc-card__title {
      color: #fff;
    }

    .cap--red .uc-card__buyer {
      color: rgba(255, 255, 255, .5);
    }

    .cap--red .uc-card__tag {
      border-color: rgba(239, 68, 68, .3);
      color: #EF4444;
    }

    .cap--green-red {
      background: linear-gradient(110deg, #152f24 0%, #152f24 49%, #2a1914 51%, #2a1914 100%);
      border-bottom: 1px solid transparent;
      border-image: linear-gradient(90deg, rgba(34, 197, 94, .2) 50%, rgba(239, 68, 68, .2) 50%) 1;
    }

    .cap--green-red .uc-card__title {
      color: #fff;
    }

    .cap--green-red .uc-card__buyer {
      color: rgba(255, 255, 255, .45);
    }

    .cap--green-red .uc-card__num {
      color: #fff;
      opacity: 0.15;
    }

    .cap--green-purple {
      background: linear-gradient(110deg, #152f24 0%, #152f24 49%, #1f1730 51%, #1f1730 100%);
      border-bottom: 1px solid transparent;
      border-image: linear-gradient(90deg, rgba(34, 197, 94, .2) 50%, rgba(167, 139, 250, .2) 50%) 1;
    }

    .cap--green-purple .uc-card__title {
      color: #fff;
    }

    .cap--green-purple .uc-card__buyer {
      color: rgba(255, 255, 255, .45);
    }

    .cap--green-purple .uc-card__num {
      color: #fff;
      opacity: 0.15;
    }


    .uc-card__body {
      padding: 2.5rem 2rem;
    }

    .uc-card__story {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 1.75rem;
    }

    .story-block__label {
      font-family: var(--font-head);
      font-size: .7rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .12em;
      color: var(--gray);
      margin-bottom: .75rem;
      display: block;
    }

    .story-block p {
      font-size: .88rem;
      line-height: 1.7;
      color: var(--gray);
    }

    .uc-card__links {
      padding: 1.5rem 2rem 2.5rem;
      display: flex;
      gap: 2rem;
      border-top: 1px solid rgba(0, 0, 0, .05);
      background: #fafafa;
    }

    .uc-card__link {
      font-family: var(--font-head);
      font-size: .8rem;
      font-weight: 600;
      color: var(--teal);
      text-decoration: none;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      border-bottom: 1px solid transparent;
      transition: all 0.2s ease;
      padding-bottom: 2px;
    }

    .uc-card__link:hover {
      opacity: 1;
    }

    /* Product-specific Colors */
    .uc-card__link[href*="pre-intent-intelligence.html"] {
      color: var(--green);
    }

    .uc-card__link[href*="pre-intent-intelligence.html"]:hover {
      border-bottom-color: var(--green);
    }

    .uc-card__link[href*="pre-diligence.html"] {
      color: var(--purple);
    }

    .uc-card__link[href*="pre-diligence.html"]:hover {
      border-bottom-color: var(--purple);
    }

    .uc-card__link[href*="risk-assessment.html"] {
      color: var(--red);
    }

    .uc-card__link[href*="risk-assessment.html"]:hover {
      border-bottom-color: var(--red);
    }


    @media (max-width: 1024px) {
      .uc-card__story {
        grid-template-columns: 1fr;
        gap: 2rem;
      }
    }

    @media (max-width: 768px) {
      .uc-card__cap {
        padding: 1.25rem 1.5rem;
        gap: 1rem;
      }

      .uc-card__num {
        width: 45px;
        font-size: 1.75rem;
      }

      .faq-question__icon {
        flex-shrink: 0;
        width: 20px;
        height: 20px;
      }
    }

    .card-dim {
      position: absolute;
      inset: 0;
      background: rgba(11, 29, 54, 0);
      pointer-events: none;
      z-index: 5;
      transition: none;
    }


    .svg-btn {
      display: inline-block;
      cursor: pointer;
      transition: transform .2s, filter .2s;
      text-decoration: none;
    }

    .svg-btn:hover {
      transform: translateY(-2px);
      filter: drop-shadow(0 4px 12px rgba(212, 175, 55, .3));
    }


    .progress-dots {
      --footer-fade-progress: 0;
      position: fixed;
      right: 2rem;
      top: 50%;
      transform: translateY(calc(-50% + (var(--footer-fade-progress) * 22px)));
      display: flex;
      flex-direction: column;
      gap: .75rem;
      z-index: 8000;
      opacity: calc(1 - (var(--footer-fade-progress) * .98));
      transition: opacity .2s linear, transform .28s ease;
      will-change: opacity, transform;
    }

    .progress-dots.is-footer-disabled {
      pointer-events: none;
    }

    .progress-dot {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 8px;
      cursor: pointer;
      position: relative;
      border: 0;
      background: transparent;
      padding: 0;
      font: inherit;
      color: inherit;
      text-decoration: none;
      text-align: right;
      --dot-pip-bg: rgba(255, 255, 255, .28);
      --dot-label-bg: rgba(0, 0, 0, .35);
      --dot-label-color: rgba(255, 255, 255, .88);
    }

    .progress-dot:focus-visible {
      outline: 2px solid var(--gold);
      outline-offset: 4px;
      border-radius: 4px;
    }

    .progress-dot__pip {
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background-color: var(--dot-pip-bg);
      transition: background-color .12s linear, transform .3s ease;
      flex-shrink: 0;
    }

    .progress-dot.active .progress-dot__pip {
      background: var(--teal);
      transform: scale(1.4);
    }

    .progress-dot[aria-current="location"] .progress-dot__pip {
      background: var(--teal);
      transform: scale(1.4);
    }

    .progress-dot__label {
      font-family: var(--font-head);
      font-size: .6rem;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: .1em;
      white-space: nowrap;
      opacity: 1;
      background-color: var(--dot-label-bg);
      color: var(--dot-label-color);
      transition: background-color .12s linear, color .12s linear, opacity .25s;
      pointer-events: none;
      padding: 2px 7px;
      border-radius: 0;
    }

    @media (prefers-reduced-motion: reduce) {
      .hero__scroll-line {
        animation: none;
        transform: none;
      }

      #scrollHint {
        display: none;
      }

      .progress-dot__pip,
      .progress-dot__label,
      .svg-btn {
        transition: none;
      }
    }


    @media (max-width:1024px) {
      .uc-card__story {
        grid-template-columns: 1fr;
      }
    }

    @media (max-width:768px) {
      .nav__links {
        display: none;
      }

      .nav__hamburger {
        display: flex;
      }

      .act__header {
        padding: 4rem 1.5rem 2rem;
      }

      .cards-wrapper {
        padding: 0 1.5rem 4rem;
      }

      .uc-card__cap {
        padding: 1.25rem 1.25rem 1rem;
      }

      .uc-card__header {
        flex-direction: column;
        gap: 0;
        padding: 0;
      }

      .uc-card__body {
        padding: 1rem 1.25rem 1.25rem;
      }

      .uc-card__links {
        padding: .75rem 1.25rem 1.25rem;
      }

      .progress-dots {
        position: fixed;
        right: 1rem;
        top: 50%;
        transform: translateY(-50%);
        display: flex;
        flex-direction: column;
        gap: .5rem;
        z-index: 8000;
        opacity: 1;
        transition: opacity .2s linear, transform .28s ease;
        padding: 0;
        background: transparent;
        backdrop-filter: none;
      }

      .progress-dot {
        flex: 0 0 auto;
        flex-direction: row;
        align-items: center;
        justify-content: flex-end;
        gap: 8px;
        text-align: right;
      }

      .progress-dot__label {
        display: none;
        /* Hide labels on mobile to save space, show only pips */
      }

      .progress-dot.active .progress-dot__label {
        display: block;
        padding: 2px 6px;
        font-size: .5rem;
      }

      .progress-dot__pip {
        width: 8px;
        height: 8px;
      }

      .component-frame--nav {
        height: 64px;
      }
    }

    /* SEO page-summary sits between act sections; isolate from act overlap + scroll transforms */
    .page-summary {
      position: relative;
      z-index: 5;
    }

    .act:has(+ .page-summary) {
      margin-bottom: 0;
      padding-bottom: 2rem;
    }

    .act:not(:has(+ .page-summary)):has(+ .act) {
      margin-bottom: 0;
      padding-bottom: 2rem;
    }

    #sales { z-index: 1; }
    #ops { z-index: 2; }
    #investment { z-index: 3; }
    #risk { z-index: 4; }
    #advisory { z-index: 5; }

    #investment + .page-summary {
      background: var(--warm);
    }

    .page-summary + .act {
      position: relative;
      z-index: 2;
    }

    @media (max-width:480px) {}
  
    /* Page summary (SEO / crawler-readable blocks) */
    .page-summary,
    .seo-note.page-summary {
      width: 100%;
      max-width: none;
      margin: 24px 0;
      padding-top: 24px;
      padding-bottom: 16px;
      padding-left: 0;
      padding-right: 0;
      background: #FFFFFF;
      box-sizing: border-box;
    }

    .page-summary .container,
    .seo-note.page-summary .container,
    .seo-note.page-summary .container--narrow {
      max-width: 70ch;
      width: 100%;
      margin-right: auto;
      margin-left: auto;
      padding: 12px 16px;
      background: #F7F8FA;
      box-sizing: border-box;
    }

    .page-summary > :is(h1, h2, h3, h4, h5, h6, p, ul, ol, blockquote) {
      max-width: 70ch;
      margin-left: auto;
      margin-right: auto;
      box-sizing: border-box;
      width: 100%;
    }

    .seo-note.page-summary .seo-note__card {
      max-width: none;
      margin: 0;
      width: 100%;
      padding: 0;
      box-shadow: none;
    }

    .page-summary :is(h1, h2, h3, h4, h5, h6, p, li, a, span, blockquote),
    .page-summary .seo-note__heading,
    .page-summary .seo-note__subheading,
    .seo-note.page-summary :is(h1, h2, h3, h4, h5, h6, p, li, a, span, blockquote),
    .seo-note.page-summary .seo-note__heading,
    .seo-note.page-summary .seo-note__subheading {
      font-size: 0.875rem !important;
      font-weight: 400 !important;
      line-height: 1.45 !important;
      font-family: 'Open Sans', sans-serif !important;
      letter-spacing: 0 !important;
      color: #6E6E73 !important;
    }
