/* ---------- By the numbers (ported from index-alt) ---------- */
    .k-funfact { background: var(--ink); color: #fff; overflow: hidden; }
    .k-funfact .ff-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(30px, 5vw, 90px); align-items: center; }
    .k-funfact .eyebrow { color: rgba(255,255,255,0.62); }
    .k-funfact .eyebrow::before { background: #fff; }
    .k-funfact .ff-title { font-family: var(--serif); font-weight: var(--display-weight); font-size: clamp(32px, 4.4vw, 66px); line-height: 1.0; letter-spacing: -0.015em; margin: 18px 0 clamp(30px,4vw,52px); }
    .k-funfact .ff-title em { font-style: italic; }
    .ff-stats { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(24px,3vw,46px) clamp(30px,4vw,60px); }
    .ff-stat { border-top: 1px solid rgba(255,255,255,0.16); padding-top: clamp(14px,1.6vw,22px); }
    .ff-stat .n { font-family: var(--serif); font-size: clamp(46px,6vw,92px); line-height: 0.9; letter-spacing: -0.02em; }
    .ff-stat .n em { font-style: italic; }
    .ff-stat .l { margin-top: 10px; font-size: 14px; color: rgba(255,255,255,0.6); max-width: 22ch; }
    .ff-media { position: relative; aspect-ratio: 4/5; border-radius: var(--r-lg); overflow: hidden; border: 1px solid rgba(255,255,255,0.14); }
    .ff-media .media { position: absolute; inset: -8%; width: 116%; height: 116%; border-radius: 0; background: linear-gradient(155deg, #161616 0%, #242424 60%, #2e2e2e 100%); }
    .ff-media .media img { filter: grayscale(1) contrast(1.05); }
    @media (max-width: 900px){ .k-funfact .ff-grid { grid-template-columns: 1fr; } .ff-media { aspect-ratio: 16/11; } }

    /* ---------- Moving-text band (ported from index-alt) ---------- */
    .k-moving { padding-block: clamp(40px, 6vw, 96px); overflow: hidden; border-block: 1px solid var(--line); }
    .moving-row { display: flex; width: max-content; white-space: nowrap; will-change: transform; }
    .moving-row + .moving-row { margin-top: clamp(6px, 0.8vw, 14px); }
    .moving-row .m-item {
      font-family: var(--serif); font-weight: var(--display-weight);
      font-size: clamp(44px, 8vw, 132px); line-height: 1;
      letter-spacing: -0.02em; padding-right: clamp(18px, 2.4vw, 44px);
      display: inline-flex; align-items: center; gap: clamp(18px, 2.4vw, 44px);
    }
    .moving-row .m-item.outline {
      color: transparent; -webkit-text-stroke: 1.4px var(--line-strong); text-stroke: 1.4px var(--line-strong);
    }
    .moving-row .dot { width: clamp(10px, 1vw, 18px); height: clamp(10px, 1vw, 18px); border-radius: 50%; background: currentColor; flex: none; }

    /* ---------- Stacked testimonial deck (ported from index-alt-3) ---------- */
    .k-testi2 { background: var(--ink); color: #fff; }
    .k-testi2 .eyebrow { color: rgba(255,255,255,0.62); }
    .k-testi2 .eyebrow::before { background: #fff; }
    .k-testi2 .title { color: #fff; }
    .k-testi2 .title em { color: #fff; font-style: italic; }
    .testi-pin { padding-bottom: var(--section-y); }
    .testi-head { padding: var(--section-y) var(--gutter) 0; }
    .testi-stack { position: relative; width: 100%; max-width: 620px; margin: 30px auto 0; }
    .tcard {
      position: relative; border-radius: var(--r-lg); margin-bottom: 18px;
      padding: clamp(26px, 2.8vw, 44px); display: flex; flex-direction: column; justify-content: space-between;
      background: #fff; color: var(--ink);
      box-shadow: 0 50px 90px -50px rgba(0,0,0,0.7); will-change: transform;
    }
    .tcard.tone { background: #f0ede9; }
    .tcard .stars { color: var(--ink); font-size: 13px; letter-spacing: 3px; }
    .tcard .q { font-family: var(--serif); font-size: clamp(18px, 1.7vw, 26px); line-height: 1.34; letter-spacing: -0.005em; margin: clamp(14px,1.5vw,22px) 0; }
    .tcard .q em { font-style: italic; }
    .tcard .auth { display: flex; align-items: center; gap: 14px; border-top: 1px solid var(--line); padding-top: 18px; }
    .tcard .avatar { position: relative; width: 50px; height: 50px; border-radius: 50%; flex: none; background: var(--paper-3); overflow: hidden; }
    .tcard .avatar::before { content: attr(data-initials); position: absolute; inset: 0; display: grid; place-items: center; font-family: var(--serif); font-size: 17px; color: var(--gray-1); z-index: 0; }
    .tcard .avatar img { position: relative; z-index: 1; width: 100%; height: 100%; object-fit: cover; display: block; }
    .tcard .avatar img.failed { display: none; }
    .tcard .who { display: flex; flex-direction: column; gap: 2px; }
    .tcard .nm { font-family: var(--serif); font-size: 18px; line-height: 1.1; }
    .tcard .role { font-size: 12.5px; color: var(--gray-1); }
    .testi-progress { display: none; font-family: var(--serif); font-size: 14px; color: rgba(255,255,255,0.5); letter-spacing: 0.1em; }
    .testi-progress b { color: #fff; }
    /* pinned deck mode (enabled by JS) */
    .k-testi2.stack-on .testi-pin { position: sticky; top: 0; height: 100svh; overflow: hidden; display: grid; grid-template-rows: auto 1fr; padding-bottom: 0; }
    .k-testi2.stack-on .testi-head { padding: clamp(94px,12vh,146px) var(--gutter) 0; }
    .k-testi2.stack-on .testi-stage { position: relative; display: grid; place-items: center; }
    .k-testi2.stack-on .testi-stack { width: min(620px, 88vw); height: min(420px, 58vh); max-width: none; margin: 0; }
    .k-testi2.stack-on .tcard { position: absolute; inset: 0; margin: 0; }
    .k-testi2.stack-on .testi-progress { display: block; position: absolute; bottom: clamp(18px,4vh,40px); left: 50%; transform: translateX(-50%); }
