@charset "UTF-8";
:root{--paper:#f4efe3;--ink:#1c1a17;--red:#c84931;--gold:#f4c652;--line:#302b24;--soft:#e8dfce;color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#ded5c5;color:var(--ink);font-family:Georgia,'Times New Roman',serif}
button,a{touch-action:manipulation}
a{color:inherit}
button{font:inherit}
:focus-visible{outline:3px solid var(--red);outline-offset:4px}
::selection{background:var(--red);color:#fff}
.mobile-only{display:none}
.cover{max-width:1600px;min-height:100dvh;margin:auto;background:var(--paper);padding:0 clamp(20px,4vw,64px);box-shadow:0 0 50px #211b1426;position:relative;display:flex;flex-direction:column;overflow:hidden}
.cover:before,.page:before,.front-sheet:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.19;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 180 180'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)' opacity='.16'/%3E%3C/svg%3E")}
.edition-line,.cover-rule,.contents-top,.cover-bottom,.cover-footer,.page-folio,.page-kicker,.page-foot,.project-story>span,.project-story small,.editor-note>span,.method-block>span,.skill-list span,.contact-kicker,.phone-line span,.reader-toolbar,.reader-hint,.portrait figcaption,.intro-sheet>span,.sheet-top,.sheet-bottom{font-family:Arial,Helvetica,sans-serif;font-weight:800;letter-spacing:.04em}
.edition-line{display:flex;justify-content:space-between;gap:16px;border-bottom:2px solid var(--line);padding:15px 0 12px;font-size:11px}
.masthead{font-size:clamp(39px,5.55vw,91px);line-height:.92;letter-spacing:-.074em;text-align:center;margin:12px 0 10px;white-space:nowrap;font-weight:900}
.masthead span,.cover-lead h2 span,.page-headline span,.sheet-title span{color:var(--red)}
.cover-rule{display:flex;justify-content:space-between;gap:12px;font-size:11px;border-top:6px double var(--line);border-bottom:2px solid var(--line);padding:9px 0}
.cover-grid{display:grid;grid-template-columns:42% 58%;flex:1;border-bottom:2px solid var(--line);min-height:0}
.identity-column{padding:23px 24px 19px 0;border-right:1px solid var(--line);display:flex;flex-direction:column;min-width:0}
.portrait{margin:0;position:relative;min-height:0;flex:1;display:flex;flex-direction:column}
.portrait img{width:100%;height:100%;min-height:340px;max-height:590px;object-fit:cover;object-position:center 24%;display:block;border:2px solid var(--ink);box-shadow:8px 8px 0 var(--ink);background:var(--gold)}
.portrait figcaption{display:flex;justify-content:space-between;gap:10px;font-size:10px;margin:17px 0 0}
.identity-bottom{display:flex;align-items:end;gap:17px;border-top:1px solid var(--line);margin-top:15px;padding-top:12px}
.identity-mark{font:900 clamp(40px,5vw,76px)/.8 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.07em;white-space:nowrap}
.identity-mark span{font-family:Georgia,serif;font-size:.36em;vertical-align:top;color:var(--red);margin-left:3px}
.identity-bottom p{font-size:clamp(13px,1.13vw,17px);line-height:1.3;margin:0;max-width:330px}
.identity-bottom b{font-size:1.08em}
.contents-column{padding:23px 0 18px clamp(24px,3.5vw,62px);display:flex;flex-direction:column;min-width:0}
.contents-top,.cover-bottom{display:flex;justify-content:space-between;gap:12px;font-size:11px}
.contents-top{border-bottom:1px solid var(--line);padding-bottom:11px}
.cover-lead{padding:clamp(20px,3vw,48px) 0 clamp(15px,2vw,30px)}
.cover-lead>span{font:800 12px Arial,Helvetica,sans-serif;color:var(--red);letter-spacing:.06em}
.cover-lead h2{font:900 clamp(55px,7vw,112px)/.86 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.035em;margin:13px 0 20px}
.cover-lead h2 em,.page-headline em{font-family:Georgia,'Times New Roman',serif;font-weight:700;letter-spacing:-.08em}
.cover-lead p{font-size:clamp(16px,1.5vw,21px);line-height:1.35;max-width:610px;margin:0}
.contents-menu{border-top:2px solid var(--line);margin-top:auto}
.contents-menu a{display:grid;grid-template-columns:75px 1fr 32px;align-items:center;gap:10px;text-decoration:none;border-bottom:1px solid var(--line);padding:clamp(9px,1.3vh,15px) 8px clamp(9px,1.3vh,15px) 0;transition:background .25s,padding .25s,color .25s}
.contents-menu a:hover,.contents-menu a:focus-visible{background:#e9dfce;padding-left:12px;color:var(--red)}
.menu-index{font:800 12px Arial,Helvetica,sans-serif;color:var(--red)}
.menu-label{font-size:clamp(24px,3vw,43px);font-weight:700;line-height:1;letter-spacing:-.055em}
.menu-arrow{font:26px Arial,Helvetica,sans-serif;justify-self:end;transition:transform .25s}
.contents-menu a:hover .menu-arrow{transform:translate(3px,-3px)}
.cover-bottom{padding-top:16px}
.cover-bottom span span{color:var(--red)}
.cover-footer{display:flex;justify-content:space-between;gap:10px;font-size:10px;padding:13px 0}
.reader{position:fixed;inset:0;z-index:30;display:grid;place-items:center;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .42s,visibility .42s;perspective:1800px}
.reader.open{visibility:visible;opacity:1;pointer-events:auto}
.reader-backdrop{position:absolute;inset:0;background:#191714dd;backdrop-filter:blur(7px)}
.reader-frame{width:min(1300px,calc(100vw - 48px));height:min(850px,calc(100dvh - 38px));position:relative;display:flex;flex-direction:column;z-index:1;min-height:0}
.reader-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--paper);font-size:11px;padding:0 2px 13px}
.close-button{appearance:none;border:1px solid var(--paper);background:var(--paper);color:var(--ink);padding:11px 14px;font:800 11px Arial,Helvetica,sans-serif;letter-spacing:.04em;cursor:pointer;transition:background .2s,color .2s,transform .2s}
.close-button:hover{background:var(--red);border-color:var(--red);color:#fff;transform:translateY(-2px)}
.close-button span{font-size:17px;margin-right:7px;vertical-align:-1px}
.book{position:relative;flex:1;min-height:0;transform-style:preserve-3d;transform:translateY(48px) rotateX(10deg) rotateY(-8deg) scale(.82);transition:transform .9s cubic-bezier(.17,.75,.2,1);filter:drop-shadow(20px 25px 22px #0008)}
.reader.open .book{transform:translateY(0) rotateX(0) rotateY(0) scale(1)}
.book-pages{position:relative;height:100%;background:var(--paper);border:2px solid var(--ink);overflow:hidden}
.edition-panel{height:100%;display:grid;grid-template-columns:1fr 1fr}
.edition-panel[hidden]{display:none!important}
.page{position:relative;min-width:0;min-height:0;padding:clamp(22px,2.3vw,38px);display:flex;flex-direction:column;overflow:auto;scrollbar-color:#9e9381 transparent;background:var(--paper)}
.page-left{border-right:2px solid var(--ink);box-shadow:inset -14px 0 20px -20px #0008}
.page-right{box-shadow:inset 16px 0 20px -20px #0008}
.page-folio{display:flex;justify-content:space-between;gap:10px;border-block:2px solid var(--ink);padding:8px 0;font-size:10px}
.page-kicker{font-size:11px;color:var(--red);margin:clamp(25px,3vh,48px) 0 13px}
.page-headline{font:900 clamp(52px,5.2vw,82px)/.87 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.03em;margin:0 0 24px}
.page-headline em{font-size:.8em}
.page-lead{font-size:clamp(20px,1.85vw,27px);line-height:1.16;letter-spacing:-.04em;margin:0 0 28px;max-width:500px}
.page-quote{font-size:clamp(25px,2.6vw,39px);font-style:italic;line-height:1.08;letter-spacing:-.045em;color:var(--red);border-top:2px solid var(--ink);padding-top:20px;margin-top:auto}
.page-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid var(--ink);font-size:10px;padding-top:10px;margin-top:auto}
.page-foot button{border:0;background:transparent;color:var(--red);font:800 10px Arial,Helvetica,sans-serif;letter-spacing:.04em;cursor:pointer;padding:4px 0;text-align:right}
.page-foot button:hover{text-decoration:underline}
.page-content{padding:clamp(28px,3.3vw,55px) 0 28px;flex:1}
.page-content>h3{font-size:clamp(33px,3vw,46px);letter-spacing:-.06em;line-height:1;margin:0 0 22px}
.column-copy{font-size:clamp(16px,1.32vw,19px);line-height:1.45;columns:2;column-gap:25px;border-bottom:1px solid var(--ink);padding-bottom:16px;margin-bottom:22px}
.column-copy p{margin:0 0 13px;break-inside:avoid}
.fact-row{display:grid;grid-template-columns:42px 1fr;gap:12px;border-bottom:1px solid #b8ad9d;padding:14px 0}
.fact-row>span{font:800 12px Arial,Helvetica,sans-serif;color:var(--red)}
.fact-row strong{font-size:21px;letter-spacing:-.04em}
.fact-row p{font-size:15px;line-height:1.35;margin:5px 0 0}
.project-story{border-top:2px solid var(--ink);padding:13px 0 20px;margin-top:13px}
.project-story>span,.project-story small{font-size:10px;color:var(--red)}
.project-story h3{font-size:clamp(27px,2.7vw,40px);line-height:1;letter-spacing:-.055em;margin:10px 0}
.project-story p{font-size:clamp(15px,1.2vw,17px);line-height:1.4;margin:0 0 12px}
.project-story small{display:block;color:var(--ink);font-weight:800;line-height:1.35}
.projects-right{padding-top:clamp(20px,2vw,35px)}
.projects-right .project-story:first-child{margin-top:0}
.editor-note{border:2px solid var(--ink);padding:16px;margin-top:18px;transform:rotate(-1deg);background:#eee4d1}
.editor-note>span{font-size:10px;color:var(--red)}
.editor-note p{font-size:15px;line-height:1.4;margin:9px 0 0}
.method-block{border-top:2px solid var(--ink);padding-top:14px;margin-top:16px}
.method-block>span{font-size:11px;color:var(--red)}
.method-block h3{font-size:clamp(25px,2.4vw,36px);letter-spacing:-.05em;line-height:1;margin:13px 0 8px}
.method-block p{font-size:clamp(15px,1.25vw,18px);line-height:1.35;margin:0 0 15px}
.feature-method{margin:0}
.skills-title{font-size:clamp(28px,2.5vw,37px)!important;border-top:2px solid var(--ink);padding-top:22px;margin-top:34px!important}
.skill-list{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}
.skill-list>div{border-top:1px solid #afa495;padding:12px 0}
.skill-list span{font-size:11px;color:var(--red);display:block;margin-bottom:7px}
.skill-list strong{font-size:19px;letter-spacing:-.045em}
.skill-list p{font-size:14px;line-height:1.35;margin:6px 0 0}
.contact-statement{font-size:clamp(25px,2.4vw,37px);font-weight:700;letter-spacing:-.05em;line-height:1.14;margin-top:auto;border-top:2px solid var(--ink);padding:20px 0 30px}
.contact-page{background:#f0e6d2}
.contact-kicker{font-size:11px;color:var(--red)}
.contact-page .page-content>h3{font-size:clamp(42px,4.5vw,70px);margin-top:20px}
.contact-page .page-content>p{font-size:clamp(18px,1.55vw,23px);line-height:1.3;max-width:500px}
.whatsapp-button{display:flex;justify-content:space-between;align-items:center;gap:16px;background:var(--red);color:#fff;border:2px solid var(--ink);box-shadow:7px 7px 0 var(--ink);padding:19px;text-decoration:none;font:800 14px Arial,Helvetica,sans-serif;margin:32px 7px 25px 0;transition:transform .2s,box-shadow .2s}
.whatsapp-button:hover{transform:translate(4px,4px);box-shadow:3px 3px 0 var(--ink)}
.whatsapp-button span{font-size:24px}
.phone-line{display:flex;justify-content:space-between;gap:16px;align-items:center;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:15px 0}
.phone-line span{font-size:11px}
.phone-line strong{font-size:clamp(17px,2vw,26px);white-space:nowrap}
.contact-note{font-size:15px!important;font-style:italic;margin-top:22px}
.front-sheet{position:absolute;inset:0;z-index:3;background:var(--paper);border:2px solid var(--ink);backface-visibility:hidden;transform-origin:left center;transform:rotateY(0);transition:transform .95s cubic-bezier(.2,.7,.18,1),opacity .2s .65s;display:flex;flex-direction:column;padding:clamp(30px,4vw,65px);box-shadow:13px 10px 25px #0004}
.reader.open .front-sheet{transform:rotateY(-150deg);opacity:0;pointer-events:none}
.sheet-top{font-size:12px;border-bottom:4px double var(--ink);padding-bottom:12px}
.sheet-title{font:900 clamp(110px,20vw,310px)/.82 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.045em;margin:auto 0}
.sheet-bottom{font-size:15px;border-top:2px solid var(--ink);padding-top:18px;display:flex;justify-content:space-between}
.reader-hint{color:#d5c9b9;font-size:10px;text-align:center;padding-top:12px}
.intro{position:fixed;inset:0;z-index:100;background:var(--red);color:var(--paper);display:grid;place-items:center;padding:20px;transition:transform .7s cubic-bezier(.65,0,.25,1)}
.intro.leave{transform:translateY(-105%);pointer-events:none}
.intro-sheet{width:min(580px,100%);border-top:2px solid currentColor;border-bottom:2px solid currentColor;padding:17px 0}
.intro-sheet>span{font-size:11px;display:block}
.intro-sheet strong{display:block;font:900 clamp(80px,15vw,170px)/1 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.05em;margin:20px 0}
.intro-sheet strong span{color:var(--ink)}
.intro-sheet i{display:block;width:0;height:5px;background:var(--paper);margin-top:14px;animation:load 1s ease-out forwards}
@keyframes load{to{width:100%}}
@media(max-width:1100px){.cover-lead h2{font-size:clamp(55px,6.2vw,84px)}.portrait img{max-height:500px}.column-copy{columns:1}.page-headline{font-size:clamp(47px,5vw,64px)}}
@media(max-width:760px){.reader-frame{width:calc(100vw - 22px);height:calc(100dvh - 20px)}.reader-toolbar{padding-bottom:8px}.reader-toolbar>span{font-size:9px}.close-button{font-size:10px;padding:10px}.reader-hint{display:none}.book{transform:translateY(26px) rotateX(6deg) scale(.9)}.book-pages{overflow-y:auto;overscroll-behavior:contain}.edition-panel{display:block;height:auto}.page{overflow:visible;padding:22px;box-shadow:none}.page-left{border-right:0;border-bottom:4px double var(--ink)}.page-right{min-height:50vh}.page-headline{font-size:clamp(56px,11vw,82px)}.page-lead{font-size:21px}.page-quote,.contact-statement{margin-top:18px}.page-foot{margin-top:30px}.page-content{padding-top:25px}.column-copy{columns:2}.front-sheet{padding:28px}.sheet-title{font-size:clamp(105px,23vw,200px)}}
@media(max-width:700px){.cover{padding:0 20px}.edition-line span:nth-child(2),.cover-rule span:last-child{display:none}.masthead{font-size:clamp(42px,8.4vw,61px);white-space:normal;text-align:left;line-height:.87;margin:15px 0}.mobile-only{display:block}.cover-grid{grid-template-columns:1fr}.identity-column{border-right:0;border-bottom:1px solid var(--ink);padding:20px 0 15px}.portrait{display:grid;grid-template-columns:minmax(0,40%) 1fr;gap:15px;align-items:end}.portrait img{height:clamp(170px,38vw,280px);min-height:0;max-height:none;box-shadow:5px 5px 0 var(--ink);object-position:center 23%}.portrait figcaption{display:block;margin:0 0 3px;font-size:10px;line-height:1.6}.portrait figcaption span{display:block}.identity-bottom{margin-top:15px}.identity-mark{font-size:45px}.identity-bottom p{font-size:14px}.contents-column{padding:21px 0 25px}.cover-lead{padding:22px 0}.cover-lead h2{font-size:clamp(56px,11vw,82px);margin:9px 0 13px}.cover-lead p{font-size:16px}.contents-menu a{grid-template-columns:45px 1fr 25px;padding:12px 0}.menu-label{font-size:clamp(26px,6vw,37px)}.cover-bottom{padding-top:16px}.cover-footer{padding:12px 0}.cover-footer span:last-child{display:none}}
@media(max-width:480px){.edition-line{font-size:10px}.masthead{font-size:clamp(40px,10.8vw,52px)}.cover-rule{font-size:10px}.cover-lead h2{font-size:clamp(55px,14vw,68px)}.cover-lead p{font-size:15px}.portrait{grid-template-columns:45% 1fr}.portrait img{height:170px}.identity-bottom{align-items:center}.identity-bottom p{font-size:13px}.contents-top,.cover-bottom{font-size:10px}.menu-label{font-size:28px}.page{padding:18px}.page-folio{font-size:9px}.page-headline{font-size:clamp(48px,13vw,66px)}.column-copy{columns:1}.skill-list{grid-template-columns:1fr 1fr;gap:0 12px}.skill-list strong{font-size:16px}.skill-list p{font-size:13px}.phone-line{display:block}.phone-line strong{display:block;margin-top:8px}.whatsapp-button{font-size:12px;padding:15px}.reader-toolbar>span{display:none}.reader-toolbar{justify-content:flex-end}.sheet-title{font-size:clamp(88px,23vw,130px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.intro{display:none}.reader{transition:none}.book,.front-sheet{transition:none}}
body.reading{overflow:hidden}
.reader.open .book.turning{transform:translateX(-9px) rotateY(-6deg) scale(.96)}
/* Keep the closing fold visible long enough to read as a return to the cover. */
.reader{transition:opacity .9s,visibility .9s}
.reader.open{transition:opacity .35s,visibility .35s}
.front-sheet{transition:transform .95s cubic-bezier(.2,.7,.18,1),opacity .12s 0s}
.reader.open .front-sheet{transition:transform .95s cubic-bezier(.2,.7,.18,1),opacity .15s .72s}
@media(min-width:701px) and (max-height:850px){.cover-lead{padding:16px 0}.cover-lead h2{font-size:clamp(52px,5.4vw,82px);margin:8px 0 12px}.contents-menu a{padding:8px 6px 8px 0}.portrait img{max-height:460px}}
@media(prefers-reduced-motion:reduce){.reader,.reader.open,.book,.front-sheet,.reader.open .front-sheet{animation:none!important;transition:none!important}}

/* A two-stage paper fold: front cover turns, then the right leaf follows. */
.cover-lead h2{font-size:clamp(54px,6.45vw,100px)}
.cover-lead p{font-size:clamp(16px,1.3vw,19px);line-height:1.33;max-width:630px}
.reader{perspective:2200px;transition:opacity .28s,visibility .28s}
.reader.open,.reader.closing{visibility:visible;opacity:1}
.reader.closing{pointer-events:none;transition:none}
.book{transform:translateX(7%) translateY(38px) rotateX(13deg) rotateY(-24deg) scale(.68);transform-origin:center center;transition:transform 1.25s cubic-bezier(.16,.72,.16,1);filter:drop-shadow(22px 32px 22px #0009)}
.reader.open .book{transform:translateX(0) translateY(0) rotateX(0) rotateY(0) scale(1)}
.book-pages:after{content:"";position:absolute;top:0;bottom:0;left:calc(50% - 11px);width:22px;background:linear-gradient(90deg,transparent,#1c1a172e 44%,#1c1a1740 50%,#fff8 58%,transparent);pointer-events:none;z-index:2}
.front-sheet{display:block;padding:0;transform-style:preserve-3d;backface-visibility:visible;transform-origin:left center;transition:transform 1.2s cubic-bezier(.18,.76,.17,1),opacity .08s 0s;box-shadow:18px 13px 30px #0007}
.reader.open .front-sheet{transform:rotateY(-172deg) translateZ(3px);opacity:0;transition:transform 1.25s cubic-bezier(.16,.76,.14,1),opacity .1s 1.14s}
.sheet-face,.sheet-reverse{position:absolute;inset:0;display:flex;flex-direction:column;padding:clamp(30px,4vw,65px);background:var(--paper);backface-visibility:hidden;-webkit-backface-visibility:hidden}
.sheet-face:after{content:"";position:absolute;right:0;top:0;bottom:0;width:35px;background:linear-gradient(90deg,transparent,#1c1a1736);pointer-events:none}
.sheet-reverse{transform:rotateY(180deg);background:#e9dfca;border:2px solid var(--ink);box-shadow:inset -28px 0 35px -25px #0006}
.sheet-reverse>span,.sheet-reverse p,.fold-back span,.fold-back small{font:800 12px Arial,Helvetica,sans-serif;letter-spacing:.04em}
.sheet-reverse>span{border-bottom:4px double var(--ink);padding-bottom:14px}
.sheet-reverse strong{font:900 clamp(72px,10vw,150px)/.9 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.035em;margin:auto 0;color:var(--red)}
.sheet-reverse p{border-top:2px solid var(--ink);padding-top:15px;margin:0;max-width:350px;line-height:1.35}
.fold-sheet{position:absolute;inset:0 0 0 50%;z-index:2;transform-origin:left center;transform-style:preserve-3d;transform:rotateY(0);background:#ede4d4;border:2px solid var(--ink);box-shadow:10px 8px 19px #0005;transition:transform 1.1s cubic-bezier(.2,.7,.2,1),opacity .08s 0s}
.reader.open .fold-sheet{transform:rotateY(-160deg);opacity:0;transition:transform 1.05s .19s cubic-bezier(.17,.7,.17,1),opacity .1s 1.15s}
.fold-back{position:absolute;inset:0;display:flex;flex-direction:column;padding:clamp(22px,3vw,45px);transform:rotateY(180deg);backface-visibility:hidden;-webkit-backface-visibility:hidden;background:#eadcc3}
.fold-back span{border-bottom:2px solid var(--ink);padding-bottom:11px}
.fold-back strong{font:900 clamp(30px,5vw,72px)/.92 Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:-.02em;margin:auto 0}
.fold-back small{border-top:2px solid var(--ink);padding-top:11px}
.reader.open .book.turning{transform:translateX(-13px) rotateY(-9deg) rotateX(2deg) scale(.95)}
@media(max-width:760px){.book{transform:translateX(8%) translateY(25px) rotateY(-22deg) rotateX(9deg) scale(.72)}.sheet-reverse strong{font-size:clamp(53px,11vw,84px)}.fold-back strong{font-size:clamp(23px,5vw,38px)}.fold-back span,.fold-back small{font-size:9px}}
@media(max-width:700px){.cover-lead h2{font-size:clamp(53px,10.8vw,77px)}.cover-lead p{font-size:16px;line-height:1.35}.cover-lead{padding:20px 0}}
@media(max-width:480px){.cover-lead h2{font-size:clamp(51px,13.2vw,66px)}.sheet-reverse strong{font-size:clamp(44px,11vw,60px)}.sheet-reverse p{font-size:10px}.sheet-reverse>span{font-size:9px}.fold-back strong{font-size:22px}.fold-back span,.fold-back small{font-size:8px}}
@media(prefers-reduced-motion:reduce){.reader,.reader.open,.reader.closing,.book,.front-sheet,.reader.open .front-sheet,.fold-sheet,.reader.open .fold-sheet{transition:none!important;animation:none!important}}

/* Decorative folding sheets never block the actual newspaper pages. */
.front-sheet,.fold-sheet{pointer-events:none}
.page{scrollbar-width:thin;overscroll-behavior:contain;touch-action:pan-y}
@media(max-width:760px){
  .book-pages{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
  .reader.open .book{transform:translateX(0) translateY(0) rotateX(0) rotateY(0) scale(1)}
  .page{overflow:visible;touch-action:auto;padding:24px}
  .project-story p,.method-block p,.fact-row p,.editor-note p,.skill-list p,.column-copy p{font-size:16px;line-height:1.48}
}
@media(max-width:480px){.page{padding:20px}.project-story p,.method-block p,.fact-row p,.editor-note p,.skill-list p,.column-copy p{font-size:16px}}

/* An illustrated project index, set like a newspaper's culture pages. */
.works-panel .page{scroll-padding-top:20px}
.works-headline{font-size:clamp(49px,4.5vw,71px);margin-bottom:17px}
.works-headline em{font-size:.76em}
.works-lead{font-size:clamp(18px,1.55vw,23px);line-height:1.23;margin-bottom:30px}
.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 19px;margin:0 0 35px}
.work-grid-right{padding-top:24px}
.work-item{min-width:0;border-top:2px solid var(--ink);padding-top:9px;display:flex;flex-direction:column;align-items:flex-start}
.work-feature{grid-column:1/-1}
.work-image{width:100%;aspect-ratio:2.12;overflow:hidden;border:1px solid var(--ink);background:#dfd5c4;margin:0 0 13px}
.work-image img{width:100%;height:100%;object-fit:cover;object-position:center bottom;display:block;transition:transform .4s ease}
.work-item:hover .work-image img{transform:scale(1.035)}
.work-meta,.archive-folio{width:100%;display:flex;justify-content:space-between;gap:7px;font:800 10px/1.35 Arial,Helvetica,sans-serif;letter-spacing:.04em;color:var(--red)}
.work-meta span:last-child{color:var(--ink);white-space:nowrap}
.work-item h3{font-size:clamp(23px,2.2vw,33px);line-height:1.02;letter-spacing:-.055em;margin:10px 0}
.work-feature h3{font-size:clamp(34px,3vw,45px)}
.work-item p{font-size:15px;line-height:1.4;margin:0 0 15px;max-width:570px}
.work-link{display:inline-flex;align-items:center;gap:17px;border:1px solid var(--ink);padding:9px 11px;font:800 11px/1.2 Arial,Helvetica,sans-serif;letter-spacing:.025em;text-decoration:none;background:var(--paper);margin-top:auto;box-shadow:3px 3px 0 var(--ink);transition:background .2s,color .2s,transform .2s,box-shadow .2s}
.work-link span{font-size:18px;font-weight:400;line-height:.7}
.work-link:hover,.work-link:focus-visible{background:var(--red);color:#fff;transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}
.private-archive{border-top:7px double var(--ink);padding:17px 0 25px;margin-top:30px}
.archive-folio{color:var(--ink)}
.private-archive h3{font-size:clamp(38px,3.7vw,55px);letter-spacing:-.065em;line-height:.98;margin:22px 0 14px}
.private-archive h3 em{color:var(--red)}
.private-archive>p{font-size:17px;line-height:1.4;margin:0 0 25px;max-width:520px}
.private-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.private-list>div{border-top:1px solid var(--ink);padding-top:10px}
.private-list span{display:block;font:800 10px/1.3 Arial,Helvetica,sans-serif;letter-spacing:.04em;color:var(--red);margin-bottom:10px}
.private-list strong{display:block;font-size:23px;line-height:1.05;letter-spacing:-.05em}
.private-list p{font-size:15px;line-height:1.38;margin:9px 0 0}
@media(max-width:1050px){.work-grid{grid-template-columns:1fr}.work-feature{grid-column:auto}.work-item p{font-size:16px}}
@media(max-width:760px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 18px}.work-feature{grid-column:1/-1}.work-grid-right{padding-top:26px}.works-panel .page-left{border-bottom:7px double var(--ink)}.work-item h3{font-size:26px}.work-item p,.private-list p{font-size:16px}}
@media(max-width:600px){.work-grid{grid-template-columns:1fr;gap:31px}.work-feature{grid-column:auto}.work-image{aspect-ratio:2.12}.work-item h3{font-size:30px}.work-item p{font-size:16px}.private-list{grid-template-columns:1fr 1fr}.works-headline{font-size:clamp(45px,10vw,65px)}}
@media(max-width:390px){.private-list{grid-template-columns:1fr}.work-meta{font-size:9px}}
@media(prefers-reduced-motion:reduce){.work-image img{transition:none}}
