:root{--paper:#f3f0e7;--ink:#24392e;--muted:#667267;--accent:#b64e2d;--line:#c6cbbd;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--mono);font-size:16px}button,input,a{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;background:transparent;border:1px solid var(--line);padding:9px 13px;cursor:pointer}button:hover{background:#e4e6da}button:disabled{opacity:.3;cursor:default}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--accent)}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.skip{position:fixed;top:-100px;z-index:10;background:var(--ink);color:white;padding:15px}.skip:focus{top:5px}header{height:75px;margin:0 4vw;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:20px}.brand{font-size:24px;font-weight:700;text-decoration:none}.brand span{font-size:12px;font-weight:400;margin-left:12px;letter-spacing:.06em}.tools{display:flex;gap:8px;font-size:12px}.tools button{border:0}.tools button[aria-pressed=true]{background:var(--ink);color:var(--paper)}main{outline:none}.slide{display:none;max-width:1600px;min-height:calc(100svh - 140px);padding:4vh 7vw 40px;margin:auto}.slide.active{display:block}.eyebrow{font-size:11px;letter-spacing:.15em;color:var(--accent);margin:0 0 3vh;font-weight:600}h1,h2,h3,p,figure{margin-top:0}h1,h2{font-weight:500;letter-spacing:-.065em;line-height:1.05;margin-bottom:3vh}h1{font-size:clamp(48px,6.5vw,108px)}h2{font-size:clamp(40px,5.2vw,78px)}h3{font-size:23px;font-weight:500;line-height:1.2;letter-spacing:-.04em}em{font-family:Georgia,serif;color:var(--accent);font-weight:400;letter-spacing:-.06em}.body,.lede{font-size:clamp(17px,1.55vw,23px);line-height:1.6;max-width:760px}.lede{margin-bottom:30px}.large{font-size:clamp(22px,2.5vw,37px);line-height:1.4;letter-spacing:-.045em}.micro,.footnote{font-size:12px;line-height:1.7;color:var(--muted)}.footnote{max-width:1000px;margin-top:35px;font-size:14px}.muted{color:var(--muted)}.primary{display:inline-block;background:var(--ink);color:var(--paper);padding:15px 20px;border:1px solid var(--ink);text-decoration:none;font-size:14px;cursor:pointer;font-family:inherit}.primary:hover{background:var(--accent);border-color:var(--accent);color:white}.text-link{display:inline-block;margin-top:25px;font-size:15px}.cover.active{display:grid;grid-template-columns:1.1fr 1fr;gap:5vw;align-items:center}.cover-copy>.micro{margin-top:35px}.hero{position:relative;margin:0 0 0 0;align-self:center}.hero img{width:100%;height:min(54vh,620px);object-fit:cover;display:block;filter:saturate(.75)}figcaption{font-size:10px;line-height:1.6;letter-spacing:.08em;color:var(--muted);margin-top:10px}.folder{position:absolute;bottom:25px;right:-20px;background:var(--paper);border:1px solid var(--ink);font-size:clamp(16px,2vw,27px);line-height:1.1;padding:18px 25px;margin:0}.split{display:grid;grid-template-columns:1.15fr 1fr;gap:7vw;align-items:start}.index-list p{padding:20px 0;border-top:1px solid var(--line);line-height:1.6;font-size:17px}.index-list span{display:block;font-size:10px;letter-spacing:.15em;color:var(--accent);margin-bottom:12px}.demo-layout{display:grid;grid-template-columns:1fr 1fr;gap:6vw}.workflow{list-style:none;padding:0;margin:0;counter-reset:step}.workflow li{position:relative;padding:0 0 22px 42px;counter-increment:step}.workflow li:before{content:'0' counter(step);position:absolute;left:0;top:3px;color:var(--accent);font-size:13px}.workflow small{display:block;font-size:10px;letter-spacing:.14em;margin-bottom:7px;color:var(--muted)}.workflow strong{font-size:23px;font-weight:500;display:block;margin-bottom:9px}.workflow span{font-size:14px;line-height:1.6}.photo-example{margin:0}.photo-example img{width:100%;height:33vh;object-fit:cover;display:block;filter:saturate(.8)}.architecture h2{max-width:1100px}.architecture-flow{display:flex;align-items:center;gap:25px}.arch-block{border-top:2px solid var(--ink);border-bottom:1px solid var(--line);padding:22px 0;flex:1}.arch-block small{font-size:10px;letter-spacing:.12em;color:var(--accent)}.arch-block h3{margin:15px 0}.arch-block p{font-size:15px;line-height:1.7}.storage{font-size:12px;line-height:1.8;color:var(--muted);border-top:1px dashed var(--line);padding-top:13px}.flow-label{font-size:10px;text-align:center;max-width:140px;line-height:1.7}.flow-label b{display:block;font-size:38px;font-weight:400}.api-row{display:flex;gap:30px;justify-content:space-between;margin-top:15px;font-size:11px;color:var(--muted)}.takeaway{font-size:25px;letter-spacing:-.04em;margin:28px 0 10px}.takeaway.small{font-size:23px;color:var(--accent)}table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.5;text-align:left}th{font-size:10px;letter-spacing:.06em;color:var(--muted);font-weight:400;border-bottom:1px solid var(--ink);padding:12px 12px 12px 0}td{border-bottom:1px solid var(--line);padding:15px 16px 15px 0;vertical-align:top}td small{font-size:10px;color:var(--muted)}.test-heading{display:flex;align-items:center;gap:30px;margin-bottom:15px}.test-count{font-size:62px;letter-spacing:-.1em}.test-count span{font-size:27px;color:var(--muted)}.test-heading p{font-size:13px;line-height:1.7;margin:0}#calculator-demo{margin-top:22px;max-width:600px}#calculator-demo label{display:block;font-size:11px;margin-bottom:10px}.calc-row{display:flex;gap:8px}input{min-width:0;flex:1;background:transparent;border:1px solid var(--line);font:inherit;color:var(--ink);padding:12px}output{display:block;margin-top:10px;font-size:14px;color:var(--accent)}.limits{display:grid;grid-template-columns:repeat(3,1fr);gap:4vw;margin-top:4vh}.limits article{border-top:1px solid var(--ink);padding-top:15px}.limits article>span{font-size:11px;color:var(--accent)}.limits h3{margin:25px 0 15px}.limits p{font-size:16px;line-height:1.7}.models{margin-top:2vh}blockquote{margin:30px 0 0;font-family:Georgia,serif;font-size:clamp(23px,2.5vw,34px);line-height:1.4;max-width:1000px}cite{display:block;font-family:var(--mono);font-style:normal;font-size:11px;color:var(--muted);margin-top:12px}.before-after{display:grid;grid-template-columns:1fr 1fr;gap:7vw;margin-top:5vh}.before-after>div{border-top:1px solid var(--ink);padding-top:20px}.before-after small{font-size:10px;color:var(--accent);letter-spacing:.12em}.before-after h3{font-size:27px;margin:25px 0 15px}.before-after p{font-size:17px;line-height:1.7}.skill-copy{display:grid;grid-template-columns:1fr 1fr;gap:6vw}.skill-copy article{border-top:1px solid var(--ink);padding-top:20px}.skill-copy h3{font-size:24px}.skill-copy p{font-size:clamp(16px,1.45vw,22px);line-height:1.75}.skill .micro{margin-top:30px}.ratio-demo{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--ink);border-bottom:1px solid var(--line);padding:25px 0;margin:25px 0}.ratio-demo small{font-size:11px;color:var(--accent)}.ratio-demo strong{display:block;font-size:clamp(28px,4vw,58px);font-weight:400;margin:18px 0 10px;letter-spacing:-.06em}.ratio-demo p{font-size:12px;margin:0}.ratio-demo>span{font-size:25px;color:var(--muted)}.end h2{margin-top:5vh}.end .body{font-size:14px;margin-top:30px}.notes{display:none;background:#e7e9dd;border-left:3px solid var(--accent);padding:18px;margin-top:25px;font-size:13px;line-height:1.7;font-family:var(--mono);max-width:1100px}.show-notes .active .notes{display:block}.cover .notes{grid-column:1/-1}footer{height:60px;margin:0 4vw;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px}.nav{display:flex;gap:18px;align-items:center}.nav button{border:0;font-size:24px;padding:6px 12px}.keyboard-hint{color:var(--muted)}.progress{height:3px;background:#d9dccf}.progress span{display:block;height:100%;background:var(--accent);transition:width .2s}body.overview main{display:grid;grid-template-columns:1fr 1fr;padding:25px;gap:20px}body.overview .slide{display:block;min-height:0;margin:0;max-width:none;padding:30px;border:1px solid var(--line);overflow:hidden;cursor:pointer}body.overview h1,body.overview h2{font-size:32px}body.overview .cover{display:block}body.overview .hero,body.overview .notes,body.overview .photo-example,body.overview .folder{display:none}body.overview .body,body.overview .large,body.overview .lede{font-size:15px}body.overview .split,body.overview .demo-layout,body.overview .limits,body.overview .skill-copy{display:block}body.overview .architecture-flow{display:block}body.overview .ratio-demo strong{font-size:22px}body.overview .ratio-demo{gap:8px}body.overview #skill-sections{display:contents}#skill-sections{display:contents}@media(min-width:1500px){.slide{padding-left:6vw;padding-right:6vw}}@media(max-width:800px){header{height:auto;min-height:66px;flex-wrap:wrap;padding:15px 0;gap:10px}.brand{font-size:21px}.brand span{font-size:10px}.tools{gap:0;font-size:10px}.tools button{padding:8px}.slide{padding:30px 6vw;min-height:calc(100svh - 180px)}.cover.active{grid-template-columns:1fr;gap:30px}.cover h1{font-size:58px}.hero{max-width:520px;width:100%;margin-bottom:20px}.hero img{height:32vh}.folder{right:10px;font-size:18px}.split,.demo-layout,.before-after,.skill-copy{grid-template-columns:1fr;gap:25px}.limits{grid-template-columns:1fr;gap:20px}.limits h3{margin:12px 0}.architecture-flow{display:block}.flow-label{max-width:none;margin:12px 0}.flow-label b{display:inline;margin:0 10px}.api-row{display:block;line-height:1.9}.api-row span{display:block}.photo-example img{height:30vh}table{font-size:11px}th{font-size:9px}td{padding:12px 9px 12px 0}.models{table-layout:fixed;overflow-wrap:anywhere}.models th:nth-child(3){width:33%}.models small{font-size:9px}.test-count{font-size:50px}.test-heading{gap:20px}.ratio-demo strong{font-size:28px}.ratio-demo small,.ratio-demo p{font-size:9px}.ratio-demo>span{font-size:17px}.ratio-demo{gap:10px}.transfer .large{font-size:22px}footer{height:auto;min-height:65px;flex-wrap:wrap;padding:10px 0;gap:5px}#slide-title{max-width:45%}.keyboard-hint{display:none}.nav{gap:7px}body.overview main{display:block;padding:15px}body.overview .slide{margin-bottom:15px}.calc-row button{padding:12px}.skill-copy p{font-size:17px}}@media print{@page{size:A4 landscape;margin:12mm}body{background:white;font-size:12pt;color:#20372b}header,footer,.progress,.skip,.notes,.folder,#calculator-demo{display:none!important}main,body.overview main{display:block!important;padding:0!important}.slide,.slide.active,body.overview .slide,.cover.active{display:block!important;border:0!important;padding:5mm 0!important;min-height:0!important;max-width:none;break-after:page;page-break-after:always;overflow:visible}.slide:last-child{break-after:auto}.eyebrow{font-size:9pt;margin-bottom:8mm}h1{font-size:49pt}h2{font-size:39pt;margin-bottom:8mm}h3{font-size:19pt}p.body,.body,.lede{font-size:14pt;line-height:1.5}.large{font-size:22pt}.cover{position:relative}.cover-copy{max-width:58%}.cover .hero{display:block!important;position:absolute;right:0;top:17mm;width:38%}.cover .hero img{height:145mm}.hero figcaption{font-size:8pt}.cover-copy .micro{margin-top:10mm}.photo-example img{height:90mm}.notes{display:none!important}.architecture-flow{gap:10mm}.arch-block{padding:5mm 0}.arch-block p{font-size:12pt}.storage{font-size:9pt}.api-row{font-size:9pt}.micro,.footnote{font-size:9pt}.limits p,.before-after p{font-size:13pt}.skill-copy p{font-size:13pt;line-height:1.6}table{font-size:10pt}th{font-size:8pt}td{padding:4mm 3mm 4mm 0}blockquote{font-size:22pt}.ratio-demo strong{font-size:34pt}.primary{background:transparent;color:var(--ink);font-size:11pt;padding:3mm 4mm}.before-after{margin-top:10mm}.test-heading{margin-bottom:6mm}.test-count{font-size:45pt}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* Keep each desktop section within a typical classroom display. */
@media(min-width:801px){h1{font-size:clamp(48px,5vw,82px)}h2{font-size:clamp(40px,4.3vw,68px)}.slide{padding-top:3vh;padding-bottom:3vh}.cover .lede{font-size:clamp(17px,1.4vw,21px)}.cover-copy>.micro{margin-top:24px}.skill-copy p{font-size:clamp(16px,1.3vw,20px)}}
@media print{h1{font-size:45pt}h2{font-size:36pt}.cover .lede{font-size:14pt}.skill-copy p{font-size:13pt}}
.evidence{margin:0;text-align:center}.evidence img{width:100%;height:43vh;object-fit:contain;object-position:center top;display:block}.evidence figcaption{text-align:left;font-size:11px;letter-spacing:0;line-height:1.7}.demo-layout{grid-template-columns:.85fr 1.15fr}.split:has(.evidence){grid-template-columns:.9fr 1.1fr}.cover .hero img{object-position:center}
@media(max-width:800px){.demo-layout,.split:has(.evidence){grid-template-columns:1fr}.evidence img{height:auto;max-height:70vh}}
@media print{.evidence img{height:100mm}.evidence figcaption{font-size:8pt}.demo-layout,.split:has(.evidence){grid-template-columns:.85fr 1.15fr}}
@media print{
.slide,.slide.active,body.overview .slide{height:180mm!important;break-inside:avoid!important;padding:4mm 0!important}
.split,.demo-layout,.before-after,.skill-copy{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12mm!important}
.architecture-flow{display:flex!important;gap:8mm!important}.flow-label{max-width:33mm;font-size:8pt}.flow-label b{display:block;font-size:25pt}
.limits{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:10mm!important;margin-top:8mm}.limits h3{font-size:17pt;margin:6mm 0 4mm}.limits p{font-size:11pt;line-height:1.55}
.api-row{display:flex!important;font-size:8pt}.api-row span{display:inline}
.skill-copy p{font-size:12pt!important;line-height:1.55!important}.skill-copy h3{font-size:18pt}.skill .micro{margin-top:6mm}
h2{font-size:34pt!important;margin-bottom:7mm}.architecture h2{font-size:31pt!important}h1{font-size:43pt!important}.eyebrow{margin-bottom:6mm}.evidence img{height:105mm}.footnote{margin-top:7mm;font-size:9pt}.before-after{margin-top:6mm}.before-after h3{font-size:21pt}.before-after p{font-size:12pt;line-height:1.5}.takeaway{font-size:20pt}.storage{font-size:8pt}.arch-block p{font-size:11pt}.arch-block{padding:4mm 0}.arch-block h3{font-size:20pt}.cover .hero img{height:130mm}.ratio-demo{padding:6mm 0;margin:6mm 0}.ratio-demo strong{font-size:30pt}.end h2{margin-top:8mm}.end .body{font-size:12pt}
}
.transfer-note{font-size:13px;line-height:1.6;max-width:1000px;color:var(--muted);border-top:1px dashed var(--line);padding-top:12px}
@media print{.transfer-note{font-size:9pt;padding-top:3mm}}
