/* A connected editorial journey. Native scrolling, real links, deliberate movement. */
:root{--experience-ease:cubic-bezier(.22,.68,.18,1);--header-height:82px}html{scroll-padding-top:110px}body{overflow-x:clip}a,button,input{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #a23d31;outline-offset:6px}::selection{background:#622738;color:#f4eee5}.folio-header{position:sticky;top:0;z-index:40;min-height:var(--header-height);background:var(--paper);margin:0;padding-left:var(--gutter);padding-right:var(--gutter);border-bottom:1px solid #ab928c70;transition:box-shadow .4s}.is-scrolled .folio-header{box-shadow:0 8px 30px #3a142008}.reading-progress{position:fixed;top:0;left:0;height:2px;width:100%;transform:scaleX(0);transform-origin:left;background:var(--accent);z-index:45;pointer-events:none}.folio-index-toggle{display:flex;align-items:center;gap:18px;min-height:44px;border:0;background:none;color:inherit;font:inherit;cursor:pointer}.folio-index-toggle span{font:26px var(--serif)}.micro-label{font:500 10px/1.5 "DM Sans",sans-serif;letter-spacing:.16em;text-transform:uppercase}.case-reading-nav{top:var(--header-height);z-index:30}.case-reading-nav~section,.case-reading-nav~figure{scroll-margin-top:160px}
.immersive-opening{padding-top:30px}.opening-topline{display:flex;justify-content:space-between;align-items:center;gap:20px}.opening-topline .opening-eyebrow{margin:0;font-size:10px;letter-spacing:.16em}.opening-topline>span{font:10px/1.5 "DM Sans",sans-serif;letter-spacing:.12em;color:var(--muted)}.immersive-opening h1{font-size:13vw;letter-spacing:-.067em;margin:30px 0 25px;line-height:.88;animation:none}.immersive-opening .opening-spread{grid-template-columns:minmax(0,1.8fr) minmax(250px,.85fr);gap:5%;align-items:stretch;animation:none}.immersive-opening .staircase{padding:0}.immersive-opening .staircase .art-open{background:#e5d8c2}.immersive-opening .staircase img{aspect-ratio:1.65;object-fit:cover}.immersive-opening .opening-copy{display:flex;grid-column:auto;flex-direction:column;padding:8px 0 0;gap:0}.immersive-opening .between-line{font:400 clamp(30px,3.5vw,62px)/1.05 var(--serif);letter-spacing:-.025em;margin:26px 0 24px;max-width:500px}.immersive-opening .between-line br{display:none}.immersive-opening .opening-statement{padding:0;margin-top:auto}.immersive-opening .opening-statement>p{font:400 clamp(15px,1.22vw,18px)/1.65 "DM Sans",sans-serif;color:var(--muted);max-width:360px;margin:0 0 20px}.immersive-opening .opening-statement .editorial-link{font-size:clamp(18px,1.65vw,25px)}.immersive-opening .opening-statement .resume-link{font-size:17px;border:0;margin-top:7px}.opening-coordinate{display:block;padding:32px 0 0;font:9px/1.6 "DM Sans",sans-serif;letter-spacing:.13em;color:var(--muted)}.opening-foot{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);margin-top:25px;padding:5px 0 14px;font:9px/1.5 "DM Sans",sans-serif;letter-spacing:.15em}.opening-foot>a{display:grid;place-content:center;width:44px;height:44px;font:30px var(--serif);text-decoration:none}
.case-journey{padding:100px var(--gutter) 55px;scroll-margin-top:70px}.case-journey>.chapter-label>a{color:inherit;text-decoration:none}.case-journey>h2{font:400 clamp(60px,7.8vw,140px)/.98 var(--serif);letter-spacing:-.045em;margin:45px 0 60px}.journey-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;align-items:start}.journey-gallery{position:sticky;top:calc(var(--header-height) + 50px);height:min(65vh,630px);min-height:380px;overflow:hidden;background:#e6d9c4}.journey-image{position:absolute;inset:0;opacity:0;transition:opacity .65s var(--experience-ease);pointer-events:none}.journey-image.is-active{opacity:1;z-index:1}.journey-image img{width:100%;height:calc(100% - 49px);object-fit:cover;transform:scale(1.05);transition:transform 1.5s var(--experience-ease)}.journey-image.is-active img{transform:scale(1)}.journey-image>div{height:49px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 20px;background:var(--ink);color:var(--paper);font:9px/1.5 "DM Sans",sans-serif;letter-spacing:.12em}.journey-chapter{min-height:72vh;display:flex;align-items:center;border-top:1px solid var(--line);padding:50px 0}.journey-chapter:last-child{border-bottom:1px solid var(--line)}.journey-link{display:block;width:100%;color:var(--ink);text-decoration:none}.journey-meta{display:flex;align-items:center;justify-content:space-between;gap:20px;font:11px/1.6 "DM Sans",sans-serif;letter-spacing:.11em}.journey-arrow{display:grid;place-content:center;width:48px;height:48px;border:1px solid var(--line);border-radius:50%;font:28px var(--serif);transition:transform .4s,background .4s,color .4s}.journey-link:hover .journey-arrow,.journey-link:focus-visible .journey-arrow{transform:rotate(45deg);background:var(--ink);color:var(--paper)}.journey-chapter h3{font:400 clamp(38px,4.7vw,76px)/1.04 var(--serif);letter-spacing:-.03em;margin:30px 0 22px}.journey-chapter p{font:16px/1.75 "DM Sans",sans-serif;max-width:470px;color:var(--muted);margin:0}.journey-proof{display:flex;gap:25px;align-items:center;padding:32px 0}.journey-proof strong{font:400 50px/1 var(--serif);letter-spacing:-.03em}.journey-proof>span{max-width:170px;font:12px/1.5 "DM Sans",sans-serif;color:var(--muted)}.journey-cta{display:flex;justify-content:space-between;width:100%;border-bottom:1px solid var(--line);padding:15px 0;font:21px/1.25 var(--serif)}.journey-mobile-art{display:none}.journey-source{margin:35px 0 0;font:12px/1.7 "DM Sans",sans-serif;color:var(--muted);max-width:680px}
.index-dialog{max-width:none;max-height:none;width:100%;height:100dvh;margin:0;border:0;padding:0;background:var(--ink);color:var(--paper);overflow:auto}.index-dialog::backdrop{background:var(--ink)}.index-dialog[open]{display:flex;flex-direction:column}.index-top{display:flex;align-items:center;justify-content:space-between;padding:20px var(--gutter);border-bottom:1px solid #a9858260;min-height:82px}.index-top>a{font:20px var(--serif);text-decoration:none;letter-spacing:.07em}.index-close{border:0;background:none;color:inherit;min-height:44px;display:flex;align-items:center;gap:18px;font:18px var(--serif);cursor:pointer}.index-close span{font-size:32px}.index-body{flex:1;display:grid;grid-template-columns:1fr 1.2fr;gap:9%;padding:45px var(--gutter);align-items:center}.index-visual{position:relative;min-width:0}.index-visual img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}.index-visual p{font:11px/1.6 "DM Sans",sans-serif;letter-spacing:.08em;color:#d8c3b9;margin:18px 0 0}.index-main>a{display:flex;align-items:baseline;gap:24px;text-decoration:none;border-bottom:1px solid #a9858260;padding:16px 0;font:400 clamp(33px,4.6vw,76px)/1.1 var(--serif);letter-spacing:-.025em;transition:color .3s,padding .3s}.index-main>a>span{order:-1;font:10px "DM Sans",sans-serif;letter-spacing:.1em;color:#c6a99c}.index-main>a:hover,.index-main>a:focus-visible,.index-main>a[aria-current]{color:#e0b59c;padding-left:10px}.index-main .menu-audiences{font-size:13px;line-height:1.7;gap:9px 20px;margin-top:15px;padding-top:20px}.index-main .menu-audiences>span{color:#c6a99c}.index-main .menu-audiences a{padding:6px 0;text-underline-offset:5px}.index-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:0 var(--gutter);padding:20px 0;border-top:1px solid #a9858260;font-size:12px;color:#d8c3b9}.index-bottom .motion-control{color:inherit;border-color:#a9858260}.index-bottom>a{font:20px var(--serif);text-decoration:none}body.index-open{overflow:hidden}
.next-case{margin:70px var(--gutter);padding:40px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.next-case>a{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:8%;text-decoration:none}.next-case h2{font:400 clamp(35px,5vw,82px)/1.05 var(--serif);margin:25px 0;letter-spacing:-.03em}.next-case img{display:block;width:100%;aspect-ratio:2/1;object-fit:cover}.next-case .next-case-label{display:flex;gap:30px;align-items:center;font:22px var(--serif)}.next-case:hover .next-case-label{color:var(--accent)}
.art-visible .art-open{animation:none}.art-open img{transition:transform 1.2s var(--experience-ease),opacity .3s}.art-dialog{height:min(900px,94dvh);overflow:hidden}.art-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}.art-dialog-image{position:relative;min-height:0}.art-dialog-image img{height:100%;min-height:0;max-height:100%;object-fit:contain}.art-dialog-image.is-loading:after{content:'Loading artwork…';position:absolute;bottom:15px;left:15px;padding:8px 12px;background:var(--paper);font:12px "DM Sans",sans-serif}.art-dialog-image.has-error:after{content:'This artwork could not load. Try the next one.';position:absolute;inset:auto 10px 10px;background:var(--paper);padding:15px;font:14px "DM Sans",sans-serif}.art-dialog-bottom{min-width:0}.art-dialog-bottom>div:first-child{min-width:0}.art-navigation{flex-shrink:0}.motion-paused::view-transition-old(root),.motion-paused::view-transition-new(root){animation:none!important}.art-viewer-open .flow-image,.index-open .flow-image{filter:none}.force-reading{min-height:560px}
@media(prefers-reduced-motion:no-preference){.index-dialog[open] .index-main{animation:experience-arrive .5s var(--experience-ease) both}.index-dialog[open] .index-visual{animation:experience-arrive .65s var(--experience-ease) both}@keyframes experience-arrive{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}}
@media(max-width:1000px){.immersive-opening .opening-spread{grid-template-columns:1.5fr 1fr;gap:4%}.immersive-opening .between-line{font-size:36px}.opening-coordinate{display:none}.index-body{gap:6%;grid-template-columns:.8fr 1.2fr}.journey-layout{gap:6%}.journey-gallery{height:50vh;min-height:340px}.journey-proof{gap:18px}.journey-proof strong{font-size:42px}}
@media(max-width:760px){:root{--header-height:74px}.folio-header{min-height:74px}.folio-index-toggle{gap:10px;font-size:17px}.folio-index-toggle span{font-size:23px}.opening-topline>span{display:none}.immersive-opening{padding-top:28px}.immersive-opening h1{font-size:19.8vw;line-height:.88;margin:30px 0;white-space:normal}.immersive-opening .opening-spread{grid-template-columns:1fr;gap:27px}.immersive-opening .staircase img{aspect-ratio:1.5}.immersive-opening .staircase .art-invitation{display:flex;font-size:11px}.immersive-opening .staircase figcaption{font-size:11px}.immersive-opening .opening-copy{padding:0}.immersive-opening .between-line{font-size:39px;max-width:440px;margin:16px 0 22px}.immersive-opening .opening-statement>p{font-size:16px;max-width:500px;margin-bottom:18px}.immersive-opening .opening-statement .editorial-link{font-size:22px}.immersive-opening .opening-statement .resume-link{font-size:19px}.opening-foot>span:last-child{display:none}.opening-foot{margin-top:20px;font-size:8px}.case-journey{padding:65px var(--gutter) 30px}.case-journey>.chapter-label{font-size:8px;gap:15px;flex-wrap:wrap}.case-journey>h2{font-size:14vw;margin:32px 0 40px}.journey-layout{grid-template-columns:1fr}.journey-gallery{display:none}.journey-chapter{min-height:0;padding:28px 0 40px}.journey-meta{font-size:10px}.journey-mobile-art{display:block;width:100%;height:auto;aspect-ratio:1.8;object-fit:cover;margin:22px 0}.journey-chapter h3{font-size:43px;margin:25px 0 20px}.journey-chapter p{font-size:15px}.journey-proof{padding:25px 0}.journey-proof strong{font-size:46px}.journey-arrow{height:42px;width:42px;font-size:24px}.journey-source{font-size:11px}.index-top{min-height:74px;padding-top:12px;padding-bottom:12px}.index-top>a{font-size:17px}.index-body{display:block;padding-top:20px;padding-bottom:28px}.index-visual{display:none}.index-main>a{font-size:clamp(28px,8.7vw,52px);padding:17px 0;gap:20px}.index-main .menu-audiences{font-size:14px;gap:8px 22px}.index-bottom{flex-wrap:wrap;gap:14px;padding:15px 0}.index-bottom>span{display:none}.index-bottom>a{font-size:18px}.next-case{margin-top:45px;margin-bottom:45px}.next-case>a{grid-template-columns:1fr;gap:25px}.next-case h2{font-size:40px}.next-case img{order:-1}.case-reading-nav{gap:15px}.case-reading-nav a{font-size:11px}.art-dialog{height:94dvh}.art-dialog-image img{height:100%}.art-dialog h2{font-size:25px}.art-series{max-width:220px}.force-reading{min-height:0}.folio-footer{gap:20px}}
@media(max-height:500px){.art-dialog-top{margin-bottom:5px}.art-dialog-bottom{padding-top:8px}.art-dialog h2{font-size:21px;margin:3px 0}.art-series,.art-count{font-size:10px}.art-related{font-size:12px}.index-body{padding-top:20px;padding-bottom:20px}.index-main>a{font-size:30px;padding:10px 0}}
.handoff-study{background:var(--ink);color:var(--paper);padding:65px var(--gutter) 60px}.handoff-study .study-heading{color:#d8c3b9;border-color:#a9858260}.handoff-intro{display:grid;grid-template-columns:1.2fr 1fr;align-items:end;gap:10%;margin:55px 0 60px}.handoff-intro h2{font:400 clamp(45px,6.5vw,100px)/1.02 var(--serif);letter-spacing:-.04em;margin:0}.handoff-intro>p{font:17px/1.75 "DM Sans",sans-serif;color:#d8c3b9;max-width:400px;margin:0}.handoff-workbench{display:grid;grid-template-columns:1fr 1.1fr;gap:9%}.handoff-controls h3{font:400 26px/1.3 var(--serif);margin:0 0 20px}.handoff-controls h3>span{font:11px "DM Sans",sans-serif;letter-spacing:.1em;color:#cbb0a4;margin-right:14px}.constraint-options{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:40px}.constraint-options button{display:flex;align-items:center;gap:16px;padding:13px 16px;min-height:48px;border:1px solid #a9858280;background:none;color:inherit;font:13px/1.4 "DM Sans",sans-serif;cursor:pointer}.constraint-options button span{font-size:20px;transition:transform .3s}.constraint-options button[aria-pressed=true]{background:#e3c2a8;color:var(--ink);border-color:#e3c2a8}.constraint-options button[aria-pressed=true] span{transform:rotate(45deg)}.response-options{display:grid}.response-options button{display:grid;grid-template-columns:38px 1fr;text-align:left;align-items:center;min-height:76px;gap:12px;border:0;border-top:1px solid #a9858260;color:#d8c3b9;background:none;padding:18px 0;font:23px/1.25 var(--serif);cursor:pointer;transition:color .3s,padding .3s}.response-options button>span{font:10px "DM Sans",sans-serif;letter-spacing:.1em}.response-options button:last-child{border-bottom:1px solid #a9858260}.response-options button[aria-pressed=true],.response-options button:hover{color:#f5e9dc;padding-left:10px}.handoff-result{border:1px solid #a9858270;padding:28px 30px;background:#ffffff04}.scenario-view{display:flex;justify-content:space-between;gap:15px;align-items:center}.scenario-view>span{font:9px/1.6 "DM Sans",sans-serif;letter-spacing:.14em;color:#cbb0a4}.scenario-view>div{display:flex;gap:10px}.scenario-view button{min-height:44px;padding:8px 0;border:0;border-bottom:1px solid transparent;background:none;color:#cbb0a4;font:11px/1.5 "DM Sans",sans-serif;cursor:pointer}.scenario-view button[aria-pressed=true]{border-color:#e3c2a8;color:#f5e9dc}.handoff-path{margin:20px 0 28px}.handoff-node{position:relative;display:flex;align-items:center;gap:17px;min-height:94px;padding:17px 0 17px 7px}.handoff-node:not(:first-child):before{content:'';position:absolute;left:23px;top:-12px;width:1px;height:27px;background:#cbb0a4}.node-number{display:grid;place-content:center;width:34px;height:34px;flex-shrink:0;border:1px solid #a9858280;border-radius:50%;font:10px "DM Sans",sans-serif;transition:background .4s,color .4s}.handoff-node>div{flex:1}.handoff-node strong{display:block;font:400 28px/1.2 var(--serif)}.dependency-status{display:block;margin-top:7px;font:11px/1.5 "DM Sans",sans-serif;color:#cbb0a4}.dependency-mark{font:28px var(--serif)}.handoff-node[data-state=unresolved] .node-number{border-style:dashed;color:#e3c2a8}.handoff-node[data-state=addressed] .node-number{background:#e3c2a8;color:var(--ink);border-color:#e3c2a8}.handoff-node[data-state=addressed] .dependency-status{color:#f3dac3}.handoff-node[data-state=unresolved]:before{background:linear-gradient(to bottom,#cbb0a4 35%,transparent 35%,transparent 65%,#cbb0a4 65%)}.handoff-destination{display:flex;gap:20px;align-items:center;margin:5px 0 0 14px;font:19px var(--serif);color:#cbb0a4}.handoff-destination>span{font-size:30px}.decision-reading{border-top:1px solid #a9858260;padding-top:24px;min-height:250px}.decision-reading>.micro-label{color:#cbb0a4;font-size:9px}.decision-reading h3{font:400 32px/1.12 var(--serif);margin:17px 0}.decision-reading p{font:14px/1.75 "DM Sans",sans-serif;color:#d8c3b9;margin:0}.scenario-reset{font:16px var(--serif);color:#e3c2a8;background:none;border:0;border-bottom:1px solid #a9858280;padding:12px 0;margin-top:20px;cursor:pointer;min-height:44px}.scenario-note{font:12px/1.75 "DM Sans",sans-serif;color:#cbb0a4;max-width:830px;margin:35px 0 0}.handoff-study button:focus-visible{outline-color:#e3c2a8}
@media(max-width:1000px){.handoff-workbench{gap:5%}.handoff-result{padding:22px}.scenario-view{align-items:flex-start;flex-direction:column;gap:3px}.response-options button{font-size:22px}}
@media(max-width:760px){.handoff-study{padding:40px var(--gutter)}.handoff-intro{grid-template-columns:1fr;gap:25px;margin:35px 0 40px}.handoff-intro h2{font-size:12vw}.handoff-intro>p{font-size:16px}.handoff-workbench{grid-template-columns:1fr;gap:35px}.handoff-controls h3{font-size:25px}.constraint-options{gap:8px;margin-bottom:35px}.constraint-options button{font-size:12px}.response-options button{min-height:70px}.handoff-result{padding:24px 20px}.scenario-view{flex-direction:row;align-items:center;gap:15px}.scenario-view>span{max-width:80px;font-size:8px}.scenario-view button{font-size:10px}.decision-reading{min-height:0}.decision-reading h3{font-size:30px}.handoff-node strong{font-size:27px}.dependency-status{font-size:11px}.scenario-note{font-size:11px}}
.index-visual img,.next-case img{height:auto}.index-top,.index-bottom{flex-shrink:0}.index-body{min-height:0}
@media(min-width:761px){.index-visual img{max-height:calc(100dvh - 230px);object-fit:cover}.index-main>a{font-size:clamp(33px,min(4.6vw,6.5vh),76px)}}

.scenario-view button:disabled{opacity:.5;cursor:default}
@media(prefers-reduced-motion:no-preference){.journey-image.is-active img,[data-case-reading] .page-art img{view-transition-name:operating-artwork}::view-transition-group(operating-artwork){animation-duration:.55s;animation-timing-function:var(--experience-ease)}}
@media(max-width:760px) and (prefers-reduced-motion:no-preference){.journey-chapter.is-active .journey-mobile-art{view-transition-name:operating-artwork}}
.motion-paused .journey-image img,.motion-paused .journey-mobile-art,.motion-paused [data-case-reading] .page-art img{view-transition-name:none}.motion-paused::view-transition-group(operating-artwork){animation:none!important}
