@font-face{font-family:'Fragment Mono SC';src:url('../assets/fonts/FragmentMonoSC-Regular.ttf') format('truetype');font-display:swap}
:root{--paper:#fffae1;--orange:#bc6c26;--olive:#44513a;--rule:#bc6c2640}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--olive);font:14px/1.8 'Fragment Mono SC',monospace}a{color:var(--orange);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible{outline:2px solid var(--orange);outline-offset:5px}.masthead{max-width:1320px;margin:auto;padding:38px 50px 26px;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--rule);font-size:14px;letter-spacing:.06em}.page{max-width:1320px;margin:auto;padding:50px;display:grid;grid-template-columns:180px minmax(0,1fr);gap:52px}aside{align-self:start;position:sticky;top:30px}nav{display:flex;flex-direction:column;gap:10px;margin-top:26px}nav a{font-size:14px}.aside-note{margin-top:48px;font-size:14px;color:var(--olive)}.eyebrow{font-size:14px;letter-spacing:.08em;color:var(--orange);margin:0 0 18px}h1,h2,h3{font-weight:400;color:var(--orange)}h1{font-size:clamp(30px,4vw,55px);line-height:1.2;letter-spacing:-.045em;margin:18px 0 26px}h2{font-size:clamp(24px,2.5vw,34px);line-height:1.3;letter-spacing:-.04em;margin:8px 0 26px}h3{font-size:17px;line-height:1.45;margin:0 0 12px}p{margin:0 0 20px}.lead{max-width:730px;font-size:16px}.metadata{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:20px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:20px 0;margin:30px 0}dt{font-size:14px;color:var(--orange);margin-bottom:6px}dd{font-size:14px;margin:0}figure{margin:28px 0}figure img{display:block;width:100%;height:auto}figure a{display:block;background:#eae8d4;padding:16px}figcaption{font-size:14px;color:var(--olive);letter-spacing:.03em;margin-top:10px}.hero{margin:30px 0 44px}.hero a{padding:24px}.intro-grid,.two-col{display:grid;grid-template-columns:1fr 1.15fr;gap:32px;align-items:start;margin:30px 0}.two-col figure{margin:0}.contributions{display:grid;grid-template-columns:1fr 1fr;gap:28px;border-top:1px solid var(--rule);padding-top:20px}.contributions span,.outcome span{color:var(--orange);font-size:14px;letter-spacing:.04em}.contributions p{margin-top:10px}.outcome{border-left:2px solid var(--orange);padding:4px 0 4px 20px;margin:26px 0}.outcome p{margin:8px 0 0}main>section+section{border-top:1px solid var(--rule);padding-top:48px;margin-top:56px}.wallet-layout{display:grid;grid-template-columns:1fr 213px;gap:50px}.wallet-layout figure{margin:0}.wallet-layout figure a{padding:0}footer{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--rule);margin-top:60px;padding-top:28px;font-size:14px}@media(max-width:950px){.page{padding:32px;grid-template-columns:140px minmax(0,1fr);gap:28px}.masthead{padding:28px 32px}.two-col,.intro-grid{grid-template-columns:1fr}.wallet-layout{grid-template-columns:1fr 180px;gap:24px}.metadata{grid-template-columns:1fr 1fr}.lead{font-size:14px}}@media(max-width:650px){body{font-size:14px}.masthead{padding:22px 20px;font-size:14px}.page{padding:28px 20px;display:block}aside{position:static;margin-bottom:34px}aside .eyebrow,.aside-note{display:none}nav{flex-direction:row;flex-wrap:wrap;gap:8px 16px;margin:0}nav a{font-size:14px;padding:4px 0}h1{font-size:34px}.metadata{gap:16px}.contributions,.wallet-layout{grid-template-columns:1fr}.wallet-layout figure{max-width:230px;margin:auto}.hero a,figure a{padding:8px}main>section+section{margin-top:38px;padding-top:32px}footer{font-size:14px;flex-wrap:wrap}h1 br,h2 br{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

@font-face{font-family:'IBM Plex Sans';src:url('../assets/fonts/IBMPlexSans-Regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
body{font-family:'IBM Plex Sans',sans-serif;font-size:18px;font-weight:400;line-height:1.6}
h1,h2,h3,.masthead,nav,.eyebrow,.aside-note,dt,figcaption,.contributions span,.outcome span,footer{font-family:'Fragment Mono SC',monospace}
.lead{font-size:18px;line-height:1.6}
dd{font-size:16px}
@media(max-width:650px){body,.lead{font-size:17px}dd{font-size:15px}}

/* Current reading section in the case-study navigation. */
nav a{border-left:2px solid transparent;padding:5px 10px;transition:background-color .15s,color .15s}
nav a[aria-current="location"]{border-left-color:var(--orange);background:#bc6c2614;color:var(--orange);text-decoration:underline;text-underline-offset:4px}
@media(prefers-reduced-motion:reduce){nav a{transition:none}}

/* Match the portfolio's orange hover treatment and light green media surface. */
nav a[aria-current="location"]{background:var(--orange);color:#fff;border-left-color:var(--orange);text-decoration:none}
figure a{background:#e9e9cb}

/* Active section uses the filled highlight only. */
nav a,nav a[aria-current="location"]{border-left:0}

/* Keep the identity/status header and section navigation visible together. */
:root{--case-header-height:110px}
.masthead{position:sticky;top:0;z-index:20;min-height:110px;padding:24px 50px;align-items:center;background:var(--paper)}
.home-logo{display:block;flex-shrink:0}
.home-logo img{display:block;width:83px;height:45px}
.header-status{text-align:right;font:14px/1.65 'Fragment Mono SC',monospace;color:var(--orange)}
.header-status p{margin:0}
aside{top:calc(var(--case-header-height) + 24px)}
main>section{scroll-margin-top:calc(var(--case-header-height) + 16px)}
html{scroll-padding-top:0}
@media(max-width:950px){.masthead{padding:22px 32px}}
@media(max-width:650px){.masthead{padding:16px 20px;gap:16px}.home-logo img{width:58px;height:auto}.header-status{max-width:calc(100% - 74px);font-size:14px}.header-status p{overflow-wrap:anywhere}aside{position:static}}

/* A miniature of the portfolio island anchors the section navigation. */
.nav-island{display:block;margin-top:28px}
.nav-island img{display:block;width:100%;height:auto}
.nav-island+.aside-note{margin-top:20px}
@media(max-width:650px){.nav-island{display:none}}

/* Light-green media frames with a quiet contour-circle pattern. */
figure a{background-color:#e9e9cb;background-image:repeating-radial-gradient(ellipse at 70% 80%,transparent 0 28px,rgba(68,81,58,.10) 29px 30px,transparent 31px 45px);padding:24px}
.hero a{padding:32px}
.wallet-layout figure a{padding:16px}
@media(max-width:650px){figure a,.hero a{padding:16px}.wallet-layout figure a{padding:12px}}

/* Discover uses the same terrain-relative position as its homepage marker. */
.nav-island{position:relative}
.nav-island-marker{position:absolute;left:27.46%;top:56.17%;width:8px;height:8px;background:var(--orange);transform:translate(-50%,-50%);pointer-events:none}

.email-walkthrough video{display:block;width:100%;height:auto;background:var(--paper)}

.keep-together{white-space:nowrap}

.guidance-walkthrough video{display:block;width:100%;height:auto;background:var(--paper)}

/* Keep the next case study aligned right when it is the only footer link. */
footer > a:only-child{margin-left:auto}
