/* Readable, full-screen stages. Native scrolling drives the camera. */
html{scroll-behavior:auto}.nav{position:fixed;inset:0 0 auto;height:74px;background:#f7f4edee;backdrop-filter:blur(14px)}.journey{height:1200svh;position:relative}.journey-screen{position:sticky;top:0;height:100svh;overflow:hidden;isolation:isolate;background:#eee8dd;perspective:1400px}.desk-world{position:absolute;inset:0;transform-origin:70% 63%;will-change:transform,opacity}.desk-world img{width:100%;height:100%;object-fit:cover}.desk-wash{position:absolute;inset:0;background:linear-gradient(90deg,#f7f4edf0,#f7f4ed70 45%,transparent 80%)}.page-surface{position:absolute;inset:10% 4% 8%;background:#fcfaf4;box-shadow:0 30px 100px #221d3433;opacity:0;transform-origin:70% 70%;will-change:transform,opacity}.page-surface:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.9%,#cabfa930 50%,transparent 50.1%);pointer-events:none}.page-surface>span{position:absolute;right:30px;bottom:22px;font:9px Georgia,serif;letter-spacing:.2em;color:#aca394}.scene{position:absolute;inset:12% 7% 11%;opacity:0;visibility:hidden;transform-origin:center;will-change:transform,opacity;z-index:2}.scene-opening{inset:21% 7% 10%;opacity:1;visibility:visible}.scene h1{font:500 clamp(56px,6.7vw,104px)/1.25 var(--serif);letter-spacing:-.05em;margin:0 0 24px}.scene h1 em{font-style:normal;color:#765722}.scene h2{font:500 clamp(38px,4.6vw,72px)/1.35 var(--serif);letter-spacing:-.045em;margin:0 0 20px}.scene .eyebrow{font-size:11px;letter-spacing:.15em;margin-bottom:20px}.scene-lead{font-size:clamp(15px,1.5vw,22px);line-height:1.9;margin:10px 0 24px}.signature{font-size:13px}.journey-link{display:inline-block;margin-top:12px;font-size:13px}.enter-hint{display:block;margin-top:24px;font-size:11px;letter-spacing:.08em}.scene-problem h2{position:relative;z-index:1}.scene-problem .scene-lead{max-width:45%}.question-field{position:absolute;inset:8% 0 0 44%}.loose-note{position:absolute;left:0;top:10%;width:90%;padding:25px 32px;box-shadow:0 20px 45px #3d304523;background:#eee0af;will-change:transform}.loose-note:nth-child(2){top:39%;left:10%;background:#dce6dd}.loose-note:nth-child(3){top:68%;left:-3%;background:#e7dff0}.loose-note small{display:block;font-size:12px;color:#6c6149}.loose-note strong{display:block;font-size:clamp(22px,2.4vw,36px);font-weight:500;line-height:1.5;margin:5px 0}.loose-note>span{font-size:14px}.scene-note{font-size:11px;color:var(--muted);position:absolute;bottom:0;left:0}.issue-path{max-width:1150px;margin:10px auto}.issue-goal{text-align:center}.issue-goal small{display:block;font-size:13px;color:#766241}.issue-goal strong{font-size:clamp(26px,3vw,42px);font-weight:500}.path-arrow{display:block;text-align:center;font-size:30px;line-height:1.5;color:#9a7735}.issue-options{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:24px}.issue-options>div{padding:26px;background:#eae7df;border:1px solid #d8d2c5;min-height:170px}.issue-options small{font-size:12px;display:block;margin-bottom:12px;color:#696158}.issue-options strong{font-size:clamp(20px,2.1vw,30px);font-weight:500;line-height:1.65}.issue-options .chosen{background:#29233f;color:#fff;box-shadow:0 18px 45px #29233f22}.chosen small{color:#edc984}.chosen>span{display:block;font-size:11px;color:#efc76e;margin-top:10px}.issue-decision{padding:20px 24px;margin-top:25px;background:#ead8ab;display:flex;gap:24px;align-items:center}.issue-decision>span{font-size:12px;white-space:nowrap}.issue-decision strong{font-size:clamp(17px,1.8vw,26px);font-weight:500}.role-map{display:grid;grid-template-columns:1fr .35fr 1fr;align-items:center;margin-top:4%;max-width:1150px;margin-left:auto;margin-right:auto}.role-lane{padding:34px 40px;background:#e7e0d3;border-top:4px solid #ac813b}.role-lane.ai{background:#29233f;color:#fff;border-color:#8d85b9}.role-badge{font:11px Georgia,serif;letter-spacing:.2em}.role-lane h3{font:34px/1.5 var(--serif);margin:15px 0}.role-lane p{font-size:20px;line-height:1.9}.role-output{display:block;font-size:13px;border-top:1px solid #94857380;padding-top:16px}.role-transfer{text-align:center;display:flex;flex-direction:column;gap:20px;font-size:13px;color:#806137}.role-transfer b{font-size:13px;font-weight:400}.plan-board{background:#f4f0e7;padding:24px 30px;border:1px solid #d8cfbe;max-width:1160px;margin:auto}.plan-head{display:grid;grid-template-columns:22% repeat(3,1fr);font-size:14px;margin-bottom:15px;text-align:center}.plan-head>span{text-align:left;font-size:12px}.plan-row{display:grid;grid-template-columns:22% repeat(3,1fr);padding:12px 0;background:linear-gradient(90deg,transparent 22%,#d9d1c3 22.1%,transparent 22.2%,transparent 48%,#d9d1c3 48.1%,transparent 48.2%,transparent 74%,#d9d1c3 74.1%,transparent 74.2%);align-items:center}.plan-row>strong{font-size:16px;font-weight:500}.plan-bar{padding:15px 18px;border-radius:3px;font-size:17px;transform-origin:left;background:#d8c29a;grid-column:2}.bar-two{grid-column:3;background:#b4c4b9}.bar-three{grid-column:4;background:#39304f;color:#fff}.checkpoints{display:flex;justify-content:space-between;gap:15px;margin-top:25px;font-size:12px}.return-loop{border-bottom:2px solid #b78a3b;padding:18px 0 8px;color:#876226;font-size:14px;text-align:center}.scene-made{text-align:center}.scene-made h2{margin-bottom:8px}.real-wall{position:absolute;top:30%;left:-2%;width:104%;height:70%;perspective:1000px}.real-screen{position:absolute;padding:8px;background:#fffdf6;box-shadow:0 28px 70px #20182e42;transform-origin:50% 60%;will-change:transform;overflow:hidden}.real-screen img{width:100%;aspect-ratio:16/10;object-fit:contain;background:#e4e2df}.real-screen>span{display:block;padding:10px 6px;font-size:13px}.screen-main{width:58%;left:21%;top:0;z-index:3}.screen-left{width:33%;left:-2%;top:30%;z-index:2}.screen-right{width:33%;right:-2%;top:30%;z-index:2}.scene-final{inset:12% 6% 8%}.final-heading{position:relative;z-index:2;text-align:center}.final-heading h2{font-size:clamp(34px,3.7vw,58px);margin-bottom:12px}.final-heading>p:last-child{font-size:14px;margin:0}.story-ask{position:relative;width:min(680px,58%);max-height:58vh;margin:28px auto 0;background:#29233f;padding:26px 30px;color:#f7f4ed;z-index:4;overflow:auto;overscroll-behavior:contain;box-shadow:0 25px 70px #25203533;border-radius:8px}.story-ask .ask-panel-title{font:25px/1.5 var(--serif);margin:0 0 14px}.story-ask .question-chips{margin-bottom:16px}.story-ask textarea{font-size:13px}.story-ask .small{font-size:11px}.story-ask details{margin-top:16px}.story-ask #bio{color:#e5deed;font-size:12px}.source-links{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;margin-top:20px}.ask-orbit{position:absolute;inset:30% 0 2%;pointer-events:none;z-index:1}.ask-orbit img{position:absolute;object-fit:contain;width:23%;box-shadow:0 20px 40px #3f354329;background:#f7f4ed;padding:8px}.ask-orbit img:nth-child(1){left:-1%;top:5%;width:17%;height:90%;transform:rotate(-9deg);object-fit:cover}.ask-orbit img:nth-child(2){right:-1%;top:0;transform:rotate(9deg)}.ask-orbit img:nth-child(3){right:0;bottom:10%;transform:rotate(-7deg)}.guide{position:absolute;left:68%;top:43%;width:24%;z-index:5;pointer-events:none;will-change:transform,top,left,width}.guide-sprite{width:100%;aspect-ratio:3/4;background:url('assets/masa-guide-alpha.png') no-repeat;background-size:400% 100%;opacity:1;transform-origin:50% 100%}.guide-bubble{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);width:max-content;max-width:250px;background:#fffaf0;border:1px solid #b8aa93;border-radius:16px 16px 16px 0;padding:10px 16px;font-size:12px}.journey-bottom{position:absolute;inset:auto 5% 22px;display:flex;gap:25px;align-items:center;z-index:6;font-size:10px}.journey-progress{height:2px;background:#bfb7a480;flex:1}.journey-progress i{display:block;background:#a57933;height:2px;transform-origin:left;transform:scaleX(0)}.ask-waypoint{position:absolute;left:0;top:calc(96% - 96svh);width:1px;height:1px}.motion-controls{position:fixed;bottom:55px;right:25px;display:flex;gap:15px;background:#f7f4edef;border:1px solid #c8c0b3;border-radius:30px;padding:9px 15px;z-index:9;backdrop-filter:blur(8px);font-size:10px}.motion-controls button{background:none;font-size:10px;padding:0}.motion-controls a{text-decoration:none;border-left:1px solid #ccc;padding-left:15px}.motion-controls.past-journey{bottom:15px}.mobile-only{display:none}
/* Real work collection and image inspection. */
.portfolio-grid{gap:60px 30px}.actual-work:first-child,.actual-work:nth-child(3){grid-column:1/-1}.actual-visual{height:350px;position:relative;overflow:hidden;background:#e2ddd3;padding:18px;border:1px solid #d6cfc1}.actual-visual>img{width:100%;height:100%;object-fit:contain;transition:transform .5s}.actual-work:first-child .actual-visual{height:min(65vw,640px);padding:35px 8%}.actual-work:nth-child(3) .actual-visual{height:auto;padding:20px}.actual-work:nth-child(3) .actual-visual>img{height:auto}.character-actual{height:560px;background:#2a2134}.character-actual>img{object-fit:contain}.event-actual{height:560px;background:#e7dfd1}.full-video{position:absolute;right:15px;bottom:15px;background:#29233fe8;color:#fff;padding:9px 15px;border-radius:25px;font-size:11px}.work-open:hover .actual-visual>img{transform:scale(1.025)}.actual-work .card-body h3{font-size:29px;margin:10px 0}.read-case{font-size:12px}.work{padding-top:95px}.gallery-thumbs{display:grid;grid-template-columns:1fr 1fr;gap:15px}.expand-image{padding:0;background:transparent;color:inherit;width:100%;cursor:zoom-in}.expand-image img{width:100%;max-height:60vh;object-fit:contain}.expand-image>span{display:block;font-size:12px;padding:10px;background:#f7f4ed;color:#242237}.detail-media{padding:12px}.detail-media video{max-height:67vh;width:100%}.detail-media:has(img){background:#e4dfd6}.extra-film{margin:25px 0;font-size:13px}.extra-film video{display:block;max-width:100%;max-height:70vh;margin:20px auto}.extra-film:not([open]) video{display:none}#image-dialog{width:96vw;max-width:none;max-height:96svh;padding:50px 20px 20px;background:#17151c;color:#fff}#large-image{max-width:100%;max-height:none;width:auto;margin:auto}#close-image{position:sticky;float:right;right:0;top:0;width:42px;height:42px;border-radius:50%;font-size:25px;background:#fff;color:#222;z-index:3}#large-caption{font-size:12px;max-width:900px;margin:20px auto}.work-method{display:flex;list-style:none;padding:0;gap:20px;justify-content:space-between;border-top:1px solid #c5bdaf;padding-top:25px}.work-method li{flex:1}.work-method span{display:block;color:#8a682e;font-size:12px}.work-method strong{font-size:14px}.work-method p{font-size:12px}.nav nav a.nav-ai{display:block}
/* Reading mode: all stages are present in a natural document flow. */
body.quiet .journey{height:auto}body.quiet .journey-screen{height:auto;overflow:hidden;padding:115px 5% 60px;perspective:none}body.quiet .scene{position:relative;inset:auto;opacity:1!important;visibility:visible!important;transform:none!important;margin:0 auto 90px;min-height:580px;width:100%}body.quiet .scene-opening{min-height:690px}body.quiet .desk-world{height:850px;opacity:.4!important;transform:none!important}body.quiet .page-surface,body.quiet .guide,body.quiet .journey-bottom{display:none}body.quiet .loose-note,body.quiet .plan-bar,body.quiet .chosen{transform:none!important;opacity:1!important}body.quiet .scene-made{height:700px}body.quiet .screen-main{transform:none!important}body.quiet .screen-left{transform:rotate(-7deg)!important}body.quiet .screen-right{transform:rotate(7deg)!important}body.quiet .story-ask{max-height:none}body.quiet .scene-final{min-height:0}body.quiet .motion-controls{bottom:15px}
@media(max-width:1000px){.scene{inset:13% 5% 10%}.scene h2{font-size:43px}.scene h1{font-size:68px}.scene-lead{font-size:17px}.loose-note{padding:20px}.loose-note strong{font-size:25px}.loose-note>span{font-size:12px}.role-lane{padding:25px}.role-lane h3{font-size:29px}.role-lane p{font-size:17px}.issue-options{gap:13px}.issue-options>div{padding:20px}.issue-options strong{font-size:23px}.plan-row>strong{font-size:13px}.plan-bar{font-size:14px}.story-ask{width:65%;padding:22px}.guide-bubble{font-size:11px}}
@media(max-width:650px){.nav{height:66px;padding:0 20px}.nav nav{gap:12px}.nav nav a{font-size:10px}.journey{height:1250svh}.scene{inset:13% 6% 12%}.scene-opening{inset:17% 7% 10%}.scene h1{font-size:clamp(46px,12vw,68px);margin-bottom:20px}.scene h2{font-size:clamp(30px,8.5vw,42px);line-height:1.4;margin-bottom:15px}.scene .eyebrow{font-size:9px;margin-bottom:15px}.scene-lead{font-size:14px;line-height:1.9}.scene-opening .scene-lead{max-width:80%;font-size:15px}.signature,.journey-link{font-size:11px}.enter-hint{max-width:55%;font-size:10px;margin-top:20px}.page-surface{inset:9% 3% 8%}.page-surface>span{font-size:6px;bottom:14px;right:14px}.scene-problem h2 br{display:none}.scene-problem .scene-lead{max-width:100%;font-size:13px}.question-field{inset:28% 0 5% 2%}.loose-note{width:92%;padding:15px 20px;top:0}.loose-note:nth-child(2){top:34%;left:5%}.loose-note:nth-child(3){top:68%;left:0}.loose-note small{font-size:10px}.loose-note strong{font-size:24px;margin:2px 0}.loose-note>span{font-size:11px}.scene-note{font-size:9px}.issue-goal strong{font-size:26px}.issue-goal small{font-size:11px}.path-arrow{font-size:23px;line-height:1.3}.issue-options{grid-template-columns:1fr;gap:9px}.issue-options>div{padding:12px 16px;min-height:0;display:flex;gap:12px;align-items:center}.issue-options small{font-size:10px;flex:0 0 31%;margin:0}.issue-options strong{font-size:17px;line-height:1.5}.issue-options strong br{display:none}.chosen>span{display:none}.issue-decision{padding:14px;margin-top:14px;display:block}.issue-decision>span{display:block;font-size:10px}.issue-decision strong{font-size:17px;line-height:1.5}.role-map{grid-template-columns:1fr;margin-top:18px}.role-lane{padding:18px 22px;position:relative}.role-badge{font-size:9px}.role-lane h3{font-size:26px;margin:3px 0 6px}.role-lane p{font-size:14px;margin:3px 0 10px}.role-output{font-size:11px;padding-top:9px}.role-transfer{flex-direction:row;justify-content:center;align-items:center;font-size:10px;gap:15px;padding:8px 0}.role-transfer b{font-size:10px}.role-transfer b br{display:none}.scene-roles .scene-lead{font-size:12px;margin-bottom:10px}.mobile-only{display:inline}.plan-board{padding:18px 14px}.plan-head{grid-template-columns:1fr 1fr 1fr;font-size:12px}.plan-head>span{display:none}.plan-row{grid-template-columns:repeat(3,1fr);padding:10px 0;gap:6px;background:none}.plan-row>strong{grid-column:1/-1;font-size:12px}.plan-bar{font-size:11px;padding:12px 8px;white-space:nowrap}.bar-one{grid-column:1/3}.bar-two{grid-column:2/4}.bar-three{grid-column:2/4}.checkpoints{flex-direction:column;gap:5px;font-size:10px;margin-top:10px}.return-loop{font-size:11px;padding-top:10px}.scene-plan .scene-lead{font-size:13px}.real-wall{top:32%;height:60%;left:-8%;width:116%}.screen-main{width:92%;left:4%}.screen-main img{aspect-ratio:4/3}.screen-left{width:57%;left:-5%;top:57%}.screen-right{width:57%;right:-5%;top:57%}.real-screen{padding:5px}.real-screen>span{font-size:10px;padding:7px 3px}.scene-made .scene-lead{font-size:12px}.scene-final{inset:12% 5% 11%}.final-heading{text-align:left}.final-heading h2{font-size:29px}.final-heading>p:last-child{font-size:11px;max-width:88%}.story-ask{width:100%;margin-top:22px;max-height:53svh;padding:18px 20px}.story-ask .ask-panel-title{font-size:21px}.story-ask .question-chips{gap:6px;margin-bottom:13px}.story-ask .question-chips button{font-size:10px;padding:5px 9px}.story-ask textarea{font-size:12px;padding:10px}.story-ask .button{font-size:12px;min-height:45px;margin:12px 0}.story-ask p.small{font-size:10px}.story-ask details{font-size:11px}.ask-orbit{opacity:.35;inset:30% -6% 0}.ask-orbit img:nth-child(1){left:-10%;width:30%}.ask-orbit img:nth-child(2),.ask-orbit img:nth-child(3){right:-10%;width:35%}.guide-bubble{font-size:10px;max-width:175px;padding:7px 11px}.journey-bottom{left:6%;right:6%;bottom:22px;gap:15px;font-size:9px}.journey-bottom>span:last-child{display:none}.motion-controls{bottom:47px;right:15px;padding:7px 11px;font-size:9px;gap:10px}.motion-controls button{font-size:9px}.motion-controls a{padding-left:10px}.actual-work{grid-column:1/-1}.actual-work .actual-visual{height:auto;min-height:220px;padding:10px}.actual-work:first-child .actual-visual{height:auto;padding:12px}.actual-visual>img{height:auto;min-height:200px;max-height:500px}.actual-work:nth-child(3) .actual-visual{padding:5px;overflow:auto;min-height:160px}.actual-work:nth-child(3) .actual-visual>img{min-height:0}.character-actual>img{max-height:480px}.full-video{font-size:9px;right:10px;bottom:10px}.actual-work .card-body h3{font-size:25px}.portfolio-grid{gap:40px}.work-method{flex-direction:column;gap:15px}.work-method li{display:grid;grid-template-columns:30px 1fr 1.2fr;align-items:center;gap:10px}.work-method p{font-size:10px;margin:0}.work-method strong{font-size:12px}.work{padding-top:65px}.gallery-thumbs{grid-template-columns:1fr}body.quiet .scene{min-height:560px;margin-bottom:60px}body.quiet .scene-opening{min-height:640px}body.quiet .scene-problem{min-height:690px}body.quiet .scene-made{height:570px;min-height:0}body.quiet .scene-final{min-height:0}body.quiet .scene-final .story-ask{max-height:none}body.quiet .desk-world{height:750px}}
@media(max-height:760px) and (min-width:651px){.scene{inset:15% 6% 10%}.scene h2{font-size:42px;margin-bottom:10px}.scene-lead{font-size:16px;margin-bottom:14px}.scene .eyebrow{margin-bottom:12px}.role-map{margin-top:15px}.role-lane{padding:22px 30px}.role-lane p{font-size:17px}.role-lane h3{font-size:29px}.issue-options>div{padding:17px;min-height:0}.issue-options strong{font-size:23px}.issue-goal strong{font-size:29px}.issue-decision{margin-top:16px;padding:15px}.plan-board{padding:15px 25px}.plan-bar{padding:10px 15px}.plan-row{padding:8px 0}.checkpoints{margin-top:12px}.return-loop{padding-top:12px}.story-ask{max-height:53vh;margin-top:15px}.final-heading h2{font-size:37px}.final-heading>p:last-child{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}

@media(min-width:651px){.scene-note{left:14%}}

body.quiet .plan-bar{clip-path:none!important}
.real-screen img{aspect-ratio:16/9}.scene-made .real-wall{height:65%}
@media(max-width:650px){.screen-main img{aspect-ratio:4/3}}
