/* RunProof — v7
   Design ethos: dark premium, editorial typography, severity colors,
   functional animation, generous breathing room, mobile-first fluid */

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}

:root{
  --bg:#0E0E0C;
  --surface:#131311;
  --raised:#1A1918;
  --cream:#F5F0E8;
  --dim:#6B6560;
  --muted:#3A3836;
  --red:#C94A3A;
  --amber:#F39C12;
  --green:#2ECC71;
  --blue:#4A9EF5;
  --purple:#7B61FF;
  --border:rgba(245,240,232,0.06);
  --editorial:'EB Garamond',Georgia,serif;
  --tool:'DM Sans',system-ui,sans-serif;
  --data:'JetBrains Mono','SF Mono',monospace;
  --ease:cubic-bezier(0.22,1,0.36,1);
}

html{-webkit-font-smoothing:antialiased;scroll-behavior:smooth}
body{background:var(--bg);color:var(--cream);font-family:var(--tool);overflow-x:hidden}
a{color:inherit;text-decoration:none}
strong{font-weight:600;color:var(--cream)}
.accent{font-family:var(--tool);font-weight:700;font-size:1.1em}
.accent--red{color:var(--red)}
.accent--amber{color:var(--amber)}
.accent--green{color:var(--green)}

/* ── Reveal ── */
.rv{opacity:0;transform:translateY(32px);transition:opacity 0.8s var(--ease),transform 0.8s var(--ease)}
.rv.visible{opacity:1;transform:translateY(0)}

/* ── Shared typography ── */
.editorial{
  font-family:var(--editorial);
  font-size:clamp(28px,4vw,52px);
  font-weight:400;line-height:1.25;
}
.body-lg{
  font-family:var(--editorial);
  font-size:clamp(18px,2vw,24px);
  font-weight:400;line-height:1.7;
  color:var(--dim);margin-top:24px;
}
.body-lg strong{color:var(--cream);font-weight:500;font-family:var(--editorial)}
.data-label{
  font-family:var(--data);font-size:clamp(11px,1.2vw,14px);
  letter-spacing:0.1em;text-transform:uppercase;color:var(--dim);
}

/* ═══════════════════════════════════
   NAV
   ═══════════════════════════════════ */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:200;
  display:flex;align-items:center;justify-content:space-between;
  padding:14px clamp(24px,4vw,48px);
  background:rgba(14,14,12,0.92);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border-bottom:1px solid var(--border);
  opacity:1;transform:translateY(0);
  pointer-events:auto;
}
.nav__wordmark svg{height:26px;width:auto;display:block}
.nav__links{display:flex;align-items:center;gap:clamp(16px,3vw,32px)}
.nav__link{font-size:14px;font-weight:500;color:var(--dim);transition:color 0.2s}
.nav__link:hover,.nav__link--active{color:var(--cream)}
.nav__cta{
  font-family:var(--data);font-size:11px;
  color:var(--bg);background:var(--green);
  padding:8px 20px;border-radius:8px;letter-spacing:0.05em;
  text-transform:uppercase;transition:all 0.2s;
}
.nav__cta:hover{filter:brightness(1.1);transform:translateY(-1px)}

/* ═══════════════════════════════════
   HERO
   ═══════════════════════════════════ */
.hero{
  min-height:100vh;min-height:100dvh;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  position:relative;text-align:center;
  padding:80px clamp(24px,5vw,64px);
}
.hero__question{
  font-family:var(--editorial);
  font-size:clamp(30px,5vw,60px);
  font-weight:400;line-height:1.2;
  opacity:0;animation:rise 0.9s var(--ease) 0.4s forwards;
}
.hero__score-wrap{margin-top:48px;opacity:0;animation:rise 0.7s var(--ease) 1.1s forwards}
.hero__score{
  font-family:var(--editorial);
  font-size:clamp(120px,20vw,280px);
  line-height:0.8;letter-spacing:-0.03em;
}
.hero__bar{
  display:flex;gap:4px;height:6px;margin-top:16px;
  transition:width 0.3s var(--ease);
}
.hero__bar div{border-radius:3px}
.hero__bar div:nth-child(1){flex:56;background:var(--red)}
.hero__bar div:nth-child(2){flex:22;background:var(--amber)}
.hero__bar div:nth-child(3){flex:11;background:var(--green)}
.hero__sub{
  font-size:clamp(16px,1.6vw,21px);color:var(--dim);
  margin-top:40px;line-height:1.6;
  opacity:0;animation:rise 0.7s var(--ease) 3.8s forwards;
}
.scroll-cue{
  position:absolute;bottom:clamp(32px,4vh,48px);
  display:flex;flex-direction:column;align-items:center;gap:8px;
  cursor:pointer;
  opacity:0;animation:rise 0.5s var(--ease) 4.5s forwards;
}
.scroll-cue span{font-family:var(--data);font-size:11px;color:var(--muted);letter-spacing:0.08em;text-transform:uppercase}
.scroll-cue__line{width:1px;height:24px;background:var(--muted);animation:pulse 2.5s ease infinite}

