@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600&display=swap');
:root{--ink:#142033;--paper:#f0ece3;--rust:#c37b49;--line:rgba(23,34,46,.16)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#f8f2e8;background:#101a2b;font-family:"DM Sans","Noto Sans SC",sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}h1,h2,h3,p{margin:0}.site-header{height:65px;position:fixed;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;padding:0 clamp(24px,4vw,72px);gap:65px;color:#fff;background:linear-gradient(180deg,rgba(6,16,29,.73),rgba(6,16,29,0));transition:color .3s,background .3s}.brand,.site-header .header-side{font-family:Georgia,serif}.brand{font-size:22px;letter-spacing:.05em}.site-header nav{display:flex;gap:32px}.site-header nav a{font-size:11px;letter-spacing:.17em;opacity:.72;padding:8px 0;border-bottom:1px solid transparent}.site-header nav a:hover,.site-header nav a.active{opacity:1;border-bottom-color:currentColor}.header-side{margin-left:auto;font-size:13px}.header-side span{margin-left:16px;color:#e9bb7c}.on-light .site-header{background:rgba(240,236,227,.93);color:var(--ink);box-shadow:0 1px 10px rgba(0,0,0,.04)}.scene{position:relative;background-size:cover;background-position:center}.eyebrow{display:block;font-size:11px;letter-spacing:.22em;font-weight:700;color:#7d776d}.eyebrow.light{color:#e8dfd1}.serif-dot{color:var(--rust)}.hero{height:min(900px,100svh);min-height:650px;background-image:linear-gradient(90deg,rgba(6,15,31,.24),transparent 65%),url('assets/night-fox.webp');overflow:hidden}.hero-content{position:absolute;left:clamp(26px,5vw,90px);top:23%}.hero h1{font-family:Georgia,serif;font-size:clamp(100px,12vw,190px);font-weight:400;letter-spacing:-.07em;line-height:1.05;margin-top:10px;text-transform:uppercase}.hero-content p{font-family:Georgia,"Noto Sans SC",serif;font-size:clamp(20px,2vw,30px);line-height:1.65;letter-spacing:.08em}.hero-map{position:absolute;right:7%;top:22%;width:31%;height:48%;pointer-events:none}.hero-map a{position:absolute;display:grid;grid-template-columns:16px 1fr;column-gap:8px;pointer-events:auto;text-shadow:0 2px 6px #071426}.hero-map a:nth-child(1){top:52%;left:40%}.hero-map a:nth-child(2){top:78%;left:4%}.hero-map a:nth-child(3){top:8%;left:0%}.hero-map a:nth-child(4){top:31%;left:74%}.hero-map strong{font-size:13px;letter-spacing:.15em;font-weight:600}.hero-map small{grid-column:2;font-size:11px;margin-top:4px;white-space:nowrap;font-family:Georgia,"Noto Sans SC",serif}.map-dot{width:7px;height:7px;border-radius:50%;background:#f2dfbf;margin-top:5px;box-shadow:0 0 13px #f2dfbf}.hero-map a:hover strong{text-decoration:underline}.hero-bottom{position:absolute;bottom:26px;left:clamp(26px,5vw,90px);right:clamp(26px,5vw,90px);display:flex;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.18em}.paper{color:var(--ink);background:var(--paper)}.work-section{padding:115px clamp(26px,5vw,90px) 70px}.section-head{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid var(--line);padding-bottom:40px}.section-head h2,.archive-section h2,.lab-section h2,.notes-section h2,.about-section h2{font:400 clamp(75px,9vw,145px)/1 Georgia,serif;letter-spacing:-.06em;margin-top:13px}.section-head p{font-family:Georgia,"Noto Sans SC",serif;font-size:18px;line-height:1.7;padding-bottom:12px}.work-row{min-height:150px;display:grid;grid-template-columns:7% 1fr 4% 32%;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding:14px 0}.work-num{font:30px Georgia,serif;color:#69717a}.work-copy h3{font-size:clamp(16px,1.5vw,23px);font-weight:600;letter-spacing:.07em}.work-copy p{font-size:14px;color:#68707a;margin-top:5px}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.tags span{font-size:10px;color:#7f8387;letter-spacing:.13em}.tags span+span:before{content:"·";margin-right:8px}.work-arrow{font-size:23px;color:#555}.work-image{height:120px;border-radius:2px;background-size:cover;background-position:center;filter:saturate(.8)}.thumb-night{background-image:url('assets/night-fox.webp')}.thumb-studio{background-image:url('assets/studio-fox.webp')}.thumb-sky{background-image:linear-gradient(30deg,rgba(23,38,54,.4),rgba(223,169,106,.12)),url('assets/night-fox.webp');background-position:60% 50%}.thumb-hunt{background-image:linear-gradient(30deg,rgba(30,17,15,.55),rgba(115,68,30,.18)),url('assets/studio-fox.webp');background-position:76% 50%}.thumb-noma{background-image:url('assets/studio-fox.webp');background-position:100% 75%}.section-footnote{font-size:12px;color:#777;margin-top:28px}.archive-section{min-height:700px;position:relative;overflow:hidden;background:#778a9b url('assets/night-fox.webp') center/cover}.archive-section:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,25,41,.83) 0%,rgba(12,25,41,.38) 54%,rgba(12,25,41,.12))}.archive-overlay{position:relative;padding:130px clamp(26px,5vw,90px);max-width:680px}.archive-overlay p{font:22px/1.6 Georgia,"Noto Sans SC",serif;margin-top:28px}.archive-years{display:flex;align-items:center;gap:18px;font-size:14px;letter-spacing:.2em;margin-top:70px}.year-line{width:125px;height:1px;background:#fff}.archive-pieces{position:absolute;right:5%;top:18%;width:30%;display:grid;gap:17px}.piece{min-height:120px;padding:24px;display:flex;flex-direction:column;justify-content:end;box-shadow:0 8px 35px #101b2a80;background:#1a2739bb;backdrop-filter:blur(5px);border:1px solid #ffffff44}.piece:nth-child(2){transform:translateX(-34px)}.piece:nth-child(3){transform:translateX(18px)}.piece span{font-size:10px;letter-spacing:.22em;opacity:.72}.piece strong{font:24px Georgia,"Noto Sans SC",serif;margin-top:8px}.lab-section{min-height:750px;background-image:linear-gradient(90deg,#071527 0%,rgba(7,21,39,.95) 26%,rgba(7,21,39,.35) 67%),url('assets/studio-fox.webp');background-position:center}.lab-content{padding:120px clamp(26px,5vw,90px);width:min(620px,55%)}.lab-content>p,.notes-panel>p{font:18px/1.6 Georgia,"Noto Sans SC",serif;margin-top:22px}.lab-index{margin-top:55px;border-top:1px solid #ffffff50}.lab-index>div{display:grid;grid-template-columns:50px 1fr;gap:4px 14px;padding:18px 0;border-bottom:1px solid #ffffff43}.lab-index span{font:14px Georgia,serif;color:#cda777;grid-row:span 2}.lab-index strong{font-size:13px;letter-spacing:.14em}.lab-index small{font-size:12px;color:#c4c6ca;grid-column:2}.scene-caption{position:absolute;right:5%;bottom:25px;font-size:10px;letter-spacing:.2em}.notes-section{min-height:690px;background-image:linear-gradient(90deg,#0b1521 0%,rgba(11,21,33,.95) 35%,rgba(11,21,33,.05) 85%),url('assets/studio-fox.webp');background-position:center 62%}.notes-panel{padding:110px clamp(26px,5vw,90px);width:min(690px,60%)}.note-list{margin-top:50px;border-top:1px solid #ffffff55}.note-list article{display:grid;grid-template-columns:45px 1fr;gap:15px;padding:19px 0;border-bottom:1px solid #ffffff4a}.note-list article>span{font:19px Georgia,serif;color:#cda777}.note-list strong{display:block;font-weight:500;font-size:15px}.note-list small{display:block;font-size:12px;color:#b8bbbd;margin-top:8px}.notes-coming{display:block;margin-top:24px;font-size:12px;color:#c9b79d}.about-section{min-height:750px;display:grid;grid-template-columns:1fr 45%;align-items:center;gap:5%;padding:120px clamp(26px,5vw,90px)}.about-copy{max-width:600px}.about-copy h3{font-size:25px;font-weight:500;margin-top:35px}.about-copy h3 em{font:italic 22px Georgia,serif;color:#8b725d;margin-left:10px}.about-roles{font-size:11px!important;letter-spacing:.16em;color:#8a857e;margin-top:12px!important}.about-copy>p{font-size:16px;line-height:1.9;margin-top:22px}.about-links{display:flex;align-items:center;gap:25px;margin-top:36px}.about-links button{border:0;border-bottom:1px solid var(--ink);padding:9px 0;background:none;color:var(--ink);cursor:pointer}.about-links button span{margin-left:30px}.about-links>span{font-size:12px;color:#8a857e}.about-portrait{position:relative;text-align:center}.about-portrait img{display:block;width:min(100%,440px);margin:auto;mix-blend-mode:multiply;border-radius:2px}.about-portrait>span{position:absolute;right:0;top:35%;font:italic 20px/1.5 Georgia,serif;transform:rotate(-8deg);color:#544e49;text-align:left}footer{background:#0e1929;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:30px clamp(26px,5vw,90px);font-size:12px;letter-spacing:.08em}footer>a:first-child{font:22px Georgia,serif}
@media(max-width:800px){.site-header{height:auto;min-height:62px;padding:14px 20px;gap:15px;align-items:flex-start}.site-header nav{margin-left:auto;justify-content:flex-end;flex-wrap:wrap;gap:7px 16px;max-width:80%}.site-header nav a{font-size:10px;padding:4px 0}.header-side{display:none}.hero{height:100svh;min-height:620px;background-position:62% center}.hero-content{top:17%;left:26px}.hero h1{font-size:clamp(90px,18vw,140px)}.hero-content p{font-size:20px}.hero-map{right:auto;left:26px;top:auto;bottom:85px;width:80%;height:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.hero-map a{position:static!important}.hero-map small{display:none}.hero-bottom{left:26px;right:26px;font-size:9px}.hero-bottom span:nth-child(2){display:none}.work-section{padding-top:100px}.section-head h2,.archive-section h2,.lab-section h2,.notes-section h2,.about-section h2{font-size:76px}.section-head p{font-size:14px}.work-row{grid-template-columns:35px 1fr 90px;gap:10px;min-height:125px}.work-copy h3{font-size:14px}.work-copy p{font-size:12px}.work-num{font-size:22px}.work-arrow{display:none}.work-image{height:80px}.tags{margin-top:8px}.tags span{font-size:8px}.archive-section{min-height:720px}.archive-overlay{padding-top:115px}.archive-pieces{top:auto;bottom:30px;left:26px;right:26px;width:auto;grid-template-columns:repeat(3,1fr)}.piece{min-height:130px;padding:12px}.piece:nth-child(2),.piece:nth-child(3){transform:none}.piece strong{font-size:16px}.lab-section,.notes-section{background-position:62% center}.lab-content,.notes-panel{width:78%;padding-top:110px}.about-section{grid-template-columns:1fr 38%;gap:4%}.about-portrait>span{display:none}}
@media(max-width:560px){.hero{background-position:64% center}.hero-content{top:22%}.hero-content .eyebrow{font-size:9px}.hero-content p{font-size:17px}.hero-map{bottom:80px}.section-head{display:block}.section-head p{margin-top:15px}.work-row{grid-template-columns:30px 1fr;align-items:start;padding:18px 0}.work-image{grid-column:2;height:110px;width:100%;margin-top:8px}.work-copy h3{line-height:1.35}.archive-section{min-height:760px}.archive-pieces{grid-template-columns:1fr;gap:8px}.piece{min-height:72px}.piece strong{font-size:16px;margin-top:3px}.archive-overlay p{font-size:19px}.archive-years{margin-top:30px}.lab-section{background-position:58% center}.lab-content,.notes-panel{width:100%;padding:110px 26px;background:linear-gradient(90deg,#071527f2,#071527bb)}.notes-panel{background:linear-gradient(90deg,#071527f2,#07152799)}.lab-section,.notes-section{min-height:auto}.about-section{display:flex;flex-direction:column;align-items:stretch;gap:40px;padding-top:100px}.about-portrait img{width:min(100%,350px)}.about-links{flex-direction:column;align-items:start;gap:14px}footer{flex-wrap:wrap}footer span{order:3;width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Reference-aligned scene refinements */
.work-section{padding-top:88px}.work-row{min-height:112px;grid-template-columns:5% 1fr 3% 34%;padding:7px 0}.work-image{height:94px;background-image:url('assets/work-stories.webp');background-size:auto 500%;background-repeat:no-repeat;filter:none}.thumb-night{background-position:center 0%}.thumb-studio{background-position:center 25%}.thumb-sky{background-position:center 50%}.thumb-hunt{background-position:center 75%}.thumb-noma{background-position:center 100%}
.archive-section{background:#8492a0 url('assets/archive-desk.webp') center/cover}.archive-section:before{background:linear-gradient(90deg,rgba(22,36,49,.24),transparent 55%)}.archive-overlay{padding-top:90px;max-width:580px;text-shadow:0 1px 6px #25374966}.archive-overlay h2{font-size:clamp(70px,7vw,110px)}.archive-overlay p{font-size:19px}.archive-years{margin-top:34px}.archive-index{position:absolute;right:3.5%;top:10%;width:115px;color:#243144;background:#ecebe0b0;padding:18px 14px;backdrop-filter:blur(6px);box-shadow:0 8px 24px #33425225}.archive-index>div{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid #24314433;font-size:11px;letter-spacing:.12em}.archive-index>div:last-child{border:0}.archive-index span{color:#5e6772}.archive-note{position:absolute;right:13%;bottom:5%;background:#f4e9d6;color:#56606a;padding:26px 30px;transform:rotate(-7deg);box-shadow:0 8px 22px #26324140;font:italic 23px/1.1 Georgia,serif}.archive-note span{display:block;margin-top:13px;text-align:right}
.notes-section{background-image:linear-gradient(90deg,#081625 0%,rgba(8,22,37,.98) 31%,rgba(8,22,37,.18) 73%),url('assets/notes-window.webp');background-position:center}.notes-panel{width:min(680px,54%)}.note-list article{padding:16px 0}
.about-section{background:#f2efe8}.about-portrait img{mix-blend-mode:normal;width:min(100%,440px);border:0}.about-portrait>span{right:-2%;font-size:18px}.about-copy h2{margin-bottom:12px}
@media(max-width:800px){.work-row{grid-template-columns:35px 1fr 100px}.work-image{height:84px}.archive-section{background-position:55% center}.archive-index{right:20px;width:95px;top:16%}.archive-note{right:17%;bottom:3%;font-size:18px}.notes-panel{width:72%}.about-portrait img{width:100%}}
@media(max-width:560px){.work-row{grid-template-columns:30px 1fr}.work-image{height:110px;background-size:auto 500%;background-position-x:center}.archive-section{min-height:720px;background-position:58% center}.archive-overlay{padding-top:115px}.archive-overlay h2{font-size:63px}.archive-overlay p{font-size:16px}.archive-index{top:auto;bottom:20px;right:20px;width:100px}.archive-note{display:none}.notes-panel{width:100%}.about-portrait img{width:min(100%,350px)}}
.archive-overlay{color:#1b2a3e;text-shadow:none}.archive-overlay .eyebrow.light{color:#283b50}.archive-years .year-line{background:#1b2a3e}.archive-section:before{background:linear-gradient(90deg,rgba(205,214,217,.3),transparent 58%)}.contact-placeholder{border-bottom:1px solid var(--ink);padding:9px 0;letter-spacing:.1em;font-size:13px!important;color:var(--ink)!important}
.hero-content .hero-motto{display:flex;flex-direction:column;gap:7px;margin-top:18px;font-family:Georgia,"Noto Sans SC",serif;font-size:clamp(13px,1.05vw,17px);line-height:1.5;letter-spacing:.03em}.hero-motto span{display:block}.hero-motto span[lang="fr"]{font-style:italic;letter-spacing:.01em}.hero-map a:nth-child(2){top:78%;left:4%}.hero-bottom{justify-content:space-between}.header-side{font-size:16px;color:#e9bb7c}.header-side span{margin-left:0}
@media(max-width:800px){.hero-content .hero-motto{font-size:13px;max-width:78vw}.hero-map{display:block;left:auto;right:9%;bottom:18%;width:auto}.hero-map a{display:grid}.hero-map small{display:block}.hero-bottom{justify-content:space-between}}
@media(max-width:560px){.hero-content .hero-motto{font-size:12px;max-width:86vw}.hero-map{right:9%;bottom:19%}.hero-map small{font-size:10px}}
.hero-map a{top:78%;left:4%}.hero-bottom span:nth-child(2){position:absolute;left:50%;transform:translateX(-50%)}
.work-group-heading{display:flex;align-items:center;gap:18px;margin:34px 0 2px;padding-bottom:12px;border-bottom:1px solid var(--line);font-size:18px;font-weight:500;letter-spacing:.08em}.work-group-heading>span{font:18px Georgia,serif;color:#a17b5e}.work-group-heading small{font-size:10px;letter-spacing:.18em;color:#8e8b87}.work-row{color:var(--ink);transition:background .2s ease,transform .2s ease;padding-left:9px;padding-right:9px}.work-row:hover{background:#e5e0d6;transform:translateX(4px)}.work-row:focus-visible{outline:2px solid #9a673f;outline-offset:2px}.work-row:hover .work-arrow{transform:translate(2px,-2px)}.work-arrow{transition:transform .2s}.thumb-winters{background-image:url('assets/notes-window.webp');background-size:cover;background-position:70% 46%}.thumb-fashion{background-image:linear-gradient(90deg,rgba(44,22,20,.3),rgba(20,13,18,.15)),url('assets/studio-fox.webp');background-size:cover;background-position:80% center}
@media(max-width:560px){.work-group-heading{margin-top:28px}.work-row{padding-left:5px;padding-right:5px}.work-copy h3{overflow-wrap:anywhere}}
/* Page navigation: each top-level section is an independent view. */
html,body{height:100%;overflow:hidden}main{height:100dvh;overflow:hidden}main>section{height:100dvh;min-height:0;overflow-y:auto;overscroll-behavior:contain}main>section[hidden]{display:none!important}main>section:not([hidden]){animation:page-enter .32s ease both}.hero{height:100dvh;min-height:0;overflow:hidden}.work-section{height:100dvh;min-height:0}.archive-section,.lab-section,.notes-section,.about-section{height:100dvh;min-height:0}footer{display:none}@keyframes page-enter{from{opacity:.7}to{opacity:1}}
.work-image{background-size:cover;background-position:center}.thumb-night{background-image:url('assets/hunter.webp')}.thumb-sky{background-image:url('assets/film.webp')}.thumb-winters{background-image:url('assets/winters.webp')}.thumb-hunt{background-image:url('assets/signal.webp')}.thumb-noma{background-image:url('assets/noma-campaign.webp')}.thumb-studio{background-image:url('assets/noma-case.webp')}.thumb-fashion{background-image:url('assets/fashion.webp')}
@media(max-width:560px){.hero{height:100dvh;min-height:0}.work-image{background-size:cover}.archive-section,.lab-section,.notes-section,.about-section{height:100dvh;min-height:0}}
@media(prefers-reduced-motion:reduce){main>section:not([hidden]){animation:none}}
/* Shared case study template */
.case-page{background:#f1eee8;color:#172331}.case-shell{width:min(100%,1460px);margin:0 auto;padding:105px clamp(26px,5vw,90px) 55px}.case-back{display:inline-flex;align-items:center;font-size:12px;letter-spacing:.08em;color:#6d6b68;border-bottom:1px solid #9e9a93;padding-bottom:5px}.case-back:hover,.case-bottom>a:first-child:hover{color:#9a603e}.case-hero{display:grid;grid-template-columns:minmax(0,44%) minmax(0,56%);gap:5%;align-items:center;padding:43px 0 72px}.case-hero-copy{padding-right:8%}.case-hero-copy h1{font:400 clamp(50px,5.8vw,95px)/1.04 Georgia,serif;letter-spacing:-.055em;margin:26px 0 25px;overflow-wrap:anywhere}.case-summary{font-size:clamp(17px,1.5vw,22px);line-height:1.75;max-width:38rem}.case-meta{display:flex;flex-wrap:wrap;gap:9px;margin:29px 0}.case-meta span{border:1px solid #bdb8ae;padding:8px 12px;font-size:11px;letter-spacing:.08em}.case-github{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;background:#172331;color:#f8f2e8;padding:15px 19px;font-size:13px;letter-spacing:.06em}.case-github:hover{background:#32465a}.case-github span{font-size:20px;line-height:1}.case-hero-image{margin:0}.case-hero-image img{display:block;width:100%;height:min(38vw,520px);min-height:330px;object-fit:cover}.case-hero-image figcaption{text-align:right;font-size:10px;letter-spacing:.15em;color:#8a8984;margin-top:10px}.case-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:8%;border-top:1px solid #c8c3b9;padding-top:45px}.case-toc{position:sticky;top:92px;align-self:start;display:flex;flex-direction:column;gap:0}.case-toc>span{font-size:10px;letter-spacing:.2em;color:#948b81;margin-bottom:21px}.case-toc button{display:flex;gap:13px;text-align:left;border:0;border-bottom:1px solid #d2cec6;background:none;color:#45505a;padding:11px 0;cursor:pointer;font-size:12px}.case-toc button:hover{color:#a36643}.case-toc small{font:12px Georgia,serif;color:#a48067}.case-article{min-width:0}.case-block{display:grid;grid-template-columns:140px minmax(0,1fr);gap:5%;padding:30px 0 48px;border-bottom:1px solid #d2cec6;scroll-margin-top:85px}.case-block:first-child{padding-top:0}.case-block-label{font-size:10px;letter-spacing:.16em;color:#918b83;line-height:1.5}.case-block-label span{display:block;font:22px Georgia,serif;color:#a77a5f;margin-bottom:8px}.case-block-body h2{font:400 clamp(27px,2.5vw,39px)/1.2 Georgia,"Noto Sans SC",serif;margin:0 0 16px}.case-block-body p{max-width:690px;font-size:16px;line-height:1.85;color:#3e4852}.case-block-body ul{margin:18px 0 0;padding-left:20px;color:#3e4852}.case-block-body li{font-size:15px;line-height:1.8;margin:4px 0}.case-bottom{display:flex;justify-content:space-between;align-items:end;gap:25px;padding:54px 0 15px}.case-bottom>a:first-child{font-size:13px;color:#687079}.case-next{min-width:300px;display:grid;grid-template-columns:1fr auto;gap:6px 25px;border-top:1px solid #9d9a92;padding-top:15px}.case-next small{grid-column:1/-1;font-size:10px;letter-spacing:.2em;color:#8c867f}.case-next strong{font:400 23px Georgia,serif}.case-next span{font-size:22px}.thumb-night{background-image:url('assets/hunter-editorial.webp')}.thumb-studio{background-image:url('assets/noma-case-editorial.webp')}
@media(max-width:900px){.case-hero{grid-template-columns:1fr;gap:28px}.case-hero-copy{padding-right:0}.case-hero-image img{height:43vw;min-height:300px}.case-layout{grid-template-columns:150px 1fr;gap:5%}.case-block{grid-template-columns:100px 1fr;gap:4%}}
@media(max-width:620px){.case-shell{padding:90px 24px 34px}.case-hero{padding:31px 0 42px}.case-hero-copy h1{font-size:clamp(45px,12vw,72px);margin:18px 0}.case-summary{font-size:16px}.case-hero-image img{height:60vw;min-height:220px}.case-layout{display:block;padding-top:25px}.case-toc{display:none}.case-block{display:block;padding:29px 0 34px}.case-block-label{margin-bottom:14px}.case-block-label span{display:inline;margin-right:12px}.case-block-body h2{font-size:29px}.case-block-body p{font-size:15px}.case-bottom{align-items:start;flex-direction:column}.case-next{width:100%;min-width:0}}

.thumb-sky{background-image:url('assets/film-editorial.webp')}.thumb-winters{background-image:url('assets/winters-editorial.webp')}.thumb-hunt{background-image:url('assets/signal-editorial.webp')}.thumb-noma{background-image:url('assets/noma-campaign-editorial.webp')}.thumb-fashion{background-image:url('assets/fashion-editorial.webp')}.case-extra-links{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:18px}.case-extra-links a{font-size:12px;color:#5b6671;border-bottom:1px solid #a9a39b;padding-bottom:4px}.case-extra-links a:hover{color:#9a603e}

.about-section{display:block;overflow-y:auto;background:#f2efe8;padding:0}
.about-shell{width:min(100%,1500px);min-height:100%;margin:auto;padding:103px clamp(26px,5vw,90px) 54px;display:grid;grid-template-columns:245px minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:6%}
.about-heading{grid-column:1/-1;border-bottom:1px solid var(--line);padding-bottom:28px;margin-bottom:34px}
.about-heading h2{font-size:clamp(68px,8vw,122px);margin-top:8px}
.about-index{display:flex;flex-direction:column;align-self:start;position:sticky;top:90px;border-top:1px solid #cbc5ba}
.about-index button{display:flex;align-items:center;gap:13px;text-align:left;border:0;border-bottom:1px solid #cbc5ba;background:transparent;color:#56616b;padding:13px 8px;cursor:pointer;font-size:11px;letter-spacing:.095em;line-height:1.4}
.about-index button small{font:16px Georgia,serif;color:#a27c63;min-width:22px;letter-spacing:0}
.about-index button:hover,.about-index button.active{background:#e6dfd3;color:#182535}
.about-index button.active{box-shadow:inset 3px 0 var(--rust)}
.about-content{min-width:0;align-self:stretch}
.about-panel[hidden]{display:none!important}
.about-panel{animation:page-enter .25s ease;max-width:1050px;padding:8px 0}
.about-hello{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,42%);align-items:center;gap:4%;min-height:470px}
.about-hello .about-copy{max-width:570px}
.about-hello .about-copy h3{margin-top:26px}
.about-hello .about-portrait img{width:min(100%,400px)}
.about-kicker{display:block;color:#a3704d;font-size:11px;letter-spacing:.19em;font-weight:700}
.about-panel:not(.about-hello) h3{font:400 clamp(36px,4.6vw,68px)/1.1 Georgia,serif;letter-spacing:-.045em;margin:22px 0 24px;max-width:780px}
.about-intro{font:clamp(18px,2vw,26px)/1.6 Georgia,"Noto Sans SC",serif;color:#364454;max-width:680px}
.about-placeholder-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:48px}
.about-placeholder-grid>div{min-height:185px;border:1px solid #cfc8bd;background:#eee9df;padding:21px;display:flex;flex-direction:column;justify-content:space-between}
.about-placeholder-grid small{font-size:10px;letter-spacing:.16em;color:#9e765c}
.about-placeholder-grid p{font:19px/1.5 Georgia,"Noto Sans SC",serif;color:#263646}
.about-note{font-size:12px;color:#8c8982;margin-top:26px;letter-spacing:.03em}
@media(max-width:900px){.about-shell{grid-template-columns:190px minmax(0,1fr);column-gap:4%}.about-hello{grid-template-columns:1fr}.about-hello .about-portrait{display:none}.about-placeholder-grid{grid-template-columns:1fr}.about-placeholder-grid>div{min-height:115px}}
@media(max-width:620px){.about-shell{display:block;padding:88px 24px 40px}.about-heading{margin-bottom:18px;padding-bottom:17px}.about-heading h2{font-size:70px}.about-index{position:static;display:flex;flex-direction:row;overflow-x:auto;gap:0;border-top:0;border-bottom:1px solid #cbc5ba;margin:0 -24px 30px;padding:0 24px;scrollbar-width:thin}.about-index button{flex:0 0 auto;white-space:nowrap;border-bottom:0;padding:13px 12px;font-size:10px}.about-index button small{font-size:13px;min-width:auto}.about-index button.active{box-shadow:inset 0 -3px var(--rust)}.about-panel:not(.about-hello) h3{font-size:clamp(37px,10vw,55px)}.about-intro{font-size:18px}.about-placeholder-grid{margin-top:32px}.about-placeholder-grid>div{min-height:100px}.about-hello{min-height:0}.about-hello .about-portrait{display:block}.about-hello .about-portrait img{width:min(100%,270px)}}
/* About: editorial chapter navigation */
.about-index{border:0;gap:4px}
.about-index button{position:relative;display:grid;grid-template-columns:28px 1fr;align-items:baseline;gap:10px;border:0!important;background:transparent!important;box-shadow:none!important;padding:10px 4px 10px 0;color:#75736e;font-family:Georgia,serif;font-size:14px;letter-spacing:.015em;transition:color .2s ease,transform .2s ease}
.about-index button small{font:10px "DM Sans",sans-serif;letter-spacing:.1em;color:#ac9b8b;min-width:0}
.about-index button:hover{color:#263646;transform:translateX(3px)}
.about-index button.active{color:#172331;font-style:italic}
.about-index button.active small{color:#b36c43;font-style:normal}
.about-index button.active::after{content:"";position:absolute;left:37px;right:0;bottom:6px;height:1px;background:#bd805d;opacity:.8}
.about-placeholder-grid{gap:28px}
.about-placeholder-grid>div{min-height:130px;border:0;border-top:1px solid #c9bfb1;background:transparent;padding:17px 0 0}
.about-placeholder-grid small{color:#ad8b73}
.about-placeholder-grid p{font-size:18px}
@media(max-width:620px){.about-index{border-bottom:1px solid #d4c9bb;gap:15px}.about-index button{display:flex;gap:6px;padding:12px 0 16px;font-size:12px}.about-index button:hover{transform:none}.about-index button.active::after{left:0;right:0;bottom:0}.about-placeholder-grid{gap:18px}.about-placeholder-grid>div{min-height:85px}}
/* About: chapter titles form a semicircle above the fox */
.about-shell{grid-template-columns:minmax(0,48%) minmax(0,52%);column-gap:0;align-items:start}
.about-content{grid-column:1;grid-row:2;padding-right:7%}
.about-stage{grid-column:2;grid-row:2;position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;padding-left:2%}
.about-stage .about-index{position:relative;top:auto;display:block;flex:none;width:min(100%,580px);height:250px;margin:0;border:0;overflow:visible}
.about-stage .about-index button{position:absolute;display:block;width:max-content;max-width:170px;padding:3px 2px;border:0!important;background:transparent!important;box-shadow:none!important;color:#77716b;font:400 clamp(10px,.9vw,13px)/1.2 Georgia,serif;letter-spacing:.02em;text-align:center;white-space:normal;transform:translateX(-50%);transition:color .2s ease,transform .2s ease}
.about-stage .about-index button:hover{color:#263646;transform:translateX(-50%) translateY(-3px)}
.about-stage .about-index button.active{color:#b66f45;font-style:italic;font-weight:600}
.about-stage .about-index button.active::after{display:none}
.about-stage .about-index button:nth-child(1){left:8%;top:77%}
.about-stage .about-index button:nth-child(2){left:10%;top:48%}
.about-stage .about-index button:nth-child(3){left:24%;top:22%}
.about-stage .about-index button:nth-child(4){left:43%;top:6%}
.about-stage .about-index button:nth-child(5){left:61%;top:6%}
.about-stage .about-index button:nth-child(6){left:78%;top:22%}
.about-stage .about-index button:nth-child(7){left:91%;top:48%}
.about-stage .about-index button:nth-child(8){left:79%;top:77%}
.about-stage .about-portrait{width:min(100%,450px);margin-top:-8px}
.about-stage .about-portrait img{width:100%;max-height:420px;object-fit:contain}
.about-hello{display:block;min-height:0}
.about-hello .about-portrait{display:none}
@media(max-width:900px){.about-shell{grid-template-columns:minmax(0,47%) minmax(0,53%)}.about-stage .about-index{height:225px}.about-stage .about-index button{font-size:10px;max-width:130px}.about-stage .about-portrait{width:min(100%,360px)}.about-placeholder-grid{grid-template-columns:1fr}}
@media(max-width:620px){.about-shell{display:flex;flex-direction:column}.about-heading{width:100%}.about-content{order:1;width:100%;padding:0}.about-stage{order:2;width:100%;padding:22px 0 0}.about-stage .about-index{width:min(100%,420px);height:225px;margin:0 auto;border:0;overflow:visible;padding:0}.about-stage .about-index button{display:block;padding:3px 2px;font-size:10px;white-space:normal}.about-stage .about-index button.active{box-shadow:none!important}.about-stage .about-portrait{width:min(75%,310px);margin-top:-12px}.about-stage .about-portrait img{width:100%}.about-stage .about-portrait>span{display:none}}
.about-heading{border-bottom:0}.about-placeholder-grid>div{border-top:0}.about-stage .about-index{border:0!important}.about-stage .about-index button{border:0!important}
.about-stage{margin-top:-58px}
.about-stage .about-portrait{margin-top:-32px}
.about-contact{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:30px;font-size:13px;letter-spacing:.055em;color:#354454}
.about-contact .about-contact-label{font-size:10px;letter-spacing:.19em;color:#a3704d;margin-bottom:4px}
.about-contact a{border-bottom:1px solid transparent;padding-bottom:2px}
.about-contact a:hover{border-bottom-color:currentColor}
@media(max-width:900px){.about-stage{margin-top:-40px}.about-stage .about-portrait{margin-top:-27px}}
@media(max-width:620px){.about-stage{margin-top:-10px}.about-stage .about-portrait{margin-top:-22px}.about-contact{align-items:flex-start;gap:8px}}
/* About: a horizontal text navigation beside the title */
.about-heading{display:flex;align-items:center;justify-content:space-between;gap:34px;padding-bottom:24px;margin-bottom:34px}
.about-title-wrap{flex:0 0 auto}
.about-heading .about-index{position:static;display:flex;flex-direction:row;align-items:center;justify-content:flex-end;flex-wrap:nowrap;gap:clamp(8px,1.15vw,18px);width:auto;height:auto;margin:28px 0 0;border:0;overflow:visible}
.about-heading .about-index button{position:static;display:block;width:auto;max-width:none;min-width:0;padding:3px 0;border:0!important;background:transparent!important;box-shadow:none!important;color:#756f69;font:400 clamp(9px,.75vw,11px)/1.3 "DM Sans",sans-serif;letter-spacing:.025em;text-align:center;white-space:nowrap;transform:none;transition:color .2s ease}
.about-heading .about-index button:hover{color:#263646;transform:none}
.about-heading .about-index button.active{color:#b66f45;font-style:normal;font-weight:700}
.about-heading .about-index button.active::after{display:none}
.about-stage{margin-top:-82px}
.about-stage .about-portrait{margin-top:0}
@media(max-width:1100px){.about-heading{gap:20px}.about-heading h2{font-size:clamp(65px,7vw,90px)}.about-heading .about-index{gap:8px}.about-heading .about-index button{font-size:9px}.about-stage{margin-top:-65px}}
@media(max-width:800px){.about-heading{display:block}.about-heading .about-index{justify-content:flex-start;flex-wrap:wrap;gap:9px 17px;margin-top:17px}.about-stage{margin-top:-40px}}
@media(max-width:620px){.about-heading{display:block;width:100%;padding-bottom:0;margin-bottom:30px}.about-heading .about-index{display:flex;width:100%;height:auto;margin:17px 0 0;padding:0;gap:10px 16px;overflow:visible;border:0;flex-wrap:wrap}.about-heading .about-index button{font-size:10px;padding:3px 0}.about-stage{margin-top:-18px}.about-stage .about-portrait{margin-top:0}}
/* About story chapters */
.about-heading{align-items:flex-end}
.about-heading .about-index{margin:0 0 13px}
.about-section[data-about-active="journey"] .about-content,
.about-section[data-about-active="influences"] .about-content,
.about-section[data-about-active="places"] .about-content,
.about-section[data-about-active="toolbox"] .about-content,
.about-section[data-about-active="future"] .about-content{grid-column:1/-1;padding-right:0}
.about-section[data-about-active="journey"] .about-stage,
.about-section[data-about-active="influences"] .about-stage,
.about-section[data-about-active="places"] .about-stage,
.about-section[data-about-active="toolbox"] .about-stage,
.about-section[data-about-active="future"] .about-stage{display:none}
.about-panel.about-journey,.about-panel.about-things,.about-panel.about-places,.about-panel.about-toolbox,.about-panel.about-future{max-width:none}
.about-currently h3 span{font:400 clamp(17px,1.8vw,25px)/1.2 "DM Sans",sans-serif;letter-spacing:.08em;color:#9a7b66;white-space:nowrap}
.journey-scene{height:375px;position:relative;overflow:hidden;margin-top:32px;background:linear-gradient(180deg,#ece9e4,#dce3e6 66%,#e3d6c5);border-radius:2px}
.journey-sky{position:absolute;inset:0;opacity:.6;background:radial-gradient(circle at 78% 25%,#fff7e9 0 7%,transparent 20%),linear-gradient(160deg,transparent 55%,#a8b8c1 56% 60%,transparent 61%),linear-gradient(20deg,transparent 68%,#bac7ce 69% 73%,transparent 74%)}
.journey-scene.at-home .journey-sky{opacity:.8;background:linear-gradient(90deg,#e5e9eb77,#e5e9eb44),url('assets/night-fox.webp') center 58%/cover;transition:background .5s ease}
.journey-path{position:absolute;left:5.5%;right:5.5%;bottom:122px;height:3px;background:#b68462;opacity:.7;border-radius:99px}
.journey-path::after{content:"";position:absolute;right:-3px;top:-5px;width:13px;height:13px;border-radius:50%;background:#b68462}
.journey-fox{position:absolute;z-index:2;left:5.5%;bottom:124px;width:74px;height:85px;object-fit:contain;object-position:bottom;transform:translateX(-50%);transition:left .7s cubic-bezier(.22,1,.36,1)}
.journey-stops{position:absolute;left:1%;right:1%;bottom:17px;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:2px;z-index:3}
.journey-stops button{border:0;background:transparent;text-align:center;color:#455463;cursor:pointer;padding:11px 1px 4px;min-width:0}
.journey-stops button strong{display:block;font:clamp(20px,2.5vw,34px)/1 Georgia,serif}
.journey-stops button span{display:block;font-size:9px;letter-spacing:.08em;margin-top:7px;white-space:nowrap}
.journey-stops button:hover,.journey-stops button.active{color:#ad6b44}
.journey-caption{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-top:22px;min-height:70px}
.journey-caption small{color:#a16f51;font-size:10px;letter-spacing:.17em}
.journey-caption p{font:19px/1.5 Georgia,"Noto Sans SC",serif;margin-top:8px;color:#354454}
.journey-caption a{font-size:12px;color:#a16f51;padding-bottom:4px;border-bottom:1px solid currentColor;white-space:nowrap}
.things-desk{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 40px;margin-top:35px;padding:48px 60px;background:#dfd5c7 url('assets/archive-desk.webp') center/cover;box-shadow:inset 0 0 0 2000px #ebe1d3b8}
.thing{position:relative;min-height:200px;padding:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:default;outline-offset:4px;transform:rotate(var(--tilt));transition:transform .25s ease}
.thing:nth-child(1){--tilt:-6deg}.thing:nth-child(2){--tilt:4deg}.thing:nth-child(3){--tilt:-3deg}.thing:nth-child(4){--tilt:5deg}.thing:nth-child(5){--tilt:-5deg}.thing:nth-child(6){--tilt:3deg}
.thing:hover,.thing:focus-visible{transform:rotate(0) translateY(-8px);z-index:2}
.thing-art{display:flex;align-items:center;justify-content:center;position:relative;width:155px;height:115px;margin-bottom:16px;color:#293749;filter:drop-shadow(0 8px 6px #65584a44)}
.thing strong{font-size:10px;letter-spacing:.2em;color:#263546}
.thing p{position:absolute;left:50%;top:100%;width:max-content;max-width:240px;transform:translate(-50%,-8px);opacity:0;pointer-events:none;background:#f5f1ea;color:#2e3d4d;box-shadow:0 8px 22px #63534322;padding:11px 14px;font:italic 14px/1.4 Georgia,serif;text-align:center;transition:opacity .2s,transform .2s}
.thing:hover p,.thing:focus-visible p{opacity:1;transform:translate(-50%,0)}
.book-art{width:105px;height:130px;background:#223847;border-left:9px solid #182b39;box-shadow:2px 4px 0 #d8cbb8 inset}.book-art span{font:12px Georgia,serif;color:#d5c2a0;letter-spacing:.06em;transform:rotate(90deg)}
.model-art{width:135px;height:100px;background:linear-gradient(145deg,#a5aaa5,#dde2dc);clip-path:polygon(0 55%,40% 44%,51% 4%,61% 43%,100% 55%,63% 63%,53% 99%,43% 63%);font-size:48px}
.photo-art{width:140px;height:115px;background:linear-gradient(180deg,#8b9ba6 0 40%,#5f6870 40% 70%,#d8d8d1 70%);border:10px solid #f5f1e8;border-bottom-width:24px}.photo-art span{position:absolute;bottom:-21px;font-size:7px;letter-spacing:.12em;color:#7d7870}
.chart-art{width:145px;height:100px;background:#f4efe5;border:9px solid #f4efe5}.chart-art svg{width:100%;height:100%;color:#b07759}
.camera-art{width:145px;height:95px;background:#263744;border-radius:12px;box-shadow:inset 0 0 0 8px #405262}.camera-art:before{content:"";position:absolute;top:-14px;left:19px;width:46px;height:20px;border-radius:5px;background:#263744}.camera-art span{width:58px;height:58px;border:12px solid #a0afb3;border-radius:50%;background:#15232f}
.ai-art{width:145px;height:95px;background:#eef1ec;border:3px solid #697982;border-radius:11px}.ai-art:after{content:"";position:absolute;bottom:-12px;left:28px;border:12px solid transparent;border-top-color:#697982}.ai-art span{font:32px monospace;color:#6b8a95}.ai-art i{display:inline-block;width:9px;height:22px;background:#c88659;vertical-align:middle}
.places-route{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end;min-height:370px;margin-top:35px;padding:100px 15px 30px}
.places-line{position:absolute;left:5%;right:5%;top:50%;border-top:2px solid #a5afb3}
.places-line:after{content:"→";position:absolute;right:-14px;top:-19px;color:#89949b;font-size:27px}
.place-stop{position:relative;padding-top:155px}
.place-stop:before{content:"";position:absolute;top:calc(50% - 4px);left:0;width:11px;height:11px;border-radius:50%;background:#bb7952;box-shadow:0 0 0 6px #e8ded1}
.place-stop strong{font:26px Georgia,serif;letter-spacing:.04em}
.place-stop p{font:italic 16px/1.5 Georgia,serif;color:#68717a;margin-top:10px}
.places-fox{position:absolute;left:38%;top:calc(50% - 72px);width:55px;z-index:2;animation:places-walk 12s ease-in-out infinite alternate}
.places-fox img{display:block;width:100%}
@keyframes places-walk{from{left:7%}to{left:82%}}
.belief-list{display:grid;gap:24px;margin-top:25px}
.belief-list>div{padding-left:20px;border-left:3px solid #c5835b}
.belief-list strong{font:italic 27px Georgia,serif;color:#263646}
.belief-list p{font-size:15px;line-height:1.6;color:#667078;margin-top:6px}
.currently-list{display:grid;gap:10px;margin-top:25px;max-width:550px}
.currently-list>div{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:10px 0}
.currently-list small{font-size:10px;letter-spacing:.17em;color:#ac7858}
.currently-list p{font:18px Georgia,"Noto Sans SC",serif;color:#364454}
.about-section[data-about-active="currently"] .about-stage .about-portrait{width:min(100%,490px)}
.toolbox-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:30px}
.toolbox-columns>div{padding-top:16px;border-top:2px solid #ad8062}
.toolbox-columns span{font-size:11px;letter-spacing:.19em;color:#9f7156}
.toolbox-columns p{font:21px/1.8 Georgia,"Noto Sans SC",serif;color:#2b3948;margin-top:16px}
.about-toolbox blockquote{margin:60px 0 10px;font:italic clamp(22px,2.5vw,35px)/1.4 Georgia,serif;color:#586878}
.future-space{position:relative;height:390px;margin-top:20px;background:linear-gradient(180deg,transparent 83%,#e5ddd2 83% 84%,transparent 84%)}
.future-space img{position:absolute;bottom:13%;left:9%;width:82px;animation:future-walk 16s ease-in-out infinite alternate}
@keyframes future-walk{from{left:9%}to{left:81%}}
.future-line{font:30px/1.45 Georgia,serif;color:#2e3b49;margin:0 0 30px 10%}
.future-line em{font-weight:400;color:#97826f}
@media(max-width:800px){.about-heading .about-index{margin-top:17px}.about-panel.about-journey,.about-panel.about-things,.about-panel.about-places,.about-panel.about-toolbox,.about-panel.about-future{width:100%}.things-desk{padding:30px;gap:15px}.thing{min-height:180px}.thing-art{transform:scale(.85)}.places-route{min-height:300px}.place-stop strong{font-size:20px}}
@media(max-width:620px){.about-heading{align-items:start}.journey-scene{height:300px}.journey-fox{width:45px;height:55px;bottom:108px}.journey-path{bottom:108px}.journey-stops{bottom:18px}.journey-stops button strong{font-size:20px}.journey-stops button span{font-size:7px;letter-spacing:0}.journey-caption{display:block}.journey-caption p{font-size:16px}.journey-caption a{display:inline-block;margin-top:13px}.things-desk{grid-template-columns:repeat(2,minmax(0,1fr));padding:18px 10px;gap:6px}.thing{min-height:160px}.thing-art{transform:scale(.7);margin-bottom:0}.thing p{max-width:170px;font-size:12px}.places-route{min-height:280px;gap:4px;padding:60px 0 20px}.place-stop{padding-top:120px}.place-stop strong{font-size:13px}.place-stop p{font-size:11px}.places-fox{width:35px}.belief-list strong{font-size:24px}.currently-list>div{grid-template-columns:90px 1fr}.currently-list p{font-size:16px}.toolbox-columns{gap:12px}.toolbox-columns p{font-size:15px}.about-toolbox blockquote{margin-top:40px;font-size:22px}.future-space{height:290px}.future-space img{width:60px}.future-line{font-size:24px}}
@media(prefers-reduced-motion:reduce){.journey-fox,.thing,.thing p{transition:none}.places-fox,.future-space img{animation:none}}
.journey-caption a[hidden]{display:none!important}.places-route{align-items:stretch;padding-top:0;padding-bottom:0}.place-stop{padding-top:230px}.place-stop:before{top:calc(50% - 6px)}@media(max-width:620px){.place-stop{padding-top:178px}}
/* About layout aligned to the annotated reference */
.about-heading{position:relative;display:block}
.about-heading .about-index{position:absolute;top:98px;left:clamp(320px,26vw,410px);right:clamp(120px,9vw,180px);width:auto;height:auto;margin:0;display:flex;justify-content:space-between;align-items:center;flex-wrap:nowrap;gap:clamp(8px,.8vw,15px)}
.about-stage .about-portrait{transform:translate(clamp(-200px,-10vw,-120px),72px)}
@media(max-width:1100px){.about-heading .about-index{left:clamp(300px,34vw,440px);top:130px;gap:7px}.about-heading .about-index button{font-size:9px}.about-stage .about-portrait{transform:translate(-105px,55px)}}
@media(max-width:800px){.about-heading{display:block}.about-heading .about-index{position:static;left:auto;right:auto;top:auto;margin:17px 0 0;justify-content:flex-start;flex-wrap:wrap;gap:9px 17px}.about-stage .about-portrait{transform:translate(-35px,22px)}}
@media(max-width:620px){.about-heading .about-index{position:static;width:100%;justify-content:flex-start;flex-wrap:wrap;gap:10px 16px}.about-stage .about-portrait{transform:translate(-12px,10px)}}

/* Extended life story and chapter-specific fox scenes */
.journey-scene{height:455px;overflow-x:auto;overflow-y:hidden;scrollbar-color:#bda994 transparent;scrollbar-width:thin}
.journey-track{position:relative;min-width:max(100%,1400px);height:100%}
.journey-stops{grid-template-columns:repeat(15,minmax(0,1fr));bottom:13px}
.journey-stops button{min-height:106px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:10px 2px 4px}
.journey-stops button strong{font-size:clamp(20px,2vw,30px)}
.journey-stops button span{max-width:115px;min-height:32px;font-size:8px;line-height:1.25;letter-spacing:.01em;white-space:normal;margin-top:10px}
.journey-path{bottom:155px}
.journey-fox{bottom:157px;width:67px;height:81px}
.journey-caption{align-items:center;min-height:126px}
.journey-caption h4{font:400 clamp(23px,3vw,38px)/1.15 Georgia,serif;letter-spacing:-.03em;margin:7px 0;color:#263748}
.journey-caption p{font-size:17px;max-width:920px}
.about-things .things-desk{padding-right:360px;min-height:505px}
.things-fox{position:absolute;right:-15px;bottom:-16px;width:min(28%,350px);max-height:520px;object-fit:contain;object-position:bottom;z-index:1;pointer-events:none;animation:fox-breathe 5s ease-in-out infinite alternate}
.thing{z-index:2}
.places-fox{width:68px;top:calc(50% - 88px)}
.about-section[data-about-active="beliefs"] .about-portrait>span,.about-section[data-about-active="currently"] .about-portrait>span{display:none}
.about-section[data-about-active="beliefs"] .about-portrait img{animation:fox-breathe 5s ease-in-out infinite alternate}
.about-toolbox{position:relative;min-height:520px}
.toolbox-fox{position:absolute;right:0;top:72px;width:min(29%,350px);max-height:490px;object-fit:contain;object-position:bottom;animation:fox-breathe 5s ease-in-out infinite alternate}
.about-toolbox .toolbox-columns{width:calc(100% - 375px)}
.about-toolbox blockquote{width:calc(100% - 375px)}
.future-space img{width:90px}
@keyframes fox-breathe{from{transform:translateY(0)}to{transform:translateY(-7px)}}
@media(max-width:900px){.about-things .things-desk{padding-right:250px}.things-fox{width:235px}.toolbox-fox{width:250px}.about-toolbox .toolbox-columns,.about-toolbox blockquote{width:calc(100% - 260px)}}
@media(max-width:620px){.journey-scene{height:340px}.journey-track{min-width:1250px}.journey-path{bottom:135px}.journey-fox{bottom:137px;width:55px;height:67px}.journey-stops{bottom:7px}.journey-stops button{min-height:105px}.journey-stops button strong{font-size:21px}.journey-stops button span{font-size:8px}.journey-caption h4{font-size:26px}.journey-caption p{font-size:15px}.about-things .things-desk{padding:18px 10px 0;min-height:0}.things-fox{position:relative;grid-column:1/-1;right:auto;bottom:auto;width:210px;margin:0 auto -12px;animation:none}.places-fox{width:43px;top:calc(50% - 56px)}.toolbox-fox{position:relative;right:auto;top:auto;display:block;width:230px;margin:10px auto 0;animation:none}.about-toolbox .toolbox-columns,.about-toolbox blockquote{width:100%}.future-space img{width:68px}}
@media(prefers-reduced-motion:reduce){.things-fox,.toolbox-fox,.about-section[data-about-active="beliefs"] .about-portrait img{animation:none}}
.journey-scene.at-home .journey-fox{opacity:0;transition:left .7s cubic-bezier(.22,1,.36,1),opacity .4s .45s}
/* Timeline: copy lives inside a painterly landscape, above the moving route */
.journey-frame{position:relative;margin-top:20px}
.journey-scene{margin-top:0;background:#dfe5e9 url('assets/journey-landscape.webp') center center/cover}
.journey-sky{background:linear-gradient(90deg,rgba(245,241,234,.87),rgba(245,241,234,.52) 34%,rgba(245,241,234,.12) 68%,transparent);opacity:1}
.journey-caption{position:absolute;z-index:5;top:35px;left:5.5%;right:auto;width:min(700px,49%);min-height:0;margin:0;display:block;color:#243449;pointer-events:none;text-shadow:0 1px 12px #f5eee9aa}
.journey-caption small{display:block;font-size:11px;letter-spacing:.22em;font-weight:700;color:#a36443}
.journey-caption h4{font:400 clamp(30px,3.1vw,47px)/1.08 Georgia,serif;letter-spacing:-.045em;margin:12px 0 18px;color:#1a2c40}
.journey-caption p{font:clamp(17px,1.45vw,21px)/1.55 Georgia,"Noto Sans SC",serif;color:#2f4151;max-width:640px;margin:0}
.journey-caption a{display:inline-block;margin-top:18px;color:#a1603f;font-size:12px;text-shadow:none;pointer-events:auto}
.journey-path{height:2px;background:#93785f88}
.journey-stops button{color:#314254;text-shadow:0 1px 8px #f4f1ebbb}
.journey-frame.at-home .journey-sky{background:linear-gradient(90deg,rgba(9,21,38,.84),rgba(9,21,38,.34) 65%,rgba(9,21,38,.08)),url('assets/night-fox.webp') center 58%/cover;opacity:1}
.journey-frame.at-home .journey-caption,.journey-frame.at-home .journey-caption h4,.journey-frame.at-home .journey-caption p{color:#f8f2e8;text-shadow:0 2px 12px #0c1728}
.journey-frame.at-home .journey-caption small,.journey-frame.at-home .journey-caption a{color:#ebbb88}
.journey-frame.at-home .journey-stops button{color:#f3eade;text-shadow:0 2px 8px #0c1728}
.journey-frame.at-home .journey-stops button.active{color:#efbd85}
@media(max-width:620px){.journey-frame{margin-top:18px}.journey-scene{height:420px}.journey-caption{top:23px;left:25px;right:25px;width:auto;max-width:315px}.journey-caption small{font-size:10px}.journey-caption h4{font-size:28px;margin:9px 0 12px}.journey-caption p{font-size:15px;line-height:1.48}.journey-path{bottom:138px}.journey-fox{bottom:140px}.journey-stops{bottom:8px}}
.about-future .future-space{height:300px}.about-future .future-space img{animation:none!important}.about-future .future-line{margin-top:-5px}@media(max-width:620px){.about-future .future-space{height:220px}.about-future .future-line{margin-top:-4px}}
.about-future .future-line{margin:80px 0 0 10%}.journey-fox{transition:left .45s cubic-bezier(.22,1,.36,1)}@media(max-width:620px){.about-future .future-line{margin:55px 0 0 3%}}
.currently-list>div{grid-template-columns:150px 1fr;align-items:start;padding:8px 0}.currently-list small{white-space:nowrap}.currently-list p{line-height:1.5}@media(max-width:620px){.currently-list>div{grid-template-columns:112px 1fr}}
/* Eight objects on the About worktable */
.about-things .things-desk{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 18px;padding:24px 320px 28px 26px;min-height:480px}
.about-things .thing{min-height:205px;cursor:help}
.about-things .thing-art{margin-bottom:9px}
.thing-name{display:block;color:#6f706d;font-size:11px;letter-spacing:.11em;margin-bottom:4px}
.about-things .thing strong{font-size:10px;letter-spacing:.13em;text-align:center;line-height:1.3}
.about-things .thing p{max-width:285px;width:max-content;font:14px/1.65 "Noto Sans SC",sans-serif;text-align:left;z-index:8}
.about-things .thing:nth-of-type(n+5) p{top:auto;bottom:100%;transform:translate(-50%,8px)}
.about-things .thing:nth-of-type(n+5):hover p,.about-things .thing:nth-of-type(n+5):focus-visible p{transform:translate(-50%,0)}
.about-things .thing:nth-of-type(1){--tilt:-5deg}.about-things .thing:nth-of-type(2){--tilt:3deg}.about-things .thing:nth-of-type(3){--tilt:-3deg}.about-things .thing:nth-of-type(4){--tilt:5deg}.about-things .thing:nth-of-type(5){--tilt:4deg}.about-things .thing:nth-of-type(6){--tilt:-4deg}.about-things .thing:nth-of-type(7){--tilt:2deg}.about-things .thing:nth-of-type(8){--tilt:-3deg}
.business-art{width:128px;height:92px;background:linear-gradient(135deg,#bc966a,#d9b589);border:2px solid #9f7c55;box-shadow:inset 0 -15px #a8835b55}
.business-art:before{content:"";position:absolute;left:47%;top:0;width:17px;height:100%;background:#e8d6b8aa}
.business-art:after{content:"";position:absolute;left:0;right:0;top:0;height:18px;border-bottom:2px solid #9f7c55;background:#cfab7d}
.curiosity-art{width:120px;height:124px}
.curiosity-art img{display:block;height:100%;max-width:100%;object-fit:contain}
@media(max-width:900px){.about-things .things-desk{grid-template-columns:repeat(2,minmax(0,1fr));padding:24px 240px 28px 20px}.about-things .thing{min-height:190px}.about-things .thing p{max-width:225px}}
@media(max-width:620px){.about-things .things-desk{grid-template-columns:repeat(2,minmax(0,1fr));padding:20px 8px 4px;gap:10px}.about-things .thing{min-height:158px}.about-things .thing-art{height:100px;margin-bottom:0}.about-things .thing p{max-width:180px;font-size:12px;line-height:1.5}.about-things .things-fox{grid-column:1/-1}.thing-name{font-size:10px}}
.about-things .thing.is-open{transform:rotate(0) translateY(-8px);z-index:3}.about-things .thing.is-open p{opacity:1;transform:translate(-50%,0)}
.about-things .thing .thing-note{width:max-content;max-width:310px;padding:12px 13px;font:12px/1.48 "Noto Sans SC",sans-serif;box-shadow:0 12px 28px #453b3150}
.about-things .thing-note span{display:block}
.about-things .thing-note span+span{margin-top:8px;padding-top:8px;border-top:1px solid #d8cfc3;color:#66717a;font:italic 11px/1.45 Georgia,serif}
@media(max-width:620px){.about-things .thing .thing-note{max-width:min(225px,80vw);font-size:11px;line-height:1.42}.about-things .thing-note span+span{font-size:10px}}
/* Archive directory */
.archive-section{overflow-y:auto;background:#8b9aa6 url('assets/archive-desk.webp') center/cover}
.archive-section:before{position:absolute;inset:0;background:linear-gradient(90deg,rgba(224,229,226,.6),rgba(213,220,218,.3));pointer-events:none}
.archive-shell{position:relative;z-index:1;min-height:100%;max-width:1560px;margin:0 auto;padding:103px clamp(26px,5vw,90px) 70px;color:#1b2a3e}
.archive-head{display:flex;align-items:end;justify-content:space-between;gap:40px}
.archive-head .eyebrow{color:#3c4d5d}
.archive-head h2{font:400 clamp(74px,8vw,125px)/1 Georgia,serif;letter-spacing:-.06em;margin-top:15px}
.archive-statement{max-width:440px;margin:0 0 8px;font:italic clamp(18px,1.65vw,25px)/1.4 Georgia,serif;color:#394c5c}
.archive-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px;margin-top:40px;padding:19px 30px 26px;background:rgba(244,240,232,.88);backdrop-filter:blur(10px);box-shadow:0 18px 60px #1e2c3961}
.archive-folder{min-height:132px;padding:20px 8px 17px;border-top:1px solid #89939a77}
.archive-folder>span{font-size:9px;letter-spacing:.18em;color:#9d795f}
.archive-folder h3{font:400 clamp(18px,1.55vw,23px)/1.2 Georgia,serif;letter-spacing:.055em;margin:11px 0 8px;color:#1d2e40}
.archive-folder p{font-size:13px;line-height:1.65;color:#59636b;max-width:34ch}
@media(max-width:900px){.archive-head{display:block}.archive-statement{margin-top:18px}.archive-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;padding:18px 22px 24px;margin-top:30px}}
@media(max-width:560px){.archive-shell{padding:100px 24px 46px}.archive-head h2{font-size:70px}.archive-statement{font-size:19px}.archive-directory{grid-template-columns:1fr;gap:0;padding:14px 20px;margin-top:25px}.archive-folder{min-height:0;padding:16px 0}.archive-folder h3{font-size:21px}.archive-folder p{max-width:none}}
/* Archive as unobstructed text over the desk photograph */
.archive-section{background-position:center center;overflow-y:auto}
.archive-section:before{display:none}
.archive-shell{width:min(55vw,900px);max-width:none;min-height:100%;margin:0;padding:102px clamp(26px,5vw,90px) 55px;color:#f8f3e9;text-shadow:0 2px 8px #14233888}
.archive-head{display:block}
.archive-head .eyebrow{color:#e6dfd2}
.archive-head h2{font-size:clamp(72px,7vw,116px);color:#fff8eb;margin-top:14px}
.archive-statement{max-width:620px;margin:12px 0 0;color:#f4ead9;font:italic 18px/1.45 Georgia,serif}
.archive-directory{display:block;margin-top:32px;padding:0;background:none;backdrop-filter:none;box-shadow:none}
.archive-folder{display:grid;grid-template-columns:minmax(125px,175px) minmax(0,1fr);align-items:baseline;gap:13px;min-height:0;padding:7px 0;border:0;background:none}
.archive-folder h3{font:400 16px/1.3 Georgia,serif;letter-spacing:.08em;margin:0;color:#fff7e9;white-space:nowrap}
.archive-folder p{font-size:12px;line-height:1.55;color:#eee7dd;max-width:none;margin:0}
@media(max-width:900px){.archive-shell{width:min(70vw,760px);padding-top:100px}.archive-directory{margin-top:25px}.archive-folder{grid-template-columns:150px minmax(0,1fr)}.archive-statement{font-size:17px}}
@media(max-width:560px){.archive-section{background-position:16% center}.archive-shell{width:100%;padding:93px 24px 42px}.archive-head h2{font-size:70px}.archive-statement{font-size:16px;max-width:320px}.archive-directory{margin-top:25px}.archive-folder{grid-template-columns:1fr;gap:3px;padding:8px 0}.archive-folder h3{font-size:15px}.archive-folder p{font-size:11px}}
.archive-directory .archive-folder{color:inherit;text-decoration:none;cursor:pointer}
.archive-directory .archive-folder:hover h3,.archive-directory .archive-folder:focus-visible h3{text-decoration:underline;text-underline-offset:4px}
.archive-directory .archive-folder:focus-visible{outline:2px solid #fff0d9;outline-offset:3px}
.notes-panel{width:min(830px,60%);padding-bottom:75px}
.note-entry{display:grid;grid-template-columns:65px minmax(0,1fr);gap:20px;padding:24px 0;border-bottom:1px solid #ffffff35}
.note-number{font:14px Georgia,serif;color:#cda777;padding-top:3px;white-space:nowrap}
.note-entry strong{display:block;font-size:12px;font-weight:500;letter-spacing:.14em;color:#dbc3a5}
.note-entry h3{font:400 19px/1.6 Georgia,"Noto Sans SC",serif;margin:8px 0}
.note-entry p{font-size:12px;line-height:1.85;color:#b7bec6;max-width:48ch}
.note-entry small{display:block;font-size:10px;letter-spacing:.06em;color:#d0b99a;margin-top:12px}
.note-entry:hover h3{text-decoration:underline;text-underline-offset:5px}
.note-entry:focus-visible,.note-reading a:focus-visible{outline:2px solid var(--rust);outline-offset:5px}
.note-reading-shell{max-width:920px;margin:0 auto;padding:110px 40px 70px}
.note-back{display:inline-block;font-size:11px;letter-spacing:.15em;margin-bottom:55px}
.note-reading-shell header{border-bottom:1px solid var(--line);padding-bottom:35px;margin-bottom:45px}
.note-english-title{font:400 clamp(23px,3vw,39px) Georgia,serif;letter-spacing:.04em;margin:20px 0 13px;color:#8b725d}
.note-reading h1{font:400 clamp(30px,4vw,49px)/1.45 Georgia,"Noto Sans SC",serif;max-width:18em}
.note-prose{max-width:700px;margin:0 auto;font:17px/2.05 Georgia,"Noto Sans SC",serif}
.note-prose p{margin:0 0 1.55em;white-space:pre-line}
.note-pending{display:block;font:12px "DM Sans","Noto Sans SC",sans-serif;color:#928b80;margin-top:35px}
.note-reading-nav{display:flex;justify-content:space-between;align-items:start;gap:30px;border-top:1px solid var(--line);padding-top:25px;margin-top:65px;font-size:12px}
.note-reading-nav>a:last-child{display:grid;gap:10px;text-align:right;max-width:60%}
.note-reading-nav small{font-size:10px;letter-spacing:.13em;color:#9a795f}
@media(max-width:800px){.notes-panel{width:80%}}
@media(max-width:560px){.notes-panel{width:100%;padding:105px 24px 50px}.note-entry{grid-template-columns:48px minmax(0,1fr);gap:13px;padding:22px 0}.note-number{font-size:12px}.note-entry h3{font-size:17px}.note-entry strong{font-size:10px}.note-reading-shell{padding:100px 25px 50px}.note-back{margin-bottom:35px}.note-reading-shell header{margin-bottom:30px}.note-prose{font-size:16px;line-height:1.95}.note-reading-nav{gap:15px}.note-reading-nav>a:last-child{max-width:65%}}

/* Completed LAB experiment entry */
.lab-index .lab-experiment-link{display:grid;grid-template-columns:35px 1fr;gap:6px 16px;color:inherit;text-decoration:none;padding:18px 0;align-items:baseline}.lab-experiment-link small,.lab-experiment-link .lab-open{grid-column:2}.lab-experiment-link .lab-open{font-size:10px;letter-spacing:.12em;opacity:.65;margin-top:6px}.lab-experiment-link:hover strong{color:var(--accent,#c6814b)}.lab-experiment-link:focus-visible{outline:2px solid #c6814b;outline-offset:6px}

.lab-index .lab-experiment-link{grid-template-columns:50px 1fr;border-bottom:1px solid #ffffff43}.lab-index .lab-experiment-link .lab-open{grid-row:auto;font-family:inherit}

.music-toggle{display:block;background:none;border:0;color:inherit;cursor:pointer;font:10px Georgia,serif;letter-spacing:.12em;max-width:220px;text-align:right}.music-toggle span{color:inherit}.music-browse-shell{position:fixed;inset:0;z-index:50;background:#101414}.music-browse-shell[hidden]{display:none}.music-browse-shell iframe{width:100%;height:100%;border:0}.music-floating{position:absolute;right:22px;bottom:22px;border:1px solid #ffffff55;background:#101414dd;color:#eee;border-radius:50%;width:44px;height:44px;cursor:pointer}@media(max-width:800px){.music-toggle{display:block;font-size:9px;max-width:90px;flex-shrink:0}.site-header{gap:10px}.site-header nav{gap:7px 10px;max-width:65%}}

/* V1 audit: reserve two navigation rows at narrow widths. */
@media(max-width:400px){.site-header{min-height:78px;height:78px;padding:12px 16px;align-items:center;gap:10px}.site-header .brand{flex-shrink:0}.site-header nav{display:grid;grid-template-columns:repeat(3,auto);flex:1;max-width:none;margin-left:auto;gap:8px 10px;justify-content:end}.site-header nav a{font-size:9px;white-space:nowrap;padding:5px 0}.site-header .music-toggle{width:28px;max-width:28px;min-height:36px;margin:0;flex-shrink:0;font-size:0}.site-header .music-toggle span{display:none}.site-header .music-toggle:before{content:"♫";font-size:16px}.site-header .music-toggle[aria-pressed="true"]:before{content:"Ⅱ"}}
