.jfd-home{
  --paper:#E9E8E1; --paper2:#E1E0D7; --ink:#161519; --mid:#47454E; --dim:#847F86; --faint:#A8A4A9;
  --red:#DA3B26; --rule:#C7C4BA; --edge:#161519;
  background:var(--paper); color:var(--mid);
  font-family:"Archivo",system-ui,-apple-system,sans-serif; font-size:16px; line-height:1.6;
  -webkit-font-smoothing:antialiased; letter-spacing:.002em; min-height:100vh;
}
html.dark .jfd-home{
  --paper:#121116; --paper2:#191820; --ink:#EBE8E0; --mid:#9B98A2; --dim:#6C6975; --faint:#565059;
  --red:#ED4B34; --rule:#2A2831; --edge:#54515C;
}
.jfd-home *{box-sizing:border-box; margin:0; padding:0}
.jfd-home a{color:inherit; text-decoration:none}
.jfd-home .serif{font-family:"Instrument Serif",Georgia,serif; font-weight:400}
.jfd-home em{font-family:"Instrument Serif",serif; font-style:italic}
.jfd-home .wrap{max-width:1140px; margin-inline:auto; padding-inline:34px}
.jfd-home .lbl{font-size:11px; font-weight:600; letter-spacing:.18em; text-transform:uppercase; color:var(--dim)}
.jfd-home .red{color:var(--red)}

/* sticky top bar: ticker + nav */
.jfd-home .topbar{position:sticky; top:0; z-index:50}
.jfd-home .ticker{border-bottom:1px solid var(--edge); background:var(--paper2); overflow:hidden; white-space:nowrap}
.jfd-home .ticker .run{display:inline-flex; align-items:center; gap:24px; padding:13px 0; animation:jfd-tk 34s linear infinite; font-size:13.5px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--mid)}
.jfd-home .ticker b{color:var(--ink); font-weight:700}
.jfd-home .ticker .r{color:var(--red)}
.jfd-home .ticker .sep{color:var(--red); font-weight:400}
@keyframes jfd-tk{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.jfd-home nav{border-bottom:1px solid var(--edge); background:var(--paper)}
.jfd-home .navIn{display:flex; align-items:center; gap:22px; padding:15px 34px; max-width:1140px; margin-inline:auto}
.jfd-home .brand{display:flex; align-items:center; gap:11px; font-size:19px; color:var(--ink); font-weight:600; letter-spacing:-.01em}
.jfd-home .brand svg{width:25px; height:25px; flex:none}
.jfd-home .navMeta{margin-left:16px; padding-left:16px; border-left:1px solid var(--rule); font-size:11px; letter-spacing:.06em; color:var(--dim); text-transform:uppercase; white-space:nowrap}
.jfd-home .navLinks{margin-left:auto; display:flex; gap:24px; align-items:center; font-size:14px}
.jfd-home .navLinks a{color:var(--mid)} .jfd-home .navLinks a:hover{color:var(--ink)}
.jfd-home .req-link{font-weight:600; color:var(--ink); border-bottom:2px solid var(--red); padding-bottom:2px}
.jfd-home .req-link:hover{color:var(--red)}
.jfd-home .toggle{width:32px; height:32px; border:1px solid var(--rule); border-radius:2px; background:transparent; color:var(--ink); cursor:pointer; font-size:13px; display:flex; align-items:center; justify-content:center; flex:none}
.jfd-home .toggle:hover{border-color:var(--red); color:var(--red)}

/* hero */
.jfd-home header{padding:clamp(30px,4vw,52px) 0 clamp(46px,6vw,78px)}
.jfd-home .runhead{display:flex; justify-content:space-between; align-items:flex-end; gap:16px; flex-wrap:wrap; padding-bottom:16px; border-bottom:1px solid var(--rule)}
.jfd-home .runhead .l{font-family:"Instrument Serif",serif; font-size:19px; color:var(--ink); font-style:italic}
.jfd-home h1{font-family:"Instrument Serif",serif; font-weight:400; color:var(--ink); font-size:clamp(46px,8.4vw,116px); line-height:.98; letter-spacing:-.015em; margin-top:clamp(28px,4vw,52px); text-wrap:balance}
.jfd-home h1 em{color:var(--red)}
.jfd-home .heroRow{margin-top:clamp(30px,4vw,54px); display:grid; grid-template-columns:1.55fr 1fr; gap:clamp(24px,4vw,64px); align-items:start}
.jfd-home .lede{font-size:19px; color:var(--ink); line-height:1.5; max-width:52ch}
.jfd-home .lede .mut{color:var(--mid)}
.jfd-home .sideNote{border-top:2px solid var(--ink); padding-top:14px}
.jfd-home .sideNote p{font-size:14.5px; color:var(--mid); line-height:1.5}
.jfd-home .assert{margin-top:20px; display:flex; flex-direction:column; gap:7px; font-size:13px; color:var(--mid)}
.jfd-home .assert span{display:flex; gap:10px; align-items:baseline}
.jfd-home .assert span::before{content:"—"; color:var(--red)}
.jfd-home .sideCta{display:inline-block; margin-top:16px; font-weight:600; color:var(--ink); border-bottom:2px solid var(--red); padding-bottom:2px}

/* live instrument, as an editorial figure plate */
.jfd-home .figWrap{padding:clamp(28px,3.5vw,44px) 0 clamp(44px,6vw,70px)}
.jfd-home figure{margin:0; border:1px solid var(--edge)}
.jfd-home .figHead{display:flex; align-items:baseline; gap:16px; padding:12px 18px; border-bottom:1px solid var(--rule); font-size:11px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--dim)}
.jfd-home .figHead .fno{color:var(--red); font-family:"Instrument Serif",serif; font-size:17px; letter-spacing:0; text-transform:none}
.jfd-home .figHead .live{margin-left:auto; display:flex; align-items:center; gap:8px; color:var(--ink)}
.jfd-home .figHead .live::before{content:""; width:7px; height:7px; border-radius:50%; background:var(--red); animation:jfd-blink 1.6s infinite}
@keyframes jfd-blink{0%,100%{opacity:1}50%{opacity:.3}}
.jfd-home canvas{display:block; width:100%; height:232px}
.jfd-home .figFoot{display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--rule)}
.jfd-home .figFoot .stat{padding:13px 16px; border-right:1px solid var(--rule)}
.jfd-home .figFoot .stat:last-child{border-right:0}
.jfd-home .figFoot .k{font-size:9.5px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--dim)}
.jfd-home .figFoot .v{font-family:"Instrument Serif",serif; font-size:27px; color:var(--ink); margin-top:3px; line-height:1; font-variant-numeric:tabular-nums}
.jfd-home .figFoot .v.r{color:var(--red)}
.jfd-home .figcap{margin-top:14px; font-family:"Instrument Serif",serif; font-style:italic; font-size:17px; color:var(--dim); max-width:64ch}