@keyframes rise{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes pulse{0%,100%{opacity:0.15;height:16px}50%{opacity:0.5;height:28px}}

/* ═══════════════════════════════════
   SECTIONS
   ═══════════════════════════════════ */
.sec{padding:clamp(64px,8vh,120px) clamp(24px,5vw,64px)}
.sec--surface{background:var(--surface)}
.sec__inner{max-width:800px;margin:0 auto}
.sec__inner--narrow{max-width:660px}

/* ═══════════════════════════════════
   STATS
   ═══════════════════════════════════ */
.stats{
  display:flex;gap:clamp(32px,5vw,72px);justify-content:center;flex-wrap:wrap;
  max-width:960px;margin:clamp(64px,8vh,100px) auto 0;
  padding-top:clamp(48px,6vh,80px);
  border-top:1px solid var(--border);
}
.stat{text-align:center;min-width:180px}
.stat__num{
  font-family:var(--editorial);
  font-size:clamp(48px,7vw,88px);
  font-weight:400;line-height:0.9;display:block;
}
.stat__label{
  font-family:var(--tool);font-size:14px;font-weight:600;
  color:var(--dim);margin-top:12px;display:block;line-height:1.4;
}
.stat__src{
  font-family:var(--data);font-size:10px;
  color:var(--muted);display:block;margin-top:6px;
  letter-spacing:0.04em;
}

/* ═══════════════════════════════════
   GUT PUNCH
   ═══════════════════════════════════ */
.gut__money{
  font-family:var(--editorial);
  font-size:clamp(80px,14vw,180px);
  line-height:0.85;margin-top:16px;
}
.gut__unit{
  font-family:var(--data);
  font-size:clamp(24px,3.5vw,40px);color:var(--dim);
}
.gut__scores{
  display:flex;align-items:center;justify-content:center;
  gap:clamp(24px,4vw,56px);
  margin-top:clamp(48px,6vh,72px);
}
.gut__score{text-align:center}
.gut__label{
  font-family:var(--data);font-size:12px;
  letter-spacing:0.08em;text-transform:uppercase;
  color:var(--dim);display:block;margin-bottom:10px;
}
.gut__num{
  font-family:var(--editorial);
  font-size:clamp(56px,9vw,100px);
  line-height:0.9;
}
.gut__max{font-size:0.4em;color:var(--dim)}
.gut__divider{width:1px;height:clamp(48px,6vh,72px);background:var(--border)}
/* Comparison layout */
.gut__comparison{
  display:flex;align-items:stretch;justify-content:center;
  gap:0;margin-top:clamp(40px,5vh,64px);
}
.gut__side{
  flex:1;max-width:280px;
  display:flex;flex-direction:column;align-items:center;
  padding:clamp(24px,3vw,40px);
  background:var(--surface);
  border:1px solid var(--border);
}
.gut__side:first-child{border-radius:16px 0 0 16px;border-right:none}
.gut__side:last-child{border-radius:0 16px 16px 0;border-left:none}
.gut__vs{
  display:flex;align-items:center;
  font-family:var(--data);font-size:12px;color:var(--muted);
  padding:0 16px;background:var(--surface);
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
  letter-spacing:0.06em;
}
.gut__tool-label{
  font-family:var(--tool);font-size:clamp(14px,1.4vw,17px);
  font-weight:700;color:var(--cream);display:block;
}
.gut__tool-desc{
  font-family:var(--tool);font-size:12px;
  color:var(--dim);display:block;margin-top:4px;
}
.gut__tool-num{
  font-family:var(--editorial);
  font-size:clamp(48px,7vw,80px);
  line-height:0.9;display:block;
  margin-top:clamp(16px,2vh,24px);
}
.gut__tool-max{font-size:0.4em;color:var(--dim)}
.gut__tool-verdict{
  font-family:var(--tool);font-size:14px;
  font-weight:700;display:block;margin-top:8px;
  text-transform:uppercase;letter-spacing:0.04em;
}
.gut__punchline{
  font-family:var(--tool);
  font-size:clamp(18px,2vw,24px);
  font-weight:600;color:var(--dim);margin-top:clamp(32px,4vh,48px);
}

@media(max-width:768px){
  .gut__comparison{flex-direction:column;align-items:center;gap:0}
  .gut__side{max-width:320px;width:100%}
  .gut__side:first-child{border-radius:16px 16px 0 0;border-right:1px solid var(--border);border-bottom:none}
  .gut__side:last-child{border-radius:0 0 16px 16px;border-left:1px solid var(--border);border-top:none}
  .gut__vs{padding:12px 0;border-left:1px solid var(--border);border-right:1px solid var(--border);border-top:none;border-bottom:none;justify-content:center;width:100%;max-width:320px}
}

/* ═══════════════════════════════════
   SCALE — 274M / $68B / $0
   ═══════════════════════════════════ */
.scale{text-align:center}
.scale__num{
  font-family:var(--editorial);
  font-size:clamp(100px,18vw,220px);
  line-height:0.85;display:flex;align-items:baseline;justify-content:center;
}
.scale__count{color:var(--cream)}
.scale__unit{
  font-family:var(--data);font-size:clamp(36px,6vw,72px);
  color:var(--dim);margin-left:4px;
}
.scale__context{
  font-family:var(--editorial);font-size:clamp(20px,2.4vw,32px);
  color:var(--cream);margin-top:16px;
}
.scale__sub{
  font-family:var(--editorial);font-size:clamp(16px,1.6vw,21px);
  color:var(--dim);line-height:1.6;margin-top:12px;
}
.scale__footnote{
  font-family:var(--data);font-size:clamp(10px,1vw,13px);
  color:var(--dim);opacity:0.4;letter-spacing:0.04em;margin-top:8px;
}
.scale__bar{
  display:flex;align-items:center;justify-content:center;
  gap:0;margin-top:clamp(40px,5vh,64px);
  max-width:700px;margin-left:auto;margin-right:auto;
}
.scale__spend{
  flex:1;padding:clamp(20px,3vw,32px);text-align:center;
}
.scale__spend-num{
  font-family:var(--editorial);font-size:clamp(40px,6vw,72px);
  display:block;line-height:0.9;
}
.scale__spend-num--zero{color:var(--red)}
.scale__spend-label{
  font-family:var(--tool);font-size:clamp(13px,1.3vw,16px);
  color:var(--dim);display:block;margin-top:12px;line-height:1.5;
}
.scale__spend-divider{
  width:1px;height:clamp(48px,6vh,80px);
  background:var(--border);flex-shrink:0;
}
@media(max-width:768px){
  .scale__bar{flex-direction:column;gap:0}
  .scale__spend-divider{width:48px;height:1px}
}

/* ═══════════════════════════════════
   FOUR QUESTIONS
   ═══════════════════════════════════ */
.four-q{margin-top:clamp(32px,4vh,48px)}
.four-q__item{
  font-family:var(--editorial);
  font-size:clamp(24px,3.5vw,44px);
  font-weight:400;line-height:1.3;
  color:var(--cream);
  padding:clamp(12px,1.5vh,18px) 0 clamp(12px,1.5vh,18px) clamp(20px,2.5vw,32px);
  border-left:3px solid;
  border-bottom:1px solid var(--border);
  text-align:left;
}
.four-q__item:first-child{border-top:1px solid var(--border)}
.four-q__item:nth-child(1){border-left-color:var(--red)}
.four-q__item:nth-child(2){border-left-color:var(--amber)}
.four-q__item:nth-child(3){border-left-color:var(--green)}
.four-q__item:nth-child(4){border-left-color:#5B9BD5}


/* ═══════════════════════════════════
   SHIFT BLOCKS — COSMO / RUFUS
   ═══════════════════════════════════ */
.shift-block{
  display:flex;align-items:center;gap:clamp(32px,5vw,80px);
  max-width:1100px;margin:clamp(48px,6vh,80px) auto;
  padding:0 clamp(24px,5vw,64px);
}
.shift-block--reverse{flex-direction:row-reverse}
.shift-block__name{
  font-family:var(--tool);font-weight:800;
  font-size:clamp(64px,10vw,140px);
  letter-spacing:-0.03em;line-height:0.85;
  flex-shrink:0;
}
.shift-block__content{max-width:480px}
.shift-block__desc{
  font-family:var(--editorial);font-size:clamp(17px,1.8vw,21px);
  line-height:1.7;color:var(--dim);
}
.shift-block__desc strong{color:var(--cream);font-weight:500;font-family:var(--editorial)}
.shift-block__meta{
  display:flex;gap:20px;margin-top:20px;flex-wrap:wrap;
}
.shift-block__stat{
  font-family:var(--data);font-size:12px;color:var(--dim);
  letter-spacing:0.03em;
}
.shift-block__stat strong{
  font-family:var(--tool);font-size:14px;font-weight:700;
  color:var(--cream);margin-right:4px;
}
.shift-block__src{
  font-family:var(--data);font-size:10px;
  color:var(--muted);display:block;margin-top:12px;
  letter-spacing:0.04em;
}

@media(max-width:768px){
  .shift-block,.shift-block--reverse{flex-direction:column;text-align:center;gap:24px}
  .shift-block__name{font-size:56px}
  .shift-block__meta{justify-content:center}
}

/* ═══════════════════════════════════
   GUT PUNCH — $84M at 58
   ═══════════════════════════════════ */
.gut-scores{
  display:flex;align-items:center;justify-content:center;gap:clamp(24px,4vw,48px);
  margin-top:clamp(40px,5vh,64px);
}
.gut-score{text-align:center}
.gut-score__label{
  font-family:var(--data);font-size:12px;
  letter-spacing:0.08em;text-transform:uppercase;
  color:var(--dim);display:block;margin-bottom:8px;
}
.gut-score__num{
  font-family:var(--editorial);font-size:clamp(48px,8vw,80px);line-height:0.9;
}
.gut-score--js .gut-score__num{color:var(--green)}
.gut-score--rp .gut-score__num{color:var(--amber)}
.gut-score__max{font-size:0.45em;color:var(--dim)}
.gut-divider{width:1px;height:64px;background:var(--border)}
.gut-grade{
  font-family:var(--tool);font-size:clamp(20px,2.5vw,32px);
  font-weight:700;color:var(--amber);margin-top:24px;
}

/* ═══════════════════════════════════
   DIAGNOSIS — scroll-driven
   ═══════════════════════════════════ */
.diagnosis{height:350vh;position:relative;margin-top:-20px}
.diagnosis__sticky{
  position:sticky;top:0;height:100vh;
  display:flex;align-items:center;justify-content:center;
  padding:56px 16px 16px;
}
.diagnosis__frame{
  position:relative;
  width:min(92vw,1100px);
  max-height:calc(100vh - 100px);
  border-radius:12px;overflow:hidden;
  box-shadow:0 24px 80px rgba(0,0,0,0.7);
  opacity:0.15;transform:scale(0.97);
}
.diagnosis__frame img{width:100%;display:block}

.dx-strip{
  position:absolute;top:0;left:0;right:0;height:5px;
  display:flex;gap:2px;width:0%;z-index:10;
  border-radius:12px 12px 0 0;
}
.dx-strip div:nth-child(1){flex:56;border-radius:2px;background:var(--red)}
.dx-strip div:nth-child(2){flex:22;border-radius:2px;background:var(--amber)}
.dx-strip div:nth-child(3){flex:11;border-radius:2px;background:var(--green)}

.dx-hl{
  position:absolute;top:27%;left:47%;width:35%;height:5%;
  border-radius:3px;opacity:0;z-index:5;
}
.dx-hl--red{border-bottom:3px solid var(--red);background:rgba(201,74,58,0.10)}
.dx-hl--green{border-bottom:3px solid var(--green);background:rgba(46,204,113,0.08);z-index:6}

.dx-card{
  position:absolute;
  display:flex;align-items:flex-start;gap:10px;
  background:rgba(14,14,12,0.94);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  border:1px solid var(--border);border-radius:10px;
  padding:12px 16px;max-width:260px;
  opacity:0;z-index:10;
  box-shadow:0 8px 32px rgba(0,0,0,0.5);
}
.dx-card__dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;margin-top:5px}
.dx-card__title{font-family:var(--tool);font-size:13px;font-weight:700;color:var(--cream)}
.dx-card__body{font-family:var(--tool);font-size:11px;color:var(--dim);margin-top:2px;line-height:1.45}

.dx-tag{
  position:absolute;
  font-family:var(--data);font-size:10px;letter-spacing:0.06em;
  text-transform:uppercase;padding:4px 10px;border-radius:6px;
  opacity:0;z-index:5;
}
.dx-tag--red{color:var(--red);background:rgba(201,74,58,0.08);border:1px solid rgba(201,74,58,0.20)}
.dx-tag--amber{color:var(--amber);background:rgba(243,156,18,0.06);border:1px solid rgba(243,156,18,0.18)}
.dx-tag--green{color:var(--green);background:rgba(46,204,113,0.06);border:1px solid rgba(46,204,113,0.18)}

.dx-badge{
  position:absolute;bottom:20px;right:20px;
  width:160px;
  background:rgba(14,14,12,0.96);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border:1px solid var(--border);border-radius:14px;
  padding:16px 18px;opacity:0;z-index:10;
  box-shadow:0 12px 48px rgba(0,0,0,0.7);
}
.dx-badge__row{display:flex;align-items:baseline;gap:8px;margin-top:8px}
.dx-badge__num{font-family:var(--editorial);font-size:40px;line-height:0.85;color:var(--red);transition:color 0.3s ease}
.dx-badge__grade{font-family:var(--data);font-size:10px;letter-spacing:0.06em;text-transform:uppercase;color:var(--red);transition:color 0.3s ease}
.dx-badge__bar{display:flex;gap:2px;height:3px;width:100%;margin-top:10px}
.dx-badge__bar div:nth-child(1){flex:56;border-radius:2px;background:var(--red)}
.dx-badge__bar div:nth-child(2){flex:22;border-radius:2px;background:var(--amber)}
.dx-badge__bar div:nth-child(3){flex:11;border-radius:2px;background:var(--green)}


/* ═══════════════════════════════════
   WORLD MAP — dot-matrix canvas
   ═══════════════════════════════════ */
.map-section{height:300vh;position:relative}
.map-section__sticky{
  position:sticky;top:0;height:100vh;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:72px clamp(24px,4vw,48px) clamp(24px,3vw,40px);
}
.map-section__title{
  font-family:var(--editorial);
  font-size:clamp(24px,3vw,40px);
  text-align:center;margin-bottom:8px;
  opacity:0;transition:opacity 0.5s ease;
}
.map-section__title.visible{opacity:1}
.map-section__subtitle{
  font-family:var(--tool);font-size:clamp(14px,1.4vw,17px);
  color:var(--dim);text-align:center;line-height:1.6;
  max-width:520px;margin:12px auto 0;
  opacity:0;transition:opacity 0.5s ease;
}
.map-section__subtitle.visible{opacity:1}
.map-section__region-label{
  font-family:var(--data);font-size:clamp(11px,1.2vw,14px);
  letter-spacing:0.1em;text-transform:uppercase;
  color:var(--green);text-align:center;
  height:20px;margin-bottom:16px;
  opacity:0;transition:opacity 0.4s ease;
}
.map-section__region-label.visible{opacity:1}

.worldmap{
  max-width:900px;width:100%;
  position:relative;flex-shrink:0;
}
#mapCanvas{
  width:100%;height:auto;display:block;
  border-radius:12px;
}

