@font-face{font-family:Caslon;src:url('assets/libre-caslon-400.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Caslon;src:url('assets/libre-caslon-700.woff') format('woff');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:Caslon;src:url('assets/libre-caslon-400-italic.woff') format('woff');font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:DM;src:url('assets/dm-sans-400.woff') format('woff');font-weight:400;font-display:swap}
@font-face{font-family:DM;src:url('assets/dm-sans-500.woff') format('woff');font-weight:500;font-display:swap}
@font-face{font-family:DM;src:url('assets/dm-sans-600.woff') format('woff');font-weight:600;font-display:swap}
:root{--paper:#f3efe5;--ink:#242822;--rust:#a9472c;--teal:#46716d;--muted:#77776c;--rule:#d9d4c8;--serif:Caslon,Georgia,serif;--sans:DM,Arial,sans-serif;color-scheme:light}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{background:var(--paper);scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}
button,a{-webkit-tap-highlight-color:transparent}
button{font:inherit;color:inherit;cursor:pointer}
button:focus-visible,a:focus-visible{outline:2px solid var(--rust);outline-offset:5px}
button:disabled{opacity:.25;cursor:default}
button{border:0;background:transparent}
button:hover:not(:disabled),a:hover{color:var(--rust)}
.toolbar{height:58px;display:flex;align-items:center;gap:24px;padding:0 32px;font-size:12px;position:relative;z-index:5}
.back{color:inherit;text-decoration:none;display:flex;gap:8px;align-items:center}
.deck-label{color:var(--muted);border-left:1px solid var(--rule);padding-left:24px;letter-spacing:.02em}
.tools{display:flex;gap:18px;margin-left:auto;align-items:center}
.tools button{padding:8px 0;font-size:12px}
.tools .help-button{border:1px solid var(--rule);border-radius:50%;width:24px;height:24px;padding:0}
body[data-mode="deck"]{height:100dvh;min-height:330px;overflow:hidden;display:flex;flex-direction:column}
body[data-mode="deck"] .stage{width:min(calc(100vw - 64px),calc((100dvh - 126px)*16/9),1600px);aspect-ratio:16/9;flex:none;position:relative;container-type:inline-size;margin:auto;isolation:isolate}
.slide{position:relative;background:var(--paper);padding:4.4cqw 5.2cqw;color:var(--ink);overflow:hidden}
body[data-mode="deck"] .slide{position:absolute;inset:0}
.slide[data-theme="dark"]{background:var(--ink);color:var(--paper);--rust:#e6a082;--muted:#c2c1b4}
.section-title{font-family:var(--sans);font-weight:500;font-size:1.55cqw;letter-spacing:.015em;line-height:1.3;margin:0;position:relative;z-index:2}
.section-title::after{content:"";display:block;width:3cqw;height:1px;background:currentColor;opacity:.36;margin-top:1.55cqw}
.slide-content{position:relative;z-index:2}
.quote{font-family:var(--serif);font-size:3cqw;font-weight:400;line-height:1.5;letter-spacing:-.035em;margin:0;text-wrap:pretty}
.quote p{margin:0}
.quote p+p{margin-top:2.5cqw}
em{font-weight:400}
.quote em,.thought em,.statement-list em{color:var(--rust)}
.accent{color:var(--rust)}
.code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.87em;letter-spacing:-.04em;white-space:nowrap}
.single-quote .slide-content{height:calc(100% - 5cqw);display:flex;align-items:center;padding:1.3cqw 0 2.5cqw}
.single-quote .quote{font-size:3.55cqw;line-height:1.5;max-width:24em}
.single-quote.pioneers .quote{font-size:4.45cqw;line-height:1.43;max-width:19em;letter-spacing:-.04em}
.storage .quote{font-size:3.02cqw}
.quote-notes .slide-content{padding-top:3.3cqw}
.patching .quote{font-size:2.66cqw;line-height:1.48}
.symbols .quote{font-size:3cqw;line-height:1.55}
.notes{padding:0;margin:3cqw 0 0;list-style:none;font-size:1.95cqw;line-height:1.6;letter-spacing:-.015em}
.notes li{position:relative;padding-left:1.65cqw}
.notes li::before{content:"–";position:absolute;left:0;color:var(--rust)}
.notes li+li{margin-top:.6cqw}
.statement-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:3.8cqw;font-family:var(--serif);font-size:3.35cqw;letter-spacing:-.03em;line-height:1.4}
.thoughts .slide-content{display:flex;align-items:center;height:calc(100% - 5cqw)}
.approach .statement-list{font-size:4.2cqw;gap:5.4cqw}
.approach li:nth-child(2){padding-left:9cqw;font-style:italic;color:var(--rust)}
.cover-copy{width:56%;padding-top:3.5cqw}
.cover h1{font-family:var(--serif);font-size:5.8cqw;line-height:1.16;font-weight:400;letter-spacing:-.055em;margin:0;text-wrap:balance}
.cover-subtitle{font-family:var(--serif);font-style:italic;font-size:1.75cqw;line-height:1.6;margin:2.8cqw 0 0;max-width:23em}
.art{position:absolute;object-fit:contain;pointer-events:none;z-index:1}
.cover-art{width:63%;height:83%;right:-7.5%;bottom:0;object-fit:contain;mix-blend-mode:multiply;mask-image:linear-gradient(to right,transparent 0%,#000 21%),linear-gradient(to bottom,transparent 0%,#000 23%,#000 86%,transparent 100%);mask-composite:intersect}
.cover .cover-copy{z-index:3}
.vm .slide-content{padding-top:2.8cqw}
.vm .quote{font-size:2.7cqw;line-height:1.5;max-width:31em}
.prompt{font-size:1.85cqw;line-height:1.5;font-weight:400;margin:2.5cqw 0 0}
.vm-list{list-style:none;margin:2.35cqw 0 0;padding:0;display:grid;grid-template-columns:1.12fr 1fr;grid-auto-flow:row;row-gap:1.25cqw;column-gap:4cqw;font-family:var(--serif);font-size:2.55cqw;line-height:1.5;letter-spacing:-.025em}
.vm-list li{white-space:nowrap}
.vm-list .vm-more{font-style:italic;color:var(--rust)}
.vm-list li:nth-child(5){grid-column:2;grid-row:3}
.thought-gap .slide-content{padding-top:5cqw}
.thought{font-family:var(--serif);font-size:3.7cqw;line-height:1.46;letter-spacing:-.03em;margin:0;text-wrap:pretty}
.question{color:var(--rust);font-family:var(--serif);font-size:2.5cqw;line-height:1.5;letter-spacing:-.025em;margin:3.2cqw 0 0;text-wrap:pretty}
.question-label{font-family:var(--sans);font-style:normal;font-size:.6em;font-weight:500;letter-spacing:.015em;display:block;margin-bottom:.65cqw}
.trust-copy{width:67%;padding-top:2.45cqw}
.trust .thought{font-size:1.85cqw;line-height:1.55;letter-spacing:-.01em}
.trust .question{font-size:1.75cqw;line-height:1.5;margin:1.6cqw 0 0}
.trust .question-label{display:inline;font-size:1em;margin:0;font-family:inherit}
.recommendation{font-size:1.5cqw;line-height:1.5;margin:2.6cqw 0 1.4cqw;color:#d7d4c6}
.trust .quote{font-size:2.48cqw;line-height:1.53;letter-spacing:-.025em}
.trust-art{height:88%;width:43%;right:-4%;bottom:-1%;object-fit:cover;object-position:57% 50%;mask-image:linear-gradient(to right,transparent 0%,#000 30%),linear-gradient(to bottom,transparent 0%,#000 16%);mask-composite:intersect}
.standardization .slide-content{padding-top:3.1cqw}
.standard-lead{font-family:var(--serif);font-size:3.5cqw;letter-spacing:-.04em;margin:0 0 1.2cqw}
.standard-sub{font-size:1.95cqw;line-height:1.6;margin:0}
.standard-turn{font-family:var(--serif);font-style:italic;font-size:2.6cqw;line-height:1.4;margin:2.6cqw 0 1.9cqw;color:var(--rust)}
.extremes-label{font-size:1.5cqw;color:var(--muted);margin:0 0 1cqw}
.extremes-line{display:flex;align-items:center;justify-content:space-between;gap:1.5cqw;font-family:var(--serif);font-size:1.94cqw;line-height:1.5;letter-spacing:-.025em;margin:0}
.extremes-line .code{color:var(--muted);padding:0 1cqw}
.standardization .question{font-size:2.6cqw;margin-top:3.15cqw;padding-top:2cqw;border-top:1px solid var(--rule);max-width:31em}
.expertise .slide-content{padding-top:3cqw}
.expertise .quote{font-size:2.73cqw;line-height:1.5;max-width:32em}
.expertise .prompt{margin-top:3.3cqw}
.expertise-list{list-style:none;padding:0;margin:2cqw 0 0;font-size:2.4cqw;line-height:1.6}
.expertise-list li{display:flex;align-items:baseline;gap:.6cqw}
.expertise-list li>span:first-child{width:31cqw}
.expertise-list li+li{margin-top:1.4cqw}
.answer{font-family:var(--serif);font-size:1.2em;color:var(--rust)}
.answer strong{font-weight:400}
.discovery .section-title{font-family:var(--serif);font-size:3cqw;font-weight:400;letter-spacing:-.04em}
.discovery .section-title::after{display:none}
.discovery-copy{width:68%;padding-top:3cqw}
.discovery .quote{font-size:2.58cqw;line-height:1.5}
.discovery .notes{font-size:1.65cqw;margin-top:2.25cqw}
.discovery .question{font-size:2.55cqw;line-height:1.45;margin-top:2.8cqw}
.discovery-art{width:43%;height:79%;right:-1%;bottom:-1%;object-fit:contain;object-position:50% 100%;mix-blend-mode:multiply;mask-image:linear-gradient(to right,transparent 0%,#000 24%),linear-gradient(to bottom,transparent 0%,#000 33%,#000 88%,transparent 100%);mask-composite:intersect}
.navigation{height:68px;flex-shrink:0;display:flex;align-items:center;gap:16px;width:min(800px,calc(100vw - 64px));margin:0 auto;font-size:12px;color:var(--muted)}
.nav-arrow{font-size:24px;line-height:1;width:36px;height:36px;padding:0;flex-shrink:0}
.counter{font-size:12px;letter-spacing:.03em;white-space:nowrap;font-variant-numeric:tabular-nums;padding:10px 4px}
#current-number{color:var(--ink)}
.counter-divider{margin:0 8px;opacity:.45}
.progress{display:flex;gap:5px;align-items:center;flex:1;height:32px;margin:0 12px}
.progress button{padding:12px 0;flex:1;min-width:4px;height:32px;display:flex;align-items:center}
.progress button::after{content:"";display:block;width:100%;height:2px;background:var(--rule);transition:height 150ms,background 150ms}
.progress button.visited::after{background:#a9a795}
.progress button[aria-current="step"]::after{height:4px;background:var(--rust)}
.progress button:hover::after{background:var(--rust)}
body[data-mode="deck"] .slide.active .reveal{animation:arrive 550ms cubic-bezier(.2,.7,.2,1) both;animation-delay:var(--delay,0ms)}
body[data-mode="deck"] .slide.active .reveal.still{animation:none}
@keyframes arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#blackout{position:fixed;inset:0;z-index:1000;background:#080a08;cursor:none}
dialog{border:1px solid var(--rule);background:var(--paper);color:var(--ink);padding:28px;max-width:850px;width:calc(100vw - 40px);max-height:85dvh;box-shadow:0 20px 100px #24282233}
dialog::backdrop{background:#24282280;backdrop-filter:blur(4px)}
.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}
.dialog-heading h2{font-family:var(--serif);font-weight:400;font-size:30px;margin:0}
.close-dialog{font-size:28px;width:36px;height:36px;line-height:1}
#overview-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 22px;padding:0;margin:0}
#overview-list li{border-top:1px solid var(--rule)}
#overview-list button{padding:14px 0;text-align:left;width:100%;display:grid;grid-template-columns:24px 1fr;gap:12px;font-size:14px;line-height:1.4;min-height:70px}
.overview-number{font-size:12px;color:var(--rust);font-variant-numeric:tabular-nums;padding-top:1px}
.overview-excerpt{display:block;color:var(--muted);font-size:11px;font-weight:400;margin-top:4px}
#overview-list button[aria-current="step"]{color:var(--rust)}
#help{max-width:560px}
.shortcuts{margin:0}
.shortcuts>div{display:flex;justify-content:space-between;gap:24px;padding:10px 0;border-top:1px solid var(--rule);font-size:14px}
.shortcuts dd{margin:0}
kbd{font-family:var(--sans);font-size:12px;display:inline-block;min-width:24px;border:1px solid var(--rule);padding:2px 5px;text-align:center}
.help-note{font-size:13px;color:var(--muted);line-height:1.6;margin-bottom:0}
:fullscreen .toolbar{opacity:0;transition:opacity 180ms}
:fullscreen .toolbar:hover,:fullscreen .toolbar:focus-within{opacity:1}
:fullscreen .stage{width:min(100vw,calc((100dvh - 78px)*16/9))!important}
:fullscreen .toolbar{height:30px;position:absolute;left:0;right:0;top:0}
:fullscreen .navigation{height:48px}

/* Every source slide remains a complete, readable section without JavaScript. */
body[data-mode="read"] .stage{width:min(100% - 48px,1300px);margin:26px auto 80px;container-type:inline-size}
body[data-mode="read"] .slide{aspect-ratio:16/9;margin:0 0 40px;border-bottom:1px solid var(--rule);scroll-margin-top:80px}
body[data-mode="read"] .slide::before{content:attr(data-slide-number);position:absolute;right:2.5cqw;top:2.2cqw;font-size:1cqw;color:var(--muted);font-variant-numeric:tabular-nums;z-index:4}
body[data-mode="read"] .toolbar{position:sticky;top:0;background:var(--paper);border-bottom:1px solid var(--rule)}
body[data-mode="read"] .navigation{position:fixed;left:0;right:0;bottom:0;background:var(--paper);padding:0 16px;width:100%;z-index:6;border-top:1px solid var(--rule);height:52px}
body[data-mode="read"] .progress{max-width:800px;margin:0 auto}
body[data-mode="read"] .reveal{animation:none!important}

@media(max-width:760px) and (orientation:portrait){
  .toolbar{height:54px;padding:0 18px;gap:12px}
  .deck-label{display:none}
  .tools{gap:16px}
  #fullscreen-button{display:none}
  body[data-mode="read"] .stage{width:100%;margin:0 auto 50px}
  body[data-mode="read"] .slide{aspect-ratio:auto;margin:0;padding:44px 25px 52px;min-height:0;overflow:hidden}
  body[data-mode="read"] .slide::before{font-size:11px;right:20px;top:20px}
  body[data-mode="read"] .section-title{font-size:14px;line-height:1.5;padding-right:16px}
  body[data-mode="read"] .section-title::after{width:26px;margin-top:12px}
  body[data-mode="read"] .slide-content{height:auto;padding:30px 0 0;display:block;width:100%}
  body[data-mode="read"] .quote{font-size:26px;line-height:1.55;letter-spacing:-.03em}
  body[data-mode="read"] .quote p+p{margin-top:24px}
  body[data-mode="read"] .pioneers .quote{font-size:32px}
  body[data-mode="read"] .statement-list{font-size:29px;gap:28px;line-height:1.45}
  body[data-mode="read"] .approach li:nth-child(2){padding-left:0}
  body[data-mode="read"] .notes{font-size:17px;line-height:1.65;margin-top:28px}
  body[data-mode="read"] .notes li{padding-left:16px}
  body[data-mode="read"] .notes li+li{margin-top:8px}
  body[data-mode="read"] .cover{padding-top:28px;padding-bottom:0}
  body[data-mode="read"] .cover-copy{padding:18px 0 0}
  body[data-mode="read"] .cover h1{font-size:44px;line-height:1.22;max-width:12em;text-wrap:initial}
  body[data-mode="read"] .cover-subtitle{font-size:19px;line-height:1.6;margin-top:24px;max-width:none}
  body[data-mode="read"] .art{position:relative;display:block;width:calc(100% + 50px);height:auto;max-height:none;right:auto;bottom:auto;object-fit:contain;margin:20px -25px 0;mask-image:none}
  body[data-mode="read"] .cover-art{margin-top:0}
  body[data-mode="read"] .prompt{font-size:18px;line-height:1.55;margin-top:32px}
  body[data-mode="read"] .vm-list{font-size:24px;display:flex;flex-direction:column;gap:12px;margin-top:25px}
  body[data-mode="read"] .vm-list li{white-space:normal}
  body[data-mode="read"] .thought{font-size:30px;line-height:1.5}
  body[data-mode="read"] .question{font-size:25px;line-height:1.5;margin-top:30px}
  body[data-mode="read"] .question-label{font-size:13px;margin-bottom:8px}
  body[data-mode="read"] .trust .thought{font-size:22px}
  body[data-mode="read"] .trust .question{font-size:21px;margin-top:22px}
  body[data-mode="read"] .trust .question-label{font-size:1em;margin:0}
  body[data-mode="read"] .recommendation{font-size:17px;line-height:1.6;margin:28px 0 20px}
  body[data-mode="read"] .trust .quote{font-size:26px}
  body[data-mode="read"] .trust-art{width:calc(100% + 50px);margin-bottom:-52px;mask-image:linear-gradient(to bottom,transparent,#000 15%)}
  body[data-mode="read"] .standard-lead{font-size:33px;line-height:1.4;margin-bottom:18px}
  body[data-mode="read"] .standard-sub{font-size:19px;line-height:1.6}
  body[data-mode="read"] .standard-turn{font-size:28px;line-height:1.4;margin:30px 0 20px}
  body[data-mode="read"] .extremes-label{font-size:15px;margin:0 0 15px}
  body[data-mode="read"] .extremes-line{font-size:21px;flex-direction:column;align-items:flex-start;gap:12px;line-height:1.5}
  body[data-mode="read"] .extremes-line .code{padding:0}
  body[data-mode="read"] .standardization .question{padding-top:24px;font-size:26px}
  body[data-mode="read"] .expertise-list{font-size:20px;line-height:1.6;margin-top:24px}
  body[data-mode="read"] .expertise-list li{display:block}
  body[data-mode="read"] .expertise-list li+li{margin-top:16px}
  body[data-mode="read"] .expertise-list li>span:first-child{width:auto}
  body[data-mode="read"] .answer{font-size:1.1em}
  body[data-mode="read"] .discovery .section-title{font-size:33px;line-height:1.25}
  body[data-mode="read"] .discovery-art{margin-top:-10px;margin-bottom:-32px}
  .navigation{gap:8px}
  .progress{gap:3px}
  #overview-list{grid-template-columns:1fr}
  dialog{padding:20px}
}
@media(max-height:550px) and (orientation:landscape){
  .toolbar{height:34px;padding:0 20px}
  .navigation{height:40px}
  body[data-mode="deck"] .stage{width:min(calc(100vw - 40px),calc((100dvh - 74px)*16/9))}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
}
@media print{
  @page{size:landscape;margin:0}
  html,body{background:var(--paper);height:auto!important;overflow:visible!important;display:block!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}
  .toolbar,.navigation,dialog,#status,#blackout{display:none!important}
  body .stage{width:100%!important;display:block!important;margin:0!important;container-type:inline-size}
  body .stage .slide{display:block!important;position:relative!important;inset:auto!important;aspect-ratio:16/9;margin:0!important;border:0!important;break-after:page;page-break-after:always;animation:none!important}
  body .stage .slide:last-child{break-after:auto;page-break-after:auto}
  .slide::before{display:none!important}
  .reveal{animation:none!important;opacity:1!important;transform:none!important}
}