/* sections */
.jfd-home section{padding:clamp(56px,7vw,96px) 0; border-top:1px solid var(--edge)}
.jfd-home .sectionTop{display:flex; gap:14px; align-items:baseline; flex-wrap:wrap; margin-bottom:8px}
.jfd-home .sectionNo{font-family:"Instrument Serif",serif; font-size:20px; color:var(--red)}
.jfd-home .platform{font-family:"Instrument Serif",serif; font-size:clamp(24px,3.4vw,40px); color:var(--ink); line-height:1.16; letter-spacing:-.01em; max-width:24ch; margin-top:8px}
.jfd-home .platform b{font-style:normal; font-family:"Archivo"; font-weight:700; font-size:.62em; letter-spacing:0}
.jfd-home .platformSub{margin-top:20px; font-size:16px; color:var(--mid); max-width:none}
.jfd-home .platformSub b{color:var(--ink); font-weight:600}

/* dossier ladder */
.jfd-home .doc{margin-top:44px}
.jfd-home .entry{display:grid; grid-template-columns:96px 1fr; gap:clamp(16px,3vw,44px); padding:34px 0; border-top:1px solid var(--rule); align-items:start}
.jfd-home .entry:last-child{border-bottom:1px solid var(--rule)}
.jfd-home .idx{font-family:"Instrument Serif",serif; font-size:clamp(40px,5vw,68px); color:var(--red); line-height:.9; font-variant-numeric:tabular-nums}
.jfd-home .etag{font-size:11px; font-weight:600; letter-spacing:.16em; text-transform:uppercase; color:var(--dim); margin-bottom:12px}
.jfd-home .entry h3{font-family:"Instrument Serif",serif; font-weight:400; color:var(--ink); font-size:clamp(26px,3.4vw,40px); line-height:1.04; letter-spacing:-.01em; max-width:20ch}
.jfd-home .entry .txt{margin-top:16px; display:grid; grid-template-columns:1fr auto; gap:12px 44px; align-items:end}
.jfd-home .entry p{font-size:15.5px; color:var(--mid); line-height:1.55; max-width:56ch}
.jfd-home .entry .role{font-size:11px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; color:var(--dim); white-space:nowrap; text-align:right; align-self:end}

