/** Shopify CDN: Minification failed

Line 1145:0 Unexpected "}"

**/
/* ==== hero ==== */




.fpk-h3-sec{position:relative;overflow:hidden;padding:64px 0 60px;background:radial-gradient(1100px 640px at 78% -12%,#e8f5ee,transparent 60%),linear-gradient(180deg,#fbfdfc,#fff);font-family:'NHG Text','Inter',system-ui,sans-serif}
.fpk-h3-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(0,112,73,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(0,112,73,.04) 1px,transparent 1px);background-size:38px 38px;-webkit-mask:radial-gradient(80% 60% at 70% 20%,#000,transparent);mask:radial-gradient(80% 60% at 70% 20%,#000,transparent);opacity:.7}
.fpk-h3-inner{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:1.18fr .86fr .92fr;gap:26px;align-items:stretch}
.fpk-h3-copy{align-self:center;min-width:0}
.fpk-h3-eyebrow{display:inline-block;font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:600;letter-spacing:.15em;color:#0a7a52;background:#e2f2ea;border:1px solid #c8e6d6;padding:6px 12px;border-radius:100px;text-transform:uppercase}
.fpk-h3-h1{margin:18px 0 0;font-family:'Clash Display','Poppins',sans-serif;font-weight:600;letter-spacing:-.025em;line-height:1.02;font-size:clamp(36px,4.6vw,58px);color:#0c1411}
.fpk-h3-g{color:transparent;background:linear-gradient(100deg,#007049,#0c9a5f);-webkit-background-clip:text;background-clip:text;white-space:nowrap}
.fpk-h3-sub{margin:16px 0 0;font-family:'Clash Display','Poppins',sans-serif;font-weight:600;font-size:clamp(16px,1.9vw,20px);color:#1a2620;max-width:24ch}
.fpk-h3-body{margin:12px 0 0;font-size:14.5px;line-height:1.65;color:#5a6a63;max-width:46ch}
.fpk-h3-facts{display:flex;flex-wrap:wrap;gap:10px 16px;margin:22px 0 0}
.fpk-h3-fact{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:#2a3a33}
.fpk-h3-fact svg{color:#007049}
.fpk-h3-ctas{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 0}
.fpk-h3-btn{position:relative;display:inline-flex;align-items:center;gap:9px;padding:14px 24px;border-radius:13px;font-size:14.5px;font-weight:600;border:none;cursor:pointer;font-family:inherit;transition:transform .3s,box-shadow .3s}
.fpk-h3-btn--primary{background:#007049;color:#fff;box-shadow:0 10px 26px rgba(0,112,73,.3)}
.fpk-h3-btn--primary:hover{box-shadow:0 16px 34px rgba(0,112,73,.42)}
.fpk-h3-btn--ghost{background:#fff;color:#063522;border:1px solid rgba(6,53,34,.2)}
.fpk-h3-ar{transition:transform .3s}.fpk-h3-btn:hover .fpk-h3-ar{transform:translateX(4px)}
.fpk-h3-photo{position:relative;border-radius:20px;overflow:hidden;background:linear-gradient(160deg,#063522,#02372a);box-shadow:0 30px 70px -30px rgba(0,18,12,.5);min-height:420px}
.fpk-h3-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fpk-h3-live{position:absolute;top:14px;right:14px;display:inline-flex;align-items:center;gap:7px;font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:600;letter-spacing:.05em;color:#063;background:#b7e2c7;padding:6px 11px;border-radius:100px;text-transform:uppercase}
.fpk-h3-live-dot{width:6px;height:6px;border-radius:50%;background:#007049;animation:fpk-h3-pulse 2s infinite}
@keyframes fpk-h3-pulse{0%,100%{opacity:1}50%{opacity:.4}}
.fpk-h3-glance{background:#fff;border:1px solid #e6ece8;border-radius:20px;padding:22px;box-shadow:0 16px 40px -22px rgba(12,20,17,.3);align-self:stretch;display:flex;flex-direction:column}
.fpk-h3-gh{margin:0 0 6px;font-family:'Clash Display','Poppins',sans-serif;font-size:15px;font-weight:600;color:#0c1411}
.fpk-h3-glist{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;flex:1;justify-content:center;gap:2px}
.fpk-h3-grow{display:flex;align-items:center;gap:13px;padding:9px 0;border-bottom:1px solid #f0f4f1}
.fpk-h3-grow:last-child{border-bottom:none}
.fpk-h3-gico{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#e8f5ee;color:#007049;flex:0 0 auto}
.fpk-h3-gtext{display:flex;flex-direction:column}
.fpk-h3-gk{font-size:11px;color:#8a978f;font-weight:600;letter-spacing:.02em}
.fpk-h3-gv{font-size:15px;font-weight:600;color:#0c1411;margin-top:1px}
.fpk-h3-grow--warn .fpk-h3-gv{color:#c0392b}
.fpk-h3-seats{margin:14px 0 0;display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:#0a7a52;background:#e2f2ea;border-radius:10px;padding:9px 12px}
.fpk-h3-seats-dot{width:7px;height:7px;border-radius:50%;background:#0c9a5f}
@media(max-width:980px){.fpk-h3-inner{grid-template-columns:1fr;gap:24px}.fpk-h3-photo{min-height:340px}}








/* ==== trust ==== */

.fpk-tr2-sec{background:var(--fpk-warm,#f6f7f4);border-top:1px solid var(--fpk-line,#e2eae5);border-bottom:1px solid var(--fpk-line,#e2eae5);padding:38px 0;font-family:'NHG Text','Inter',system-ui,sans-serif}
.fpk-tr2-wrap{max-width:1160px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:1fr auto 1fr;gap:120px;align-items:center}
.fpk-tr2-div{width:1px;align-self:stretch;background:var(--fpk-line,#e2eae5)}
.fpk-tr2-lab{margin:0 0 16px;font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--fpk-soft,#5a6a63)}
.fpk-tr2-logos{display:flex;flex-wrap:nowrap;align-items:center;gap:16px}
.fpk-tr2-logo{display:inline-flex;align-items:center}
.fpk-tr2-logo img{height:34px;width:auto;transition:transform .35s}
.fpk-tr2-logo--adobe img{height:30px}
.fpk-tr2-logo--press img{height:14px}
.fpk-tr2-logo--big img{height:24px}
.fpk-tr2-logo:hover img{transform:translateY(-2px)}
.fpk-tr2-col--right .fpk-tr2-lab{text-align:right}
.fpk-tr2-col--right .fpk-tr2-col--press .fpk-tr2-logos{justify-content:flex-start}
@media(max-width:820px){.fpk-tr2-wrap{grid-template-columns:1fr;gap:26px}.fpk-tr2-div{display:none}.fpk-tr2-col--right .fpk-tr2-lab{text-align:left}.fpk-tr2-col--right .fpk-tr2-logos{justify-content:flex-start}}


/* ==== who ==== */






.fpk-who-sec{
  /* local token layer — mirrors v2 so the meter/badge/text signature always reads,
     even if the global fpk-* :root layer isn't in scope on this page */
  --fpk-green:#007049; --fpk-br:#0c9a5f; --fpk-mint:#b7e2c7; --fpk-mintbg:#e8f5ee;
  --fpk-ink:#0c1411; --fpk-soft:#5a6a63; --fpk-line:#e2eae5;
  --fpk-ease-out:cubic-bezier(.22,1,.36,1);
  --fpk-radius-lg:16px; --fpk-maxw:1200px; --fpk-pad:24px;
  --fpk-white:#fff;
  position:relative; isolation:isolate; overflow:hidden;
  background:var(--fpk-white);
  color:var(--fpk-ink);
  font-family:'NHG Text','Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  padding:88px var(--fpk-pad);
  -webkit-font-smoothing:antialiased;
}
.fpk-who-sec *{box-sizing:border-box;}
.fpk-who-bg{
  position:absolute; inset:0; z-index:0; pointer-events:none; opacity:.75;
  background:
    radial-gradient(58% 44% at 6% -4%, rgba(12,154,95,.09), transparent 60%),
    radial-gradient(52% 42% at 102% 104%, rgba(0,112,73,.06), transparent 56%);
}
.fpk-who-wrap{position:relative; z-index:1; max-width:var(--fpk-maxw); margin:0 auto;}

/* ---- Header ---- */
.fpk-who-head{max-width:760px;}
.fpk-who-eyebrow{
  display:inline-flex; align-items:center; gap:10px; margin:0 0 16px;
  font-family:'IBM Plex Mono',ui-monospace,monospace;
  font-size:12px; font-weight:600; letter-spacing:.16em; text-transform:uppercase;
  color:var(--fpk-green);
}
.fpk-who-eyebrow-dash{
  width:22px; height:2px; display:inline-block; border-radius:2px;
  background:var(--fpk-br); transform-origin:left center;
}
.fpk-who-title{
  margin:0; font-family:'Clash Display','Poppins',sans-serif;
  font-weight:600; letter-spacing:-.02em; line-height:1.12;
  font-size:clamp(28px,4vw,46px); color:var(--fpk-ink); max-width:15ch;
}
.fpk-who-title .fpk-who-line-mask{
  display:block; overflow:hidden; padding-bottom:.12em; margin-bottom:-.12em;
}

/* ---- XP meter ---- */
.fpk-who-meter{
  display:flex; align-items:center; gap:16px; margin-top:14px; max-width:400px;
}
.fpk-who-meter-track{
  position:relative; flex:1; height:8px; border-radius:100px;
  background:#e4efe8; overflow:hidden; border:1px solid var(--fpk-line);
}
.fpk-who-meter-fill{
  position:absolute; inset:0; transform-origin:left center; transform:scaleX(0);
  border-radius:100px;
  background:linear-gradient(90deg,var(--fpk-green) 0%,var(--fpk-br) 100%);
  box-shadow:0 0 6px rgba(12,154,95,.2);
}
.fpk-who-meter-shine{
  position:absolute; top:0; bottom:0; left:0; width:22%;
  transform:translateX(-260%) skewX(-20deg); opacity:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);
  pointer-events:none;
}
.fpk-who-meter-label{
  display:inline-block; transform-origin:left center;
  font-family:'IBM Plex Mono',ui-monospace,monospace;
  font-size:12px; font-weight:600; letter-spacing:.02em; color:var(--fpk-green);
  white-space:nowrap; font-variant-numeric:tabular-nums;
}

/* ---- Grid ---- */
.fpk-who-grid{
  list-style:none; margin:40px 0 0; padding:0;
  display:grid; grid-template-columns:repeat(4,1fr); gap:16px;
}
.fpk-who-card{
  position:relative; overflow:hidden;
  border:1px solid var(--fpk-line); border-radius:var(--fpk-radius-lg);
  padding:24px 22px; background:var(--fpk-white);
  transition:transform .35s var(--fpk-ease-out), box-shadow .35s var(--fpk-ease-out), border-color .35s var(--fpk-ease-out);
  box-shadow:0 1px 2px rgba(12,20,17,.04);
}
/* CSS lift only for non-magnetic (no-JS / touch / reduced) — GSAP drives lift on magnetic cards */
.fpk-who-card:not(.is-magnetic):hover{transform:translateY(-6px);}
.fpk-who-card.is-magnetic{transition:box-shadow .35s var(--fpk-ease-out), border-color .35s var(--fpk-ease-out);}
.fpk-who-card::after{
  content:""; position:absolute; right:-42px; top:-42px;
  width:124px; height:124px; border-radius:50%;
  background:radial-gradient(circle at 30% 30%, rgba(12,154,95,.18), transparent 66%);
  opacity:0; transition:opacity .35s var(--fpk-ease-out); pointer-events:none;
}
.fpk-who-card:hover{
  border-color:rgba(0,112,73,.4);
  box-shadow:0 24px 48px -26px rgba(12,20,17,.34), 0 0 0 1px rgba(0,112,73,.08);
}
.fpk-who-card:hover::after{opacity:1;}
.fpk-who-card:focus-within{
  border-color:var(--fpk-green);
  box-shadow:0 0 0 3px rgba(0,112,73,.2);
}

/* card shine sweep — mint/green tint so it reads on the light tile */
.fpk-who-shine{
  position:absolute; top:-10%; bottom:-10%; left:0; width:46%;
  transform:translateX(-170%) skewX(-18deg); opacity:0;
  background:linear-gradient(90deg,
    transparent,
    rgba(255,255,255,.55) 40%,
    rgba(183,226,199,.42) 58%,
    rgba(12,154,95,.10) 66%,
    transparent);
  pointer-events:none; z-index:3;
}

/* numbered badge */
.fpk-who-badge{
  position:relative; width:44px; height:44px; border-radius:12px;
  display:grid; place-items:center; margin-bottom:16px;
  font-family:'IBM Plex Mono',ui-monospace,monospace; font-weight:600; font-size:14px;
  color:var(--fpk-green);
  background:var(--fpk-mintbg);
  border:1px solid var(--fpk-mint);
  transition:transform .3s var(--fpk-ease-out), color .3s var(--fpk-ease-out),
    background .3s var(--fpk-ease-out), box-shadow .3s var(--fpk-ease-out), border-color .3s var(--fpk-ease-out);
}
.fpk-who-badge-num{position:relative; z-index:2;}
.fpk-who-badge-ring{
  position:absolute; inset:-4px; border-radius:16px;
  border:2px solid var(--fpk-br); opacity:0; transform:scale(.7); pointer-events:none;
}
.fpk-who-card:hover .fpk-who-badge{
  transform:translateY(-3px) rotate(-6deg) scale(1.08);
  color:#fff;
  background:linear-gradient(150deg,var(--fpk-br),var(--fpk-green));
  border-color:transparent;
  box-shadow:0 10px 24px -6px rgba(0,112,73,.5);
}

.fpk-who-card-title{
  margin:0 0 8px; font-family:'Clash Display','Poppins',sans-serif;
  font-size:18px; font-weight:600; letter-spacing:-.01em; line-height:1.25; color:var(--fpk-ink);
}
.fpk-who-card-body{
  margin:0; font-size:13.5px; font-weight:400; line-height:1.55; color:var(--fpk-soft);
}

/* green click ripple */
.fpk-who-sec .fpk-who-ripple{
  position:absolute; width:120px; height:120px; margin:-60px 0 0 -60px;
  border-radius:50%; background:rgba(12,154,95,.26);
  pointer-events:none; z-index:4;
}

/* ---- JS-gated hidden states (only when animating; no-JS shows everything) ----
   pointer-events:none keeps the invisible intro cards non-hoverable so a stray
   pointermove can't compose the magnetic transform with the running pop tween.
   Each card re-enables pointer-events in its pop onStart (JS). */
.fpk-who-sec.fpk-anim .fpk-who-card{opacity:0; pointer-events:none;}
.fpk-who-sec.fpk-anim [data-fpk-rise]{opacity:0;}
.fpk-who-sec.fpk-anim .fpk-who-title{opacity:0;}
.fpk-who-sec.fpk-anim .fpk-who-meter-fill{transform:scaleX(0);}

/* ---- Reduced-motion safety net ---- */
@media (prefers-reduced-motion:reduce){
  .fpk-who-sec .fpk-who-card,
  .fpk-who-sec [data-fpk-rise],
  .fpk-who-sec .fpk-who-title{opacity:1 !important; transform:none !important;}
  .fpk-who-sec .fpk-who-card{pointer-events:auto !important;}
  .fpk-who-sec .fpk-who-meter-fill{transform:scaleX(1) !important;}
  .fpk-who-sec .fpk-who-shine,
  .fpk-who-sec .fpk-who-meter-shine{display:none;}
}

/* ---- Responsive ---- */
@media (max-width:900px){
  .fpk-who-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:720px){
  .fpk-who-sec{padding:60px var(--fpk-pad);}
  .fpk-who-card:not(.is-magnetic):hover{transform:none;}
}
@media (max-width:520px){
  .fpk-who-grid{grid-template-columns:1fr; gap:14px;}
  .fpk-who-meter{max-width:100%;}
}













/* ==== build ==== */






.fpk-build-sec{
  --fpk-ease:cubic-bezier(.22,1,.36,1);
  position:relative;
  font-family:'NHG Text','Inter',system-ui,-apple-system,sans-serif;
  color:var(--fpk-ink,#0c1411);
  background:linear-gradient(180deg,var(--fpk-warm,#f6f7f4) 0%,#edf5f0 100%);
  line-height:1.5;
}
.fpk-build-sec *{box-sizing:border-box}

.fpk-build-stage{position:relative}
.fpk-build-inner{
  position:relative;
  max-width:1200px;margin:0 auto;
  padding:96px clamp(24px,5vw,72px);
}

/* ---------- pinned vs native layout ---------- */
.fpk-build-sec.fpk-mode-pin .fpk-build-stage{height:100vh;min-height:640px;display:flex;align-items:center}
.fpk-build-sec.fpk-mode-pin .fpk-build-inner{width:100%;padding-top:0;padding-bottom:0}
.fpk-build-sec.fpk-mode-pin .fpk-build-viewport{overflow:hidden;perspective:1200px;cursor:grab}
.fpk-build-sec.fpk-mode-pin .fpk-build-viewport.is-drag{cursor:grabbing}
.fpk-build-sec.fpk-mode-pin .fpk-build-track{width:max-content;padding-right:clamp(80px,34vw,440px);will-change:transform}

.fpk-build-sec.fpk-mode-native .fpk-build-viewport{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:14px}
.fpk-build-sec.fpk-mode-native .fpk-build-viewport::-webkit-scrollbar{display:none}
.fpk-build-sec.fpk-mode-native .fpk-build-track{width:max-content}
.fpk-build-sec.fpk-mode-native .fpk-build-card{scroll-snap-align:center}

/* default (no-JS) fallback = scrollable */
.fpk-build-viewport{overflow-x:auto}

/* ---------- header ---------- */
.fpk-build-head{max-width:720px;margin-bottom:30px}
.fpk-build-eyebrow{
  display:inline-flex;align-items:center;gap:10px;margin:0 0 16px;
  font-family:'IBM Plex Mono',monospace;font-size:12px;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;color:var(--fpk-green,#007049);
}
.fpk-build-eyedot{width:8px;height:8px;border-radius:50%;background:var(--fpk-br,#0c9a5f);box-shadow:0 0 0 4px rgba(12,154,95,.18)}
.fpk-build-title{
  margin:0 0 16px;font-family:'Clash Display','Poppins',sans-serif;font-weight:600;
  letter-spacing:-.02em;line-height:1.04;font-size:clamp(30px,4.6vw,50px);color:var(--fpk-ink,#0c1411);
}
.fpk-build-lead{margin:0;font-size:clamp(15px,1.5vw,18px);line-height:1.55;color:var(--fpk-soft,#5a6a63);max-width:54ch}

/* ---------- gamified progress meter ---------- */
.fpk-build-progress{max-width:560px;margin:0 0 30px}
.fpk-build-progress-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.fpk-build-progress-label{
  display:inline-flex;align-items:center;gap:8px;
  font-family:'IBM Plex Mono',monospace;font-size:11.5px;font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;color:var(--fpk-green,#007049);
}
.fpk-build-progress-label svg{color:var(--fpk-br,#0c9a5f)}
.fpk-build-progress-count{font-size:12.5px;font-weight:600;color:var(--fpk-soft,#5a6a63)}
.fpk-build-progress-num{display:inline-block;font-weight:600;color:var(--fpk-green,#007049);font-variant-numeric:tabular-nums}
.fpk-build-rail{display:flex;gap:8px}
.fpk-build-seg{position:relative;flex:1;height:7px;border-radius:999px;background:rgba(12,20,17,.08);overflow:hidden}
.fpk-build-seg-fill{
  position:absolute;inset:0;border-radius:999px;transform:scaleX(0);transform-origin:left center;
  background:linear-gradient(90deg,var(--fpk-green,#007049),var(--fpk-br,#0c9a5f));
  box-shadow:0 0 10px -2px rgba(12,154,95,.6);
}

/* ---------- viewport + track ---------- */
.fpk-build-viewport{position:relative}
.fpk-build-track{list-style:none;margin:0;padding:0;display:flex;gap:22px;align-items:stretch}

/* ---------- card ---------- */
.fpk-build-card{
  position:relative;overflow:hidden;
  flex:0 0 clamp(280px,72vw,352px);
  min-height:308px;padding:26px;border-radius:22px;
  display:flex;flex-direction:column;
  background:linear-gradient(165deg,#101815 0%,#070d0a 100%);
  color:#fff;border:1px solid rgba(183,226,199,.14);
  box-shadow:0 22px 50px -28px rgba(0,18,12,.65);
  transform-style:preserve-3d;
  transition:border-color .45s var(--fpk-ease),box-shadow .45s var(--fpk-ease);
}
.fpk-build-card.is-active{
  border-color:rgba(12,154,95,.55);
  box-shadow:0 30px 66px -26px rgba(0,112,73,.6),0 2px 10px rgba(0,18,12,.3);
}
.fpk-build-card-num{
  position:absolute;right:-6px;bottom:-16px;z-index:0;pointer-events:none;
  font-family:'Clash Display','Poppins',sans-serif;font-weight:600;font-size:150px;line-height:1;
  letter-spacing:-.04em;color:rgba(183,226,199,.06);
}
.fpk-build-shine{
  position:absolute;top:-20%;left:0;z-index:1;width:55%;height:150%;pointer-events:none;opacity:0;
  transform:translateX(-160%) skewX(-18deg);
  background:linear-gradient(100deg,transparent,rgba(183,226,199,.2),transparent);
}
.fpk-build-ico{
  position:relative;z-index:2;
  width:44px;height:44px;border-radius:12px;margin-bottom:auto;
  display:flex;align-items:center;justify-content:center;
  background:rgba(12,154,95,.16);color:var(--fpk-br,#0c9a5f);
}
.fpk-build-ico svg{width:22px;height:22px}
.fpk-build-card-body{position:relative;z-index:2;margin-top:26px}
.fpk-build-lab{display:inline-block;font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--fpk-mint,#b7e2c7)}
.fpk-build-name{margin:10px 0 8px;font-family:'Clash Display','Poppins',sans-serif;font-weight:600;font-size:22px;line-height:1.12;letter-spacing:-.01em;color:#fff}
.fpk-build-desc{margin:0;font-size:14px;line-height:1.55;color:rgba(255,255,255,.62)}

/* ---------- click ripple (tactile press feedback) ---------- */
.fpk-build-ripple{
  position:absolute;z-index:3;width:120px;height:120px;margin:-60px 0 0 -60px;
  border-radius:50%;background:var(--fpk-br,#0c9a5f);pointer-events:none;
}

/* ---------- achievement toast ---------- */
.fpk-build-toast{
  position:absolute;top:6px;right:6px;z-index:30;
  display:inline-flex;align-items:center;gap:11px;
  padding:11px 15px 11px 12px;border-radius:14px;
  background:linear-gradient(150deg,#10251b,#03130d);
  border:1px solid rgba(12,154,95,.4);
  box-shadow:0 18px 40px -14px rgba(0,112,73,.5),0 2px 10px rgba(0,18,12,.28);
  opacity:0;transform:scale(.85);transform-origin:top right;pointer-events:none;
}
.fpk-build-toast-ico{
  display:inline-grid;place-items:center;flex:none;width:30px;height:30px;border-radius:9px;
  background:linear-gradient(135deg,var(--fpk-green,#007049),var(--fpk-br,#0c9a5f));color:#eafff4;
}
.fpk-build-toast-ico svg{width:15px;height:15px}
.fpk-build-toast-txt{display:flex;flex-direction:column;line-height:1.2}
.fpk-build-toast-k{font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#3ed389}
.fpk-build-toast-t{margin-top:2px;font-size:12.5px;font-weight:600;color:#fff}

/* ---------- hint ---------- */
.fpk-build-hint{
  display:inline-flex;align-items:center;gap:8px;margin:24px 0 0;
  font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.03em;color:var(--fpk-soft,#5a6a63);
}
.fpk-build-hint svg{color:var(--fpk-green,#007049)}

/* ---------- JS-armed hidden states ---------- */
.fpk-build-sec.fpk-anim [data-rise]{opacity:0}
.fpk-build-sec.fpk-anim .fpk-build-card{opacity:0}
.fpk-build-sec.fpk-anim .fpk-build-progress{opacity:0}

/* ---------- mobile ---------- */
@media (max-width:768px){
  .fpk-build-inner{padding:64px clamp(20px,5vw,32px)}
  .fpk-build-head{margin-bottom:24px}
  .fpk-build-card{min-height:270px;flex-basis:78vw}
  .fpk-build-toast{display:none}
  .fpk-build-card-num{font-size:120px}
}

/* ---------- reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  .fpk-build-sec.fpk-anim [data-rise],
  .fpk-build-sec.fpk-anim .fpk-build-card,
  .fpk-build-sec.fpk-anim .fpk-build-progress{opacity:1}
  .fpk-build-seg-fill{transform:scaleX(1)}
  .fpk-build-shine{display:none}
}













/* ==== roadmap ==== */


.fpk-roadmap-sec{
  --fpk-e-out:cubic-bezier(.22,1,.36,1);
  --fpk-neon:#0c9a5f;
  --fpk-neon-2:#b7e2c7;
  --fpk-flash:#b7e2c7;
  --fpk-pct-rest:#ffffff;
  --fpk-stage:#07140d;
  --fpk-stage-2:#040d08;
  --fpk-panel:#0d1c14;
  --fpk-panel-2:#08130d;
  --fpk-line-d:rgba(255,255,255,.08);
  --fpk-txt:#eef5f0;
  --fpk-txt-soft:#9aa5a0;
  --fpk-green-deep:#0a7c48;
  position:relative;
  background:
    radial-gradient(1200px 700px at 84% -8%, rgba(12,154,95,.05), transparent 58%),
    linear-gradient(180deg, #0a0f0d, #0c1110);
  color:#fff;
  font-family:'NHG Text','Inter',system-ui,-apple-system,sans-serif;
  padding:96px 0;
  overflow:hidden;
  -webkit-font-smoothing:antialiased;
}
.fpk-roadmap-sec *{box-sizing:border-box;}
.fpk-rm-wrap{max-width:1200px;margin:0 auto;padding:0 24px;}

/* ---------- Heading ---------- */
.fpk-rm-head{max-width:820px;margin-bottom:40px;}
.fpk-rm-eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:'IBM Plex Mono',monospace;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--fpk-br, #0c9a5f);margin:0 0 18px;}
.fpk-rm-eyebrow-dot{width:8px;height:8px;border-radius:50%;background:var(--fpk-neon);box-shadow:0 0 0 4px rgba(12,154,95,.14);}
.fpk-rm-title{font-family:'Clash Display','Poppins',sans-serif;font-size:clamp(30px,4.6vw,54px);line-height:1.03;font-weight:600;letter-spacing:-.024em;margin:0;color:#fff;}
.fpk-rm-title .fpk-rm-line{display:block;overflow:hidden;}

/* ---------- Scene / dark game stage ---------- */
.fpk-rm-scene{position:relative;}
.fpk-rm-stage{
  position:relative;overflow:hidden;
  /* fix 1: trimmed vertical padding so the full 2-row (6-node) stage + toast clear the fold when pinned */
  padding:28px 30px 32px;border-radius:26px;
  background:
    radial-gradient(130% 120% at 8% -10%, rgba(12,154,95,.06), transparent 52%),
    linear-gradient(180deg, var(--fpk-stage), var(--fpk-stage-2));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 50px 100px -55px rgba(0,0,0,.85),inset 0 1px 0 rgba(255,255,255,.05);
}
/* fix 1: tighter HUD gap */
.fpk-rm-hud{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;}
.fpk-rm-hud-label{font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:#b7e2c7;}
.fpk-rm-hud-player{display:inline-flex;align-items:center;gap:8px;font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--fpk-txt-soft);}
.fpk-rm-hud-dot{width:7px;height:7px;border-radius:50%;background:var(--fpk-neon);box-shadow:0 0 6px rgba(12,154,95,.4);}

/* ---------- XP meter (thick, neon) ---------- */
/* fix 1: tighter meter->track gap to reclaim ~8px of stage height */
.fpk-rm-meter{display:flex;align-items:center;gap:20px;margin-bottom:26px;}
.fpk-rm-meter-track{position:relative;flex:1;height:26px;border-radius:999px;background:linear-gradient(180deg,#06110b,#0a1811);border:1px solid rgba(120,210,160,.16);overflow:hidden;box-shadow:inset 0 2px 6px rgba(0,0,0,.55);}
.fpk-rm-meter-notch{position:absolute;top:5px;bottom:5px;width:2px;margin-left:-1px;border-radius:2px;background:rgba(255,255,255,.10);z-index:2;}
.fpk-rm-meter-fill{position:absolute;top:2px;left:2px;bottom:2px;right:2px;transform-origin:left center;transform:scaleX(1);border-radius:999px;background:linear-gradient(90deg,var(--fpk-green, #007049),var(--fpk-neon));box-shadow:0 0 12px rgba(12,154,95,.35),inset 0 1px 0 rgba(255,255,255,.35);z-index:1;will-change:transform;}
.fpk-rm-meter-shine{position:absolute;top:0;bottom:0;left:0;width:26%;transform:skewX(-18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.75),transparent);opacity:0;pointer-events:none;z-index:3;mix-blend-mode:screen;}
.fpk-rm-meter-label{display:inline-flex;align-items:baseline;gap:7px;font-weight:600;min-width:112px;justify-content:flex-end;}
.fpk-rm-meter-pct{font-family:'Clash Display','Poppins',sans-serif;font-size:32px;line-height:1;color:#fff;font-variant-numeric:tabular-nums;}
.fpk-rm-meter-cap{font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--fpk-txt-soft);}

/* ---------- Track / nodes ---------- */
.fpk-rm-track{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;position:relative;}
.fpk-rm-node{position:relative;}
/* fix 1: trimmed node-inner padding so two rows of 6 nodes stay compact in the pinned stage */
.fpk-rm-node-inner{position:relative;height:100%;padding:22px 20px 20px;background:linear-gradient(180deg,var(--fpk-panel),var(--fpk-panel-2));border:1px solid var(--fpk-line-d);border-radius:18px;overflow:hidden;will-change:filter,transform,opacity;}
.fpk-rm-node-glow{position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:1;background:radial-gradient(120% 90% at 24% -12%,rgba(12,154,95,.07),transparent 60%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),0 30px 60px -34px rgba(0,0,0,.7);}

/* fix 1: badge 54->52 + margin 18->14 to shave node height without losing presence */
.fpk-rm-badge{position:relative;display:inline-grid;place-items:center;width:52px;height:52px;border-radius:15px;margin-bottom:14px;background:#0e1a13;border:1px solid rgba(120,210,160,.18);}
.fpk-rm-badge-fill{position:absolute;inset:0;border-radius:inherit;opacity:1;z-index:1;background:linear-gradient(135deg,var(--fpk-green-deep),var(--fpk-neon));box-shadow:0 0 12px rgba(12,154,95,.3);}
.fpk-rm-badge-lock{position:absolute;z-index:2;display:grid;place-items:center;color:var(--fpk-txt-soft);opacity:0;}
.fpk-rm-badge-num{position:relative;z-index:3;font-family:'Clash Display','Poppins',sans-serif;font-size:23px;font-weight:600;line-height:1;color:#fff;font-variant-numeric:tabular-nums;}

.fpk-rm-lvl{display:block;font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--fpk-txt-soft);margin-bottom:9px;}
.fpk-rm-step-title{font-family:'Clash Display','Poppins',sans-serif;font-size:19px;font-weight:600;letter-spacing:-.015em;line-height:1.18;margin:0 0 6px;color:var(--fpk-txt);}
.fpk-rm-step-copy{font-size:13.5px;font-weight:400;line-height:1.55;color:var(--fpk-txt-soft);margin:0;}

/* status chips: Locked <-> Unlocked cross-fade */
.fpk-rm-status{position:absolute;top:18px;right:18px;display:inline-flex;align-items:center;gap:6px;font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:5px 9px;border-radius:999px;pointer-events:none;}
.fpk-rm-status--locked{background:rgba(255,255,255,.05);color:var(--fpk-txt-soft);border:1px solid rgba(255,255,255,.09);opacity:0;}
.fpk-rm-status--open{opacity:1;background:rgba(183,226,199,.10);border:1px solid rgba(183,226,199,.25);color:#b7e2c7;}
.fpk-rm-pop-tick{width:12px;height:12px;border-radius:50%;background:#05170d;position:relative;flex:none;}
.fpk-rm-pop-tick::after{content:"";position:absolute;left:3.5px;top:2px;width:3px;height:6px;border:solid var(--fpk-neon);border-width:0 2px 2px 0;transform:rotate(43deg);}

/* ---------- Achievement toast ---------- */
.fpk-rm-toast{position:absolute;right:26px;bottom:26px;z-index:8;display:inline-flex;align-items:center;gap:12px;padding:13px 18px 13px 14px;background:linear-gradient(180deg,#0f1a14,#0a130e);color:#fff;border-radius:14px;border:1px solid rgba(255,255,255,.12);box-shadow:0 26px 55px -22px rgba(0,0,0,.7);}
.fpk-rm-toast-glow{position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:0 0 0 2px rgba(12,154,95,.35),0 0 24px 4px rgba(12,154,95,.25);opacity:0;}
.fpk-rm-toast-icon{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,var(--fpk-green-deep),var(--fpk-neon));color:#04140b;box-shadow:0 0 12px rgba(12,154,95,.35);}
.fpk-rm-toast-txt{display:flex;flex-direction:column;line-height:1.25;}
.fpk-rm-toast-txt strong{font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--fpk-neon);}
.fpk-rm-toast-txt em{font-style:normal;font-size:14px;font-weight:600;color:#fff;margin-top:2px;}

/* ---------- Footer / CTA ---------- */
.fpk-rm-footer{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:40px;}
.fpk-rm-cta{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:10px;padding:15px 26px;border-radius:999px;background:linear-gradient(135deg,#007049,#0c9a5f);color:#fff;text-decoration:none;font-family:'Clash Display','Poppins',sans-serif;font-size:15px;font-weight:600;letter-spacing:-.005em;box-shadow:0 16px 34px -16px rgba(0,112,73,.55);will-change:transform;}
.fpk-rm-cta-shine{position:absolute;top:0;bottom:0;left:0;width:80px;transform:skewX(-20deg) translateX(-160%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.65),transparent);pointer-events:none;}
.fpk-rm-cta-arrow{display:inline-flex;transition:transform .3s var(--fpk-e-out);}
.fpk-rm-cta:hover .fpk-rm-cta-arrow{transform:translateX(3px);}
.fpk-rm-cta .fpk-rm-ripple{position:absolute;width:120px;height:120px;margin:-60px;border-radius:50%;background:var(--fpk-neon-2);pointer-events:none;z-index:0;mix-blend-mode:screen;}
.fpk-rm-label{position:relative;z-index:2;}
.fpk-rm-footer-note{font-size:13.5px;font-weight:400;color:rgba(255,255,255,.55);margin:0;}
.fpk-rm-footer-note strong{color:#fff;font-weight:600;}

/* ---------- JS-gated pre-anim states (hidden/locked only when scripted) ---------- */
.fpk-roadmap-sec.fpk-anim [data-rise]{opacity:0;}
.fpk-roadmap-sec.fpk-anim .fpk-rm-meter-fill{transform:scaleX(0);}
.fpk-roadmap-sec.fpk-anim .fpk-rm-meter-label{opacity:0;}
.fpk-roadmap-sec.fpk-anim .fpk-rm-node-inner{opacity:0;}
.fpk-roadmap-sec.fpk-anim .fpk-rm-node-glow{opacity:0;}
.fpk-roadmap-sec.fpk-anim .fpk-rm-badge-fill{opacity:0;}
.fpk-roadmap-sec.fpk-anim .fpk-rm-badge-num{opacity:0;}
.fpk-roadmap-sec.fpk-anim .fpk-rm-badge-lock{opacity:1;}
.fpk-roadmap-sec.fpk-anim .fpk-rm-status--open{opacity:0;}
.fpk-roadmap-sec.fpk-anim .fpk-rm-status--locked{opacity:1;}
.fpk-roadmap-sec.fpk-anim .fpk-rm-toast{opacity:0;}

/* ---------- Reduced motion: final visible states ---------- */
@media (prefers-reduced-motion:reduce){
  .fpk-roadmap-sec.fpk-anim [data-rise],
  .fpk-roadmap-sec.fpk-anim .fpk-rm-meter-label,
  .fpk-roadmap-sec.fpk-anim .fpk-rm-node-inner,
  .fpk-roadmap-sec.fpk-anim .fpk-rm-node-glow,
  .fpk-roadmap-sec.fpk-anim .fpk-rm-badge-fill,
  .fpk-roadmap-sec.fpk-anim .fpk-rm-badge-num,
  .fpk-roadmap-sec.fpk-anim .fpk-rm-status--open,
  .fpk-roadmap-sec.fpk-anim .fpk-rm-toast{opacity:1;}
  .fpk-roadmap-sec.fpk-anim .fpk-rm-meter-fill{transform:scaleX(1);}
  .fpk-roadmap-sec.fpk-anim .fpk-rm-badge-lock,
  .fpk-roadmap-sec.fpk-anim .fpk-rm-status--locked{opacity:0;}
}

/* ---------- Tablet 769–899px: NOT pinned (canPin cutoff = 900px, fix 3) ----------
   2-col => 3 rows is fine here because the scene never pins, so no toast/climax clip.
   Toast flows relative (full width) whenever the scene is unpinned. */
@media (max-width:899px){
  .fpk-rm-track{grid-template-columns:1fr 1fr;}
  .fpk-rm-toast{position:relative;right:auto;bottom:auto;margin-top:22px;width:100%;}
}

/* ---------- <=768px: single column, no pin ---------- */
@media (max-width:768px){
  .fpk-roadmap-sec{padding:72px 0;}
  .fpk-rm-head{margin-bottom:30px;}
  .fpk-rm-stage{padding:22px 18px 28px;border-radius:22px;}
  .fpk-rm-track{grid-template-columns:1fr;gap:14px;}
  .fpk-rm-meter{margin-bottom:26px;gap:14px;}
  .fpk-rm-meter-track{height:22px;}
  .fpk-rm-meter-pct{font-size:26px;}
  .fpk-rm-meter-label{min-width:96px;}
  .fpk-rm-node-inner{padding:22px 18px 20px;}
  .fpk-rm-footer{margin-top:32px;gap:16px;}
}

/* ---------- Small phones: finer type/padding trims (layout already single-column above) ---------- */
@media (max-width:480px){
  .fpk-roadmap-sec{padding:64px 0;}
  .fpk-rm-stage{padding:20px 16px 26px;}
  .fpk-rm-meter-pct{font-size:24px;}
  .fpk-rm-meter-label{min-width:88px;}
}





/* ==== mentorband ==== */
/* ============ FPK mentorband (fpk-mb4) — dark-green mentors band ============ */
/* px units throughout (theme sets rem base to 62.5%); every selector scoped .fpk-mb4- */

.fpk-mb4-sec{
  --fpk-mb4-green:#007049;
  --fpk-mb4-bright:#0c9a5f;
  --fpk-mb4-mint:#b7e2c7;
  --fpk-mb4-ink:#0c1411;
  --fpk-mb4-dark:#00120c;
  --fpk-mb4-dark2:#063522;
  --fpk-mb4-warm:#f6f7f4;
  --fpk-mb4-line:rgba(183,226,199,.14);
  --fpk-mb4-pad:clamp(20px,4vw,44px);
  --fpk-mb4-noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='0.55'/%3E%3C/svg%3E");
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(110% 70% at 50% -10%, rgba(6,53,34,.95) 0%, rgba(0,18,12,0) 60%),
    linear-gradient(180deg,#01150d 0%, #00120c 100%);
  color:var(--fpk-mb4-warm);
  font-family:'NHG Text','Inter',sans-serif;
  padding:clamp(72px,9vw,128px) 0 clamp(56px,7vw,96px);
}
.fpk-mb4-sec::before{
  content:"";position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(183,226,199,.22),transparent);
}

/* ---------- ambient light drift (signature #1) ---------- */
.fpk-mb4-ambient{position:absolute;inset:0;pointer-events:none;will-change:transform}
.fpk-mb4-glow{position:absolute;border-radius:50%;filter:blur(70px)}
.fpk-mb4-glow--a{
  width:54vw;height:54vw;max-width:780px;max-height:780px;left:-15vw;top:-20vw;
  background:radial-gradient(circle,rgba(0,112,73,.36),transparent 65%);
  animation:fpk-mb4-drift-a 26s ease-in-out infinite alternate;
}
.fpk-mb4-glow--b{
  width:46vw;height:46vw;max-width:680px;max-height:680px;right:-13vw;bottom:-18vw;
  background:radial-gradient(circle,rgba(12,154,95,.16),transparent 65%);
  animation:fpk-mb4-drift-b 34s ease-in-out infinite alternate;
}
.fpk-mb4-grain{position:absolute;inset:0;background-image:var(--fpk-mb4-noise);background-size:140px;opacity:.05;mix-blend-mode:overlay}
@keyframes fpk-mb4-drift-a{from{transform:translate(0,0) scale(1)}to{transform:translate(9vw,6vw) scale(1.12)}}
@keyframes fpk-mb4-drift-b{from{transform:translate(0,0) scale(1.06)}to{transform:translate(-8vw,-5vw) scale(.94)}}

/* ---------- layout ---------- */
.fpk-mb4-wrap{position:relative;z-index:1;max-width:1220px;margin:0 auto;padding:0 var(--fpk-mb4-pad)}
.fpk-mb4-head{margin-bottom:clamp(34px,4.5vw,56px)}
.fpk-mb4-eyebrow{
  display:flex;align-items:center;gap:12px;margin:0 0 18px;
  font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:500;
  letter-spacing:.22em;text-transform:uppercase;color:rgba(183,226,199,.72);
}
.fpk-mb4-eyebrow-tick{width:26px;height:1px;flex:none;background:linear-gradient(90deg,var(--fpk-mb4-bright),rgba(12,154,95,0))}
.fpk-mb4-title{
  margin:0;max-width:17ch;
  font-family:'Clash Display','Poppins',sans-serif;font-weight:600;
  font-size:clamp(33px,24px + 2.8vw,56px);line-height:1.08;letter-spacing:-.02em;
  color:var(--fpk-mb4-warm);
}
.fpk-mb4-grad,.fpk-mb4-grad .fpk-mb4-w{
  background:linear-gradient(94deg,#0c9a5f 5%,#b7e2c7 95%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;font-style:normal;
}
.fpk-mb4-w{display:inline-block;will-change:transform}

/* ---------- card row ---------- */
.fpk-mb4-track{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(12px,1.6vw,18px)}
.fpk-mb4-card{min-width:0;perspective:900px}
.fpk-mb4-cardin{
  position:relative;height:100%;display:flex;flex-direction:column;
  padding:10px 10px 14px;border-radius:20px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.015) 60%),
    linear-gradient(180deg,rgba(6,53,34,.5),rgba(0,18,12,.4));
  border:1px solid var(--fpk-mb4-line);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 24px 48px -24px rgba(0,0,0,.55);
  transition:border-color .4s ease,box-shadow .4s ease;
  transform-style:preserve-3d;will-change:transform;
}
.fpk-mb4-card:hover .fpk-mb4-cardin{
  border-color:rgba(12,154,95,.4);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.09),
    inset 0 0 0 1px rgba(12,154,95,.12),
    0 30px 60px -26px rgba(0,0,0,.65),
    0 12px 40px -18px rgba(12,154,95,.28);
}
@media (hover:hover){
  .fpk-mb4-sec:not(.fpk-mb4-js) .fpk-mb4-card:hover .fpk-mb4-cardin{transform:translateY(-6px)}
}

/* ---------- photo placeholder (CSS-only "portrait") ---------- */
.fpk-mb4-photo{position:relative;aspect-ratio:10/12.4;border-radius:13px;overflow:hidden;background:#03170e;isolation:isolate}
.fpk-mb4-ph-art{position:absolute;inset:0}
.fpk-mb4-ph-bg{
  position:absolute;inset:0;
  filter:hue-rotate(var(--fpk-mb4-hue,0deg));
  background:
    radial-gradient(120% 85% at var(--fpk-mb4-lx,50%) 8%,rgba(12,154,95,.30),transparent 55%),
    radial-gradient(90% 55% at 85% 104%,rgba(0,112,73,.36),transparent 62%),
    linear-gradient(158deg,#0a2f1f 0%,#041a11 55%,#02120b 100%);
  transition:transform .7s cubic-bezier(.2,.6,.2,1);
  will-change:transform;
}
.fpk-mb4-card:hover .fpk-mb4-ph-bg{transform:scale(1.045)}
.fpk-mb4-ph-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 32%,rgba(183,226,199,.07) 46%,transparent 58%)}
.fpk-mb4-ph-halo{
  position:absolute;left:calc(var(--fpk-mb4-lx,50%) - 32%);top:2%;width:64%;aspect-ratio:1;border-radius:50%;
  background:radial-gradient(closest-side,rgba(183,226,199,.20),rgba(12,154,95,.07) 55%,transparent 72%);
  filter:blur(8px);
}
.fpk-mb4-ph-fig{position:absolute;inset:0;filter:drop-shadow(0 16px 22px rgba(0,0,0,.38))}
.fpk-mb4-ph-head{
  position:absolute;top:15%;left:calc(50% + var(--fpk-mb4-figx,0%));width:35%;aspect-ratio:.84;
  transform:translateX(-50%) scale(var(--fpk-mb4-figs,1));
  border-radius:48% 52% 46% 46%/60% 58% 42% 42%;
  background:linear-gradient(205deg,#154631 0%,#0a2418 62%,#06190f 100%);
  box-shadow:inset 7px 9px 14px -7px rgba(183,226,199,.30),inset -10px -12px 20px -10px rgba(0,0,0,.65);
}
.fpk-mb4-ph-torso{
  position:absolute;top:47.5%;left:calc(50% + var(--fpk-mb4-figx,0%));width:96%;height:60%;
  transform:translateX(-50%) scale(var(--fpk-mb4-figs,1));
  border-radius:46% 54% 0 0/92% 100% 0 0;
  background:linear-gradient(192deg,#164a33 0%,#0b2a1b 55%,#071c11 100%);
  box-shadow:inset 0 12px 16px -9px rgba(183,226,199,.24),inset -18px -20px 34px -18px rgba(0,0,0,.6);
}
.fpk-mb4-ph-noise{position:absolute;inset:0;background-image:var(--fpk-mb4-noise);background-size:140px;opacity:.12;mix-blend-mode:overlay}
.fpk-mb4-ph-fade{position:absolute;left:0;right:0;bottom:0;height:38%;background:linear-gradient(180deg,transparent,rgba(1,14,9,.62))}
.fpk-mb4-ph-idx{position:absolute;top:10px;right:12px;font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.18em;color:rgba(183,226,199,.38)}
.fpk-mb4-ph-sheen{
  position:absolute;top:-15%;bottom:-15%;left:-70%;width:55%;z-index:2;
  transform:skewX(-18deg);pointer-events:none;will-change:transform;
  background:linear-gradient(105deg,transparent,rgba(246,247,244,.13) 45%,rgba(246,247,244,.05) 55%,transparent);
}
.fpk-mb4-photo::after{
  content:"";position:absolute;inset:0;z-index:3;border-radius:inherit;pointer-events:none;
  box-shadow:inset 0 0 54px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.07),inset 0 0 0 1px rgba(183,226,199,.06);
}

/* per-company variation — light position, figure offset/scale, subtle hue tilt */
.fpk-mb4-card[data-co="google"]{--fpk-mb4-figx:-5%;--fpk-mb4-lx:36%;--fpk-mb4-hue:0deg;--fpk-mb4-figs:1}
.fpk-mb4-card[data-co="microsoft"]{--fpk-mb4-figx:4%;--fpk-mb4-lx:66%;--fpk-mb4-hue:-9deg;--fpk-mb4-figs:1.05}
.fpk-mb4-card[data-co="amazon"]{--fpk-mb4-figx:-2%;--fpk-mb4-lx:56%;--fpk-mb4-hue:7deg;--fpk-mb4-figs:.97}
.fpk-mb4-card[data-co="meta"]{--fpk-mb4-figx:5%;--fpk-mb4-lx:42%;--fpk-mb4-hue:-15deg;--fpk-mb4-figs:1.02}

/* ---------- company chip ---------- */
.fpk-mb4-chip{
  position:absolute;left:10px;bottom:10px;z-index:4;
  display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;overflow:hidden;
  background:rgba(0,18,12,.62);
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  border:1px solid rgba(183,226,199,.24);
  box-shadow:0 6px 16px -8px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.09);
  font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:#eafff2;white-space:nowrap;
}
.fpk-mb4-chip::before{content:"";width:5px;height:5px;border-radius:50%;flex:none;background:var(--fpk-mb4-bright);box-shadow:0 0 8px rgba(12,154,95,.9)}
.fpk-mb4-chip-glint{
  position:absolute;top:0;bottom:0;left:-70%;width:55%;transform:skewX(-20deg);pointer-events:none;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);will-change:transform;
}

/* ---------- meta ---------- */
.fpk-mb4-meta{padding:13px 4px 2px}
.fpk-mb4-name{margin:0 0 3px;font-family:'Clash Display','Poppins',sans-serif;font-weight:600;font-size:16.5px;letter-spacing:-.01em;color:var(--fpk-mb4-warm)}
.fpk-mb4-role{margin:0;font-size:13.5px;font-weight:400;line-height:1.35;color:rgba(183,226,199,.62)}

/* ---------- "+25 more" tile (signature #2: live counter) ---------- */
.fpk-mb4-photo--more{
  aspect-ratio:auto;height:100%;min-height:240px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;
  padding:24px 18px;text-align:center;
}
.fpk-mb4-photo--more .fpk-mb4-ph-bg{
  background:
    radial-gradient(90% 70% at 50% 0%,rgba(12,154,95,.22),transparent 60%),
    linear-gradient(165deg,#0a2c1e 0%,#03150d 100%);
}
.fpk-mb4-more-rings{
  position:absolute;inset:-30%;
  background:repeating-radial-gradient(circle at 50% 50%,rgba(183,226,199,.06) 0 1px,transparent 1px 44px);
  -webkit-mask-image:radial-gradient(closest-side at 50% 50%,#000 30%,transparent 78%);
  mask-image:radial-gradient(closest-side at 50% 50%,#000 30%,transparent 78%);
}
.fpk-mb4-pile{position:relative;z-index:2;display:flex}
.fpk-mb4-pp{
  width:26px;height:26px;border-radius:50%;border:1.5px solid rgba(1,20,13,.9);
  background:
    radial-gradient(circle at 50% 32%,#1b5a3e 0 24%,transparent 26%),
    radial-gradient(circle at 50% 92%,#1b5a3e 0 40%,transparent 42%),
    linear-gradient(180deg,#0e3423,#071f14);
  box-shadow:0 4px 10px -4px rgba(0,0,0,.5);
}
.fpk-mb4-pp + .fpk-mb4-pp{margin-left:-9px}
.fpk-mb4-pp:nth-child(2){filter:brightness(1.15)}
.fpk-mb4-pp:nth-child(3){filter:brightness(.92)}
.fpk-mb4-pp:nth-child(4){filter:brightness(1.08)}
.fpk-mb4-pp:nth-child(5){filter:brightness(.85)}
.fpk-mb4-more-num{
  position:relative;z-index:2;
  font-family:'Clash Display','Poppins',sans-serif;font-weight:600;font-size:clamp(38px,30px + 1.6vw,50px);
  line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums;
  background:linear-gradient(100deg,#0c9a5f 10%,#b7e2c7 90%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.fpk-mb4-more-label{position:relative;z-index:2;max-width:16ch;font-size:14px;line-height:1.45;color:rgba(183,226,199,.75)}

/* ---------- pagination dots + caption ---------- */
.fpk-mb4-foot{margin-top:clamp(26px,3.5vw,38px);display:flex;flex-direction:column;align-items:center;gap:14px}
.fpk-mb4-dots{display:flex;gap:4px}
.fpk-mb4-dot{
  appearance:none;-webkit-appearance:none;width:28px;height:28px;margin:0;padding:0;
  display:grid;place-items:center;background:transparent;border:0;border-radius:999px;cursor:pointer;
}
.fpk-mb4-dot::after{content:"";width:6px;height:6px;border-radius:999px;background:rgba(183,226,199,.28);transition:width .35s cubic-bezier(.2,.6,.2,1),background .35s ease}
.fpk-mb4-dot:hover::after{background:rgba(183,226,199,.55)}
.fpk-mb4-dot--on::after{width:22px;background:linear-gradient(90deg,var(--fpk-mb4-bright),var(--fpk-mb4-mint))}
.fpk-mb4-dot:focus-visible{outline:2px solid var(--fpk-mb4-bright);outline-offset:2px}
.fpk-mb4-caption{margin:0;font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.08em;text-align:center;color:rgba(183,226,199,.42)}

/* ---------- mobile: scroll-snap carousel ---------- */
@media (max-width:900px){
  .fpk-mb4-track{
    display:flex;overflow-x:auto;gap:14px;
    margin:0 calc(-1 * var(--fpk-mb4-pad));
    padding:6px var(--fpk-mb4-pad) 20px;
    scroll-snap-type:x mandatory;scroll-padding-inline:var(--fpk-mb4-pad);
    scrollbar-width:none;-webkit-overflow-scrolling:touch;
  }
  .fpk-mb4-track::-webkit-scrollbar{display:none}
  .fpk-mb4-card{flex:0 0 min(72vw,300px);scroll-snap-align:center}
  .fpk-mb4-title{max-width:100%}
  .fpk-mb4-photo--more{min-height:0}
}

/* ---------- reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  .fpk-mb4-glow--a,.fpk-mb4-glow--b{animation:none}
  .fpk-mb4-cardin,.fpk-mb4-ph-bg,.fpk-mb4-dot::after{transition:none}
  .fpk-mb4-card:hover .fpk-mb4-ph-bg{transform:none}
}
.fpk-mb4-reduced .fpk-mb4-glow--a,
.fpk-mb4-reduced .fpk-mb4-glow--b{animation:none}
/* one-frame layout: heading left, cards right */
@media(min-width:981px){
  .fpk-mb4-wrap{display:grid!important;grid-template-columns:minmax(250px,.85fr) 2.5fr;gap:40px;align-items:center}
  .fpk-mb4-head{margin:0!important;max-width:none!important}
  .fpk-mb4-title{font-size:clamp(24px,2.6vw,36px)!important}
  .fpk-mb4-track{grid-column:2}
  .fpk-mb4-head{grid-column:1;grid-row:1}
  .fpk-mb4-track{grid-row:1}
  .fpk-mb4-dots,.fpk-mb4-foot,.fpk-mb4-caption{grid-column:2}
}


/* ==== mentor ==== */






.fpk-mentor-sec{
  position:relative;
  overflow:hidden;
  padding:clamp(64px,9vw,104px) clamp(20px,5vw,28px);
  background:linear-gradient(180deg,var(--fpk-dark,#00120c),#063522);
  color:#fff;
  font-family:'NHG Text','Inter',system-ui,-apple-system,sans-serif;
  -webkit-font-smoothing:antialiased;
  --fpk-m-soft:#9fc3b1;
  --fpk-m-line:rgba(183,226,199,.18);
  --fpk-m-ease:cubic-bezier(.22,.61,.36,1);
}
.fpk-mentor-bg{
  position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(58% 44% at 84% -8%, rgba(12,154,95,.16), transparent 70%),
    radial-gradient(50% 42% at 4% 108%, rgba(0,112,73,.20), transparent 72%);
}
.fpk-mentor-wrap{position:relative;max-width:1200px;margin:0 auto;}
.fpk-mentor-row{
  display:grid;grid-template-columns:1fr .8fr;gap:48px;align-items:center;
}

/* visually-hidden accessible live region (mirrors reference __sr) */
.fpk-mentor-sec .fpk-mentor-sr{
  position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;
}

/* ---- left copy ---- */
.fpk-mentor-copy{min-width:0;}
.fpk-mentor-eyebrow{
  display:inline-flex;align-items:center;gap:9px;
  font-family:'IBM Plex Mono',monospace;
  font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--fpk-mint,#b7e2c7);
  padding:7px 14px 7px 12px;border-radius:999px;
  background:rgba(12,154,95,.08);
  border:1px solid var(--fpk-m-line);
}
.fpk-mentor-eyebrow-dot{
  width:7px;height:7px;border-radius:50%;flex:0 0 auto;
  background:var(--fpk-br,#0c9a5f);
  box-shadow:0 0 0 3px rgba(12,154,95,.2);
  animation:fpk-mentor-pulse 2.4s ease-in-out infinite;
}
.fpk-mentor-title{
  margin:20px 0 0;
  font-family:'Clash Display','Poppins',system-ui,sans-serif;
  font-size:clamp(26px,3.6vw,40px);
  line-height:1.06;font-weight:600;letter-spacing:-.02em;
  color:#fff;
}
.fpk-mentor-body{
  margin:18px 0 0;max-width:52ch;
  font-size:15.5px;line-height:1.65;font-weight:400;
  color:#bfe6d3;
}
.fpk-mentor-cta{
  position:relative;overflow:hidden;
  display:inline-flex;align-items:center;gap:10px;
  margin:24px 0 0;padding:15px 26px;border-radius:13px;
  background:var(--fpk-green,#007049);color:#fff;
  font-size:15px;font-weight:600;line-height:1;
  box-shadow:0 10px 26px rgba(0,112,73,.32);
  transition:transform .3s var(--fpk-m-ease),box-shadow .3s var(--fpk-m-ease);
  will-change:transform;
}
.fpk-mentor-cta:hover{box-shadow:0 16px 36px rgba(0,112,73,.42);}
.fpk-mentor-cta-label,.fpk-mentor-cta-ar{position:relative;z-index:2;}
.fpk-mentor-cta-ar{transition:transform .3s var(--fpk-m-ease);}
.fpk-mentor-cta:hover .fpk-mentor-cta-ar{transform:translateX(5px);}
.fpk-mentor-cta-shine{
  position:absolute;top:0;left:0;height:100%;width:60%;pointer-events:none;z-index:1;
  background:linear-gradient(105deg,transparent,rgba(255,255,255,.5),transparent);
  transform:translateX(-160%) skewX(-18deg);
}
.fpk-mentor-cta:focus-visible{outline:2px solid var(--fpk-br,#0c9a5f);outline-offset:3px;}

/* ---- right player card ---- */
.fpk-mentor-card{
  position:relative;overflow:hidden;
  border:1px solid var(--fpk-m-line);
  border-radius:20px;
  padding:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  box-shadow:0 30px 70px -34px rgba(0,18,12,.7);
  transition:border-color .35s var(--fpk-m-ease);
  will-change:transform;
}
.fpk-mentor-card:hover{border-color:rgba(12,154,95,.5);}
.fpk-mentor-card-glow{
  position:absolute;inset:-1px;border-radius:inherit;pointer-events:none;opacity:0;z-index:1;
  background:radial-gradient(120% 82% at 50% -12%, rgba(12,154,95,.22), transparent 62%);
  box-shadow:inset 0 0 0 1px rgba(12,154,95,.4), 0 30px 70px -30px rgba(12,154,95,.5);
  transition:opacity .4s var(--fpk-m-ease);
}
.fpk-mentor-card:hover .fpk-mentor-card-glow{opacity:1;}
.fpk-mentor-card-shine{
  position:absolute;top:0;left:0;width:60%;height:100%;pointer-events:none;z-index:1;
  transform:translateX(-160%) skewX(-18deg);opacity:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),transparent);
}
.fpk-mentor-card-strip{
  position:relative;z-index:2;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin-bottom:18px;
}
.fpk-mentor-card-kicker{
  font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:600;
  letter-spacing:.18em;text-transform:uppercase;color:var(--fpk-m-soft);
}
.fpk-mentor-card-live{
  display:inline-flex;align-items:center;gap:6px;
  font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;color:var(--fpk-dark,#00120c);
  background:var(--fpk-br,#0c9a5f);padding:4px 9px;border-radius:999px;
  will-change:transform;
}
.fpk-mentor-card-live-dot{
  width:5px;height:5px;border-radius:50%;background:var(--fpk-dark,#00120c);
  animation:fpk-mentor-blink 2s ease-in-out infinite;
}
.fpk-mentor-card-top{
  position:relative;z-index:2;
  display:flex;align-items:center;gap:15px;
}
.fpk-mentor-card-av{
  flex:0 0 auto;
  width:64px;height:64px;border-radius:15px;
  display:flex;align-items:center;justify-content:center;
  font-family:'Clash Display','Poppins',system-ui,sans-serif;font-weight:600;font-size:24px;letter-spacing:-.02em;
  color:#cdeede;
  background:linear-gradient(150deg,#0a5c3f,#02372a);
  box-shadow:inset 0 0 0 1px rgba(183,226,199,.2), 0 8px 22px -10px rgba(0,0,0,.6);
  will-change:transform;
}
.fpk-mentor-card-id{display:flex;flex-direction:column;gap:2px;min-width:0;}
.fpk-mentor-card-name{font-family:'Clash Display','Poppins',system-ui,sans-serif;font-weight:600;font-size:19px;color:#fff;}
.fpk-mentor-card-role{font-size:12.5px;color:var(--fpk-mint,#b7e2c7);}
.fpk-mentor-card-badge{
  margin-left:auto;flex:0 0 auto;
  font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:600;letter-spacing:.04em;
  color:#063;background:var(--fpk-mint,#b7e2c7);
  padding:5px 10px;border-radius:999px;
  will-change:transform;
}
.fpk-mentor-card-meter{position:relative;z-index:2;margin:20px 0 0;}
.fpk-mentor-card-meter-lab{
  display:flex;align-items:center;justify-content:space-between;
  font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;color:var(--fpk-m-soft);
  margin-bottom:8px;
}
.fpk-mentor-card-meter-count{color:var(--fpk-br,#0c9a5f);font-weight:600;font-variant-numeric:tabular-nums;}
.fpk-mentor-card-meter-track{
  position:relative;height:8px;border-radius:999px;overflow:hidden;
  background:rgba(183,226,199,.14);
}
.fpk-mentor-card-meter-fill{
  position:absolute;inset:0;border-radius:inherit;
  transform:scaleX(1);transform-origin:left center;
  background:linear-gradient(90deg,var(--fpk-green,#007049),var(--fpk-br,#0c9a5f));
  box-shadow:0 0 18px -2px rgba(12,154,95,.6);
  will-change:transform,filter;
}

/* ---- achievement-unlock toast (gamified payoff — mirrors reference back.out(2.6) + shine) ---- */
.fpk-mentor-card-toast{
  position:relative;overflow:hidden;z-index:2;
  display:inline-flex;align-items:center;gap:9px;align-self:flex-start;
  margin:14px 0 0;
  padding:7px 14px 7px 8px;border-radius:999px;
  background:linear-gradient(180deg,rgba(12,154,95,.18),rgba(0,112,73,.12));
  border:1px solid rgba(12,154,95,.5);
  box-shadow:0 14px 34px -14px rgba(12,154,95,.7), inset 0 0 0 1px rgba(12,154,95,.12);
  will-change:transform,opacity;
}
.fpk-mentor-card-toast-badge{
  display:inline-flex;align-items:center;justify-content:center;
  width:22px;height:22px;border-radius:50%;flex:0 0 auto;
  color:#0c2b1c;
  background:linear-gradient(150deg,var(--fpk-br,#0c9a5f),var(--fpk-green,#007049));
}
.fpk-mentor-card-toast-text{
  font-size:12px;font-weight:600;letter-spacing:.01em;color:#fff;white-space:nowrap;
}
.fpk-mentor-card-toast-text b{color:var(--fpk-mint,#b7e2c7);font-weight:600;}
.fpk-mentor-card-toast-shine{
  position:absolute;top:0;left:0;width:40%;height:100%;pointer-events:none;
  transform:translateX(-140%) skewX(-20deg);opacity:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);
}

.fpk-mentor-card-bio{
  position:relative;z-index:2;
  margin:18px 0 0;
  font-size:13.5px;line-height:1.62;color:#a9cbba;
}
.fpk-mentor-card-li{
  position:relative;z-index:2;
  display:inline-flex;margin-top:14px;
  color:var(--fpk-br,#0c9a5f);font-weight:600;font-size:14px;
  transition:color .25s var(--fpk-m-ease);
}
.fpk-mentor-card-li:hover{color:var(--fpk-mint,#b7e2c7);}
.fpk-mentor-card-li:focus-visible{outline:2px solid var(--fpk-br,#0c9a5f);outline-offset:3px;border-radius:4px;}

/* ripple (JS spawned) — behind the z-index:2 content layer */
.fpk-mentor-sec .fpk-mentor-ripple{
  position:absolute;width:120px;height:120px;margin:-60px 0 0 -60px;border-radius:50%;
  background:rgba(12,154,95,.5);pointer-events:none;
}

/* ---- JS-hidden pre-anim states (only when fpk-js active) ---- */
.fpk-mentor-sec.fpk-js [data-fpk-rise]{opacity:0;}
.fpk-mentor-sec.fpk-js [data-fpk-headline]{opacity:0;}
.fpk-mentor-sec.fpk-js [data-fpk-card]{opacity:0;}
.fpk-mentor-sec.fpk-js [data-fpk-fill]{transform:scaleX(0);}
.fpk-mentor-sec.fpk-js [data-fpk-foot]{opacity:0;}
.fpk-mentor-sec.fpk-js [data-fpk-toast]{opacity:0;transform:scale(0.8);}

@keyframes fpk-mentor-pulse{
  0%,100%{box-shadow:0 0 0 3px rgba(12,154,95,.22);}
  50%{box-shadow:0 0 0 6px rgba(12,154,95,0);}
}
@keyframes fpk-mentor-blink{
  0%,100%{opacity:1;}
  50%{opacity:.35;}
}

@media(max-width:900px){
  .fpk-mentor-row{grid-template-columns:1fr;gap:30px;}
  .fpk-mentor-body{max-width:60ch;}
}
@media(max-width:520px){
  .fpk-mentor-card{padding:20px;}
  .fpk-mentor-card-av{width:56px;height:56px;font-size:21px;}
  .fpk-mentor-card-toast-text{white-space:normal;}
}
@media(prefers-reduced-motion:reduce){
  .fpk-mentor-sec *{animation:none!important;transition:none!important;}
}


.fpk-mentor-sec,.fpk-mn-sec,section[data-fpk="mentor"]{position:relative;overflow:hidden}
section[data-fpk="mentor"] > *:not(.fpk-mn-revolve){position:relative;z-index:1}
}
@media(prefers-reduced-motion:reduce){}











.fpk-mn-beams{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
section[data-fpk="mentor"]{position:relative;overflow:hidden;background:linear-gradient(180deg,#00160e,#012317 55%,#00120c)}
section[data-fpk="mentor"] > *:not(.fpk-mn-beams){position:relative;z-index:1}
.fpk-mn-beam{position:absolute;top:-25%;height:150%;width:36%;left:0;transform:translateX(-130%) skewX(-18deg);
  background:linear-gradient(105deg,transparent,rgba(12,154,95,.20) 38%,rgba(183,226,199,.13) 55%,transparent);filter:blur(7px)}
.fpk-mn-beam--b{width:20%;filter:blur(11px);opacity:.75}
.fpk-mn-glowc{position:absolute;left:50%;top:42%;width:min(760px,90%);aspect-ratio:1/1;transform:translate(-50%,-50%);
  background:radial-gradient(circle,rgba(12,154,95,.14),transparent 60%)}
@media(prefers-reduced-motion:reduce){.fpk-mn-beam{transform:translateX(40%) skewX(-18deg)}}


/* ==== outcomes ==== */






.fpk-outcomes-sec{
  --fpk-oc-ease:cubic-bezier(.22,1,.36,1);
  --fpk-oc-radius:18px; --fpk-oc-maxw:1120px;
  position:relative; background:var(--fpk-mintbg); color:var(--fpk-ink);
  font-family:'NHG Text','Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  padding:96px 24px; overflow:hidden; -webkit-font-smoothing:antialiased;
}
.fpk-outcomes-sec *{box-sizing:border-box;}
.fpk-outcomes-sec::before{
  content:""; position:absolute; inset:0; pointer-events:none; opacity:.75;
  background:
    radial-gradient(60% 45% at 12% 0%, rgba(12,154,95,.11), transparent 60%),
    radial-gradient(52% 42% at 100% 100%, rgba(0,112,73,.09), transparent 55%);
}
.fpk-oc-wrap{position:relative; max-width:var(--fpk-oc-maxw); margin:0 auto; z-index:1;}

/* ---- Header ---- */
.fpk-oc-head{max-width:780px; margin-bottom:52px;}
.fpk-oc-eyebrow{
  display:inline-flex; align-items:center; gap:9px; margin:0 0 20px;
  font-size:12.5px; font-weight:600; letter-spacing:.14em; text-transform:uppercase;
  color:var(--fpk-green); background:#fff;
  padding:8px 15px 8px 12px; border-radius:100px;
  border:1px solid var(--fpk-mint); box-shadow:0 1px 0 rgba(12,20,17,.03);
}
.fpk-oc-eyebrow-dot{
  width:8px; height:8px; border-radius:50%;
  background:linear-gradient(135deg,var(--fpk-br),var(--fpk-green));
  box-shadow:0 0 0 3px rgba(12,154,95,.2);
}
.fpk-oc-title{
  font-family:'Clash Display','Poppins','NHG Text','Inter',sans-serif; margin:0; font-weight:600;
  letter-spacing:-.025em; line-height:1.04;
  font-size:clamp(30px,4.6vw,50px); color:var(--fpk-ink); max-width:16ch;
}
.fpk-oc-title .fpk-oc-line-mask{display:block; overflow:hidden;}
.fpk-oc-sub{
  margin:22px 0 0; font-size:clamp(15px,1.7vw,18px); font-weight:400;
  line-height:1.55; color:var(--fpk-soft); max-width:56ch;
}

/* ---- XP / energy meter ---- */
.fpk-oc-progress{display:flex; align-items:center; gap:16px; margin-top:30px; max-width:440px;}
.fpk-oc-track{
  position:relative; flex:1; height:10px; border-radius:100px;
  background:#d5e9de; overflow:hidden; border:1px solid var(--fpk-mint);
  box-shadow:inset 0 1px 2px rgba(0,60,40,.12);
}
.fpk-oc-fill{
  position:absolute; inset:0; transform-origin:left center; transform:scaleX(1);
  border-radius:100px;
  background:linear-gradient(90deg,var(--fpk-green) 0%,var(--fpk-br) 100%);
  box-shadow:0 0 6px rgba(12,154,95,.2);
}
.fpk-oc-pshine{
  position:absolute; top:0; bottom:0; left:0; width:22%;
  transform:translateX(-260%) skewX(-20deg); opacity:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);
  pointer-events:none;
}
.fpk-oc-plabel{
  font-family:'IBM Plex Mono',monospace; display:inline-block; transform-origin:left center;
  font-size:12px; font-weight:600; letter-spacing:.02em; color:var(--fpk-green);
  white-space:nowrap; font-variant-numeric:tabular-nums;
}

/* ---- Grid ---- */
.fpk-oc-grid{
  list-style:none; margin:0; padding:0;
  display:grid; grid-template-columns:repeat(3,1fr); gap:18px;
}
.fpk-oc-card{
  position:relative; overflow:hidden;
  background:linear-gradient(165deg,#ffffff,#f1faf4);
  border:1px solid var(--fpk-line); border-radius:var(--fpk-oc-radius);
  padding:26px 24px 28px;
  transition:transform .32s var(--fpk-oc-ease), box-shadow .34s var(--fpk-oc-ease), border-color .34s var(--fpk-oc-ease);
  box-shadow:0 1px 2px rgba(12,20,17,.04);
}
.fpk-oc-card::after{
  content:""; position:absolute; right:-40px; top:-40px; width:120px; height:120px; border-radius:50%;
  background:radial-gradient(circle at 30% 30%, rgba(12,154,95,.1), transparent 65%);
  opacity:0; transition:opacity .34s var(--fpk-oc-ease); pointer-events:none;
}
.fpk-oc-card:hover{
  border-color:rgba(0,112,73,.4);
  box-shadow:0 24px 50px -24px rgba(0,112,73,.32), 0 2px 10px rgba(12,20,17,.06);
}
/* CSS lift only for non-magnetic (no-JS / touch / reduced) — GSAP drives lift on magnetic cards */
.fpk-oc-card:not(.is-magnetic):hover{transform:translateY(-6px);}
.fpk-oc-card.is-magnetic{transition:box-shadow .34s var(--fpk-oc-ease), border-color .34s var(--fpk-oc-ease);}
.fpk-oc-card:hover::after{opacity:1;}
.fpk-oc-card:focus-within{border-color:var(--fpk-br); box-shadow:0 0 0 3px rgba(12,154,95,.28);}

/* shine sweep — reads over the light mint tile: faint ink leading edge + bright white peak
   + strengthened green band + faint ink trailing edge, so the reflection travels visibly */
.fpk-oc-shine{
  position:absolute; top:-10%; bottom:-10%; left:0; width:22%;
  transform:translateX(-280%) skewX(-18deg); opacity:0; z-index:3; pointer-events:none;
  background:linear-gradient(90deg,
    transparent 0%,
    rgba(255,255,255,.22) 46%,
    rgba(12,154,95,.12) 62%,
    transparent 100%);
}

/* badge */
.fpk-oc-badge{
  position:relative; width:52px; height:52px; border-radius:15px;
  display:grid; place-items:center; margin-bottom:20px; color:var(--fpk-green);
  background:linear-gradient(150deg, rgba(12,154,95,.14), rgba(12,154,95,.04));
  border:1px solid rgba(0,112,73,.2);
  transition:transform .3s var(--fpk-oc-ease), color .3s var(--fpk-oc-ease), background .3s var(--fpk-oc-ease), box-shadow .3s var(--fpk-oc-ease), border-color .3s var(--fpk-oc-ease);
}
.fpk-oc-badge svg{width:24px; height:24px; position:relative; z-index:2;}
.fpk-oc-ring{
  position:absolute; inset:-4px; border-radius:19px;
  border:2px solid var(--fpk-br); opacity:0; transform:scale(.7); pointer-events:none;
}
.fpk-oc-card:hover .fpk-oc-badge{
  transform:translateY(-3px) rotate(-6deg) scale(1.08);
  color:#fff; background:linear-gradient(150deg,var(--fpk-br),var(--fpk-green));
  border-color:transparent; box-shadow:0 10px 24px -6px rgba(0,112,73,.5);
}

.fpk-oc-tag{
  font-family:'IBM Plex Mono',monospace; display:inline-block; font-size:11px; font-weight:600;
  letter-spacing:.12em; text-transform:uppercase; color:var(--fpk-green);
  margin-bottom:9px; opacity:.85;
}
.fpk-oc-card-title{
  font-family:'Clash Display','Poppins','NHG Text','Inter',sans-serif; margin:0 0 9px; font-size:18px; font-weight:600;
  letter-spacing:-.01em; line-height:1.28; color:var(--fpk-ink);
}
.fpk-oc-card-body{margin:0; font-size:14.5px; font-weight:400; line-height:1.55; color:var(--fpk-soft);}

/* click ripple */
.fpk-outcomes-sec .fpk-ripple{
  position:absolute; width:120px; height:120px; margin:-60px 0 0 -60px;
  border-radius:50%; background:rgba(12,154,95,.5); pointer-events:none; z-index:4;
}

/* JS-hidden initial states (only when JS animates) */
.fpk-outcomes-sec.fpk-anim .fpk-oc-card{opacity:0; pointer-events:none;}
.fpk-outcomes-sec.fpk-anim [data-fpk-rise]{opacity:0;}
.fpk-outcomes-sec.fpk-anim .fpk-oc-fill{transform:scaleX(0);}

/* reduced-motion safety */
@media (prefers-reduced-motion:reduce){
  .fpk-outcomes-sec .fpk-oc-card,
  .fpk-outcomes-sec [data-fpk-rise]{opacity:1 !important; transform:none !important;}
  .fpk-outcomes-sec .fpk-oc-card{pointer-events:auto !important;}
  .fpk-outcomes-sec .fpk-oc-fill{transform:scaleX(1) !important;}
  .fpk-outcomes-sec .fpk-oc-shine,
  .fpk-outcomes-sec .fpk-oc-pshine{display:none;}
}

/* mobile */
@media (max-width:768px){
  .fpk-outcomes-sec{padding:64px 20px;}
  .fpk-oc-head{margin-bottom:36px;}
  .fpk-oc-grid{grid-template-columns:1fr; gap:14px;}
  .fpk-oc-card{padding:22px 20px 24px;}
  .fpk-oc-progress{max-width:100%;}
  .fpk-oc-card:not(.is-magnetic):hover{transform:none;}
}
@media (min-width:481px) and (max-width:768px){
  .fpk-oc-grid{grid-template-columns:repeat(2,1fr);}
}













/* ==== testimonials ==== */






.fpk-testimonials-sec{
  --fpk-t-white:#fff;
  --fpk-t-radius:18px;
  --fpk-t-ease:cubic-bezier(.22,.61,.36,1);
  --fpk-t-reveal:cubic-bezier(.16,1,.3,1);
  --fpk-t-star-off:#cad7cf;
  position:relative;
  background:var(--fpk-warm);
  color:var(--fpk-ink);
  font-family:'NHG Text','Inter',system-ui,-apple-system,sans-serif;
  padding:clamp(64px,9vw,96px) 24px;
  overflow:hidden;
  -webkit-font-smoothing:antialiased;
}
.fpk-testimonials-sec *{box-sizing:border-box;}
.fpk-testimonials-sec .fpk-t-wrap{max-width:1120px;margin:0 auto;position:relative;z-index:1;}

/* ambient green power depth */
.fpk-testimonials-sec::before{
  content:"";position:absolute;top:-18%;right:-8%;
  width:58%;height:68%;
  background:radial-gradient(closest-side, rgba(12,154,95,.13), transparent 72%);
  pointer-events:none;z-index:0;
}

/* ---------- HEAD ---------- */
.fpk-testimonials-sec .fpk-t-head{
  display:grid;grid-template-columns:1fr;gap:16px;
  margin-bottom:44px;max-width:820px;
}
.fpk-testimonials-sec .fpk-t-eyebrow{
  display:inline-flex;align-items:center;gap:9px;margin:0;
  font-family:'IBM Plex Mono',monospace;
  font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--fpk-green);
}
.fpk-testimonials-sec .fpk-t-eyebrow-dot{
  width:7px;height:7px;border-radius:50%;
  background:var(--fpk-br);
  box-shadow:0 0 0 4px rgba(12,154,95,.18), 0 0 12px rgba(12,154,95,.55);
}
.fpk-testimonials-sec .fpk-t-title{
  margin:0;font-family:'Clash Display','Poppins',var(--fpk-font,sans-serif);
  font-size:clamp(30px,4.6vw,52px);line-height:1.02;
  font-weight:600;letter-spacing:-.03em;color:var(--fpk-ink);
}
.fpk-testimonials-sec .fpk-t-accent{
  color:var(--fpk-green);
  text-shadow:0 0 24px rgba(12,154,95,.30);
}
.fpk-testimonials-sec .fpk-t-title .char{display:inline-block;}

/* mentor credential (v2 reference: brand-verifiable Rohit Khatri; the numeric
   scoreboard from the raw v2 file is intentionally scoped OUT — see JS notes) */
.fpk-testimonials-sec .fpk-t-mentor{
  display:inline-flex;align-items:center;gap:11px;margin-top:2px;
}
.fpk-testimonials-sec .fpk-t-mentor-badge{
  flex:0 0 auto;width:38px;height:38px;border-radius:11px;
  display:grid;place-items:center;
  font-family:'Clash Display','Poppins',sans-serif;
  font-size:13px;font-weight:600;letter-spacing:.02em;
  color:#fff;
  background:linear-gradient(150deg,#123a2a,var(--fpk-dark));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 0 0 1px rgba(12,154,95,.22);
}
.fpk-testimonials-sec .fpk-t-mentor-meta{display:flex;flex-direction:column;line-height:1.25;}
.fpk-testimonials-sec .fpk-t-mentor-name{font-size:13px;font-weight:600;color:var(--fpk-ink);}
.fpk-testimonials-sec .fpk-t-mentor-role{font-size:12.5px;font-weight:500;color:var(--fpk-soft);}

/* ---------- GRID ---------- */
.fpk-testimonials-sec .fpk-t-grid{
  list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:repeat(3,1fr);gap:18px;
  perspective:1200px;
}
.fpk-testimonials-sec .fpk-t-card{
  position:relative;display:flex;flex-direction:column;gap:16px;
  padding:26px 24px 22px;
  background:var(--fpk-t-white);
  border:1px solid var(--fpk-line);
  border-radius:var(--fpk-t-radius);
  box-shadow:0 1px 0 rgba(12,20,17,.02);
  overflow:hidden;
  transition:box-shadow .3s var(--fpk-t-ease), border-color .3s var(--fpk-t-ease);
  will-change:transform;
}
.fpk-testimonials-sec .fpk-t-card::after{
  content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
  background:linear-gradient(180deg,var(--fpk-br),var(--fpk-green));
  transform:scaleY(0);transform-origin:top;
  transition:transform .35s var(--fpk-t-reveal);
}
.fpk-testimonials-sec .fpk-t-card:hover{
  border-color:var(--fpk-mint);
  box-shadow:0 28px 54px -28px rgba(0,18,12,.42);
}
.fpk-testimonials-sec .fpk-t-card:hover::after{transform:scaleY(1);}

/* R26 — testimonial card gloss REMOVED completely (owner final call 2026-07-07).
   JS still tweens the element; display:none makes every sweep a no-op. */
.fpk-testimonials-sec .fpk-t-shine{display:none;}

.fpk-testimonials-sec .fpk-t-card-top{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
}
.fpk-testimonials-sec .fpk-t-stars{display:inline-flex;gap:3px;align-items:center;}
.fpk-testimonials-sec .fpk-t-star{
  width:17px;height:17px;display:inline-block;
  background:var(--fpk-t-star-off);
  -webkit-mask:var(--fpk-t-star-svg) center/contain no-repeat;
          mask:var(--fpk-t-star-svg) center/contain no-repeat;
  --fpk-t-star-svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l2.9 6.26L21.8 9.2l-5 4.7 1.24 6.9L12 17.5 5.96 20.8 7.2 13.9l-5-4.7 6.9-.94z'/%3E%3C/svg%3E");
}
.fpk-testimonials-sec .fpk-t-star.is-on{
  background:linear-gradient(160deg,#ffce3c,#f0a500); /* standard golden stars (owner) */
}
.fpk-testimonials-sec .fpk-t-chip{
  flex:0 0 auto;display:grid;place-items:center;
  width:32px;height:32px;border-radius:10px;
  color:var(--fpk-green);
  background:var(--fpk-mintbg);
  border:1px solid var(--fpk-mint);
}
.fpk-testimonials-sec .fpk-t-chip svg{width:15px;height:15px;}

.fpk-testimonials-sec .fpk-t-quote{
  margin:0;font-size:15.5px;line-height:1.55;font-weight:500;
  color:#1a2620;letter-spacing:-.005em;
}
.fpk-testimonials-sec .fpk-t-person{
  display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:4px;
}
.fpk-testimonials-sec .fpk-t-avatar{
  flex:0 0 auto;width:40px;height:40px;border-radius:12px;
  display:grid;place-items:center;
  font-family:'Clash Display','Poppins',sans-serif;
  font-size:13px;font-weight:600;letter-spacing:.02em;
  color:var(--fpk-green);
  background:linear-gradient(150deg,var(--fpk-mintbg),#d5efe0);
  border:1px solid var(--fpk-mint);
}
.fpk-testimonials-sec .fpk-t-person-meta{display:flex;flex-direction:column;line-height:1.25;}
.fpk-testimonials-sec .fpk-t-name{font-size:14px;font-weight:600;color:var(--fpk-ink);}
.fpk-testimonials-sec .fpk-t-role{font-size:12.5px;font-weight:500;color:var(--fpk-soft);}

/* ---------- JS-ANIM HIDDEN STATES (gated so no-JS shows content) ---------- */
.fpk-testimonials-sec.fpk-anim [data-rise]{opacity:0;}
.fpk-testimonials-sec.fpk-anim .fpk-t-card{opacity:0;pointer-events:none;}
.fpk-testimonials-sec.fpk-anim .fpk-t-star{opacity:0;}
.fpk-testimonials-sec.fpk-anim .fpk-t-chip{opacity:0;}

/* ---------- RESPONSIVE ---------- */
@media(max-width:820px){
  .fpk-testimonials-sec .fpk-t-grid{grid-template-columns:1fr;gap:14px;perspective:none;}
  .fpk-testimonials-sec .fpk-t-head{margin-bottom:32px;}
}
@media(min-width:821px) and (max-width:980px){
  .fpk-testimonials-sec .fpk-t-grid{gap:14px;}
}
@media(prefers-reduced-motion:reduce){
  .fpk-testimonials-sec .fpk-t-card,
  .fpk-testimonials-sec .fpk-t-card::after{transition:none;}
}













/* ==== faq ==== */






.fpk-faq-sec{
  --fpk-e-out:cubic-bezier(.22,1,.36,1);
  --fpk-e-rail:cubic-bezier(.34,1.56,.64,1);
  --fpk-disp:'Clash Display','Poppins',system-ui,-apple-system,sans-serif;
  --fpk-body:'NHG Text','Inter',system-ui,-apple-system,sans-serif;
  --fpk-mono:'IBM Plex Mono',ui-monospace,monospace;
  position:relative; overflow:hidden;
  padding:96px var(--fpk-pad,24px);
  background:var(--fpk-warm,#f6f7f4);
  color:var(--fpk-ink,#0c1411);
  font-family:var(--fpk-body);
  -webkit-font-smoothing:antialiased;
}
.fpk-faq-sec *{box-sizing:border-box;}
.fpk-faq-sec::before{
  content:""; position:absolute; inset:0; pointer-events:none; opacity:.7;
  background:
    radial-gradient(52% 40% at 8% 0%, rgba(12,154,95,.08), transparent 60%),
    radial-gradient(46% 38% at 100% 100%, rgba(0,112,73,.07), transparent 58%);
}
.fpk-faq-sec .fpk-wrap{position:relative; max-width:1120px; margin:0 auto; z-index:1;}

/* ---- header ---- */
.fpk-faq-sec .fpk-head{max-width:760px; margin-bottom:40px;}
.fpk-faq-sec .fpk-eyebrow{
  display:inline-flex; align-items:center; gap:10px; margin:0;
  font-family:var(--fpk-mono); font-size:12px; font-weight:600;
  letter-spacing:.16em; text-transform:uppercase; color:var(--fpk-green,#007049);
}
.fpk-faq-sec .fpk-eyebrow::before{
  content:""; width:22px; height:2px; display:inline-block;
  background:var(--fpk-br,#0c9a5f);
}
.fpk-faq-sec .fpk-title{
  margin:14px 0 0; font-family:var(--fpk-disp); font-weight:600;
  letter-spacing:-.02em; line-height:1.04; color:var(--fpk-ink,#0c1411);
  font-size:clamp(28px,4vw,46px); max-width:16ch;
}
.fpk-faq-sec .fpk-line-mask{display:block; overflow:hidden;}

/* ---- progress meter (XP signature) ---- */
.fpk-faq-sec .fpk-meter{
  display:flex; align-items:center; gap:14px; margin-top:26px; max-width:380px;
}
.fpk-faq-sec .fpk-meter-track{
  position:relative; flex:1; height:8px; border-radius:100px; overflow:hidden;
  background:#dbe7df; border:1px solid var(--fpk-line,#e2eae5);
  box-shadow:inset 0 1px 2px rgba(12,20,17,.06);
}
.fpk-faq-sec .fpk-meter-fill{
  position:absolute; inset:0; transform:scaleX(0); transform-origin:left center;
  border-radius:100px;
  background:linear-gradient(90deg,var(--fpk-green,#007049),var(--fpk-br,#0c9a5f));
  box-shadow:0 0 10px rgba(12,154,95,.45);
}
.fpk-faq-sec .fpk-meter-shine{
  position:absolute; top:0; bottom:0; left:0; width:38%;
  transform:translateX(-160%) skewX(-20deg); opacity:0; pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.85),transparent);
}
.fpk-faq-sec .fpk-meter-label{
  display:inline-block; transform-origin:left center;
  font-family:var(--fpk-mono); font-size:12px; font-weight:600;
  color:var(--fpk-green,#007049); white-space:nowrap; font-variant-numeric:tabular-nums;
}

/* ---- 2-column accordion ---- */
.fpk-faq-sec .fpk-cols{
  display:grid; grid-template-columns:1fr 1fr; align-items:start;
  gap:14px 28px; margin-top:8px;
}
.fpk-faq-sec .fpk-row{
  position:relative; overflow:hidden;
  border:1px solid var(--fpk-line,#e2eae5); border-radius:14px; background:#fff;
  transition:border-color .34s var(--fpk-e-out), box-shadow .34s var(--fpk-e-out), transform .34s var(--fpk-e-out);
  box-shadow:0 1px 2px rgba(12,20,17,.03);
}
.fpk-faq-sec .fpk-row:hover{
  border-color:rgba(0,112,73,.34);
  box-shadow:0 18px 40px -28px rgba(12,20,17,.3);
}
.fpk-faq-sec .fpk-row.is-open{
  border-color:rgba(0,112,73,.4);
  box-shadow:0 22px 46px -28px rgba(0,112,73,.34);
}
/* magnetic rows: GSAP owns transform, so drop it from the CSS transition to avoid rubber-banding */
.fpk-faq-sec .fpk-row.is-magnetic{
  transition:border-color .34s var(--fpk-e-out), box-shadow .34s var(--fpk-e-out);
}

/* green rail — springs in on open */
.fpk-faq-sec .fpk-rail{
  position:absolute; left:0; top:10px; bottom:10px; width:3px; border-radius:0 3px 3px 0;
  background:linear-gradient(180deg,var(--fpk-br,#0c9a5f),var(--fpk-green,#007049));
  transform:scaleY(0); transform-origin:center; opacity:0; z-index:2;
  box-shadow:0 0 12px rgba(12,154,95,.5);
  transition:transform .5s var(--fpk-e-rail), opacity .3s var(--fpk-e-out);
}
.fpk-faq-sec .fpk-row.is-open .fpk-rail{transform:scaleY(1); opacity:1;}

/* reveal shine sweep */
.fpk-faq-sec .fpk-shine{
  position:absolute; top:0; bottom:0; left:0; width:52%; z-index:3; pointer-events:none;
  transform:translateX(-170%) skewX(-18deg); opacity:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.7) 45%,rgba(12,154,95,.16) 62%,transparent);
}

.fpk-faq-sec .fpk-headbtn{
  display:flex; align-items:center; gap:14px; width:100%;
  padding:18px 20px 18px 22px; margin:0;
  background:transparent; border:none; cursor:pointer; text-align:left;
  font-family:inherit; color:inherit; position:relative; z-index:1;
}
.fpk-faq-sec .fpk-qnum{
  flex:0 0 auto; font-family:var(--fpk-mono); font-size:12px; font-weight:600;
  color:var(--fpk-green,#007049); letter-spacing:.02em; font-variant-numeric:tabular-nums;
  transition:color .3s var(--fpk-e-out);
}
.fpk-faq-sec .fpk-q{
  flex:1; font-family:var(--fpk-disp); font-weight:600; font-size:15px;
  line-height:1.35; letter-spacing:-.01em; color:var(--fpk-ink,#0c1411);
}

/* marker: plus → × morph (kinetic spin) */
.fpk-faq-sec .fpk-mk{
  position:relative; flex:0 0 auto; width:22px; height:22px;
  color:var(--fpk-green,#007049);
  transition:transform .5s var(--fpk-e-rail), color .3s var(--fpk-e-out);
}
.fpk-faq-sec .fpk-mk i{
  position:absolute; top:50%; left:50%; background:currentColor; border-radius:2px;
}
.fpk-faq-sec .fpk-mk i:nth-child(1){width:13px; height:2px; transform:translate(-50%,-50%);}
.fpk-faq-sec .fpk-mk i:nth-child(2){width:2px; height:13px; transform:translate(-50%,-50%);}
.fpk-faq-sec .fpk-row.is-open .fpk-mk{transform:rotate(135deg); color:var(--fpk-br,#0c9a5f);}
.fpk-faq-sec .fpk-row:hover .fpk-mk{transform:scale(1.12);}
.fpk-faq-sec .fpk-row.is-open:hover .fpk-mk{transform:rotate(135deg) scale(1.12);}

/* body: OPEN + readable by default (no-JS degrades gracefully); JS collapses it (fix 6) */
.fpk-faq-sec .fpk-body{overflow:hidden;}
.fpk-faq-sec.fpk-js .fpk-body{height:0;}
.fpk-faq-sec .fpk-in{
  padding:2px 24px 22px 56px; color:var(--fpk-soft,#5a6a63);
  font-size:14px; line-height:1.62;
}

/* green click ripple */
.fpk-faq-sec .fpk-ripple{
  position:absolute; width:20px; height:20px; margin:-10px 0 0 -10px;
  border-radius:50%; background:var(--fpk-br,#0c9a5f);
  pointer-events:none; z-index:4;
}

/* ---- JS-gated hidden states (only when animating; no-JS shows all) ---- */
.fpk-faq-sec.fpk-anim .fpk-row{opacity:0; pointer-events:none;}
.fpk-faq-sec.fpk-anim [data-fpk-rise]{opacity:0;}
.fpk-faq-sec.fpk-anim .fpk-meter-fill{transform:scaleX(0);}

/* ---- reduced motion safety ---- */
@media (prefers-reduced-motion:reduce){
  .fpk-faq-sec .fpk-row,
  .fpk-faq-sec [data-fpk-rise]{opacity:1 !important; transform:none !important;}
  .fpk-faq-sec .fpk-row{pointer-events:auto !important;}
  .fpk-faq-sec .fpk-rail,
  .fpk-faq-sec .fpk-mk{transition:none !important;}
  .fpk-faq-sec .fpk-shine,
  .fpk-faq-sec .fpk-meter-shine{display:none !important;}
}

/* ---- mobile ---- */
@media (max-width:820px){
  .fpk-faq-sec .fpk-cols{grid-template-columns:1fr;}
}
@media (max-width:720px){
  .fpk-faq-sec{padding:64px 20px;}
  .fpk-faq-sec .fpk-head{margin-bottom:30px;}
  .fpk-faq-sec .fpk-meter{max-width:100%;}
  .fpk-faq-sec .fpk-in{padding-left:22px;}
  .fpk-faq-sec .fpk-row:hover{box-shadow:0 1px 2px rgba(12,20,17,.03);}
}













/* ==== final ==== */






.fpk-final-sec{
  --fpk-lime:#0c9a5f;
  --fpk-line-d:#1e3a2e;
  --fpk-accent:var(--fpk-br,#0c9a5f);   /* live accent — pushes to lime at the climax */
  position:relative; overflow:hidden; isolation:isolate;
  background:linear-gradient(180deg,#0c1411 0%,#070b09 100%);
  color:#fff;
  padding:clamp(72px,10vw,118px) 24px;
  font-family:var(--fpk-font,'NHG Text','Inter',system-ui,-apple-system,sans-serif);
}
.fpk-final-sec *{box-sizing:border-box;}

/* screen-reader-only static lines (counters animate from 0, so live copy is aria-hidden) */
.fpk-final-sr{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap; border:0;
}

/* ambient layers */
.fpk-final-glow{
  position:absolute; z-index:0; pointer-events:none;
  left:50%; top:56%; width:min(820px,124%); aspect-ratio:1/1;
  transform:translate(-50%,-50%);
  background:radial-gradient(circle, rgba(12,154,95,.22) 0%, rgba(0,112,73,.11) 34%, transparent 66%);
  filter:blur(6px); opacity:.85;
  transition:opacity .5s ease, filter .5s ease;
}
.fpk-final-grid{
  position:absolute; inset:-1px; z-index:0; pointer-events:none;
  background-image:
    linear-gradient(rgba(183,226,199,.09) 1px, transparent 1px),
    linear-gradient(90deg, rgba(183,226,199,.09) 1px, transparent 1px);
  background-size:56px 56px;
  -webkit-mask-image:radial-gradient(82% 74% at 50% 50%, #000 0%, transparent 78%);
  mask-image:radial-gradient(82% 74% at 50% 50%, #000 0%, transparent 78%);
  opacity:.5;
}
.fpk-final-flash{
  position:absolute; z-index:4; inset:0; pointer-events:none; opacity:0;
  background:radial-gradient(58% 46% at 50% 60%, rgba(55,224,122,.5) 0%, rgba(55,224,122,.14) 32%, transparent 62%);
  mix-blend-mode:screen;
}
.fpk-final-fx{
  position:absolute; inset:0; width:100%; height:100%;
  z-index:5; pointer-events:none;
}

.fpk-final-box{
  position:relative; z-index:2;
  max-width:960px; margin:0 auto; text-align:center;
  display:flex; flex-direction:column; align-items:center;
}

/* ================= ACHIEVEMENT UNLOCKED toast (Xbox-style level-up) ================= */
.fpk-final-achv{
  position:absolute; z-index:6; top:20px; left:50%;
  transform:translateX(-50%);
  pointer-events:none; max-width:calc(100% - 40px);
}
.fpk-final-achv-in{
  display:inline-flex; align-items:center; gap:12px;
  padding:10px 18px 10px 11px; border-radius:14px; opacity:0;
  background:linear-gradient(180deg, rgba(9,32,22,.96), rgba(4,20,13,.96));
  border:1px solid rgba(55,224,122,.5);
  box-shadow:0 18px 50px -14px rgba(0,0,0,.65), inset 0 0 0 1px rgba(255,255,255,.04), 0 0 26px -8px rgba(55,224,122,.55);
  -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);
  will-change:transform;
}
.fpk-final-achv-badge{
  width:34px; height:34px; flex:none;
  display:inline-flex; align-items:center; justify-content:center; border-radius:50%;
  color:var(--fpk-dark,#00120c);
  background:linear-gradient(135deg, var(--fpk-lime,#0c9a5f), var(--fpk-green,#007049));
  box-shadow:0 0 0 3px rgba(55,224,122,.16), 0 0 16px rgba(55,224,122,.5);
}
.fpk-final-achv-txt{display:flex; flex-direction:column; text-align:left; line-height:1.25;}
.fpk-final-achv-lead{
  font-family:var(--fpk-mono,'IBM Plex Mono',monospace);
  font-size:10px; font-weight:600; letter-spacing:.18em; text-transform:uppercase;
  color:var(--fpk-lime,#0c9a5f);
}
.fpk-final-achv-name{font-size:13.5px; font-weight:600; color:#fff;}

/* date badge */
.fpk-final-datebadge{
  display:inline-flex; flex-direction:column; align-items:center;
  border:1px solid rgba(183,226,199,.3); border-radius:14px; overflow:hidden;
  margin-bottom:16px; will-change:transform;
}
.fpk-final-m{
  font-family:var(--fpk-mono,'IBM Plex Mono',monospace);
  font-size:11px; letter-spacing:.1em; font-weight:600;
  background:var(--fpk-accent); color:var(--fpk-dark,#00120c);
  padding:5px 18px; transition:background .5s ease;
}
.fpk-final-d{
  font-family:var(--fpk-disp,'Clash Display','Poppins',sans-serif); font-weight:600;
  font-size:26px; padding:6px 18px; line-height:1;
}

/* ================= HUD SCOREBOARD — the signature filling gauge ================= */
.fpk-final-hud{
  position:relative;
  display:inline-flex; align-items:center; gap:24px;
  padding:16px 26px; margin-bottom:24px; border-radius:16px;
  background:linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.012));
  border:1px solid var(--fpk-line-d);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 24px 60px -34px rgba(0,0,0,.85);
  will-change:transform;
}
.fpk-final-hud-c{
  position:absolute; width:12px; height:12px;
  border:2px solid var(--fpk-accent); opacity:.72;
  transition:border-color .5s ease, opacity .5s ease;
}
.fpk-final-hud-c.tl{top:-1px; left:-1px; border-right:0; border-bottom:0; border-top-left-radius:7px;}
.fpk-final-hud-c.tr{top:-1px; right:-1px; border-left:0; border-bottom:0; border-top-right-radius:7px;}
.fpk-final-hud-c.bl{bottom:-1px; left:-1px; border-right:0; border-top:0; border-bottom-left-radius:7px;}
.fpk-final-hud-c.br{bottom:-1px; right:-1px; border-left:0; border-top:0; border-bottom-right-radius:7px;}

.fpk-final-hud-stat{display:flex; flex-direction:column; align-items:flex-start; gap:3px;}
.fpk-final-hud-num{
  font-family:var(--fpk-disp,'Clash Display','Poppins',sans-serif);
  font-size:clamp(28px,4.4vw,46px); font-weight:600; line-height:1; letter-spacing:-.02em;
  font-variant-numeric:tabular-nums;
  background:linear-gradient(180deg, #ffffff 0%, var(--fpk-accent) 135%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.fpk-final-hud-num [data-price]{display:inline-block; font-variant-numeric:tabular-nums;}
.fpk-final-hud-lbl{
  font-family:var(--fpk-mono,'IBM Plex Mono',monospace);
  font-size:10.5px; font-weight:600; letter-spacing:.16em; text-transform:uppercase;
  color:var(--fpk-mint,#b7e2c7);
}
.fpk-final-hud-div{
  width:1px; align-self:stretch;
  background:linear-gradient(180deg, transparent, var(--fpk-line-d) 40%, var(--fpk-line-d) 60%, transparent);
}
.fpk-final-hud-prog{display:flex; flex-direction:column; gap:9px; min-width:200px;}
.fpk-final-hud-progrow{display:flex; justify-content:space-between; align-items:baseline; gap:16px;}
.fpk-final-hud-plabel{
  font-family:var(--fpk-mono,'IBM Plex Mono',monospace);
  font-size:10.5px; font-weight:600; letter-spacing:.16em; text-transform:uppercase;
  color:var(--fpk-mint,#b7e2c7);
}
.fpk-final-hud-pct{font-size:13px; font-weight:600; color:var(--fpk-accent); font-variant-numeric:tabular-nums; transition:color .5s ease;}
.fpk-final-hud-meter{
  position:relative; display:block; width:100%; min-width:190px; height:8px;
  border-radius:99px; overflow:hidden;
  background:rgba(255,255,255,.06);
  box-shadow:inset 0 0 0 1px var(--fpk-line-d);
}
.fpk-final-hud-fill{
  position:absolute; inset:0; border-radius:99px;
  transform:scaleX(1); transform-origin:left center;
  background:linear-gradient(90deg, var(--fpk-green,#007049) 0%, var(--fpk-accent) 100%);
  box-shadow:0 0 16px rgba(12,154,95,.5);
  transition:box-shadow .5s ease;
}
.fpk-final-hud-notch{
  position:absolute; inset:0; pointer-events:none;
  background:repeating-linear-gradient(90deg,
    transparent 0, transparent calc(11.111% - 1.5px),
    rgba(0,18,12,.92) calc(11.111% - 1.5px), rgba(0,18,12,.92) 11.111%);
}
.fpk-final-hud-shine{
  position:absolute; top:0; bottom:0; left:0; width:40%; opacity:0;
  transform:translateX(-160%) skewX(-20deg);
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.75), transparent);
}

/* eyebrow / label with ambient pulsing status dot */
.fpk-final-lab{
  display:inline-flex; align-items:center; gap:9px;
  font-family:var(--fpk-mono,'IBM Plex Mono',monospace);
  font-size:12px; letter-spacing:.1em; text-transform:uppercase;
  color:var(--fpk-mint,#b7e2c7); margin-bottom:12px;
}
.fpk-final-dot{
  width:7px; height:7px; border-radius:50%; flex:0 0 auto;
  background:var(--fpk-accent);
  box-shadow:0 0 0 0 rgba(12,154,95,.55);
  animation:fpk-final-pulse 2.4s ease-out infinite;
  transition:background .5s ease;
}
@keyframes fpk-final-pulse{
  0%{box-shadow:0 0 0 0 rgba(12,154,95,.5);}
  70%{box-shadow:0 0 0 8px rgba(12,154,95,0);}
  100%{box-shadow:0 0 0 0 rgba(12,154,95,0);}
}

/* headline — the visual climax */
.fpk-final-head{
  margin:0 0 16px;
  font-family:var(--fpk-disp,'Clash Display','Poppins',sans-serif);
  font-size:clamp(34px,6.2vw,64px); font-weight:600; line-height:1.03;
  letter-spacing:-.035em; color:#fff; max-width:16ch;
}
.fpk-final-sec .fpk-line-mask{display:block; overflow:hidden;}

.fpk-final-line{
  font-size:clamp(14px,2vw,16px); line-height:1.5; color:#bfe6d3; margin:0 0 6px;
}
.fpk-final-line .fpk-final-cl{ color:#B7E2C7; font-weight:600; }
.fpk-final-sec [data-cap]{ display:inline-block; font-variant-numeric:tabular-nums; color:var(--fpk-mint,#b7e2c7); font-weight:600; }

/* CTAs */
.fpk-final-ctas{
  display:flex; gap:14px; justify-content:center; align-items:center; flex-wrap:wrap;
  margin:26px 0 0;
}
.fpk-final-cta{
  position:relative; overflow:hidden;
  display:inline-flex; align-items:center; justify-content:center;
  padding:15px 30px; border:none; cursor:pointer; border-radius:13px;
  font-family:var(--fpk-font,'NHG Text','Inter',sans-serif);
  font-size:15px; font-weight:600; letter-spacing:-.01em;
  text-decoration:none; will-change:transform;
  -webkit-tap-highlight-color:transparent;
}
.fpk-final-label{
  position:relative; z-index:3; display:inline-flex; align-items:center; gap:8px;
  transition:color .28s cubic-bezier(.22,1,.36,1); will-change:transform;
}
.fpk-final-ar{ transition:transform .3s cubic-bezier(.22,1,.36,1); }
.fpk-final-cta:hover .fpk-final-ar{ transform:translateX(5px); }

.fpk-final-cta--primary{
  color:var(--fpk-dark,#00120c);
  background:linear-gradient(90deg, var(--fpk-green,#007049) 0%, var(--fpk-br,#0c9a5f) 100%);
  box-shadow:0 10px 30px -8px rgba(12,154,95,.55), inset 0 0 0 1px rgba(255,255,255,.12);
  transition:box-shadow .4s cubic-bezier(.22,1,.36,1);
}
.fpk-final-cta--primary.fpk-charged{
  box-shadow:0 14px 44px -6px rgba(55,224,122,.7), inset 0 0 0 1px rgba(255,255,255,.16);
}
.fpk-final-cta--primary .fpk-final-fill{
  position:absolute; inset:0; z-index:1;
  transform:translateX(-101%);
  background:linear-gradient(90deg, #eafff4 0%, #fff 100%);
  transition:transform .42s cubic-bezier(.22,1,.36,1);
}
.fpk-final-cta--primary:hover .fpk-final-fill,
.fpk-final-cta--primary:focus-visible .fpk-final-fill{ transform:translateX(0); }
.fpk-final-cta--primary:hover .fpk-final-label,
.fpk-final-cta--primary:focus-visible .fpk-final-label{ color:var(--fpk-green,#007049); }

.fpk-final-cta--ghost{
  color:#fff; background:transparent;
  border:1px solid rgba(183,226,199,.4);
  transition:border-color .28s cubic-bezier(.22,1,.36,1), background .28s cubic-bezier(.22,1,.36,1), box-shadow .28s cubic-bezier(.22,1,.36,1);
}
.fpk-final-cta--ghost:hover,
.fpk-final-cta--ghost:focus-visible{
  border-color:var(--fpk-br,#0c9a5f); background:rgba(12,154,95,.1);
}

/* branded keyboard focus ring + shine sweep */
.fpk-final-cta:focus-visible{ outline:none; }
.fpk-final-cta--primary:focus-visible{
  box-shadow:0 0 0 3px rgba(12,154,95,.55), 0 10px 30px -8px rgba(12,154,95,.6), inset 0 0 0 1px rgba(255,255,255,.12);
}
.fpk-final-cta--ghost:focus-visible{ box-shadow:0 0 0 3px rgba(12,154,95,.45); }
.fpk-final-cta:focus-visible .fpk-final-shine{
  animation:fpk-final-sweep .7s cubic-bezier(.22,1,.36,1) forwards;
}
@keyframes fpk-final-sweep{
  0%{ transform:translateX(-160%) skewX(-20deg); opacity:1; }
  100%{ transform:translateX(260%) skewX(-20deg); opacity:0; }
}
.fpk-final-shine{
  position:absolute; top:0; bottom:0; left:0; width:44%; z-index:2; opacity:0;
  transform:translateX(-160%) skewX(-20deg);
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.5), transparent);
  pointer-events:none;
}
.fpk-final-cta--primary .fpk-final-shine{
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.72), transparent);
}

/* click ripple */
.fpk-final-ripple{
  position:absolute; z-index:2;
  width:120px; height:120px; margin:-60px 0 0 -60px; border-radius:50%;
  background:var(--fpk-br,#0c9a5f); pointer-events:none;
}
.fpk-final-cta--primary .fpk-final-ripple{ background:rgba(255,255,255,.7); }

/* inclusions */
.fpk-final-inclusions{
  display:grid; grid-template-columns:repeat(3,1fr); gap:12px;
  margin-top:34px; text-align:left; width:100%;
}
.fpk-final-inc{
  display:flex; align-items:center; gap:10px;
  background:rgba(255,255,255,.05); border:1px solid rgba(183,226,199,.16);
  border-radius:12px; padding:14px 16px;
  font-size:13.5px; font-weight:500; line-height:1.4; color:#d7ece1;
  will-change:transform;
}
.fpk-final-check{
  flex:0 0 auto; display:inline-flex; transform-origin:50% 50%;
  color:var(--fpk-accent); will-change:transform;
  transition:color .5s ease;
}
.fpk-final-check svg{ display:block; }

/* ================= CLIMAX ENERGY SPIKE — accent pushes to Xbox-lime ================= */
.fpk-final-sec.fpk-peak{ --fpk-accent:var(--fpk-lime,#0c9a5f); }
.fpk-final-sec.fpk-peak .fpk-final-glow{ opacity:1; filter:blur(4px); }
.fpk-final-sec.fpk-peak .fpk-final-hud-fill{ box-shadow:0 0 24px rgba(55,224,122,.8); }
.fpk-final-sec.fpk-peak .fpk-final-hud-c{ opacity:1; }

/* JS-hidden states (progressive enhancement — no-JS shows content) */
.fpk-final-sec.fpk-anim [data-rise]{ opacity:0; }
.fpk-final-sec.fpk-anim .fpk-final-inc{ opacity:0; }
.fpk-final-sec.fpk-anim .fpk-final-check{ transform:scale(0); }
.fpk-final-sec.fpk-anim .fpk-final-hud-fill{ transform:scaleX(0); }

/* mobile */
@media(max-width:720px){
  .fpk-final-sec{ padding:60px 20px; }
  .fpk-final-grid{ background-size:40px 40px; }
  .fpk-final-hud{ flex-direction:column; align-items:stretch; gap:16px; width:100%; max-width:360px; padding:18px 20px; }
  .fpk-final-hud-stat{ align-items:center; }
  .fpk-final-hud-div{ width:100%; height:1px; align-self:auto; background:linear-gradient(90deg, transparent, var(--fpk-line-d), transparent); }
  .fpk-final-hud-prog{ min-width:0; }
  .fpk-final-achv{ top:12px; }
  .fpk-final-achv-name{ font-size:12.5px; }
  .fpk-final-inclusions{ grid-template-columns:1fr; }
  .fpk-final-ctas{ gap:12px; }
  .fpk-final-cta{ width:100%; max-width:340px; }
}

@media(prefers-reduced-motion:reduce){
  .fpk-final-dot{ animation:none; }
  .fpk-final-cta:focus-visible .fpk-final-shine{ animation:none; }
}













/* ==== sticky ==== */






.fpk-sticky-sec{
  --fpk-lime:#0c9a5f;
  --fpk-dark2:#063522;
  --fpk-lined:rgba(183,226,199,.16);
  --fpk-accent:var(--fpk-br,#0c9a5f);
  --fpk-disp:'Clash Display','Poppins',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  --fpk-body:'NHG Text','Inter',system-ui,-apple-system,sans-serif;
  --fpk-ease:cubic-bezier(.22,1,.36,1);
  position:fixed; left:0; right:0; bottom:0; z-index:70;
  isolation:isolate; overflow:visible;
  font-family:var(--fpk-body);
  background:
    radial-gradient(120% 150% at 50% 135%, rgba(12,154,95,.34), rgba(9,101,76,.20) 30%, transparent 66%),
    linear-gradient(180deg, var(--fpk-dark,#00120c), var(--fpk-dark2,#063522));
  border-top:1px solid var(--fpk-lined);
  box-shadow:0 -18px 50px -24px rgba(0,0,0,.72);
}
.fpk-sticky-sec *{box-sizing:border-box;}

/* JS-hidden initial state (progressive enhancement — no-JS shows the bar) */
.fpk-sticky-sec.fpk-anim{transform:translateY(130%);}
.fpk-sticky-sec.fpk-anim:not(.fpk-show){pointer-events:none;}

/* peak energy spike: accent pushes toward Xbox-lime on the CLIMAX drop */
.fpk-sticky-sec.fpk-peak{--fpk-accent:var(--fpk-lime);}

/* ambient glow */
.fpk-sticky-glow{
  position:absolute; z-index:0; inset:0; pointer-events:none;
  background:radial-gradient(80% 260% at 50% 125%, rgba(12,154,95,.30), transparent 60%);
  opacity:.65; transition:opacity .5s ease;
}
.fpk-sticky-sec.fpk-peak .fpk-sticky-glow{opacity:1;}

/* climax flash bloom — blooms behind the CTA cluster on the drop frame */
.fpk-sticky-flash{
  position:absolute; z-index:4; inset:0; opacity:0; pointer-events:none;
  background:radial-gradient(62% 190% at 72% 55%, rgba(55,224,122,.55), rgba(55,224,122,.14) 34%, transparent 64%);
  mix-blend-mode:screen;
}

/* particle burst canvas — sits ABOVE the thin bar (unclipped) so sparks pop up */
.fpk-sticky-fx{
  position:absolute; left:0; right:0; bottom:0; width:100%; height:190px;
  z-index:8; pointer-events:none;
}

/* top HUD load-line */
.fpk-sticky-topline{position:absolute; top:0; left:0; right:0; height:2px; z-index:3; overflow:hidden; pointer-events:none;}
.fpk-sticky-topfill{
  position:absolute; inset:0; transform-origin:left center;
  background:linear-gradient(90deg, var(--fpk-green,#007049), var(--fpk-br,#0c9a5f) 55%, var(--fpk-lime,#0c9a5f));
  box-shadow:0 0 14px rgba(12,154,95,.6);
}
.fpk-sticky-topshine{
  position:absolute; top:0; bottom:0; left:0; width:40%; opacity:0;
  transform:translateX(-160%) skewX(-20deg);
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.85), transparent);
}

/* whole-bar shine scan (fires on the drop, over the content) */
.fpk-sticky-sweep{
  position:absolute; z-index:7; top:0; bottom:0; left:0; width:34%; opacity:0; pointer-events:none;
  transform:translateX(-160%) skewX(-16deg);
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.12), transparent);
}

/* HUD corner brackets */
.fpk-sticky-c{
  position:absolute; z-index:5; width:12px; height:12px;
  border:2px solid var(--fpk-accent); opacity:.8; pointer-events:none;
  transition:border-color .5s ease;
}
.fpk-sticky-c.tl{top:7px; left:12px; border-right:0; border-bottom:0; border-top-left-radius:6px;}
.fpk-sticky-c.tr{top:7px; right:12px; border-left:0; border-bottom:0; border-top-right-radius:6px;}
.fpk-sticky-c.bl{bottom:7px; left:12px; border-right:0; border-top:0; border-bottom-left-radius:6px;}
.fpk-sticky-c.br{bottom:7px; right:12px; border-left:0; border-top:0; border-bottom-right-radius:6px;}

/* ================= ACHIEVEMENT chip (Xbox level-up, floats above the bar) ================= */
.fpk-sticky-achv{
  position:absolute; z-index:9; right:clamp(16px,4vw,28px); bottom:100%;
  margin-bottom:12px; pointer-events:none; max-width:calc(100vw - 24px);
}
.fpk-sticky-achv-in{
  display:inline-flex; align-items:center; gap:11px;
  padding:9px 15px 9px 9px; border-radius:13px; opacity:0;
  background:linear-gradient(180deg, rgba(11,38,27,.97), rgba(6,20,15,.97));
  border:1px solid rgba(55,224,122,.5);
  box-shadow:0 18px 44px -14px rgba(0,0,0,.7), inset 0 0 0 1px rgba(255,255,255,.05), 0 0 24px -8px rgba(55,224,122,.55);
  -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);
  will-change:transform;
}
.fpk-sticky-achv-badge{
  width:30px; height:30px; flex:none;
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:50%; color:var(--fpk-dark,#00120c);
  background:linear-gradient(135deg, var(--fpk-lime,#0c9a5f), var(--fpk-green,#007049));
  box-shadow:0 0 0 3px rgba(55,224,122,.16), 0 0 14px rgba(55,224,122,.5);
}
.fpk-sticky-achv-txt{display:flex; flex-direction:column; text-align:left; line-height:1.2;}
.fpk-sticky-achv-lead{
  font-family:var(--fpk-body); font-size:9.5px; font-weight:600; letter-spacing:.18em; text-transform:uppercase;
  color:var(--fpk-lime,#0c9a5f);
}
.fpk-sticky-achv-name{font-size:12.5px; font-weight:600; color:#fff;}
.fpk-sticky-achv-g{color:var(--fpk-lime,#0c9a5f);}

/* content row */
.fpk-sticky-in{
  position:relative; z-index:6;
  max-width:1200px; margin:0 auto;
  padding:13px clamp(16px,4vw,28px);
  display:flex; align-items:center; gap:22px; flex-wrap:wrap;
}

/* title + signature masked SLAM */
.fpk-sticky-ttl{
  display:flex; align-items:center; gap:9px;
  font-family:var(--fpk-disp); font-weight:600; font-size:15px; letter-spacing:-.01em;
  color:#fff;
}
.fpk-sticky-mark{color:var(--fpk-br,#0c9a5f); font-weight:600;}
.fpk-sticky-mask{display:inline-block; overflow:hidden; line-height:1.12; padding:1px 1px 0;}
.fpk-sticky-title{display:inline-block; will-change:transform;}
.fpk-sticky-sec.fpk-anim .fpk-sticky-title{transform:translateY(110%);} /* primed off-mask before JS slam (no FOUC) */
.fpk-sticky-dot{
  width:8px; height:8px; border-radius:50%;
  background:var(--fpk-accent);
  box-shadow:0 0 0 0 rgba(12,154,95,.5);
  animation:fpk-sticky-pulse 2.4s ease-out infinite;
  transition:background .5s ease;
}
@keyframes fpk-sticky-pulse{
  0%{box-shadow:0 0 0 0 rgba(12,154,95,.5);}
  70%{box-shadow:0 0 0 8px rgba(12,154,95,0);}
  100%{box-shadow:0 0 0 0 rgba(12,154,95,0);}
}

/* meta */
.fpk-sticky-meta{
  display:flex; align-items:center; gap:20px; flex-wrap:wrap;
  color:var(--fpk-mint,#b7e2c7); font-size:13.5px; font-weight:500;
}
.fpk-sticky-mi{white-space:nowrap;}
.fpk-sticky-meta b{color:#fff; font-weight:600; font-variant-numeric:tabular-nums;}
.fpk-sticky-p{
  display:inline-block;
  color:#7fe0ac; font-weight:600; font-size:15px; letter-spacing:-.01em;
  font-variant-numeric:tabular-nums; will-change:transform;
}

/* enroll button (mint) */
.fpk-sticky-btn{
  position:relative; overflow:hidden; margin-left:auto;
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:12px 24px; border-radius:12px; cursor:pointer; text-decoration:none;
  font-family:var(--fpk-body); font-size:15px; font-weight:600; letter-spacing:-.01em;
  color:var(--fpk-dark,#00120c);
  background:linear-gradient(90deg, var(--fpk-br,#0c9a5f), #0c9a5f);
  box-shadow:0 8px 24px -6px rgba(12,154,95,.5), inset 0 0 0 1px rgba(255,255,255,.14);
  will-change:transform; -webkit-tap-highlight-color:transparent;
  transition:box-shadow .35s var(--fpk-ease);
}
.fpk-sticky-btn:hover{box-shadow:0 12px 34px -6px rgba(55,224,122,.62), inset 0 0 0 1px rgba(255,255,255,.2);}
.fpk-sticky-btn.fpk-charged{box-shadow:0 14px 40px -6px rgba(55,224,122,.68), inset 0 0 0 1px rgba(255,255,255,.18);}
.fpk-sticky-label{position:relative; z-index:3; display:inline-flex; align-items:center; gap:8px; transition:color .28s var(--fpk-ease);}
.fpk-sticky-ar{transition:transform .3s var(--fpk-ease);}
.fpk-sticky-btn:hover .fpk-sticky-ar{transform:translateX(5px);}
.fpk-sticky-fill{
  position:absolute; inset:0; z-index:1; transform:translateX(-101%);
  background:linear-gradient(90deg,#eafff4,#fff);
  transition:transform .42s var(--fpk-ease);
}
.fpk-sticky-btn:hover .fpk-sticky-fill,
.fpk-sticky-btn:focus-visible .fpk-sticky-fill{transform:translateX(0);}
.fpk-sticky-btn:hover .fpk-sticky-label,
.fpk-sticky-btn:focus-visible .fpk-sticky-label{color:var(--fpk-green,#007049);}
.fpk-sticky-shine{
  position:absolute; z-index:2; top:0; bottom:0; left:0; width:44%; opacity:0; pointer-events:none;
  transform:translateX(-160%) skewX(-20deg);
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.55), transparent);
}
.fpk-sticky-btn:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(12,154,95,.55), 0 8px 24px -6px rgba(12,154,95,.5);
}
.fpk-sticky-btn:focus-visible .fpk-sticky-shine{animation:fpk-sticky-sweep .7s var(--fpk-ease) forwards;}
@keyframes fpk-sticky-sweep{
  0%{transform:translateX(-160%) skewX(-20deg); opacity:1;}
  100%{transform:translateX(260%) skewX(-20deg); opacity:0;}
}
.fpk-sticky-ripple{
  position:absolute; z-index:2; width:120px; height:120px; margin:-60px 0 0 -60px;
  border-radius:50%; background:rgba(255,255,255,.65); pointer-events:none;
}

/* JS-gated hidden rise states */
.fpk-sticky-sec.fpk-anim [data-fpk-rise]{opacity:0;}

/* mobile: keep title + enroll, drop dense meta (mirrors Light PDP) */
@media(max-width:680px){
  .fpk-sticky-meta{display:none;}
  .fpk-sticky-in{gap:12px; padding:11px 16px;}
  .fpk-sticky-btn{padding:11px 20px; font-size:14px;}
  .fpk-sticky-c.tl,.fpk-sticky-c.tr{top:6px;}
  .fpk-sticky-c.bl,.fpk-sticky-c.br{bottom:6px;}
  .fpk-sticky-achv{right:12px; margin-bottom:10px;}
  .fpk-sticky-achv-name{font-size:12px;}
}

@media(prefers-reduced-motion:reduce){
  .fpk-sticky-dot{animation:none;}
  .fpk-sticky-btn:focus-visible .fpk-sticky-shine{animation:none;}
}
button.fpk-sticky-btn{border:none;cursor:pointer;font:inherit;background:none}

.fpk-rm-meter-fill{background:linear-gradient(90deg,#007049,#0c9a5f)!important;opacity:1!important;z-index:2!important}

.fpk-mb3-dots{display:none}
.fpk-mb2-sec{padding:70px 0}

.fpk-tr2-col--press .fpk-tr2-logos{flex-wrap:wrap}

/* roadmap fill — width-based, bulletproof */
.fpk-rm-meter-track{position:relative;overflow:hidden}
.fpk-rm-meter-fill{position:absolute!important;top:2px!important;bottom:2px!important;left:2px!important;right:auto!important;width:0;transform:none!important;
  background:linear-gradient(90deg,#0c9a5f,#0c9a5f)!important;opacity:1!important;border-radius:999px!important;z-index:2!important;
  box-shadow:0 0 18px rgba(43,227,119,.6)!important;transition:none}
.fpk-rm-meter-notch{z-index:3}
.rd-js [data-node]{transition:opacity .35s}
.rd-js [data-node]:not(.rd-on){opacity:.5}
.rd-js [data-node].rd-on{opacity:1}

.fpk-tr2-col--press,.fpk-tr2-col--press .fpk-tr2-logos{justify-content:flex-start;text-align:left}
.fpk-tr2-logo img{vertical-align:middle}

/* fill: pixel-width, track is containing block */
.fpk-rm-meter,.fpk-rm-meter-track{position:relative!important}
.fpk-rm-meter-track{overflow:hidden!important}
.fpk-rm-meter-fill{position:absolute!important;top:2px!important;bottom:2px!important;left:0!important;right:auto!important;width:0;transform:none!important;
  background:linear-gradient(90deg,#0c9a5f,#0c9a5f)!important;opacity:1!important;border-radius:999px!important;z-index:2!important;box-shadow:0 0 18px rgba(43,227,119,.55)!important}

.fpk-tr2-col:not(.fpk-tr2-col--press) .fpk-tr2-logos{flex-wrap:nowrap;gap:20px}

.fpk-rm-meter-track{min-height:22px}

/* trust: two boxed cards (red-array look), logos clearly visible */
.fpk-tr2-sec{background:#eef1ed!important;padding:40px 0!important}
.fpk-tr2-sec .fpk-tr2-wrap{grid-template-columns:1fr 1fr!important;gap:26px!important;align-items:stretch!important}
.fpk-tr2-sec .fpk-tr2-div{display:none!important}
.fpk-tr2-sec .fpk-tr2-col{border:1px solid #dfe4df!important;border-radius:16px!important;background:#fff!important;padding:22px 26px!important;box-shadow:0 6px 20px -10px rgba(12,20,17,.14)!important;display:flex;flex-direction:column;justify-content:center}
.fpk-tr2-sec .fpk-tr2-lab{margin-bottom:16px!important}
.fpk-tr2-sec .fpk-tr2-logo img{height:34px!important}
.fpk-tr2-sec .fpk-tr2-logo--big img{height:30px!important}
.fpk-tr2-sec .fpk-tr2-logo--adobe img{height:30px!important}
@media(max-width:820px){.fpk-tr2-sec .fpk-tr2-wrap{grid-template-columns:1fr!important}}

/* roadmap: sticky level-select pin — scroll fills bar to 100%, unlocks L6, then releases */
@media(min-width:821px) and (prefers-reduced-motion:no-preference){
  .fpk-roadmap-sec{height:280vh!important;position:relative!important}
  .fpk-roadmap-sec .fpk-rm-wrap{position:sticky!important;top:72px!important;min-height:calc(100vh - 72px)!important;display:flex!important;flex-direction:column!important;justify-content:center!important;box-sizing:border-box;padding-top:24px;padding-bottom:24px}
}

@media(min-width:821px) and (prefers-reduced-motion:no-preference){
  .fpk-roadmap-sec{position:relative!important;overflow:visible!important}
  .fpk-roadmap-sec .fpk-rm-wrap{min-height:100vh;display:flex;flex-direction:column;justify-content:center;box-sizing:border-box;z-index:2}
}

.fpk-tr2-sec .fpk-tr2-logo--adobe img{height:22px!important}
.fpk-tr2-sec .fpk-tr2-logo img[alt="Forbes"]{height:25px!important}
.fpk-tr2-sec .fpk-tr2-logo img[alt="ANI"]{height:25px!important}

/* trust labels: strong + readable */
.fpk-tr2-sec .fpk-tr2-lab{font-family:'Clash Display','Poppins','NHG Text','Inter',sans-serif!important;font-size:15px!important;font-weight:600!important;letter-spacing:.01em!important;text-transform:none!important;color:#0c1411!important;margin-bottom:18px!important}

/* ==== R25-RM-HINT — roadmap footer: "Scroll down to unlock the levels" hint while the meter
   fills; at 100% it swaps out and the Start at Step 1 CTA + mentor line pop in. Delete to revert. ==== */
.fpk-rm-footzone{position:relative;margin-top:40px;min-height:64px}
.fpk-rm-footzone .fpk-rm-footer{margin-top:0}
.fpk-rm-hint{position:absolute;inset:0;display:flex;align-items:center;gap:10px;margin:0;
  font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:12px;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;color:rgba(183,226,199,.75);
  pointer-events:none;transition:opacity .35s ease}
.fpk-rm-hint::before{content:'';flex:0 0 auto;width:7px;height:7px;border-radius:50%;
  background:#0c9a5f;box-shadow:0 0 10px rgba(12,154,95,.7);
  animation:fpkRmHintPulse 1.6s ease-in-out infinite}
@keyframes fpkRmHintPulse{0%,100%{opacity:.4;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}
.fpk-rm-footzone.rd-done .fpk-rm-hint{opacity:0}
@media(max-width:820px){.fpk-rm-footzone{margin-top:32px}}
@media(prefers-reduced-motion:reduce){.fpk-rm-hint{display:none}}
@media(min-width:821px) and (prefers-reduced-motion:no-preference){
  .fpk-rm-footer{opacity:0;transform:translateY(22px) scale(.92);pointer-events:none;
    transition:opacity .45s cubic-bezier(.34,1.56,.64,1),transform .55s cubic-bezier(.34,1.56,.64,1)}
  .fpk-rm-footer.rd-cta-in{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}
}
@media(max-width:820px) and (prefers-reduced-motion:no-preference){
  .fpk-rm-footer{opacity:0;transform:translateY(16px);pointer-events:none;transition:opacity .4s ease,transform .45s ease}
  .fpk-rm-footer.rd-cta-in{opacity:1;transform:translateY(0);pointer-events:auto}
}
/* ==== R25-RM-HINT end ==== */

/* trust marquee (REVERT: delete this block) */
@media (prefers-reduced-motion:no-preference){
  .fpk-tr2-marq{overflow:hidden!important;flex-wrap:nowrap!important;
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);
    mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
  .fpk-tr2-mtrack{display:flex;align-items:center;gap:26px;width:max-content;padding-right:26px}
  .fpk-tr2-marq--rtl .fpk-tr2-mtrack{animation:fpkTrMarq 26s linear infinite}
  .fpk-tr2-marq--ltr .fpk-tr2-mtrack{animation:fpkTrMarq 26s linear infinite reverse}
  .fpk-tr2-marq:hover .fpk-tr2-mtrack{animation-play-state:paused}
  @keyframes fpkTrMarq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
}

/* fix marquee grid blowout: cards keep original box size */
.fpk-tr2-sec .fpk-tr2-wrap{max-width:1200px!important;margin:0 auto!important;padding:0 24px!important}
.fpk-tr2-sec .fpk-tr2-col{min-width:0!important;max-width:100%!important;overflow:hidden!important}
.fpk-tr2-marq{max-width:100%!important}

/* restore logo sizes inside marquee (motion kept) */
.fpk-tr2-sec .fpk-tr2-mtrack{flex-wrap:nowrap}
.fpk-tr2-sec .fpk-tr2-mtrack .fpk-tr2-logo,
.fpk-tr2-sec .fpk-tr2-mtrack .fpk-tr2-more{flex:0 0 auto!important}
.fpk-tr2-sec .fpk-tr2-logo img{height:34px!important;width:auto!important;max-width:none!important;flex:0 0 auto!important}
.fpk-tr2-sec .fpk-tr2-logo--big img{height:30px!important;width:auto!important;max-width:none!important}
.fpk-tr2-sec .fpk-tr2-logo--adobe img{height:22px!important;width:auto!important;max-width:none!important}
.fpk-tr2-sec .fpk-tr2-logo img[alt="Forbes"]{height:25px!important}
.fpk-tr2-sec .fpk-tr2-logo img[alt="ANI"]{height:25px!important}

/* build: native swipe on mobile */
.fpk-bh-mob{display:none}
@media(max-width:820px){
  .fpk-bh-desk{display:none}
  .fpk-bh-mob{display:inline}
  section[data-fpk="build"] .fpk-build-rail{overflow-x:auto!important;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none}
  section[data-fpk="build"] .fpk-build-rail::-webkit-scrollbar{display:none}
  section[data-fpk="build"] .fpk-build-track{transform:none!important;display:flex!important;width:max-content!important;gap:14px}
  section[data-fpk="build"] .fpk-build-track>*{scroll-snap-align:center;flex:0 0 78vw!important;max-width:320px}
}
/* ANI + Forbes: -20% more */
.fpk-tr2-sec .fpk-tr2-logo img[alt="Forbes"]{height:20px!important}
.fpk-tr2-sec .fpk-tr2-logo img[alt="ANI"]{height:20px!important}

/* R8 — real assets + homepage-style trust */
.fpk-build-img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:14px 14px 0 0;display:block}
.fpk-mb4-photo{position:relative;overflow:hidden}
.fpk-mb4-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fpk-mentor-card-av{overflow:hidden;border-radius:14px}
.fpk-mentor-card-av img{width:100%;height:100%;object-fit:cover;display:block}
.fpk-t-avatar{overflow:hidden;border-radius:50%}
.fpk-t-avatar img{width:100%;height:100%;object-fit:cover;display:block}
/* trust: white boxed cards + chip backgrounds (match homepage) */
.fpk-tr2-sec{background:#eef1ec!important}
.fpk-tr2-wrap{gap:24px!important}
.fpk-tr2-col{background:#fff!important;border:1px solid #e2eae5!important;border-radius:18px!important;padding:22px 26px!important;box-shadow:0 14px 34px -22px rgba(12,20,17,.18)}
.fpk-tr2-div{display:none!important}
.fpk-tr2-logo{background:#f6f8f5;border:1px solid #e7ece8;border-radius:12px;padding:10px 16px;display:inline-flex;align-items:center}
.fpk-tr2-logo img{height:26px!important}
.fpk-tr2-logo img[alt="Forbes"],.fpk-tr2-logo img[alt="ANI"]{height:20px!important}

.fpk-mentor-card-av,.fpk-t-avatar{overflow:hidden!important;padding:0!important}
.fpk-mentor-card-av img,.fpk-t-avatar img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}

/* mb4: real photo above CSS-art placeholder */
.fpk-mb4-photo{position:relative}
.fpk-mb4-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:4;border-radius:inherit}
.fpk-mb4-photo:has(.fpk-mb4-img) .fpk-mb4-ph-art{display:none}

/* R9 */
.fpk-build-img{width:100%!important;height:160px!important;aspect-ratio:auto!important;object-fit:cover!important;border-radius:12px!important;margin:8px 0 12px!important;display:block;position:static!important}
.fpk-tr2-txt{font-family:'Clash Display','Poppins',sans-serif;font-weight:600;font-size:14px;color:#2a3a33;margin-left:8px;white-space:nowrap}
.fpk-mb4-pile{display:flex!important;justify-content:center;z-index:4;position:relative}
.fpk-mb4-pile img{width:34px;height:34px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.75);margin-left:-8px}
.fpk-mb4-pile img:first-child{margin-left:0}

/* roadmap Start-at-Step-1: primary pill w/ glow (form-button reset) */
button.fpk-rm-cta,a.fpk-rm-cta{display:inline-flex!important;align-items:center;gap:10px;padding:15px 28px!important;border:none!important;cursor:pointer;border-radius:999px!important;background:linear-gradient(105deg,#007049,#0c9a5f)!important;color:#fff!important;font:600 15px 'Clash Display','Poppins',sans-serif!important;letter-spacing:.01em;box-shadow:0 0 0 1px rgba(12,154,95,.35),0 12px 30px -10px rgba(12,154,95,.55),0 0 24px rgba(12,154,95,.25)!important;transition:transform .3s cubic-bezier(.22,.61,.36,1),box-shadow .3s!important}
button.fpk-rm-cta:hover,a.fpk-rm-cta:hover{transform:translateY(-2px);box-shadow:0 0 0 1px rgba(12,154,95,.5),0 18px 40px -10px rgba(12,154,95,.65),0 0 34px rgba(12,154,95,.35)!important}
button.fpk-rm-cta .fpk-rm-label,a.fpk-rm-cta .fpk-rm-label{color:#fff!important}

/* R13 */
/* flash-free boot: hide entrance-animated fixed bar + soft page ready fade */
.fpk-preanim:not(.fpk-ready) .fpk-sticky-sec{transform:translateY(130%)!important}
.fpk-preanim:not(.fpk-ready) [data-fpk="sticky"],
.fpk-preanim:not(.fpk-ready) .fpk-sticky-sec{visibility:hidden!important}
/* both trust marquees travel RIGHT */
.fpk-tr2-marq--rtl .fpk-tr2-mtrack{animation-direction:reverse!important}
/* chip logos */
.fpk-mb4-chip-logo,.fpk-mentor-card-badge img{height:12px;width:auto;display:inline-block;vertical-align:middle}
.fpk-mentor-card-badge{background:#fff!important;display:inline-flex!important;align-items:center;padding:5px 10px!important;border-radius:99px}

.fpk-mb4-chip--logo{display:inline-flex!important;align-items:center;background:#fff!important;padding:5px 10px!important}
.fpk-mb4-chip--logo img{height:11px;width:auto;display:block}

/* R14 — kill stray "Enrolment open · AI Foundations · +10G" achievement popup above the sticky enrol bar (bar itself stays) */
.fpk-sticky-achv{display:none!important}
/* R14 — desktop shows all 5 mentor cards as a grid, so pagination dots + swipe caption are pointless there (kept on mobile carousel <=900px) */
@media (min-width:901px){ .fpk-mb4-foot{display:none!important} }
/* R14 — hero price odometer target */
.fpk-h3-price{display:inline-block;transform-origin:left center;will-change:transform}

/* ============ R15 — Gamified HUD enrol bar (fpk2, replaces old sticky innards) ============ */
.fpk2-bar{
  background:linear-gradient(180deg,rgba(12,20,17,.97),rgba(5,9,8,.99)) !important;
  color:#fff;
}
.fpk2-xp{
  position:absolute;top:-1px;left:0;right:0;height:3px;
  background:repeating-linear-gradient(90deg,rgba(183,226,199,.18) 0 2px,transparent 2px 56px),rgba(183,226,199,.09);
}
.fpk2-xp-fill{
  position:absolute;top:0;bottom:0;left:0;width:100%;
  background:linear-gradient(90deg,#007049,#0c9a5f);
}
.fpk2-xp-fill::after{
  content:"";position:absolute;right:-2px;top:50%;width:5px;height:5px;border-radius:50%;
  transform:translateY(-50%);background:#0c9a5f;box-shadow:0 0 5px 1px rgba(12,154,95,.4);
}
.fpk2-inner{display:flex;align-items:center;gap:28px;padding:14px 32px;max-width:1240px;margin:0 auto;}
.fpk2-left{display:flex;flex-direction:column;gap:3px;min-width:150px;}
.fpk2-eyebrow{font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.55);white-space:nowrap;}
.fpk2-priceline{display:flex;align-items:baseline;}
.fpk2-price{display:inline-block;font-family:'Clash Display','Poppins',sans-serif;font-weight:600;font-size:26px;line-height:1;color:#fff;font-variant-numeric:tabular-nums;letter-spacing:.01em;transform-origin:50% 80%;}
.fpk2-chip{display:flex;align-items:center;gap:10px;margin-left:auto;padding:7px 16px 7px 8px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.05);}
.fpk2-chip-photo{width:32px;height:32px;border-radius:50%;overflow:hidden;flex:none;box-shadow:0 0 0 2px rgba(255,255,255,.25);}
.fpk2-chip-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.fpk2-chip-text{display:flex;flex-direction:column;gap:1px;}
.fpk2-chip-label{font-family:'IBM Plex Mono',monospace;font-size:9px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#0c9a5f;}
.fpk2-chip-name{font-size:12px;font-weight:500;color:rgba(255,255,255,.85);white-space:nowrap;}
.fpk2-actions{flex:none;}
.fpk2-enrol{
  position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:9px;
  padding:13px 24px;border-radius:999px;border:0;cursor:pointer;
  background:linear-gradient(135deg,#0c9a5f,#0ea55e);color:#00120c;
  font-family:'Clash Display','Poppins',sans-serif;font-weight:600;font-size:15px;text-decoration:none;
  box-shadow:0 8px 24px rgba(0,18,12,.5),0 0 0 1px rgba(255,255,255,.18) inset;
  transition:box-shadow .35s ease;will-change:transform;
}
.fpk2-enrol:hover{box-shadow:0 10px 32px rgba(0,18,12,.6),0 0 0 1px rgba(255,255,255,.35) inset;}
.fpk2-enrol[disabled]{opacity:.55;cursor:not-allowed;}
.fpk2-arrow{flex:none;}
.fpk2-enrol-shine{
  position:absolute;top:-20%;bottom:-20%;left:0;width:36%;
  background:linear-gradient(105deg,transparent,rgba(255,255,255,.28),transparent);
  transform:translateX(-160%) skewX(-18deg);pointer-events:none;
}
@media (max-width:860px){
  .fpk2-chip-name{display:none;}
  .fpk2-inner{gap:18px;padding:12px 20px;}
}
@media (max-width:560px){
  .fpk2-chip{display:none;}
  .fpk2-price{font-size:22px;}
  .fpk2-enrol{padding:12px 20px;font-size:14px;}
}
@media (prefers-reduced-motion:reduce){
  .fpk2-enrol-shine{display:none;}
  .fpk2-enrol{transition:none;}
}
/* R14 — hero pre-anim gate: pre-hide entrance elements from first paint so they never flash
   "shown → hide → animate" on reload (mirrors the mentor-section .fpk-js gate). GSAP inline
   opacity wins during the reveal; no !important so the reveal isn't blocked. Reduced-motion
   never adds .fpk-js, and a no-GSAP fallback removes it after 1.9s. */
.fpk-h3-sec.fpk-js [data-h3-h1],
.fpk-h3-sec.fpk-js [data-h3-rise],
.fpk-h3-sec.fpk-js [data-h3-photo],
.fpk-h3-sec.fpk-js [data-h3-glance]{opacity:0}

/* ==== R16-WARM-MB4 start — mentorband flipped to WARM to break the roadmap->mentor dark wall.
   Owner said "redo" = delete this whole block to restore the dark band. ==== */
.fpk-mb4-sec{
  background:
    radial-gradient(110% 70% at 50% -10%, rgba(183,226,199,.35) 0%, rgba(246,247,244,0) 60%),
    linear-gradient(180deg,#f6f7f4 0%, #eef3ef 100%) !important;
  color:#0c1411 !important;
}
.fpk-mb4-sec::before{background:linear-gradient(90deg,transparent,rgba(12,20,17,.12),transparent) !important;}
.fpk-mb4-glow--a{background:radial-gradient(circle,rgba(12,154,95,.14),transparent 65%) !important;}
.fpk-mb4-glow--b{background:radial-gradient(circle,rgba(0,112,73,.08),transparent 65%) !important;}
.fpk-mb4-grain{opacity:.03 !important;}
.fpk-mb4-eyebrow{color:#007049 !important;}
.fpk-mb4-eyebrow-tick{background:linear-gradient(90deg,#0c9a5f,rgba(12,154,95,0)) !important;}
.fpk-mb4-title{color:#0c1411 !important;}
.fpk-mb4-grad,.fpk-mb4-grad .fpk-mb4-w{
  background:linear-gradient(94deg,#0c9a5f 5%,#007049 95%) !important;
  -webkit-background-clip:text !important;background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
}
.fpk-mb4-caption{color:#5a6a63 !important;}
.fpk-mb4-dot::after{background:rgba(12,20,17,.18) !important;}
.fpk-mb4-dot:hover::after{background:rgba(12,20,17,.35) !important;}
.fpk-mb4-dot--on::after{background:linear-gradient(90deg,#0c9a5f,#007049) !important;}
/* dark mentor photo-cards pop on the warm stage — solid dark body so white names stay readable */
.fpk-mb4-cardin{
  background:linear-gradient(165deg,#131c16,#0a0f0d) !important;
  border-color:rgba(12,20,17,.12) !important;
  box-shadow:0 26px 54px -30px rgba(12,20,17,.45) !important;
}
/* ==== R16-WARM-MB4 end ==== */

/* ==== R17-PDP-C — PDP hero gradient. bg-04 (owner pick 2026-07-07); bottom-anchored so the
   image's white top zone stays out of frame, plus a soft dark scrim up top for headline contrast.
   Redo to bg-05: swap url to taps-gradient-deep.jpg, position center top, drop the scrim layer. ==== */
.fpk-h3-sec{background:linear-gradient(180deg,rgba(2,21,13,.92) 0%,rgba(2,21,13,.55) 22%,rgba(2,21,13,.18) 48%,rgba(2,21,13,0) 70%),#02150d url('taps-gradient-inverse.jpg') center bottom/cover no-repeat!important}
.fpk-h3-bg{display:none!important}
.fpk-h3-h1{color:#fff!important}
.fpk-h3-g{background:none!important;-webkit-text-fill-color:#B7E2C7!important;color:#B7E2C7!important}
.fpk-h3-sub{color:#fff!important}
.fpk-h3-body{color:rgba(255,255,255,.88)!important}
.fpk-h3-eyebrow{background:rgba(183,226,199,.12)!important;color:#B7E2C7!important;border-color:rgba(183,226,199,.25)!important}
.fpk-h3-fact{color:rgba(255,255,255,.88)!important}
.fpk-h3-btn--primary{background:#007049!important;border:1px solid rgba(255,255,255,.22)!important;box-shadow:0 12px 30px rgba(0,0,0,.35)!important}
.fpk-h3-btn--ghost{background:rgba(255,255,255,.08)!important;color:#fff!important;border:1px solid rgba(255,255,255,.3)!important}
.fpk-h3-seats{background:rgba(183,226,199,.12)!important;color:#B7E2C7!important}
/* ==== R17-PDP-C end ==== */

/* ==== R18-HERO-WIREFRAME — PDP hero rebuilt to owner's reference layout:
   2-col hero (copy | photo w/ mentor chip) + full-width 6-stat glance bar.
   Delete block + restore old markup to revert. ==== */
.fpk-h3-sec .fpk-h3-inner.fpk-h3-v2{
  display:grid!important;grid-template-columns:1.05fr .95fr;gap:clamp(28px,4vw,56px);
  align-items:stretch;max-width:1200px;margin:0 auto;padding:clamp(24px,3vw,44px) 24px 0;
}
.fpk-h3-v2 .fpk-h3-copy{max-width:none}
.fpk-h3-v2 .fpk-h3-h1{font-size:clamp(40px,4.8vw,64px);white-space:nowrap;color:#fff!important;margin:18px 0 16px}
.fpk-h3-v2 .fpk-h3-sub{font-size:clamp(17px,1.9vw,21px);font-weight:600;max-width:34ch;margin:0 0 14px}
.fpk-h3-v2 .fpk-h3-body{max-width:48ch;margin:0 0 22px}
/* fact chips: bordered mono pills */
.fpk-h3-v2 .fpk-h3-facts{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 26px}
.fpk-h3-v2 .fpk-h3-fact{
  font-family:'IBM Plex Mono',monospace;font-size:12px;font-weight:500;letter-spacing:.02em;
  color:rgba(255,255,255,.88)!important;background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.18);border-radius:10px;padding:8px 13px;
}
.fpk-h3-v2 .fpk-h3-ctas{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
/* photo card + mentor chip overlay */
.fpk-h3-v2 .fpk-h3-photo{position:relative;border-radius:22px;overflow:hidden;box-shadow:0 34px 80px -40px rgba(0,0,0,.7)}
.fpk-h3-v2 .fpk-h3-photo{align-self:stretch}
.fpk-h3-v2 .fpk-h3-img{display:block;width:100%;height:100%;min-height:100%;object-fit:cover}
.fpk-h3-v2 .fpk-h3-live{position:absolute;top:14px;left:14px;right:auto;width:auto;display:inline-flex;align-items:center;gap:7px}
.fpk-h3-mchip{
  position:absolute;left:14px;right:14px;bottom:14px;display:flex;align-items:center;gap:12px;
  background:rgba(8,12,10,.82);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.12);border-radius:13px;padding:8px 14px 8px 8px;
}
.fpk-h3-mchip-av{width:40px;height:40px;border-radius:50%;overflow:hidden;flex:none;box-shadow:0 0 0 2px rgba(183,226,199,.35)}
.fpk-h3-mchip-av img{width:100%;height:100%;object-fit:cover;display:block}
.fpk-h3-mchip-txt{display:flex;flex-direction:column;gap:1px;min-width:0}
.fpk-h3-mchip-txt b{font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#B7E2C7}
.fpk-h3-mchip-txt strong{font-family:'Clash Display','Poppins',sans-serif;font-weight:600;font-size:14.5px;color:#fff;line-height:1.2}
.fpk-h3-mchip-txt em{font-style:normal;font-size:11px;color:rgba(255,255,255,.65)}
.fpk-h3-mchip-ms{margin-left:auto;height:18px;width:auto;max-width:96px;object-fit:contain;background:#fff;border-radius:8px;padding:6px 10px;box-sizing:content-box}
/* glance bar: full-width panel + 6-stat row */
.fpk-h3-glancebar{
  max-width:1200px;margin:clamp(18px,2.2vw,32px) auto 0;padding:clamp(20px,2.6vw,30px) clamp(20px,2.6vw,32px) clamp(24px,3vw,34px);
  background:rgba(8,12,10,.55);border:1px solid rgba(255,255,255,.1);border-radius:20px;
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
}
.fpk-h3-gbhead{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.fpk-h3-glancebar .fpk-h3-gh{margin:0;font-family:'Clash Display','Poppins',sans-serif;font-weight:600;font-size:clamp(19px,2vw,24px);color:#fff}
.fpk-h3-glancebar .fpk-h3-seats{margin:0!important;display:inline-flex;align-items:center;gap:8px;font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:500;letter-spacing:.04em;color:#B7E2C7!important;background:rgba(183,226,199,.1)!important;border:1px solid rgba(183,226,199,.22);border-radius:999px;padding:7px 14px}
.fpk-h3-gstats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:18px}
.fpk-h3-gstats .fpk-h3-grow{border-left:2px solid #0c9a5f;padding-left:12px;display:flex;flex-direction:column;gap:4px}
.fpk-h3-gstats .fpk-h3-gk{font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.fpk-h3-gstats .fpk-h3-gv{font-family:'Clash Display','Poppins',sans-serif;font-weight:600;font-size:clamp(16px,1.5vw,20px);color:#fff;white-space:nowrap}
/* section bottom padding to hold the bar */
.fpk-h3-sec{padding-bottom:clamp(44px,5vw,64px)!important}
/* responsive */
@media(max-width:980px){
  .fpk-h3-sec .fpk-h3-inner.fpk-h3-v2{grid-template-columns:1fr;gap:30px}
  .fpk-h3-v2 .fpk-h3-h1{white-space:normal}
  .fpk-h3-gstats{grid-template-columns:repeat(3,1fr);gap:16px}
}
@media(max-width:560px){
  .fpk-h3-gstats{grid-template-columns:repeat(2,1fr)}
  .fpk-h3-mchip-txt strong{font-size:14px}
}
/* ==== R18-HERO-WIREFRAME end ==== */

/* ==== R19-PDP — press rail removed (owner), mentors rail full-width ==== */
.fpk-tr2-col--right,.fpk-tr2-div{display:none!important}
.fpk-tr2-sec .fpk-tr2-wrap{grid-template-columns:1fr!important}
/* ==== R19-PDP end ==== */

/* ==== R20 — PDP trust = home-style band: avatar stack + lede + revolving chips ==== */
.fpk-tr2-wrap--band{display:block!important;max-width:1200px!important}
.fpk-tr2-wrap--band .fpk-tr2-col{display:flex;flex-direction:row;align-items:center;gap:26px;
  background:#fff!important;border:1px solid #e2eae5!important;border-radius:22px!important;
  padding:22px 28px!important;box-shadow:0 18px 44px -30px rgba(12,20,17,.25)}
.fpk-tr2-wrap--band .fpk-tr2-lead{flex:0 0 auto}
.fpk-tr2-wrap--band .fpk-tr2-lab--lede{max-width:15ch}
.fpk-tr2-wrap--band .fpk-tr2-logos{flex:1;min-width:0}
@media(max-width:820px){.fpk-tr2-wrap--band .fpk-tr2-col{flex-direction:column;align-items:stretch;gap:14px}}
.fpk-tr2-lead{display:flex;align-items:center;gap:14px}
.fpk-tr2-avastack{display:flex}
.fpk-tr2-ava{width:44px;height:44px;border-radius:50%;overflow:hidden;border:2px solid #fff;box-shadow:0 4px 12px rgba(12,20,17,.18);margin-left:-10px}
.fpk-tr2-ava:first-child{margin-left:0}
.fpk-tr2-ava img{width:100%;height:100%;object-fit:cover;display:block}
.fpk-tr2-lab--lede{margin:0!important;font-family:'Clash Display','Poppins',sans-serif!important;font-weight:600!important;font-size:clamp(16px,1.8vw,19px)!important;letter-spacing:-.01em!important;text-transform:none!important;color:var(--fpk-ink,#0c1411)!important}
/* ==== R20 end ==== */

/* R23 — corner fix (PDP): overlays inherit card radius */
.fpk-build-shine,.fpk-mb4-ph-sheen,.fpk-mb4-chip-glint{border-radius:inherit}

/* R24 — glance bar variant B: scanline */
.fpk-h3-glancebar{position:relative;overflow:hidden}
.fpk-gb-scan{position:absolute;top:6px;bottom:6px;left:0;width:2px;z-index:3;pointer-events:none;opacity:0;
  background:linear-gradient(180deg,transparent,rgba(183,226,199,.55) 30%,rgba(183,226,199,.55) 70%,transparent);
  box-shadow:0 0 8px rgba(183,226,199,.3)}
@media (prefers-reduced-motion:reduce){.fpk-gb-scan{display:none}}


/* ==== R27-DS-CONSISTENCY (audit 2026-07-07) — buttons to brand pill, outcomes eyebrow to mono. Delete to revert. ==== */
.fpk-h3-btn--primary{border-radius:100px!important;background:linear-gradient(105deg,#007049,#0c9a5f)!important;box-shadow:0 12px 30px -10px rgba(0,112,73,.55)!important}
.fpk-final-cta--primary{border-radius:100px!important;background:linear-gradient(105deg,#007049,#0c9a5f)!important;color:#fff!important}
.fpk-final-cta{border-radius:100px!important}
.fpk-oc-eyebrow{font-family:'IBM Plex Mono',ui-monospace,monospace!important;font-weight:600!important;font-size:11.5px!important;letter-spacing:.16em!important;text-transform:uppercase!important}
/* ==== R27 end ==== */


/* ==== R28-RESPONSIVE (audit 2026-07-07) ==== */
@media(max-width:420px){
  .fpk2-eyebrow{font-size:9px!important;letter-spacing:.08em!important;max-width:46vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}
}
/* ==== R28 end ==== */


/* ==== R29-13INCH-FOLD — compact PDP hero at laptop heights so 'Program at a glance'
   header clears the fold on 1280x800 MacBooks; tighter mobile top so both hero CTAs
   (Enroll + Download syllabus) sit fully in the first screens. Delete to revert. ==== */
@media(min-width:821px) and (max-height:880px){
  .fpk-h3-sec{padding-top:12px!important;min-height:calc(100vh - 70px);min-height:calc(100svh - 70px);display:flex;flex-direction:column;justify-content:center}
  .fpk-h3-sec .fpk-h3-inner.fpk-h3-v2{margin-top:auto;margin-bottom:auto;width:100%}
  .fpk-h3-glancebar{width:calc(100% - 48px);margin-left:auto!important;margin-right:auto!important}
  .fpk-h3-v2 .fpk-h3-copy{align-self:stretch!important;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
  .fpk-h3-v2 .fpk-h3-photo img{max-height:58vh}
  .fpk-h3-sec .fpk-h3-inner.fpk-h3-v2{padding-top:8px!important}
  .fpk-h3-v2 .fpk-h3-h1{font-size:clamp(36px,3.6vw,50px)!important;margin:12px 0 12px!important}
  .fpk-h3-v2 .fpk-h3-sub{font-size:20px!important;line-height:1.38!important;max-width:30ch!important}
  .fpk-h3-v2 .fpk-h3-body{font-size:15.5px!important;line-height:1.62!important;margin-bottom:16px!important;color:rgba(255,255,255,.88)!important}
  .fpk-h3-v2 .fpk-h3-facts{gap:8px!important;margin-bottom:16px!important}
  .fpk-h3-v2 .fpk-h3-fact{padding:7px 12px!important;font-size:12px!important}
  .fpk-h3-glancebar{margin-top:12px auto 0!important;margin:12px auto 0!important}
  .fpk-h3-gbhead{margin-bottom:12px!important}
}
@media(max-width:560px){
  .fpk-h3-sec{padding-top:24px!important}
  .fpk-h3-sec .fpk-h3-inner.fpk-h3-v2{padding-top:6px!important}
  .fpk-h3-v2 .fpk-h3-h1{font-size:clamp(34px,10vw,44px)!important;margin:12px 0 12px!important}
  .fpk-h3-v2 .fpk-h3-body{font-size:14px!important}
}
/* ==== R29 end ==== */


/* R30-GLANCE-GATE — pre-paint gate for the glance bar: it was painting visible, then the
   deferred engine hid it to stage the entrance (visible -> gone -> animate in). Same gate
   pattern as the heroes: hidden only under .fpk-js (synchronous class, 1.9s no-gsap bail),
   released by the engine's autoAlpha tween. Reduced-motion never adds .fpk-js. */
.fpk-h3-sec.fpk-js .fpk-h3-glancebar{opacity:0}


/* R29b — extra-short laptop windows (stacked toolbars etc): squeeze further so stats never clip */
@media(min-width:821px) and (max-height:700px){
  .fpk-h3-v2 .fpk-h3-h1{font-size:clamp(32px,3vw,42px)!important;margin:10px 0 10px!important}
  .fpk-h3-v2 .fpk-h3-sub{font-size:15px!important}
  .fpk-h3-v2 .fpk-h3-body{font-size:13px!important;margin-bottom:10px!important}
  .fpk-h3-v2 .fpk-h3-photo img{max-height:44vh}
  .fpk-h3-glancebar{padding:14px 20px 16px!important}
  .fpk-h3-gbhead{margin-bottom:8px!important}
}


/* ==== R33-PIN-NAV-CLEARANCE — pinned sections (roadmap, build rail) centered their
   content in the full viewport, so on laptop heights the heading slid under the fixed
   72px navbar and the bottom CTA bar squeezed the rest. Clearance at short viewports. ==== */
@media(min-width:821px) and (max-height:880px){
  .fpk-roadmap-sec .fpk-rm-wrap{padding-top:16px!important;padding-bottom:104px!important;min-height:calc(100vh - 72px)!important}
  .fpk-build-sec.fpk-mode-pin .fpk-build-stage{box-sizing:border-box;padding-top:92px;padding-bottom:96px;min-height:0}
  .fpk-rm-title{font-size:clamp(30px,3.4vw,44px)!important}
  /* build stack must FIT the padded stage or centering shoves the title under the nav */
  .fpk-build-title{font-size:clamp(26px,3vw,40px)!important}
  .fpk-build-head{margin-bottom:16px!important}
  .fpk-build-head p{display:none}
  .fpk-build-card{height:min(46vh,420px)!important;min-height:0!important}
}
/* ==== R33 end ==== */


/* ==== R34-BUILD-CARD-CLEANUP — owner: icons add nothing and the body text was
   trimming in the compact card. Icon chips hidden, image moves to the very top
   of the card (full-bleed), body gets the reclaimed room. ==== */
.fpk-build-ico{display:none!important}
.fpk-build-card{padding:0 0 20px!important;display:flex;flex-direction:column}
.fpk-build-img{order:-1;margin:0 0 16px!important;border-radius:21px 21px 0 0!important;height:180px!important}
.fpk-build-card-num{top:12px!important;right:14px!important}
.fpk-build-card-body{margin-top:0!important;padding:0 22px}
.fpk-build-name{font-size:19px;margin-bottom:8px}
.fpk-build-card p,.fpk-build-text{display:block;overflow:visible;font-size:14px;line-height:1.5}
@media(min-width:821px) and (max-height:880px){
  .fpk-build-img{height:150px!important}
  .fpk-build-card{height:min(48vh,430px)!important}
}
/* ==== R34 end ==== */


/* ==== R35-FINAL-AUDIT — button-standard + polish from the client-handover audit ==== */
.fpk-h3-btn--ghost,.fpk-mentor-cta{border-radius:100px!important}
/* ==== R35 end ==== */
