/* Local, licensed Google Fonts: sources and SHA-256 in assets/mono/SOURCES.json.
   This study changes the small mono type only; the main Space Grotesk stays intact. */
@font-face{font-family:VT323;src:url('assets/mono/VT323-Latin.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Space Mono';src:url('assets/mono/SpaceMono-Latin.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Source Code Pro';src:url('assets/mono/SourceCodePro-Latin.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Bytesized;src:url('assets/mono/Bytesized-Latin.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
:root{--mono:'Space Mono','Courier New',monospace;--mono-scale:1}
/* Keep the collapsed preview control clear of the footer's native links. */
@media(min-width:601px){.font-controls{bottom:64px}}
html[data-mono=courier]{--mono:'Courier New',monospace;--mono-scale:1}
html[data-mono=vt323]{--mono:VT323,'Courier New',monospace;--mono-scale:1.35}
html[data-mono=space-mono]{--mono:'Space Mono','Courier New',monospace;--mono-scale:1}
html[data-mono=source-code-pro]{--mono:'Source Code Pro','Courier New',monospace;--mono-scale:1}
html[data-mono=bytesized]{--mono:Bytesized,'Courier New',monospace;--mono-scale:1.25}
/* A normal-size sample helps compare each font beyond the smallest captions. */
.font-controls .font-sample{font-family:var(--mono);font-size:calc(13px * var(--mono-scale));font-weight:400;line-height:1.45;letter-spacing:.03em}
/* Compensate optical size wherever page styles override the shared mono sizes.
   Scales are limited to VT323 / Bytesized; readable sans-serif text is untouched. */
.eyebrow{font-size:calc(10px * var(--mono-scale))}
.rail-nav a span{font-size:calc(9px * var(--mono-scale))}
.rail-contact .eyebrow{font-size:calc(9px * var(--mono-scale))}
.hero-scroll{font-size:calc(10px * var(--mono-scale))}
.media-corner,.project-meta,.placeholder-caption{font-size:calc(9px * var(--mono-scale))}
.tag{font-size:calc(10px * var(--mono-scale))}
.years{font-size:calc(12px * var(--mono-scale))}
.home-play .hero-caption{font-size:calc(10px * var(--mono-scale))}
.home-play .section-head h2>.eyebrow{font-size:calc(9px * var(--mono-scale))}
.home-play .project-meta,.home-play .tag:not(.pending-tag){font-size:calc(9px * var(--mono-scale))}
.case-map-status,.surface-list>div>span:last-child{font-size:calc(10px * var(--mono-scale))}
.support-brand-caption,.support-status,.support-meta dt,.support-footer-bottom{font-size:calc(10px * var(--mono-scale))}
.support-cross{font-size:calc(24px * var(--mono-scale))}
.support-placeholder-index{font-size:calc(11px * var(--mono-scale))}
@media(max-width:1100px){.tag{font-size:calc(8px * var(--mono-scale))}.home-play .tag:not(.pending-tag){font-size:calc(8px * var(--mono-scale))}}
@media(max-width:850px){.rail-nav a span{font-size:calc(8px * var(--mono-scale))}.tag{font-size:calc(9px * var(--mono-scale))}}
@media(max-width:600px){
  .topline>.eyebrow{font-size:calc(8px * var(--mono-scale))}.topline>.eyebrow:last-child{font-size:calc(7px * var(--mono-scale))}
  .hero-caption,.home-play .hero-caption{font-size:calc(8px * var(--mono-scale))}.hero-scroll,.home-play .hero-scroll{font-size:calc(9px * var(--mono-scale))}
  .section-head h2 .eyebrow,.home-play .section-head h2>.eyebrow{font-size:calc(8px * var(--mono-scale))}
  .section-head>.eyebrow,.home-play .section-head>.eyebrow{font-size:calc(7px * var(--mono-scale))}
  .project-media .media-corner,.home-play .magic-media .media-corner{font-size:calc(8px * var(--mono-scale))}
  .tag{font-size:calc(9px * var(--mono-scale))}.home-play .tag:not(.pending-tag){font-size:calc(8px * var(--mono-scale))}
  .experience-row .years{font-size:calc(10px * var(--mono-scale))}
}
@media(max-width:360px){.home-play .section-head>.eyebrow{font-size:calc(6px * var(--mono-scale))}}