/* voices */
.jfd-home .bigquote{margin:30px 0 0; font-family:"Instrument Serif",serif; font-weight:400; font-size:clamp(28px,4.4vw,54px); line-height:1.12; color:var(--ink); letter-spacing:-.01em; max-width:19ch}
.jfd-home .bigquote .qm{color:var(--red)}
.jfd-home .who{margin-top:22px; font-size:12px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--dim)}
.jfd-home .who b{color:var(--ink)} .jfd-home .who .tag{color:var(--red)}
.jfd-home .voiceRow{margin-top:46px; padding-top:34px; border-top:1px solid var(--rule); display:grid; grid-template-columns:1fr 1fr; gap:clamp(24px,4vw,56px)}
.jfd-home .vtag{font-size:10px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--dim); border:1px solid var(--rule); display:inline-block; padding:3px 9px; border-radius:2px; margin-bottom:16px}
.jfd-home .vquote{font-family:"Instrument Serif",serif; font-size:clamp(20px,2.4vw,27px); line-height:1.22; color:var(--ink); letter-spacing:-.005em}
.jfd-home .who2{margin-top:16px; font-size:11px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--dim)}
.jfd-home .who2 b{color:var(--ink)}
.jfd-home .voiceNote{margin-top:32px; font-family:"Instrument Serif",serif; font-style:italic; font-size:16px; color:var(--dim); max-width:70ch}