.worldmap__tip{
  position:absolute;
  background:rgba(14,14,12,0.95);border:1px solid var(--border);
  border-radius:8px;padding:8px 14px;
  font-family:var(--tool);font-size:13px;font-weight:600;color:var(--cream);
  box-shadow:0 8px 24px rgba(0,0,0,0.6);
  pointer-events:none;opacity:0;
  transition:opacity 0.15s ease;
  white-space:nowrap;z-index:10;
}
.worldmap__tip span{
  font-family:var(--data);font-size:10px;font-weight:400;
  color:var(--green);margin-left:8px;letter-spacing:0.04em;
}
.worldmap__tip--wm span{color:var(--blue)}
.worldmap__tip.visible{opacity:1}

.worldmap__legend{
  display:flex;align-items:center;justify-content:center;
  gap:24px;margin-top:28px;
  font-family:var(--data);font-size:11px;color:var(--dim);
  letter-spacing:0.04em;
}
.wm-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:middle}
.wm-dot--green{background:var(--green)}
.wm-dot--blue{background:var(--blue)}
.worldmap__currencies{color:var(--muted)}

@media(max-width:768px){
  .worldmap__legend{flex-direction:column;gap:8px}
}

/* ═══════════════════════════════════
   CTA
   ═══════════════════════════════════ */
