@charset "UTF-8";
:root{--paper:#f7f2e8;--ink:#332d25;--muted:#756c5e;--line:#d9d0c1;--rust:#a4492d;--green:#697459;--serif:Georgia,'Times New Roman',serif;--sans:'Apple SD Gothic Neo','Malgun Gothic',Arial,sans-serif;--mono:'SFMono-Regular',Consolas,monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer;color:inherit}a,button,input,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:2px solid var(--rust);outline-offset:5px}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-weight:400;word-break:keep-all}p{word-break:keep-all;line-height:1.85}em{color:var(--rust);font-weight:400}.wrap{width:88%;max-width:1280px;margin:auto}.eyebrow,small{font:10px/1.7 var(--mono);letter-spacing:1.4px}.eyebrow{color:var(--muted)}.muted{color:var(--muted)}.skip{position:absolute;top:-80px;left:20px;padding:15px 20px;background:var(--ink);color:var(--paper);z-index:20}.skip:focus{top:15px}.site-head{height:104px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font:italic 28px var(--serif);letter-spacing:-1px}.brand span{font:11px var(--sans);letter-spacing:0;display:inline-block;margin-left:24px;color:var(--muted)}.site-head nav{display:flex;gap:30px;align-items:center;font-size:12px}.github{border-bottom:1px solid var(--ink);padding-bottom:5px}.site-head a:hover{color:var(--rust)}.hero{display:grid;grid-template-columns:1.07fr 1fr;gap:68px;padding:82px 0 72px;align-items:center}.hero h1{font:clamp(62px,6.25vw,90px)/1.04 var(--serif);letter-spacing:-4.6px;margin:26px 0 31px}.intro-name{font-size:18px;margin-bottom:12px}.intro-name strong{font-weight:600}.intro,.now-copy{font-size:14px;max-width:425px;color:var(--muted)}.now-copy{margin-top:14px}.text-link{display:inline-flex;gap:32px;align-items:center;border-bottom:1px solid currentColor;padding:12px 0;font-size:13px;line-height:1.5}.text-link>span{font-size:21px;transition:transform .2s}.text-link:hover>span{transform:translate(3px,-3px)}.hero .text-link{margin-top:26px}.notebook{position:relative;min-height:490px;display:flex;align-items:center;justify-content:center}.back-sheet{position:absolute;width:88%;height:414px;background:#e9dfcc;transform:rotate(6deg);box-shadow:0 12px 35px #695d4214}.front-sheet{position:relative;background:#fffcf6;transform:rotate(-4deg);width:88%;padding:30px;border:1px solid #e6dece;box-shadow:0 12px 36px #63553e10}.front-sheet:before{content:'';position:absolute;top:-11px;left:36%;width:106px;height:27px;background:#d3c8aa85;transform:rotate(2deg)}.sheet-meta{display:flex;justify-content:space-between;font:9px var(--mono);color:#8b7e6b;letter-spacing:.8px}.sheet-title{font:italic 35px/1.05 var(--serif);letter-spacing:-1.1px;margin:30px 0 27px}.sheet-line{display:grid;grid-template-columns:100px 1fr;gap:12px;border-top:1px solid #e1d8c7;padding:17px 0}.sheet-line>span{font:10px var(--mono);color:var(--rust);padding-top:4px}.sheet-line>p{font-size:16px;line-height:1.65}.sheet-bottom{font:9px var(--mono);letter-spacing:1px;color:#8b7e6b;padding-top:15px}.stamp{position:absolute;right:-4px;bottom:7px;background:var(--rust);color:#f9eedb;border:5px double #eedec2;width:108px;height:108px;border-radius:50%;display:grid;place-content:center;text-align:center;transform:rotate(12deg);font:11px/1.6 var(--mono)}.intro-strip{border-block:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding:18px 0;font-size:11px;color:var(--muted)}.intro-strip>span:last-child{font:9px var(--mono);letter-spacing:1px}.section{padding:85px 0;border-bottom:1px solid var(--line)}.section-intro h2{font-size:30px;letter-spacing:-1.1px;line-height:1.5;margin-top:16px}.journey{padding:57px 0 48px}.journey-grid{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:45px;margin-top:35px}.journey-grid article{border-top:1px solid var(--line);padding-top:20px}.journey-grid small{color:var(--rust)}.journey-grid h3{font-size:17px;font-weight:500;margin:15px 0 11px}.journey-grid p{font-size:12px;color:var(--muted)}.time-note{font-size:10px;color:var(--muted);margin-top:26px;text-align:right}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:52px}.section-heading h2{font:51px/1.1 var(--serif);letter-spacing:-1.7px;margin-top:17px}.section-heading>p{font-size:13px;color:var(--muted);max-width:340px}.section-heading.compact h2{font:33px/1.4 var(--sans);letter-spacing:-1.5px}.project{display:grid;grid-template-columns:1fr 1.05fr;gap:68px;align-items:center;padding:38px 0 64px}.project+.project{border-top:1px solid var(--line);padding-top:65px;padding-bottom:0}.project-index{display:flex;gap:22px;align-items:center;margin-bottom:17px}.project-index>span{font:italic 28px var(--serif);color:var(--rust)}.project-index small{color:var(--muted);letter-spacing:1px}.project h3{font:50px/1.1 var(--serif);letter-spacing:-1.5px;margin-bottom:23px}.project h4{font-size:25px;line-height:1.45;letter-spacing:-.8px;margin-bottom:19px}.project-copy>p{font-size:13px;color:var(--muted)}.project-copy .role{font-size:11px;border-left:2px solid #c6bda8;padding-left:13px;margin-top:21px}.role b{display:block;color:var(--ink);font-weight:500;margin-bottom:4px}.status{font-size:10px;line-height:1.6;display:table;color:#765a40;background:#e9dfce;padding:7px 10px;margin-top:20px}.project .text-link{margin-top:20px;display:flex;justify-content:space-between;max-width:215px}.project-visual{display:block;min-width:0;transition:transform .25s}.project-visual:hover{transform:translateY(-4px)}.room-art{padding:24px;background:#e3e5d8;position:relative}.art-meta{font:9px var(--mono);color:#69745b;display:flex;justify-content:space-between;letter-spacing:1px}.floor-plan{display:block;width:100%;height:auto;margin:20px 0 10px}.art-caption{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:15px 5px;color:#536146;font-size:15px;line-height:1.6}.round-arrow{border:1px solid #8d997f;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-size:20px}.diagram-caption{display:block;font-size:9px;letter-spacing:0;color:#6e725f;margin-top:17px}.money-art{background:#eee1cf;padding:48px 40px 26px;position:relative;min-height:425px}.receipt{background:#fffcf6;transform:rotate(-4deg);box-shadow:0 12px 28px #695b3918;padding:28px 24px 24px;position:relative}.receipt:after{content:'';position:absolute;height:10px;bottom:-6px;left:0;right:0;background:linear-gradient(135deg,#fffcf6 25%,transparent 25%) -5px 0/10px 10px,linear-gradient(225deg,#fffcf6 25%,transparent 25%) -5px 0/10px 10px}.receipt-top{font:italic 32px var(--serif);letter-spacing:-1px;border-bottom:1px dashed #ccbfa9;padding-bottom:22px;display:flex;justify-content:space-between;align-items:center;gap:15px}.receipt-top>span{font:10px var(--sans);color:#8b7e6b;letter-spacing:0}.receipt-item{display:flex;justify-content:space-between;gap:15px;font-size:12px;padding-top:24px}.receipt-item b{font:15px var(--mono)}.receipt-total{border-top:1px dashed #ccbfa9;margin-top:25px;padding-top:20px;display:flex;justify-content:space-between;align-items:center;gap:12px}.receipt-total>span{font-size:12px}.receipt-total strong{font:38px var(--serif);color:var(--rust);letter-spacing:-1px}.receipt-total small{font:11px var(--sans);margin-left:4px}.receipt-note{font-size:10px;color:#8b7e6b;margin-top:25px}.receipt-stamp{font:11px/1.4 var(--mono);border:2px solid #a4492d99;color:var(--rust);padding:7px 13px;position:absolute;right:21px;bottom:42px;transform:rotate(10deg)}.money-art>.diagram-caption{margin-top:38px}.support-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.support-grid article{border-top:1px solid var(--line);padding-top:24px;min-width:0}.support-grid small{color:var(--rust);font-size:9px}.support-grid h3{font:32px var(--serif);margin:19px 0 9px;letter-spacing:-.8px}.period{font-size:10px!important;color:var(--muted);margin-bottom:24px}.support-grid h4{font-size:17px;margin-bottom:13px;line-height:1.5}.support-grid p{font-size:12px;color:var(--muted)}details{margin-top:23px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;font-size:12px;padding:16px 0;display:flex;gap:15px;justify-content:space-between}summary::-webkit-details-marker{display:none}summary:after{content:'+';color:var(--rust)}details[open] summary:after{content:'−'}details>p{padding-bottom:10px}.text-links{display:flex;gap:12px 25px;flex-wrap:wrap;margin:24px 0 6px;font-size:11px}.text-links a{border-bottom:1px solid var(--line);padding-bottom:6px;line-height:1.5}.text-links a:hover{color:var(--rust)}details .text-links{margin-top:10px;margin-bottom:17px}.experience{display:grid;grid-template-columns:1fr 1.4fr;gap:80px}.experience-row{border-top:1px solid var(--line);padding:23px 0 30px}.experience-row:last-child{padding-bottom:0}.experience-row small{color:var(--muted)}.experience-row h3{font-size:25px;letter-spacing:-.8px;margin:15px 0 9px}.experience-row h4{font-size:12px;color:var(--rust);margin-bottom:15px}.experience-row p{font-size:13px;color:var(--muted)}.award-list article{display:grid;grid-template-columns:90px 1fr 80px;gap:25px;padding:22px 0;border-top:1px solid var(--line);align-items:start}.award-list time{font:12px var(--mono);color:var(--muted);padding-top:6px}.award-list h3{font-size:18px;line-height:1.5}.award-list p{font-size:12px;color:var(--muted);margin-top:5px}.award-list small{text-align:right;padding-top:6px;font-size:9px;color:var(--rust)}.course-note{border-top:1px solid var(--line);padding-top:22px;font-size:11px;color:var(--muted)}.course-note>span{margin-left:22px}.now{border:0;padding-bottom:55px}.now .section-heading h2{font-size:54px}.interest-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.interest-grid article{padding-top:24px;border-top:1px solid var(--line)}.interest-grid small{color:var(--rust)}.interest-grid h3{font-size:23px;letter-spacing:-.6px;margin:21px 0 15px;line-height:1.45}.interest-grid p{font-size:13px;color:var(--muted)}.closing-link{margin-top:60px;display:flex;justify-content:space-between;align-items:center;gap:30px;font-size:12px;color:var(--muted)}.site-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding:30px 0;font-size:11px;color:var(--muted)}.site-foot small{font-size:9px}.site-foot .brand{font-size:24px;color:var(--ink)}
/* Reading a chapter */
.back-link{display:inline-block;font-size:12px;color:var(--muted);margin-top:35px;padding:8px 0}.case-hero{padding:65px 0 0;max-width:1050px}.case-hero h1{font:clamp(70px,9vw,120px)/1.05 var(--serif);letter-spacing:-5px;margin:22px 0 28px}.case-hero h1 span{color:var(--rust)}.case-hero h2{font-size:35px;line-height:1.5;letter-spacing:-1.5px}.case-intro{font-size:15px;color:var(--muted);max-width:720px;margin-top:25px}.project-facts{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0;margin:39px 0 0}.project-facts dt{font-size:10px;color:var(--muted);margin-bottom:10px}.project-facts dd{margin:0;font-size:12px;line-height:1.7;word-break:keep-all}.case-layout{display:grid;grid-template-columns:220px 1fr;gap:65px;max-width:1050px}.case-index{align-self:start;position:sticky;top:40px;margin-top:65px;display:flex;flex-direction:column;gap:0}.case-index>small{color:var(--muted);font-size:9px;margin-bottom:20px}.case-index a{padding:12px 0;font:10px var(--mono);color:#958a77}.case-index a>span{font:12px var(--sans);margin-left:16px;color:var(--muted)}.case-index a:hover,.case-index a:hover span{color:var(--rust)}.case-content{min-width:0}.case-section{padding:65px 0;border-bottom:1px solid var(--line)}.case-section:last-child{border-bottom:0}.case-section h2{font-size:28px;line-height:1.5;letter-spacing:-.8px;margin:18px 0 25px}.case-section>p:not(.eyebrow){font-size:14px;line-height:1.95;margin-top:17px;color:#5f574b}.margin-note{border-left:2px solid #bca588;padding:4px 0 4px 18px;margin-top:30px;font-size:12px;color:var(--muted);line-height:1.85;word-break:keep-all}.flow-study{background:#e7e9dc;padding:28px;margin-top:30px}.flow-study blockquote{font-size:27px;letter-spacing:-1px;margin:22px 0 26px}.flow-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.flow-controls button{border:1px solid #b6bea7;text-align:left;background:transparent;padding:14px 12px;font-size:15px;display:flex;align-items:center;justify-content:space-between;gap:7px}.flow-controls small{font-size:10px;letter-spacing:0}.flow-controls button[aria-pressed=true]{background:#647153;color:#fff;border-color:#647153}.flow-copy{border-top:1px solid #c2c9b2;margin-top:23px;padding-top:20px;min-height:102px}.flow-copy>small{color:#677252;letter-spacing:1px}.flow-copy p{font-size:13px;margin-top:9px}.fineprint{font-size:10px;line-height:1.8;color:var(--muted);margin-top:23px}.money-study{padding:28px;background:#eee3d1;margin-top:32px}.money-sides{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin:27px 0}.money-sides>div+div{border-left:1px solid #cfc2ac;padding-left:25px}.money-sides small{letter-spacing:0;color:var(--rust);font:11px var(--sans)}.money-sides p{font-size:12px;margin-top:12px}.money-sides b{display:block;font-size:22px;line-height:1.6;font-weight:400}.money-study fieldset{border:0;border-top:1px solid #d1c4ae;margin:0;padding:20px 0 0;min-width:0}.money-study legend{padding:0 12px 0 0;font-size:12px}.amount-options{display:flex;gap:8px;flex-wrap:wrap}.amount-options button{background:none;border:1px solid #c5b79f;padding:12px 15px;font-size:11px;min-height:44px}.amount-options button[aria-pressed=true]{background:#685a42;color:#fff;border-color:#685a42}.check{font-size:11px;display:flex;align-items:center;gap:9px;line-height:1.8;margin-top:18px;min-height:44px;cursor:pointer}.check input{width:18px;height:18px;accent-color:var(--rust);flex-shrink:0}.calculation{border-top:1px dashed #b5a78e;margin-top:20px;padding-top:23px}.calculation>div{display:flex;align-items:center;justify-content:space-between;gap:15px}.calculation>div>span{font-size:14px}.calculation strong{font:44px var(--serif);color:var(--rust);letter-spacing:-1.2px}.calculation small{font:12px var(--sans);margin-left:5px}.calculation p{font-size:11px;margin-top:13px;color:#77694f}.data-layers{margin-top:30px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:15px}.data-layers>div{padding:20px 0;border-top:2px solid #bca588}.data-layers small{font-size:8px;letter-spacing:.5px;color:var(--rust)}.data-layers h3{font-size:18px;margin:13px 0 9px}.data-layers p{font-size:11px;color:var(--muted)}.scope{margin-top:32px}.scope>div{display:grid;grid-template-columns:125px 1fr;gap:20px;border-top:1px solid var(--line);padding:22px 0}.scope dt{font-size:12px;color:var(--rust)}.scope dd{margin:0;font-size:13px;color:var(--muted);line-height:1.8;word-break:keep-all}.next-chapter{padding:40px 0 55px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:30px;align-items:center;max-width:1050px}.next-chapter small{color:var(--muted)}.next-chapter h2{font:40px var(--serif);margin-top:15px}
@media(min-width:1550px){.hero{padding-block:100px}.hero h1{font-size:94px}.notebook{max-width:550px}}
@media(max-width:1050px){.wrap{width:90%}.brand span{display:none}.hero{gap:25px;padding:65px 0}.hero h1{font-size:66px;letter-spacing:-3px}.front-sheet{padding:25px}.sheet-title{font-size:29px}.sheet-line{grid-template-columns:90px 1fr}.sheet-line p{font-size:14px}.stamp{right:-5px;width:92px;height:92px;font-size:10px}.journey-grid{gap:25px}.project{gap:35px}.project h4{font-size:22px}.receipt-total strong{font-size:30px}.money-art{padding:40px 25px 25px;min-height:390px}.receipt{padding:25px 18px}.support-grid{gap:23px}.experience{gap:40px}.case-layout{grid-template-columns:160px 1fr;gap:30px}.flow-controls button{font-size:13px}.flow-controls button>span{display:none}.now .section-heading h2{font-size:45px}}
@media(max-width:720px){.site-head{height:auto;min-height:105px;padding-block:22px;flex-wrap:wrap;gap:20px}.brand{font-size:27px}.site-head nav{gap:24px;font-size:11px}.hero{grid-template-columns:1fr;padding:48px 0 35px;gap:20px}.hero h1{font-size:clamp(52px,10.8vw,76px);letter-spacing:-2.7px;margin:24px 0 27px}.hero-copy{max-width:510px}.intro{font-size:14px}.now-copy{font-size:13px}.notebook{min-height:445px;max-width:490px;width:100%;margin:15px auto 0}.front-sheet{width:84%;padding:27px}.back-sheet{width:84%;height:370px}.sheet-title{font-size:33px}.sheet-line{grid-template-columns:105px 1fr}.sheet-line p{font-size:15px}.stamp{right:0;bottom:12px}.intro-strip{flex-wrap:wrap;font-size:10px;gap:12px}.intro-strip>span:last-child{width:100%;font-size:8px}.section{padding:55px 0}.section-intro h2{font-size:27px}.journey-grid{grid-template-columns:1fr;gap:25px;margin-top:26px}.journey-grid article{display:grid;grid-template-columns:105px 1fr;column-gap:15px}.journey-grid small{grid-row:1 / 3;padding-top:2px;font-size:9px;letter-spacing:.5px}.journey-grid h3{margin:0 0 10px;font-size:17px}.journey-grid p{grid-column:2;font-size:12px}.time-note{text-align:left;font-size:10px}.section-heading{display:block;margin-bottom:32px}.section-heading h2{font-size:44px}.section-heading>p{margin-top:22px;font-size:12px}.section-heading.compact h2{font-size:29px}.project{grid-template-columns:1fr;gap:30px;padding:10px 0 45px}.project+.project{padding-top:45px}.project h3{font-size:46px}.project h4{font-size:25px}.project-copy>p{font-size:13px}.project .text-link{max-width:100%;margin-top:12px}.room-art{padding:20px}.project-visual{max-width:540px;width:100%}.money-art{min-height:390px;padding:40px 30px 25px}.receipt{padding:28px 24px}.receipt-total strong{font-size:38px}.support-grid{grid-template-columns:1fr;gap:30px}.support-grid article{padding-top:24px}.support-grid h3{font-size:31px;margin:13px 0 8px}.support-grid p{font-size:13px}.period{margin-bottom:17px}.experience{grid-template-columns:1fr;gap:30px}.experience-row h3{font-size:25px}.award-list article{grid-template-columns:44px 1fr;gap:16px}.award-list small{display:none}.award-list h3{font-size:17px}.award-list p{font-size:11px}.award-list time{font-size:10px}.course-note>span{display:block;margin:10px 0 0;line-height:1.9}.interest-grid{grid-template-columns:1fr;gap:30px}.now .section-heading h2{font-size:43px}.interest-grid h3{font-size:22px}.closing-link{margin-top:35px;align-items:start;flex-direction:column;gap:13px}.site-foot{flex-wrap:wrap;gap:20px;font-size:10px}.site-foot small{width:100%}.case-hero{padding-top:35px}.case-hero h1{font-size:76px;letter-spacing:-3px}.case-hero h2{font-size:28px;letter-spacing:-1px}.case-intro{font-size:14px}.project-facts{grid-template-columns:1fr;gap:22px;padding-block:23px}.project-facts>div{display:grid;grid-template-columns:90px 1fr;gap:15px}.project-facts dt{margin:0;padding-top:2px}.case-layout{display:block}.case-index{position:static;margin-top:28px;display:flex;flex-flow:row wrap;gap:4px 18px;border-bottom:1px solid var(--line);padding-bottom:20px}.case-index>small{width:100%;margin-bottom:5px}.case-index a{font-size:9px;padding:9px 0}.case-index a>span{font-size:11px;margin-left:7px}.case-section{padding:45px 0}.case-section h2{font-size:25px}.case-section>p:not(.eyebrow){font-size:14px}.flow-study,.money-study{padding:22px}.flow-controls{gap:7px}.flow-controls button{padding:12px 8px;flex-direction:column;align-items:start;gap:8px;font-size:14px}.flow-study blockquote{font-size:24px}.flow-copy{min-height:120px}.money-sides{gap:15px}.money-sides>div+div{padding-left:15px}.money-sides b{font-size:21px}.amount-options{gap:6px}.amount-options button{padding:11px 10px;font-size:10px}.check{font-size:11px}.data-layers{grid-template-columns:1fr;gap:0}.data-layers h3{font-size:20px}.scope>div{grid-template-columns:1fr;gap:10px}.next-chapter{padding:30px 0 40px}.next-chapter h2{font-size:35px}.next-chapter .text-link{font-size:11px;gap:15px}.next-chapter small{font-size:9px}.text-links a{min-height:30px}}
@media(max-width:380px){.site-head nav{gap:20px}.sheet-title{font-size:28px}.sheet-line{grid-template-columns:80px 1fr}.sheet-line p{font-size:14px}.front-sheet{padding:22px}.receipt{padding:23px 18px}.receipt-total{flex-direction:column;align-items:start}.money-art{padding-inline:25px}.project h4{font-size:23px}.journey-grid article{grid-template-columns:85px 1fr}.now .section-heading h2{font-size:36px}.money-study{padding:18px}.calculation strong{font-size:37px}.check{align-items:start}.check input{margin-top:3px}.case-hero h1{font-size:68px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{body{background:white}.site-head nav,.case-index,.back-link,.next-chapter,.skip{display:none}.wrap{width:100%}.case-layout{display:block}.project,.case-section{break-inside:avoid}.case-section{padding-block:24px}.case-hero{padding-top:20px}.hero{padding-block:30px}.notebook{transform:scale(.8)}a{color:inherit}.text-links a:after{content:' (' attr(href) ')';font-size:8px}.site-foot{margin-top:30px}}

/* Full project treatments, independent of project completion state. */
.memory-art,.codec-art{padding:28px;min-height:450px;display:flex;flex-direction:column;justify-content:space-between;background:#eee6d5}.memory-art .art-meta,.codec-art .art-meta{gap:20px;font-size:9px;line-height:1.8}.memory-records{padding:24px 10px}.memory-records>div{border-top:1px solid #c8bda8;padding:16px 10px}.memory-records>div:last-child{border-bottom:1px solid #c8bda8}.memory-records small{font-size:10px;color:#817459}.memory-records p{font-size:19px;letter-spacing:-.5px;margin-top:7px}.memory-records .temporary-memory{background:#f7f2e7;border-left:2px solid #a88b60}.temporary-memory>span{display:block;font-size:10px;color:#88785f;margin-top:6px}.memory-art .art-caption,.codec-art .art-caption{font-size:14px}.memory-art .diagram-caption,.codec-art .diagram-caption{line-height:1.8;margin-top:22px}.codec-art{background:#e4e8e5}.codec-stream{padding:30px 4px 35px}.stream-label{display:grid;grid-template-columns:32% 1fr;font-size:11px;color:#68776d;gap:15px;margin-bottom:15px}.stream-packets{display:grid;grid-template-columns:32% 1fr;gap:15px}.base-packet{padding:20px 5px;background:#bccabc;color:#415d47;text-align:center;line-height:1.7;font:19px/1.7 var(--mono)}.base-packet small{font:10px var(--sans)}.extra-packets{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}.extra-packets span{background:#d2ddd2;border:1px solid #a9bca9}.codec-stream>p{font-size:10px;color:#6c7b6f;margin-top:15px;line-height:1.8}.codec-checks{display:grid;grid-template-columns:repeat(3,1fr);margin-top:32px;border-top:1px solid #bcc9bf;padding-top:18px;gap:10px}.codec-checks span{display:block;font-size:9px;color:#77847a}.codec-checks b{display:block;font-size:11px;font-weight:400;margin-top:6px}.codec-art .round-arrow{border-color:#a6b4a9}@media(max-width:1050px){.memory-art,.codec-art{padding:23px;min-height:420px}.memory-records p{font-size:17px}}@media(max-width:720px){.memory-art,.codec-art{padding:22px;min-height:390px}.memory-records{padding:20px 0}.memory-records p{font-size:18px}.codec-checks{gap:7px}.codec-checks b{font-size:10px}.memory-art .art-meta,.codec-art .art-meta{font-size:8px}}
/* Case studies: compact summaries, explicit ownership, decisions and evidence. */
.case-refined{--case-accent:var(--rust);--case-tint:#eee6d7;--case-soft:#f2ecdf;max-width:1125px}.study-header{padding:34px 0 35px;display:grid;grid-template-columns:1fr 1.15fr;gap:60px;align-items:center}.study-title h1{font:normal clamp(48px,5.3vw,78px)/1.1 var(--serif);letter-spacing:-2px;margin:20px 0;overflow-wrap:anywhere}.study-title h1>span{color:var(--case-accent)}.study-meta{font-size:11px;line-height:1.8;color:var(--muted)}.study-meta>span{display:block;margin-top:6px}.study-deck h2{font-size:28px;line-height:1.5;letter-spacing:-1px}.study-deck>p{font-size:13px;color:var(--muted);line-height:1.9;margin-top:16px}.case-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 0 20px}.case-summary>a{position:relative;display:block;padding:23px 22px 25px;text-decoration:none;color:inherit}.case-summary>a+a{border-left:1px solid var(--line)}.case-summary>a:hover{background:var(--case-soft)}.case-summary>a>span{font-size:12px}.case-summary small{font:10px var(--mono);color:var(--case-accent);margin-right:10px}.case-summary p{font-size:13px;line-height:1.8;margin:14px 0 0;padding-right:8px}.case-summary b{position:absolute;right:14px;top:20px;color:var(--case-accent);font-weight:400}.study-section{display:grid;grid-template-columns:150px 1fr;gap:45px;border-bottom:1px solid var(--line);padding:42px 0;scroll-margin-top:25px}.section-rail{padding-top:5px}.section-rail>span{font:italic 27px var(--serif);color:var(--case-accent)}.section-rail h2{font-size:13px;font-weight:500;line-height:1.8;margin-top:10px}.section-body>h3{font-size:25px;letter-spacing:-.8px;line-height:1.6;margin:0 0 20px}.section-lead{font-size:14px;line-height:1.95;max-width:760px}.problem-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:23px}.problem-pair>div{border-top:1px solid var(--line);padding:16px 0}.problem-pair small{font-size:11px;color:var(--muted)}.problem-pair p{font-size:17px;line-height:1.7;margin-top:9px}.role-split{display:grid;grid-template-columns:1.35fr 1fr;gap:35px}.section-body h4{font-size:13px;line-height:1.7;font-weight:600;margin:0 0 12px}.case-points{list-style:none;padding:0;margin:0}.case-points li{position:relative;padding-left:15px;font-size:13px;line-height:1.9;margin:8px 0}.case-points li:before{content:'—';position:absolute;left:0;color:var(--case-accent);font-size:10px}.role-boundary{padding:18px 20px;background:var(--case-soft);align-self:start}.role-boundary p{font-size:12px;line-height:1.9;color:var(--muted)}.decision-head,.decision-list article{display:grid;grid-template-columns:1fr 1.65fr;gap:30px;padding:17px 0;border-bottom:1px solid var(--line)}.decision-head{padding:0 0 12px;font-size:10px;color:var(--muted)}.decision-list article h3{font-size:14px;margin:0;line-height:1.8}.decision-list article p{font-size:13px;color:var(--muted);line-height:1.85}.scope-note{font-size:11px;line-height:1.9;color:var(--muted);padding-left:13px;border-left:2px solid var(--line);margin:20px 0 0}.outcome{background:var(--case-tint);padding:22px 25px;margin-bottom:23px}.outcome small{display:block;font-size:10px;color:var(--case-accent);margin-bottom:10px}.outcome p{font-size:20px;line-height:1.6;letter-spacing:-.5px}.results-split{display:grid;grid-template-columns:1fr 1fr;gap:32px}.results-split .remaining{border-left:1px solid var(--line);padding-left:25px}.results-split .remaining li{color:var(--muted)}.learning{font:normal 25px/1.7 var(--serif);letter-spacing:-.6px;max-width:750px}.next-step{font-size:12px;line-height:1.9;margin-top:19px;color:var(--muted)}.next-step b{font-size:10px;color:var(--case-accent);display:block;margin-bottom:6px;font-weight:400}.technical-note{margin-top:24px;border-top:1px solid var(--line);padding-top:15px}.technical-note summary{position:relative;cursor:pointer;font-size:12px;list-style:none;padding:8px 35px 8px 0;line-height:1.8}.technical-note summary::-webkit-details-marker{display:none}.technical-note summary:after{content:'+';position:absolute;right:5px;top:5px;font-size:19px;color:var(--case-accent)}.technical-note[open]>summary:after{content:'−'}.technical-note summary:focus-visible,.case-summary a:focus-visible{outline:2px solid var(--case-accent);outline-offset:4px}.expanded-context{padding:8px 0 5px}.expanded-context h4{font-size:14px;margin:21px 0 10px}.expanded-context p{font-size:13px;line-height:1.95;color:var(--muted);margin:10px 0}.technical-note .flow-study,.technical-note .money-study{margin-top:15px}.study-next{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:35px 0 50px}.study-next>a:first-child{font-size:12px}.study-next>a:last-child{display:grid;grid-template-columns:1fr 25px;gap:10px 22px;text-decoration:none}.study-next small{font-size:10px;grid-column:1;color:var(--muted)}.study-next strong{font:normal 29px var(--serif);grid-column:1}.study-next>a>span{grid-column:2;grid-row:1/3;align-self:center}.refined-notes .case-summary{background:#f4eddf;border:1px solid #ddd1bc;padding:0 12px;box-shadow:0 5px 0 -2px #e6dcc9}.refined-notes .case-summary>a{padding-inline:20px}.refined-notes .study-header{padding-bottom:40px}.refined-notes .section-rail{border-top:2px solid var(--case-accent);width:85px;padding-top:13px}.refined-notes .outcome{border-left:3px solid var(--case-accent)}.refined-notes .learning{font-style:italic}@media(max-width:1050px){.study-header{gap:35px}.study-deck h2{font-size:25px}.study-section{grid-template-columns:115px 1fr;gap:25px}.case-summary>a{padding-inline:15px}.refined-notes .case-summary>a{padding-inline:14px}.case-summary p{font-size:12px}.role-split{gap:20px}.section-body>h3{font-size:23px}.study-title h1{font-size:62px}}@media(max-width:720px){.study-header{grid-template-columns:1fr;gap:24px;padding:25px 0 28px}.study-title h1{font-size:54px;letter-spacing:-2px;margin:18px 0}.study-deck h2{font-size:25px}.study-deck>p{font-size:13px}.study-meta{font-size:10px}.case-summary{grid-template-columns:1fr 1fr;margin-bottom:0}.case-summary>a{padding:18px 15px 20px}.case-summary>a:nth-child(3){border-left:0}.case-summary>a:nth-child(n+3){border-top:1px solid var(--line)}.case-summary p{font-size:12px;margin-top:10px}.case-summary>a>span{font-size:11px}.case-summary b{font-size:12px;top:16px;right:10px}.case-summary small{font-size:8px;margin-right:6px}.study-section{display:block;padding:30px 0}.section-rail{display:flex;align-items:baseline;gap:12px;margin-bottom:17px;padding:0}.section-rail h2{margin:0;font-size:11px}.section-rail>span{font-size:22px}.refined-notes .section-rail{border:0;width:auto;padding-top:0}.section-body>h3{font-size:22px;line-height:1.55;margin-bottom:18px}.section-lead{font-size:13px}.problem-pair{gap:15px;margin-top:18px}.problem-pair p{font-size:15px}.problem-pair small{font-size:10px}.role-split{grid-template-columns:1fr;gap:20px}.role-boundary{padding:16px 18px}.case-points li{font-size:12px}.decision-head,.decision-list article{grid-template-columns:1fr;gap:8px}.decision-head{display:none}.decision-list article{padding:16px 0}.decision-list article:first-of-type{border-top:1px solid var(--line)}.decision-list article h3{font-size:14px}.decision-list article p{font-size:12px}.scope-note{font-size:10px}.outcome{padding:18px}.outcome p{font-size:18px}.results-split{grid-template-columns:1fr;gap:23px}.results-split .remaining{border-left:0;border-top:1px solid var(--line);padding:18px 0 0}.learning{font-size:22px}.next-step{font-size:12px}.technical-note summary{font-size:11px}.expanded-context p{font-size:12px}.study-next strong{font-size:23px}.study-next>a:first-child{font-size:11px}.study-next{gap:20px;padding:27px 0 38px}.refined-notes .case-summary{padding:0}.refined-notes .case-summary>a{padding:18px 13px}.refined-notes .study-header{padding-bottom:28px}}@media(max-width:380px){.study-title h1{font-size:46px}.study-deck h2{font-size:23px}.case-summary p{font-size:11px}.problem-pair{grid-template-columns:1fr;gap:0}.study-next strong{font-size:20px}}@media print{.study-header{display:block}.study-title h1{font-size:42px}.case-summary{display:none}.study-section{display:block;break-inside:avoid}.section-rail{display:none}.technical-note,.study-next{display:none}.study-deck{margin-top:18px}}
/* Korean headline copy keeps the original two-line composition. */
.hero .hero-copy h1{font-size:clamp(38px,3.7vw,55px);line-height:1.3;letter-spacing:-2px}.notebook .sheet-title{font-size:30px;line-height:1.45}.hero .hero-copy h1 em{font-style:normal}@media(max-width:720px){.hero .hero-copy h1{font-size:clamp(30px,7.6vw,48px);letter-spacing:-1.4px}.notebook .sheet-title{font-size:28px}}@media(max-width:380px){.notebook .sheet-title{font-size:25px}}

/* Home introduction: deliberate title lines and readable Korean paragraphs. */
.hero,.ed-hero{padding-block:72px 56px}
.hero .hero-copy h1,.ed-hero .ed-hero-copy h1{font-size:clamp(42px,4.6vw,62px);line-height:1.24;letter-spacing:-.045em;margin:24px 0 32px;word-break:keep-all}
.hero-line{display:block}
.hero .intro-name,.ed-hero .identity{font-size:17px;line-height:1.6;margin:0 0 16px;letter-spacing:-.025em}
.hero .hero-copy .intro,.ed-hero .ed-hero-copy .intro{font-size:15px;line-height:1.9;max-width:440px;word-break:keep-all;overflow-wrap:break-word;text-wrap:pretty;letter-spacing:-.025em}
.intro-sentence{display:block}
.intro-sentence+.intro-sentence{margin-top:8px}
.hero .hero-copy .now-copy,.ed-hero .ed-hero-copy .now-copy{font-size:13px;line-height:1.8;max-width:440px;margin-top:18px;word-break:keep-all}
.hero .hero-copy .text-link,.ed-hero .ed-hero-copy .text-link{margin-top:30px}
@media(max-width:1050px){.hero,.ed-hero{padding-block:55px 42px}.hero .hero-copy .intro,.ed-hero .ed-hero-copy .intro{font-size:14px}}
@media(max-width:720px){.hero,.ed-hero{padding-block:40px 34px;gap:38px}.hero .hero-copy h1,.ed-hero .ed-hero-copy h1{font-size:clamp(36px,9.2vw,52px);line-height:1.28;letter-spacing:-.04em;margin:22px 0 27px}.hero .intro-name,.ed-hero .identity{font-size:16px;margin-bottom:14px}.hero .hero-copy .intro,.ed-hero .ed-hero-copy .intro{font-size:14px;line-height:1.9;max-width:440px}.hero .hero-copy .now-copy,.ed-hero .ed-hero-copy .now-copy{font-size:12px;margin-top:16px}.hero .hero-copy .text-link,.ed-hero .ed-hero-copy .text-link{margin-top:25px}}

/* Patent record, using each theme's own paper, rules and accent. */
.patent-header{display:grid;grid-template-columns:1.4fr 1fr;align-items:center;gap:65px;padding:35px 0 38px}
.patent-header h1{font:normal clamp(42px,4.5vw,62px)/1.25 var(--serif);letter-spacing:-.04em;margin:25px 0 0;word-break:keep-all}
.patent-header h1 em{font-style:normal;color:var(--case-accent)}
.patent-result{border-top:2px solid var(--case-accent);border-bottom:1px solid var(--line);padding:24px 0}
.patent-result small{font:10px var(--mono);color:var(--muted)}
.patent-result strong{display:block;font:normal 33px/1.4 var(--serif);margin:13px 0 8px;color:var(--case-accent)}
.patent-result p{font-size:13px;color:var(--muted)}
.patent-deck{border-block:1px solid var(--line);padding:27px 0 32px}
.patent-deck h2{font-size:20px;line-height:1.6;letter-spacing:-.04em;margin-bottom:12px;word-break:keep-all}
.patent-deck>p{font-size:14px;line-height:1.9;max-width:750px;color:var(--muted);word-break:keep-all}
.patent-page .section-lead{word-break:keep-all}
.patent-example{background:var(--case-soft);padding:23px 27px;margin-top:25px}
.patent-equation{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:20px;align-items:center;margin-top:22px}
.patent-equation small{font-size:11px;color:var(--muted)}
.patent-equation strong{display:block;font:normal 29px/1.4 var(--serif);margin-top:8px;white-space:nowrap}
.patent-equation>span{color:var(--muted);font-size:20px}
.patent-equation>div:last-child strong{color:var(--case-accent)}
.patent-timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;list-style:none;padding:0;margin:32px 0 0}
.patent-timeline li{padding-top:20px;border-top:1px solid var(--line)}
.patent-timeline li:last-child{border-top:2px solid var(--case-accent)}
.patent-timeline time{font:11px var(--mono);color:var(--muted)}
.patent-timeline h3{font-size:18px;margin:14px 0 10px;letter-spacing:-.025em}
.patent-timeline li:last-child h3{color:var(--case-accent)}
.patent-timeline p{font-size:13px;line-height:1.85;color:var(--muted);word-break:keep-all}
.patent-product{display:flex;justify-content:space-between;gap:30px;align-items:center;padding:25px 0;margin-top:25px;border-block:1px solid var(--line);text-decoration:none}
.patent-product small{font:10px var(--mono);color:var(--case-accent)}
.section-body .patent-product h4{font:normal 32px/1.4 var(--serif);margin:10px 0}
.patent-product p{font-size:13px;color:var(--muted);max-width:540px;word-break:keep-all}
.patent-product>span{font-size:27px;color:var(--case-accent)}
.patent-product:hover h4,.patent-award a:hover{text-decoration:underline;text-underline-offset:5px}
.patent-origin{display:inline-flex;gap:16px;font-size:12px;color:var(--case-accent);margin-top:18px;text-underline-offset:5px}
.award-list .patent-award{border-left:3px solid var(--rust);padding-left:22px;background:#a77c3910}
.patent-award h3 a{text-decoration:none}
.patent-read{display:inline-flex;gap:22px;font-size:12px;line-height:1.8;margin-top:14px;color:var(--rust);text-underline-offset:4px}
@media(max-width:720px){.patent-header{grid-template-columns:1fr;gap:28px;padding:25px 0}.patent-header h1{font-size:clamp(36px,9vw,52px);margin-top:20px}.patent-result{padding:18px 0}.patent-result strong{font-size:28px;margin:10px 0 6px}.patent-deck{padding:23px 0}.patent-deck h2{font-size:18px}.patent-deck>p{font-size:13px}.patent-example{padding:20px 16px}.patent-equation{gap:9px}.patent-equation small{font-size:10px}.patent-equation strong{font-size:23px}.patent-equation>span{font-size:16px}.patent-timeline{grid-template-columns:1fr;gap:22px;margin-top:25px}.patent-timeline li{padding-top:17px}.patent-timeline h3{margin:10px 0 8px}.patent-product{gap:20px;padding:20px 0}.patent-product p{font-size:12px}.award-list .patent-award{padding-left:13px;column-gap:12px}.patent-award small{display:block;grid-column:2;text-align:left;padding:0}.patent-read{font-size:11px}}

/* Keep the main project section title on one line at small widths. */
body:not(.editorial) #work .section-heading h2{white-space:nowrap;font-size:clamp(28px,8.5vw,51px)}