/* pull / wager */
.jfd-home .pull{padding:clamp(60px,8vw,110px) 0; border-top:1px solid var(--edge)}
.jfd-home .pullLine{font-family:"Instrument Serif",serif; font-size:clamp(34px,6vw,86px); line-height:1.02; color:var(--ink); letter-spacing:-.015em; max-width:16ch; text-wrap:balance}
.jfd-home .pullLine em{color:var(--red)}
.jfd-home .pullCta{margin-top:34px; display:flex; gap:20px; align-items:center; flex-wrap:wrap}
.jfd-home .btnSolid{background:var(--ink); color:var(--paper); font-weight:600; font-size:15px; padding:13px 26px; border-radius:2px; cursor:pointer; border:0}
.jfd-home .btnSolid:hover{background:var(--red); color:#fff}
.jfd-home .pullCta .mk{font-size:14px; color:var(--dim)}

/* request-access form (editorial) */
.jfd-home .reqWrap{padding:clamp(56px,7vw,96px) 0; border-top:1px solid var(--edge)}
.jfd-home .req{max-width:640px}
.jfd-home .beta{display:inline-block; font-size:11px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--red)}
.jfd-home .req h2{font-family:"Instrument Serif",serif; font-weight:400; font-size:clamp(30px,4.2vw,50px); color:var(--ink); line-height:1.04; letter-spacing:-.01em; margin-top:10px}
.jfd-home .req .sub{margin-top:12px; color:var(--mid); font-size:15.5px; max-width:52ch}
.jfd-home .field{margin-top:22px; position:relative}
.jfd-home .field > label{display:block; font-size:10.5px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--dim); margin-bottom:9px}
.jfd-home .chips{display:flex; gap:9px; flex-wrap:wrap}
.jfd-home .chip{cursor:pointer; user-select:none; font-size:14px; padding:9px 15px; border:1px solid var(--rule); background:transparent; color:var(--mid); transition:.15s}
.jfd-home .chip input{position:absolute; opacity:0; width:0; height:0}
.jfd-home .chip.on{border-color:var(--red); color:var(--ink); background:color-mix(in srgb,var(--red) 10%,transparent)}
.jfd-home .req input[type=email],.jfd-home .req select,.jfd-home .req textarea{width:100%; font:inherit; font-size:15px; color:var(--ink); background:var(--paper2); border:1px solid var(--rule); border-radius:2px; padding:11px 13px}
.jfd-home .req input:focus,.jfd-home .req select:focus,.jfd-home .req textarea:focus{outline:none; border-color:var(--red)}
.jfd-home .req textarea{resize:vertical; min-height:64px}
.jfd-home .submit{margin-top:24px; display:flex; align-items:center; gap:16px; flex-wrap:wrap}
.jfd-home .btnPrimary{background:var(--ink); color:var(--paper); font-family:"Archivo"; font-weight:600; font-size:15px; padding:13px 26px; border:0; border-radius:2px; cursor:pointer}
.jfd-home .btnPrimary:hover{background:var(--red); color:#fff}
.jfd-home .msg{font-size:13.5px; color:var(--dim)} .jfd-home .msg.err{color:var(--red)}
.jfd-home .hp{position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden}

/* pricing tiers + enterprise (dossier) */
.jfd-home .tscope{font-family:"Instrument Serif",serif; font-size:clamp(22px,2.9vw,34px); color:var(--ink); line-height:1.08; letter-spacing:-.01em; margin:2px 0 10px; max-width:22ch}
.jfd-home .twho{font-size:11px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--dim); margin-bottom:18px}
.jfd-home .feats{list-style:none; display:flex; flex-direction:column; gap:9px; max-width:60ch}
.jfd-home .feats li{font-size:15px; color:var(--mid); line-height:1.5; padding-left:20px; position:relative}
.jfd-home .feats li::before{content:"—"; position:absolute; left:0; color:var(--red)}
.jfd-home .tierlink{display:inline-block; margin-top:18px; font-weight:600; font-size:13px; color:var(--ink); border-bottom:2px solid var(--red); padding-bottom:2px; letter-spacing:.02em}
.jfd-home .tierlink:hover{color:var(--red)}
.jfd-home .ent{margin-top:12px; padding:34px 0 4px; border-top:1px solid var(--edge); display:grid; grid-template-columns:1fr auto; gap:24px 44px; align-items:center}
.jfd-home .ent .etag2{font-size:11px; font-weight:600; letter-spacing:.16em; text-transform:uppercase; color:var(--red); margin-bottom:10px}
.jfd-home .ent h3{font-family:"Instrument Serif",serif; font-weight:400; font-size:clamp(24px,3vw,36px); color:var(--ink); line-height:1.08; letter-spacing:-.01em; max-width:22ch}
.jfd-home .ent p{margin-top:12px; font-size:15px; color:var(--mid); line-height:1.55; max-width:64ch}
.jfd-home .founderQuote{margin:16px 0 0; font-family:"Instrument Serif",serif; font-weight:400; font-size:clamp(24px,3.6vw,42px); line-height:1.18; color:var(--ink); letter-spacing:-.008em; max-width:28ch}
.jfd-home .founderQuote .qm{color:var(--red)}
.jfd-home .backlink{display:inline-block; margin-top:30px; font-weight:600; font-size:14px; color:var(--ink); border-bottom:2px solid var(--red); padding-bottom:2px}
.jfd-home .backlink:hover{color:var(--red)}

/* footer */
.jfd-home footer{border-top:1px solid var(--edge); padding:40px 0 60px}
.jfd-home .forge{display:flex; gap:9px; flex-wrap:wrap; align-items:center; font-size:13px; color:var(--dim); text-transform:uppercase; letter-spacing:.06em}
.jfd-home .forge b{color:var(--ink); font-weight:600}
.jfd-home .sign{margin-top:22px; font-family:"Instrument Serif",serif; font-style:italic; font-size:24px; color:var(--ink)}
.jfd-home .fmeta{margin-top:22px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:var(--dim)}

@media(max-width:820px){
  .jfd-home .heroRow,.jfd-home .entry .txt,.jfd-home .voiceRow,.jfd-home .ent{grid-template-columns:1fr}
  .jfd-home .entry{grid-template-columns:1fr; gap:6px}
  .jfd-home .entry .role{text-align:left; white-space:normal}
  .jfd-home .figFoot{grid-template-columns:1fr 1fr}
  .jfd-home .navMeta,.jfd-home .navLinks a:not(.req-link):not(.toggleWrap){display:none}
}
@media(prefers-reduced-motion:reduce){ .jfd-home *{animation:none !important; transition:none !important} }
.jfd-home :focus-visible{outline:2px solid var(--red); outline-offset:2px}