.cta-bar{display:flex;gap:3px;height:3px;width:100px;margin:48px auto}
.cta-bar div:nth-child(1){flex:56;border-radius:2px;background:var(--red)}
.cta-bar div:nth-child(2){flex:22;border-radius:2px;background:var(--amber)}
.cta-bar div:nth-child(3){flex:11;border-radius:2px;background:var(--green)}
.cta-email{
  font-family:var(--data);font-size:15px;color:var(--dim);
  letter-spacing:0.04em;display:block;text-align:center;
  margin-top:32px;transition:color 0.2s;
}
.cta-email:hover{color:var(--cream)}

/* ── Jumping logo ── */
.logo-stage{position:relative;display:flex;align-items:baseline;justify-content:center;height:180px;user-select:none;cursor:pointer;padding-top:50px;margin:0 auto -16px;width:max-content;overflow:visible}
.logo-proof{font-family:var(--tool);font-weight:800;font-size:clamp(56px,8vw,72px);color:var(--cream);letter-spacing:0.02em;position:relative;z-index:1}
.logo-run{font-family:var(--tool);font-weight:700;font-style:italic;font-size:clamp(34px,5vw,42px);color:var(--cream);position:absolute;z-index:2;left:-80px;bottom:74px;opacity:0.85}
.logo-bar{position:absolute;bottom:0;left:0;right:0;display:flex;gap:2px;height:4px}
.logo-bar div{border-radius:2px;transition:background 0.6s ease}
.logo-bar div:nth-child(1){flex:56;background:var(--red)}
.logo-bar div:nth-child(2){flex:22;background:var(--red)}
.logo-bar div:nth-child(3){flex:11;background:var(--red)}
.logo-shadow{display:none}

