/* Reading rhythm: introduction, team, useful objects, career, play. */
:root{--section-space:clamp(72px,8vw,128px)}
.hero{padding-top:70px;column-gap:6%;grid-template-columns:1fr 1fr;align-items:center;overflow:clip}
.hero-copy{padding-bottom:0}.hero-follow{max-width:475px;font-size:clamp(22px,2vw,28px)}
.hero-role{margin-top:32px;font-size:19px;line-height:1.5}.hero-role strong{display:block;font-weight:700}.hero-role span{font-size:17px;color:#535a4e;display:block;margin-top:3px}
.play-object{width:100%;max-width:585px;padding:15px 8px 45px;margin:0;justify-self:end}
.cabinet{width:100%;transform:rotate(-3deg) rotateY(-3deg);padding:17px}
.cabinet-top,.cabinet-bottom{font-size:13px}.screen{aspect-ratio:1.12;container-type:inline-size;background:#9dc9e6}.screen canvas{object-fit:cover}
.object-shadow{bottom:6%;height:8%;left:5%;width:90%}
.story-picker{position:absolute;inset:0 0 auto;display:flex;background:#f5f4e8;border-bottom:1px solid #627560;z-index:3}
.story-picker button{flex:1;min-width:0;background:transparent;border:0;padding:16px 5px;font-size:clamp(12px,3.25cqw,17px);font-weight:700;line-height:1.25;border-bottom:3px solid transparent}
.story-picker button+button{border-left:1px solid #c7ccba}.story-picker button[aria-pressed=true]{background:#e1e9d3;border-bottom-color:#a53a23}
.start-hint{position:absolute;bottom:11%;left:0;width:100%;text-align:center;font-size:clamp(12px,3.2cqw,17px);color:#fff6dd;text-shadow:1px 1px #3b2c1c;background:#503c24d9;padding:8px 4px}
.question-block{top:35%}.screen.made .question-block{display:none}.screen.made .start-hint{display:none}
.console-story{position:absolute;inset:53px 0 0;background:#e1e9d3;padding:22px 24px 16px;display:flex;flex-direction:column;z-index:2;opacity:0;transition:opacity .3s}
.console-story[hidden]{display:none}.screen.made .console-story{opacity:1}
.console-progress{display:flex;justify-content:space-between;font-size:clamp(11px,2.8cqw,14px);color:#53634a;margin-bottom:12px}
.console-story h2{font-size:clamp(21px,5.9cqw,32px);line-height:1.05;letter-spacing:-.035em;text-wrap:balance}
#story-evidence{margin:17px 0 13px;display:grid;gap:1px;border:1px solid #a6b39a;background:#a6b39a}
.evidence-line{background:#f8f6e8;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:clamp(12px,3.2cqw,17px);line-height:1.25}
.evidence-line strong{font-weight:700;white-space:nowrap}.evidence-line.is-key{background:#f6d2a8}
.console-story p{font-size:clamp(13px,3.3cqw,18px);line-height:1.45;margin:0}
#advance-story{margin-top:auto;flex-shrink:0;border:0;border-bottom:1px solid #6e7c5e;text-align:left;background:none;color:#8b2f1b;font-weight:700;padding:12px 0 8px;font-size:clamp(13px,3.5cqw,18px)}
#advance-story:disabled{opacity:.6}.console-story small{font-size:clamp(10px,2.5cqw,13px);color:#53634a;margin-top:10px}
.curiosity{margin-top:55px;padding-block:10px 32px;gap:40px}.curiosity summary{font-size:17px}.curiosity details>div{font-size:17px;line-height:1.65;padding-left:0}
.team-bridge{padding:85px var(--pad) 90px;display:flex;align-items:end;justify-content:space-between;gap:25px;background:#e7e9df}
.team-bridge p{font:500 clamp(35px,4.9vw,74px)/1.1 'Clash Display';letter-spacing:-.04em}.team-bridge strong{font-weight:500;color:#a63822}
.team-bridge a{width:64px;height:64px;display:grid;place-items:center;border:1px solid #88937c;border-radius:50%;font-size:30px;flex:none;transition:transform .3s}.team-bridge a:hover{transform:translateY(6px)}
.work{padding-block:var(--section-space)}
.work-masthead{display:grid;grid-template-columns:1.15fr 1fr auto;gap:35px;align-items:center;border-bottom:1px solid #697664;padding-bottom:40px;margin-bottom:65px}
.work-masthead h2{font-size:clamp(48px,6vw,87px);letter-spacing:-.045em;white-space:nowrap}.dayglow-sun{color:#f6c790;display:inline-block;font-family:Arial;font-size:.65em;vertical-align:middle;margin-left:16px}
.work-masthead p{font:500 clamp(25px,2.6vw,38px)/1.15 'Clash Display';letter-spacing:-.02em}.work-masthead>span{font-size:16px;line-height:1.8;color:#d0d9c6}
.work-intro{grid-template-columns:1fr 1fr;gap:9%;align-items:center;margin-bottom:85px}.work-intro h3{font-size:clamp(42px,5vw,70px);line-height:1.08;color:#d8e2c5}.work-intro p{font-size:21px;line-height:1.65;max-width:43ch}
.team-story{display:grid;grid-template-columns:.9fr 1fr;gap:12%;align-items:center;margin-bottom:90px}
.team-story h3{font-size:clamp(30px,3vw,43px);line-height:1.1;margin-bottom:25px}.team-story-copy p{font-size:19px;line-height:1.65;color:#e3e8db;max-width:48ch}
.question-notes{position:relative;background:#efe6c4;color:#263027;padding:40px;transform:rotate(-3deg);box-shadow:3px 6px 0 #8f927b,0 20px 40px #101b1a80;max-width:470px;justify-self:center}
.note-pin{position:absolute;top:-10px;left:45%;width:65px;height:26px;transform:rotate(6deg);background:#eee8c6b3;border:1px solid #fff4;backdrop-filter:blur(3px)}
.note-hand{font-size:16px;color:#635f46}.question-notes blockquote{font:500 clamp(31px,3vw,43px)/1.14 'Clash Display';letter-spacing:-.03em;margin:25px 0 30px}
.note-result{border-top:1px solid #a9a283;padding-top:23px;display:flex;gap:20px;align-items:center;font-size:19px;line-height:1.4}.note-result canvas,.team-payoff canvas{image-rendering:pixelated;width:48px;height:54px;flex:none}
.team-payoff{display:grid;grid-template-columns:48px 1fr auto;gap:28px;align-items:start;border-top:1px solid #697664;padding-top:38px}.team-payoff h3{font-size:30px;margin-bottom:16px}.team-payoff p{font-size:19px;line-height:1.65;max-width:64ch;color:#e3e8db}.team-payoff>a{align-self:end;font-size:16px;margin-left:25px}
.collection{padding-block:var(--section-space);background:#e6eadc}.collection-heading h2{font-size:clamp(48px,6vw,84px)}.collection-heading>div{max-width:390px}.collection-heading p{font-size:22px}.shelf-instruction{display:none}
.artifact-shelf{grid-template-columns:1fr 1fr;gap:9%;margin-top:45px}.shelf-item{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center;border-top:1px solid #a4b197;border-bottom:1px solid #a4b197;padding-block:22px}.object-stage{height:340px;border:0}.shelf-caption{padding:0;min-height:0}.shelf-caption>strong{font-size:31px}.shelf-caption>span{font-size:17px;line-height:1.6;margin-top:14px}.shelf-caption>b{position:static;display:block;margin-top:20px}
.book-object{width:220px;height:286px}.book-cover strong{font-size:38px}.notebook-object{width:204px;height:273px}.notebook-label{font-size:38px}.notebook-label small{font-size:14px}
.workshop{padding:var(--section-space) var(--pad);display:grid;grid-template-columns:.8fr 1.2fr;gap:8%;align-items:center;background:#efe7dc}.workshop h2{font-size:clamp(38px,4vw,60px);line-height:1.07;margin:30px 0 25px}.workshop p{font-size:19px;line-height:1.65;max-width:41ch}.workshop .text-link{margin-top:28px;font-size:17px}.workshop-mark{font:500 40px/1 'Clash Display';color:#a43722;border:1px solid #bf8f78;padding:12px 18px;display:inline-block;transform:rotate(-7deg);box-shadow:4px 4px 0 #d3bbaa}
.workshop-preview{display:block;background:#fbf8f2;box-shadow:0 18px 35px #58412c20;transform:rotate(1.5deg);border:1px solid #bfb3a1}.workshop-preview img{display:block;width:100%;height:auto}.workshop-preview>span{padding:20px 22px;display:flex;gap:16px;justify-content:space-between;font-size:15px}.workshop-preview b{font-weight:500}
.career{padding-block:var(--section-space)}.career-heading{margin-bottom:65px}.career-heading h2{font-size:clamp(45px,5vw,74px)}
.career-origins{display:grid;grid-template-columns:1.3fr 1fr;gap:12%;border-block:1px solid var(--line);padding-block:40px;margin-bottom:65px}.career-origins article>span{font-size:16px;color:#5a6551}.career-origins h3{font-size:33px;line-height:1.13;margin:18px 0 24px}.career-origins dl{margin:0}.career-origins dl>div+div{margin-top:18px}.career-origins dt{font-weight:700;font-size:18px}.career-origins dd{margin:3px 0 0;font-size:16px;color:#535e4c}.career-origins p{font-size:18px;max-width:36ch}.origin-role{font-weight:700;margin-bottom:18px}
.founder{gap:9%;grid-template-columns:.85fr 1.15fr;padding-bottom:65px}.founder-art{min-height:360px}.founder-story h3{font-size:40px}.founder-story .role-line{font-size:18px!important}.founder-story p{font-size:19px}
.career-ledger article{position:relative;padding:38px 0 42px}.career-row{grid-template-columns:150px 1fr 240px;gap:35px}.career-company{font-size:36px}.career-company small{font-size:18px;max-width:none}.career-date{font-size:17px}.career-result{font-size:33px}.career-result small{font-size:16px}.career-detail{display:block;padding:20px 275px 0 185px;font-size:19px}.career-detail>span{display:none}
.recent-builds{margin-top:25px;padding:50px;background:#e8eadf;grid-template-columns:1fr 1.2fr;gap:10%;border:0}.recent-builds h3{font-size:45px;margin-bottom:35px}.practice-story h4{font-size:30px;margin-bottom:10px}.practice-story .practice-role{font-size:16px;margin-bottom:22px}.practice-story p{font-size:18px!important;line-height:1.65}.engagements h4{font-size:33px}.engagements .engagement-role{font-weight:700;font-size:17px;margin-top:0}.engagements p{font-size:18px;margin-top:13px}.engagements article+article{padding-top:30px;margin-top:30px}
.career-now{border:1px solid #a8b49b;padding:50px;margin-top:38px;background:#d8e2c8;position:relative}.career-now-label{display:block;font-size:18px;color:#465b3a;margin-bottom:20px}.career-now h3{font-size:65px}.career-now .now-role{font-size:24px;font-weight:500;margin-top:17px}.career-now>p:not(.now-role){font-size:23px;margin-top:22px}.career-now>a{position:absolute;bottom:50px;right:50px;font-size:17px}
.personal{display:block;padding-block:var(--section-space);background:#e9ede2}.personal-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:50px}.personal h2{font-size:clamp(42px,5vw,72px);margin:0}.personal-heading p{font-size:19px;line-height:1.6;max-width:35ch}.project-pair{display:grid;grid-template-columns:1fr 1fr;gap:40px}.project-card{display:block;min-width:0}.project-image{display:block;aspect-ratio:1.55;background:#183b3a;border:1px solid #a5b198;overflow:hidden}.project-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.project-card:hover img{transform:scale(1.025)}.project-title{display:flex;justify-content:space-between;align-items:center;font:500 32px/1.15 'Clash Display';margin-top:25px}.project-title b{font-weight:400}.project-card>span:last-child{display:block;font-size:17px;margin-top:12px;color:#505c45}
@media(min-width:1600px){.team-bridge,.workshop{padding-inline:max(var(--pad),calc((100vw - 1450px)/2))}}
@media(max-width:1150px){.hero{column-gap:5%;padding-top:50px}.hero-role{font-size:18px}.cabinet{padding:13px}.cabinet-top,.cabinet-bottom{font-size:11px}.screen{aspect-ratio:.97}.console-story{padding:18px;inset-block-start:47px}.story-picker button{padding-block:14px}.work-masthead{grid-template-columns:1fr 1fr}.work-masthead>span{grid-column:1/-1;display:none}.work-intro p,.team-story-copy p{font-size:18px}.team-payoff{grid-template-columns:48px 1fr}.team-payoff>a{grid-column:2;margin:0;justify-self:start}.artifact-shelf{gap:6%}.shelf-item{grid-template-columns:1fr;gap:0}.object-stage{height:330px}.shelf-caption{padding:15px 15px 25px}.shelf-caption>b{float:right;margin-top:-24px}.career-row{grid-template-columns:125px 1fr 190px;gap:25px}.career-detail{padding-left:150px;padding-right:0;max-width:850px}.career-result{font-size:29px}.career-company{font-size:33px}.career-company small{font-size:17px}.career-origins{gap:7%}.recent-builds{padding:35px}.personal-heading{display:block}.personal-heading p{margin-top:24px;max-width:none}.personal-heading br{display:none}}
@media(max-width:700px){:root{--section-space:65px}.hero{padding-top:32px}.hero h1{font-size:clamp(86px,21vw,140px)}.hero-follow{font-size:22px}.hero-role{font-size:19px;margin-top:25px}.hero-role span{font-size:16px}.play-object{width:100%;max-width:460px;margin:40px auto 0;padding:10px 7px 32px}.cabinet{transform:rotate(-2deg);padding:12px}.screen{aspect-ratio:.83}.screen canvas{object-fit:fill}.cabinet-top,.cabinet-bottom{font-size:11px}.story-picker button{font-size:13px;padding:13px 3px;min-height:45px}.console-story{inset-block-start:45px;padding:18px 15px 12px}.console-progress{font-size:12px;margin-bottom:12px}.console-story h2{font-size:25px}.evidence-line{font-size:14px;padding:10px}.console-story p{font-size:15px;line-height:1.4}.console-story small{font-size:10px}.start-hint{font-size:12px}#advance-story{font-size:15px}.curiosity{margin-top:30px;padding-bottom:20px}.curiosity details>div{font-size:16px;padding-bottom:20px}.team-bridge{padding-block:50px;align-items:center}.team-bridge p{font-size:32px}.team-bridge br{display:none}.team-bridge strong{display:block}.team-bridge a{height:43px;width:43px;font-size:24px}.work-masthead{display:block;padding-bottom:30px;margin-bottom:38px}.work-masthead h2{font-size:61px}.work-masthead p{font-size:28px;margin-top:22px}.work-masthead>span{display:block;font-size:15px;margin-top:16px}.work-masthead>span br{display:none}.work-intro{grid-template-columns:1fr;gap:26px;margin-bottom:50px}.work-intro h3{font-size:42px}.work-intro h3 br:nth-child(2){display:none}.work-intro p{font-size:18px}.team-story{grid-template-columns:1fr;gap:45px;margin-bottom:42px}.question-notes{padding:30px;max-width:410px;width:calc(100% - 12px)}.question-notes blockquote{font-size:34px}.team-story h3{font-size:33px}.team-story-copy p{font-size:18px}.team-payoff{grid-template-columns:36px 1fr;gap:20px;padding-top:30px}.team-payoff canvas{width:36px;height:40.5px}.team-payoff h3{font-size:29px}.team-payoff p{font-size:17px}.team-payoff>a{font-size:15px}.collection-heading h2{font-size:57px}.collection-heading p{font-size:20px}.artifact-shelf{display:block;margin-top:30px}.shelf-item{grid-template-columns:1fr 1fr;gap:25px;padding-block:15px}.shelf-item+.shelf-item{border-top:0}.object-stage{height:270px}.shelf-caption{padding:0}.shelf-caption>strong{font-size:27px}.shelf-caption>span{font-size:16px}.shelf-caption>b{float:none;margin-top:15px}.book-object{width:145px;height:205px}.book-cover strong{font-size:27px}.notebook-object{width:145px;height:205px}.notebook-label{font-size:29px}.notebook-label small{font-size:11px}.workshop{grid-template-columns:1fr;gap:38px}.workshop h2{font-size:40px;margin-top:28px}.workshop p{font-size:18px}.workshop-preview{transform:none}.workshop-preview>span{padding:15px;font-size:13px}.workshop-preview b{display:none}.career-heading h2{font-size:43px}.career-heading{margin-bottom:38px}.career-origins{grid-template-columns:1fr;gap:35px;margin-bottom:40px;padding-block:30px}.career-origins article+article{border-top:1px solid var(--line);padding-top:30px}.career-origins h3{font-size:30px;margin-bottom:22px}.career-origins h3 br{display:none}.career-origins dt{font-size:17px}.career-origins dd{font-size:15px}.career-origins p{font-size:17px}.founder{grid-template-columns:1fr;gap:30px;padding-bottom:40px}.founder-art{min-height:290px}.founder-story h3{font-size:34px}.founder-story p{font-size:18px}.career-ledger article{padding-block:30px}.career-row{grid-template-columns:1fr;gap:12px}.career-company{font-size:35px}.career-company small{font-size:17px}.career-date{font-size:15px}.career-result{font-size:30px;margin-top:8px}.career-result small{font-size:15px}.career-detail{padding:20px 0 0;font-size:18px}.recent-builds{padding:28px 22px;grid-template-columns:1fr;gap:35px;margin-inline:-5px}.recent-builds h3{font-size:37px;margin-bottom:28px}.recent-builds h3 br{display:none}.engagements h4{font-size:32px}.engagements p{font-size:17px}.career-now{padding:30px 24px}.career-now h3{font-size:54px}.career-now .now-role{font-size:21px}.career-now>p:not(.now-role){font-size:21px}.career-now>a{position:static;margin-top:30px;font-size:16px}.personal-heading{margin-bottom:30px}.personal h2{font-size:41px}.personal-heading p{font-size:18px}.project-pair{grid-template-columns:1fr;gap:40px}.project-title{font-size:29px;margin-top:20px}.project-card>span:last-child{font-size:16px}.exhibit-visual .notebook-label{font-size:32px}}
@media(max-width:370px){.nav .identity>span:last-child{font-size:13px}.nav nav{gap:8px;font-size:11px}.screen{aspect-ratio:.72}.console-story h2{font-size:23px}.console-story p{font-size:14px}.evidence-line{font-size:12px}.shelf-item{gap:15px}.book-object{width:125px;height:185px}.book-cover strong{font-size:24px}.notebook-object{width:125px;height:185px}.notebook-label{font-size:25px}}
.screen{aspect-ratio:auto;height:455px}.screen canvas{object-fit:cover}.arrival-toggle{border:0;background:#293f31;color:#f8f6e8;padding:10px 8px;font-size:14px;text-align:left}.arrival-toggle[aria-pressed=true]{background:#47633c}
.project-card:first-child .project-image{background:#fff6e8}.project-card:first-child .project-image img{object-fit:contain}.personal-heading h2 span{display:block}
@media(min-width:701px) and (max-width:1150px){.work-masthead>span{display:block;grid-column:2;margin-top:-18px;font-size:15px}}
@media(max-width:700px){.work-masthead>span br{display:block}}
@media(max-width:1150px){.screen{height:425px}}
@media(min-width:701px) and (max-width:900px){.hero{grid-template-columns:1fr}.hero-copy{max-width:650px}.hero h1{font-size:110px}.hero-follow{max-width:600px}.play-object{justify-self:center;max-width:540px;margin:40px auto 0}.screen{height:455px}}
@media(max-width:700px){.screen{height:485px}}
@media(max-width:370px){.screen{height:515px}}
@media(prefers-reduced-motion:reduce){.question-notes,.workshop-preview,.workshop-mark{transform:none}.console-story{transition:none}}
/* Three useful handoffs, each with a distinct object and a real link. */
.artifact-shelf{grid-template-columns:repeat(3,minmax(0,1fr));gap:5%}
.shelf-item{grid-template-columns:1fr;gap:0;text-decoration:none;width:100%;cursor:pointer}
.shelf-caption{padding:20px 0 28px}.shelf-caption>strong{font-size:29px}
.object-stage{height:335px}.exhibit-next{flex-wrap:wrap}
.map-object{display:flex;flex-direction:column;justify-content:space-between;position:relative;width:220px;height:274px;padding:30px 20px 23px;background:#efce7e;color:#303b32;box-shadow:7px 8px 0 #d0ac63,16px 24px 28px #34442430;transform:rotate(4deg);transition:transform .5s ease;border-radius:2px 10px 4px 3px}
.map-object:before{content:'';position:absolute;left:0;top:0;bottom:0;width:12px;background:#3f513222}
.map-tab{position:absolute;top:-18px;left:0;background:#efce7e;padding:6px 12px;border-radius:6px 6px 0 0;font-size:10px}
.map-title{font:500 37px/1 'Clash Display',sans-serif;letter-spacing:-.04em}
.map-object svg{width:100%;height:75px;overflow:visible}.map-object svg path{fill:none;stroke:#4c5a40;stroke-width:2}.map-object svg circle{fill:#3e523b}.map-object svg .missing-node{fill:#efce7e;stroke:#a63e26;stroke-width:2;stroke-dasharray:3 3}
.map-foot{font-size:10px;border-top:1px solid #9f854b;padding-top:12px}
.shelf-item:hover .map-object,.shelf-item:focus-visible .map-object{transform:translateY(-12px) rotate(-2deg)}
@media(max-width:900px) and (min-width:701px){.artifact-shelf{gap:4%}.book-object,.notebook-object,.map-object{width:170px;height:230px}.book-cover strong,.notebook-label,.map-title{font-size:30px}.object-stage{height:285px}.shelf-caption>strong{font-size:26px}}
@media(max-width:700px){.artifact-shelf{display:block}.shelf-item{grid-template-columns:1fr 1fr;gap:25px}.object-stage{height:270px}.shelf-caption{padding:0}.shelf-caption>strong{font-size:26px}.map-object{width:145px;height:205px;padding:25px 15px 15px}.map-title{font-size:28px}.map-object svg{height:55px}.map-foot{font-size:8px}.exhibit-visual .map-object{width:190px;height:240px}}
@media(max-width:370px){.shelf-item{gap:15px}.map-object{width:125px;height:185px}.map-title{font-size:24px}.shelf-caption>strong{font-size:24px}}
@media(prefers-reduced-motion:reduce){.map-object{transform:none!important}}
/* Final reading pass: captions stay distinct and contact type has room. */
.project-card>span:last-child{max-width:34ch;line-height:1.55}
.footer-top>a{letter-spacing:-.035em;gap:30px}
@media(max-width:700px){.footer-top>a{font-size:clamp(48px,13vw,73px);gap:16px}}

/* On shorter desktop screens, the complete introduction gets the first frame. */
@media(min-width:1100px) and (max-height:800px){
  .hero#top{padding-top:30px;align-items:start}
  .hero#top .hero-copy{align-self:start;padding-top:clamp(18px,calc(100svh - 650px),60px)}
  .hero#top .hero-follow{margin-top:26px}
  .hero#top .hero-role{margin-top:24px}
  .hero#top .play-object{align-self:start;padding-block:15px 35px}
  .hero#top .screen{height:clamp(400px,calc(100svh - 275px),510px)}
}

/* The investigation is the focal event; ambient motion resumes on reset. */
.hero .pixel-weather{transition:opacity .65s ease}
.hero:has(.screen.made) .pixel-weather{opacity:.16}
.hero:has(.screen.made) :is(.weather-cloud,.weather-duck,.duck-flight-bob,.cabinet){animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.hero .pixel-weather{transition:none}}
