:root{--frn-ink:#1b2440;--frn-ink2:#3d4766;--frn-paper:#fbfaf6;--frn-sheet:#ffffff;--frn-hl:#ffe066;--frn-coral:#e4572e;--frn-moss:#2f7d5b;--frn-line:#e3e0d6}
*{box-sizing:border-box}
body{margin:0;background:var(--frn-paper);color:var(--frn-ink);font:17px/1.72 "Atkinson Hyperlegible",Verdana,sans-serif}
a{color:var(--frn-moss);text-decoration-thickness:2px;text-underline-offset:3px}a:hover{color:var(--frn-coral)}
.frn-shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}
.frn-rail{background:var(--frn-ink);color:#cfd5e6;padding:30px 24px;position:sticky;top:0;height:100vh;overflow:auto}
.frn-brand{display:block;font:700 22px/1.1 "Space Grotesk",Arial,sans-serif;color:#fff;text-decoration:none;letter-spacing:-.01em}
.frn-brand i{font-style:normal;background:var(--frn-hl);color:var(--frn-ink);padding:0 5px;border-radius:3px}
.frn-tagline{font-size:13.5px;margin:10px 0 26px;color:#9ea7c2;line-height:1.5}
.frn-menu{display:flex;flex-direction:column;gap:2px}
.frn-menu a{color:#dfe3f0;text-decoration:none;font:500 15px/1.4 "Space Grotesk",Arial,sans-serif;padding:7px 10px;border-radius:6px;border-left:3px solid transparent}
.frn-menu a:hover{background:#262f52;border-left-color:var(--frn-hl);color:#fff}
.frn-stage{padding:44px clamp(18px,5vw,64px) 0;max-width:980px}
.frn-lede{border-bottom:2px solid var(--frn-ink);padding-bottom:26px;margin-bottom:30px}
.frn-lede h1{font:700 clamp(30px,5vw,52px)/1.05 "Space Grotesk",Arial,sans-serif;margin:0 0 14px;letter-spacing:-.02em;max-width:18ch}
.frn-lede h1 mark{background:linear-gradient(transparent 55%,var(--frn-hl) 55%);color:inherit}
.frn-lede p{margin:0;max-width:44ch;color:var(--frn-ink2);font-size:18px}
.frn-pile{list-style:none;margin:0 0 70px;padding:0;counter-reset:frn}
.frn-pile li{counter-increment:frn;border-bottom:1px solid var(--frn-line)}
.frn-pile a{display:grid;grid-template-columns:56px 1fr;gap:2px 16px;padding:20px 0;text-decoration:none;color:var(--frn-ink)}
.frn-pile a::before{content:counter(frn,decimal-leading-zero);grid-row:span 3;font:700 26px/1 "Space Grotesk",Arial,sans-serif;color:var(--frn-coral)}
.frn-pile h2{margin:0;font:700 21px/1.3 "Space Grotesk",Arial,sans-serif}
.frn-pile a:hover h2{text-decoration:underline;text-decoration-color:var(--frn-hl);text-decoration-thickness:4px}
.frn-pile p{margin:0;color:var(--frn-ink2);font-size:15.5px;line-height:1.55}
.frn-kicker{font:700 12px/1.6 "Space Grotesk",Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--frn-moss)}
.frn-page{background:var(--frn-sheet);border:1px solid var(--frn-line);border-radius:4px;padding:clamp(22px,4vw,46px);margin:0 0 60px;max-width:760px;box-shadow:6px 6px 0 var(--frn-hl)}
.frn-page h1{font:700 clamp(27px,4.4vw,40px)/1.12 "Space Grotesk",Arial,sans-serif;margin:8px 0 14px;letter-spacing:-.015em}
.frn-dek{font-size:18.5px;color:var(--frn-ink2);margin:0 0 28px;font-style:italic}
.frn-page h2{font:700 22px/1.3 "Space Grotesk",Arial,sans-serif;margin:34px 0 8px}
.frn-page p{margin:0 0 16px}.frn-page ul,.frn-page ol{margin:0 0 18px;padding-left:1.3em}.frn-page li{margin:6px 0}
.frn-scribble{border:2px dashed var(--frn-coral);border-radius:4px;padding:12px 16px;margin:22px 0;font-size:15.5px;background:#fff8f5}
.frn-rg{background:#f1f6f3;border-left:4px solid var(--frn-moss);padding:12px 16px;font-size:15px;margin-top:26px}
.frn-stamp{margin-top:36px;font:500 13px/1.5 "Space Grotesk",Arial,sans-serif;color:var(--frn-ink2);border-top:1px solid var(--frn-line);padding-top:12px}
.frn-foot{border-top:1px solid var(--frn-line);padding:20px 0 34px;font-size:13.5px;color:var(--frn-ink2);display:flex;flex-wrap:wrap;gap:6px 20px;justify-content:space-between}
@media(max-width:680px){.frn-shell{grid-template-columns:1fr}.frn-rail{position:static;height:auto;padding:18px 16px}.frn-tagline{margin:6px 0 12px}
.frn-menu{flex-direction:row;flex-wrap:wrap;gap:4px}.frn-menu a{padding:5px 9px;border-left:0;background:#262f52;font-size:14px}
.frn-stage{padding:26px 16px 0}.frn-page{padding:20px 16px;box-shadow:4px 4px 0 var(--frn-hl)}.frn-pile a{grid-template-columns:40px 1fr}.frn-pile a::before{font-size:20px}}