@keyframes lj{0%{left:-80px;bottom:74px;transform:scaleY(.92) scaleX(1.05);opacity:.85}8%{left:-68px;bottom:74px;transform:scaleY(1.1) scaleX(.95);opacity:.9}25%{left:36px;bottom:130px;transform:scaleY(1.05) scaleX(.97) rotate(-8deg);opacity:1}42%{left:108px;bottom:146px;transform:scale(.88) rotate(-5deg);opacity:.95}65%{left:196px;bottom:110px;transform:scale(.92) rotate(3deg);opacity:.95}82%{left:258px;bottom:80px;transform:scaleY(1) scaleX(1) rotate(2deg);opacity:.9}90%{left:261px;bottom:74px;transform:scaleY(.85) scaleX(1.12) rotate(0);opacity:.85}100%{left:262px;bottom:74px;transform:scaleY(1) scaleX(1) rotate(0);opacity:.85}}
@keyframes ljb{0%{left:262px;bottom:74px;transform:scaleY(.92) scaleX(1.05);opacity:.85}8%{left:252px;bottom:74px;transform:scaleY(1.1) scaleX(.95);opacity:.9}25%{left:180px;bottom:130px;transform:scaleY(1.05) scaleX(.97) rotate(8deg);opacity:1}42%{left:108px;bottom:146px;transform:scale(.88) rotate(5deg);opacity:.95}65%{left:30px;bottom:110px;transform:scale(.92) rotate(-3deg);opacity:.95}82%{left:-72px;bottom:80px;transform:scaleY(1) scaleX(1) rotate(-2deg);opacity:.9}90%{left:-78px;bottom:74px;transform:scaleY(.85) scaleX(1.12) rotate(0);opacity:.85}100%{left:-80px;bottom:74px;transform:scaleY(1) scaleX(1) rotate(0);opacity:.85}}
@keyframes ljs{0%{left:-60px;opacity:0;width:32px}15%{opacity:.35;width:24px}42%{left:130px;opacity:.12;width:18px}82%{left:278px;opacity:.25;width:24px}90%{left:280px;opacity:.45;width:40px}100%{left:282px;opacity:0;width:32px}}
@keyframes ljsb{0%{left:282px;opacity:0;width:32px}15%{opacity:.35;width:24px}42%{left:130px;opacity:.12;width:18px}82%{left:-58px;opacity:.25;width:24px}90%{left:-60px;opacity:.45;width:40px}100%{left:-60px;opacity:0;width:32px}}
.logo-run.jumping{animation:lj .85s var(--ease) forwards}
.logo-shadow.jumping{animation:ljs .85s var(--ease) forwards}
.logo-run.jumping-back{animation:ljb .85s var(--ease) forwards}
.logo-shadow.jumping-back{animation:ljsb .85s var(--ease) forwards}

