
:root{
  --jb-charcoal:#171717;
  --jb-paper:#F4F1E8;
  --jb-orange:#FF5A1F;
  --jb-lime:#B7F000;
  --jb-concrete:#9A9A9A;
  --jb-line:rgba(23,23,23,.17);
  --jb-line-dark:rgba(244,241,232,.18);
  --jb-max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--jb-paper);color:var(--jb-charcoal);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.45;-webkit-font-smoothing:antialiased
}
a{color:inherit}
.shell{width:min(calc(100% - 44px),var(--jb-max));margin:auto}
.mono{
  font-family:"IBM Plex Mono","SFMono-Regular",Consolas,monospace;
  font-size:.73rem;letter-spacing:.075em;text-transform:uppercase
}
.topbar{
  min-height:104px;display:flex;align-items:center;justify-content:space-between;
  gap:25px;border-bottom:1px solid var(--jb-line)
}
.brand{display:inline-flex;align-items:center;text-decoration:none}
.brand img{display:block;width:250px;max-width:55vw;height:auto}
.brand-fallback{display:none;font-size:2rem;font-weight:950;letter-spacing:-.07em}
.nav{display:flex;gap:22px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.nav a{text-decoration:none;font-size:.78rem;font-weight:760}
.nav a:hover{text-decoration:underline;text-underline-offset:5px}
.hero{
  display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.65fr);
  gap:64px;align-items:end;padding:94px 0 78px
}
.kicker{color:var(--jb-orange);font-weight:800;margin-bottom:20px}
.display{
  margin:0;font-size:clamp(4rem,9vw,8.4rem);line-height:.82;
  letter-spacing:-.075em;font-weight:950
}
.orange{color:var(--jb-orange)}
.lead{max-width:690px;margin:28px 0 0;font-size:1.14rem;color:#4f4b46}
.aside{border-left:1px solid var(--jb-line);padding-left:27px;padding-bottom:5px}
.aside h2{margin:12px 0;font-size:clamp(1.6rem,3vw,2.5rem);line-height:.96;letter-spacing:-.045em}
.tag{
  display:inline-block;background:var(--jb-lime);padding:5px 9px;font-weight:850;
  font-family:"IBM Plex Mono","SFMono-Regular",Consolas,monospace;font-size:.69rem;
  letter-spacing:.06em;text-transform:uppercase;transform:rotate(-1deg)
}
.btnrow{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 18px;
  border:2px solid var(--jb-charcoal);text-decoration:none;font-weight:900;
  font-size:.83rem;letter-spacing:.015em
}
.btn--orange{background:var(--jb-orange)}
.btn--paper{background:var(--jb-paper)}
.btn--dark{background:var(--jb-charcoal);color:var(--jb-paper)}
.section{padding:70px 0;border-top:1px solid var(--jb-line)}
.section-title{
  margin:11px 0 0;font-size:clamp(2.5rem,5vw,5rem);line-height:.91;
  letter-spacing:-.06em;font-weight:950
}
.section-lead{max-width:680px;color:#5e5953;margin-top:20px;font-size:1.04rem}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px;margin-top:36px}
.card{
  grid-column:span 6;min-height:260px;background:#fff;border:1px solid var(--jb-line);
  padding:27px;display:flex;flex-direction:column;text-decoration:none;position:relative;
  overflow:hidden;transition:transform .18s ease,border-color .18s ease
}
.card:hover{transform:translateY(-3px);border-color:rgba(23,23,23,.42)}
.card--wide{grid-column:1/-1}
.card--dark{background:var(--jb-charcoal);color:var(--jb-paper);border-color:var(--jb-charcoal)}
.card--orange{background:var(--jb-orange);border-color:var(--jb-orange)}
.card .eyebrow{opacity:.62}
.card h3{
  margin:auto 0 8px;max-width:90%;font-size:clamp(1.8rem,3vw,3.25rem);
  letter-spacing:-.055em;line-height:.94
}
.card p{margin:6px 0 0;max-width:640px;opacity:.72}
.card .arrow{position:absolute;right:24px;top:21px;font-size:1.6rem}
.darkband{background:var(--jb-charcoal);color:var(--jb-paper);padding:66px 0}
.darkband h2{margin:10px 0 16px;font-size:clamp(2.6rem,6vw,5.8rem);line-height:.88;letter-spacing:-.065em}
.darkband p{max-width:690px;color:#c7c1b7}
.footer{
  min-height:105px;display:flex;align-items:center;justify-content:space-between;gap:25px;
  border-top:1px solid var(--jb-line);color:#6e6961
}

/* Links hub */
.links-page{background:var(--jb-charcoal);color:var(--jb-paper);min-height:100vh}
.links-page .topbar{border-bottom-color:var(--jb-line-dark)}
.links-page .nav a{color:var(--jb-paper)}
.links-page .brand img{filter:brightness(0) invert(1)}
.links-page .hero{grid-template-columns:1fr;padding-bottom:38px}
.links-page .lead{color:#d2cdc3}
.links-page .linkgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-bottom:30px}
.links-page .linkcard{
  position:relative;min-height:130px;padding:20px;border:1px solid var(--jb-line-dark);
  text-decoration:none;background:rgba(244,241,232,.035);display:flex;flex-direction:column
}
.links-page .linkcard--wide{grid-column:1/-1}
.links-page .linkcard--orange{background:var(--jb-orange);color:var(--jb-charcoal);border-color:var(--jb-orange)}
.links-page .linkcard--paper{background:var(--jb-paper);color:var(--jb-charcoal);border-color:var(--jb-paper)}
.links-page .linkcard h3{margin:auto 0 0;font-size:1.55rem;letter-spacing:-.04em}
.links-page .linkcard .arrow{position:absolute;right:18px;top:15px;font-size:1.4rem}
.links-page .footer{border-top-color:var(--jb-line-dark);color:#99938b}

@media(max-width:800px){
  .shell{width:min(calc(100% - 30px),var(--jb-max))}
  .topbar{min-height:86px;align-items:center}
  .nav{gap:12px}.nav a{font-size:.72rem}
  .hero{grid-template-columns:1fr;padding:64px 0 56px;gap:38px}
  .aside{border-left:0;border-top:1px solid var(--jb-line);padding:24px 0 0}
  .display{font-size:clamp(3.7rem,18vw,6.3rem)}
  .section{padding:54px 0}.card,.card--wide{grid-column:1/-1;min-height:220px}
  .footer{align-items:flex-start;flex-direction:column;justify-content:center;padding:24px 0}
  .links-page .linkgrid{grid-template-columns:1fr}
  .links-page .linkcard,.links-page .linkcard--wide{grid-column:auto}
}