/* ═══════════════════════════════════
   ABOUT PAGE
   ═══════════════════════════════════ */
.founder-name{
  font-family:var(--tool);font-size:clamp(24px,3vw,32px);
  font-weight:700;margin-bottom:4px;
}
.founder-title{
  font-family:var(--data);font-size:13px;
  color:var(--dim);letter-spacing:0.05em;
  margin-bottom:40px;
}
.founder-photo{
  float:left;
  width:clamp(280px,38vw,440px);
  height:clamp(280px,38vw,440px);
  border-radius:50%;
  object-fit:cover;
  object-position:37% 30%;
  margin:0 32px 24px 0;
  border:3px solid var(--border);
  shape-outside:circle(50%);
}
.about-story{
  font-family:var(--editorial);font-size:clamp(18px,2vw,22px);
  line-height:1.75;color:var(--dim);
}
@media(max-width:600px){
  .founder-photo{
    float:none;
    display:block;
    margin:0 auto 32px;
    width:200px;height:200px;
  }
}
.about-story p{margin-bottom:20px}
.about-story strong{color:var(--cream);font-weight:500}
.about-story em{font-style:italic;color:var(--cream)}
.about-punchline{
  font-family:var(--tool);font-size:clamp(20px,2.4vw,28px);
  font-weight:700;color:var(--green);margin-top:8px;
}
.about-card{
  background:var(--bg);border:1px solid var(--border);
  border-radius:12px;padding:28px 24px;
}
.about-card h3{font-family:var(--tool);font-size:16px;font-weight:700;margin-bottom:8px}
.about-card p{font-size:14px;color:var(--dim);line-height:1.6}

/* ═══════════════════════════════════
   FOOTER
   ═══════════════════════════════════ */
footer{padding:40px clamp(24px,4vw,48px);text-align:center}
.footer-bar{display:flex;gap:3px;height:2px;max-width:160px;margin:0 auto 20px}
.footer-bar div:nth-child(1){flex:56;border-radius:1px;background:var(--red)}
.footer-bar div:nth-child(2){flex:22;border-radius:1px;background:var(--amber)}
.footer-bar div:nth-child(3){flex:11;border-radius:1px;background:var(--green)}
.footer-row{
  display:flex;align-items:center;justify-content:center;gap:20px;
  font-family:var(--data);font-size:11px;color:rgba(245,240,232,0.15);
}
.footer-row a{transition:color 0.2s}
.footer-row a:hover{color:var(--dim)}

/* ═══════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════ */
@media(max-width:768px){
  .stats{flex-direction:column;gap:40px;align-items:center}
  .stat{min-width:auto}
  .gut-scores{flex-direction:column;gap:24px}
  .gut-divider{width:48px;height:1px}
  .rev-grid{flex-direction:column}
  .rev-card{min-width:auto}
  .logo-run{font-size:32px;left:-60px;bottom:58px}
  .logo-proof{font-size:54px}
  .logo-bar{height:3px}
  .logo-stage{height:140px;padding-top:40px;margin-bottom:-24px}
  .logo-run.jumping{animation:ljm .85s var(--ease) forwards}
  .logo-shadow.jumping{animation:ljsm .85s var(--ease) forwards}
  .logo-run.jumping-back{animation:ljmb .85s var(--ease) forwards}
  .logo-shadow.jumping-back{animation:ljsmb .85s var(--ease) forwards}
  .dx-card{max-width:180px;padding:10px 12px}
  .dx-card__title{font-size:11px}
  .dx-card__body{font-size:10px}
  .dx-badge{padding:10px 14px}
  .dx-badge__num{font-size:28px}
}
@keyframes ljm{0%{left:-60px;bottom:58px;transform:scaleY(.92) scaleX(1.05);opacity:.85}8%{left:-50px;bottom:58px;transform:scaleY(1.1) scaleX(.95);opacity:.9}25%{left:20px;bottom:100px;transform:scaleY(1.05) scaleX(.97) rotate(-8deg);opacity:1}42%{left:80px;bottom:112px;transform:scale(.88) rotate(-5deg);opacity:.95}65%{left:145px;bottom:90px;transform:scale(.92) rotate(3deg);opacity:.95}82%{left:200px;bottom:64px;transform:scaleY(1) scaleX(1) rotate(2deg);opacity:.9}90%{left:204px;bottom:58px;transform:scaleY(.85) scaleX(1.12) rotate(0);opacity:.85}100%{left:205px;bottom:58px;transform:scaleY(1) scaleX(1) rotate(0);opacity:.85}}
@keyframes ljmb{0%{left:205px;bottom:58px;transform:scaleY(.92) scaleX(1.05);opacity:.85}8%{left:195px;bottom:58px;transform:scaleY(1.1) scaleX(.95);opacity:.9}25%{left:130px;bottom:100px;transform:scaleY(1.05) scaleX(.97) rotate(8deg);opacity:1}42%{left:80px;bottom:112px;transform:scale(.88) rotate(5deg);opacity:.95}65%{left:15px;bottom:90px;transform:scale(.92) rotate(-3deg);opacity:.95}82%{left:-52px;bottom:64px;transform:scaleY(1) scaleX(1) rotate(-2deg);opacity:.9}90%{left:-58px;bottom:58px;transform:scaleY(.85) scaleX(1.12) rotate(0);opacity:.85}100%{left:-60px;bottom:58px;transform:scaleY(1) scaleX(1) rotate(0);opacity:.85}}
@keyframes ljsm{0%{left:-40px;opacity:0;width:24px}15%{opacity:.3;width:20px}42%{left:90px;opacity:.12;width:16px}82%{left:196px;opacity:.25;width:20px}90%{left:198px;opacity:.4;width:32px}100%{left:200px;opacity:0;width:24px}}
@keyframes ljsmb{0%{left:200px;opacity:0;width:24px}15%{opacity:.3;width:20px}42%{left:90px;opacity:.12;width:16px}82%{left:-38px;opacity:.25;width:20px}90%{left:-40px;opacity:.4;width:32px}100%{left:-40px;opacity:0;width:24px}}

@media(max-width:480px){
  .hero__question{font-size:26px}
  .hero__score{font-size:100px}
  .nav__link{display:none}
  .stat__num{font-size:48px}
  .gut-score__num{font-size:48px}
  .rev-hero__num{font-size:72px}
  .editorial{font-size:26px}
  .logo-run{font-size:26px;left:-48px;bottom:48px}
  .logo-proof{font-size:44px}
  .logo-stage{height:120px;padding-top:32px}
  .diagnosis{height:300vh}
  .dx-card{display:none}
  .dx-tag{font-size:8px;padding:3px 8px}
}
