:root{--paper:#e9e5de;--stone:#d4cec4;--ink:#272622;--muted:#6d675e;--line:#a39a8c;--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;--sans:"Helvetica Neue","Hiragino Kaku Gothic ProN",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.9}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #92724e;outline-offset:7px}::selection{background:#a39a8c;color:#fff}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{font-weight:400}h2,h3{font-family:var(--serif)}img{display:block;width:100%;height:100%;object-fit:cover}button{border:0;background:none}.skip{position:fixed;top:-80px;left:20px;z-index:100;background:var(--paper);padding:10px}.skip:focus{top:10px}.header{position:absolute;top:0;width:100%;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:30px 4.5%;color:#fff}.brand{font-family:var(--serif);font-size:38px;line-height:1;letter-spacing:.16em;display:inline-flex;align-items:center;gap:17px}.brand span{font-family:var(--sans);font-size:12px;letter-spacing:.2em;writing-mode:vertical-rl}.header nav{display:flex;align-items:center;gap:34px;font-size:12px;letter-spacing:.13em}.header nav a{padding:8px 0;border-bottom:1px solid transparent;transition:border-color .3s}.header nav a:hover{border-color:currentColor}.contact-nav span{padding-left:20px}.menu-toggle{display:none;font-size:12px;letter-spacing:.12em}.hero{height:100svh;min-height:620px;position:relative;overflow:hidden;background:#33352e;color:#fff}.hero-image,.hero-video,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-image{animation:film-drift 28s ease-in-out infinite alternate;object-position:center 60%}.hero-shade{background:linear-gradient(180deg,rgba(0,0,0,.34),rgba(0,0,0,.13) 35%,rgba(0,0,0,.42))}.hero-caption{position:absolute;top:46%;left:12%;transform:translateY(-30%)}.eyebrow{font-size:12px;letter-spacing:.17em;line-height:1.6}.hero h1{font-family:var(--serif);font-size:clamp(38px,4.3vw,76px);letter-spacing:.15em;line-height:1.9;margin:20px 0 10px;text-shadow:0 2px 24px #0004}.hero-english{font-family:Georgia,serif;font-size:21px;letter-spacing:.025em;font-style:italic}.mobile-break{display:none}.hero-bottom{position:absolute;bottom:35px;left:4.5%;right:4.5%;display:flex;align-items:end;justify-content:space-between;font-size:12px;letter-spacing:.12em}.hero-bottom p{text-align:center}.hero-bottom p span{display:block;font-size:12px;opacity:.75;letter-spacing:.07em;margin-top:4px}.scroll-link{display:flex;align-items:center;gap:14px}.scroll-stroke{height:55px;width:1px;background:#ffffff7a;position:relative}.scroll-stroke:after{content:"";height:20px;position:absolute;top:0;width:1px;background:white;animation:scroll-stroke 2.4s infinite}#motion-toggle{font-size:12px;letter-spacing:.1em;padding:12px 0 12px 20px}#motion-toggle span{margin-left:12px}.journey{position:relative;overflow:hidden}.thread{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2;overflow:visible}.thread path{fill:none;stroke:var(--line);stroke-width:1;vector-effect:non-scaling-stroke}.thread-base{opacity:.15}.thread-ink{opacity:.8}.section-pad{padding-left:9%;padding-right:9%}.philosophy{padding-top:120px;padding-bottom:170px;position:relative}.section-label{display:flex;align-items:center;gap:32px}.section-label span{letter-spacing:.08em;color:var(--muted)}.philosophy-copy{display:grid;grid-template-columns:1.3fr 1fr;padding:105px 0 0 15%;gap:8%}.philosophy h2{font-size:clamp(27px,2.8vw,45px);line-height:2.15;letter-spacing:.09em;white-space:nowrap}.philosophy h2 span{display:block;margin-top:18px}.philosophy-note{align-self:end;font-size:14px;line-height:2.4;padding-bottom:10px}.english-note{font-family:Georgia,serif;font-style:italic;color:var(--muted);font-size:19px;line-height:1.6}.philosophy-note .english-note{margin-top:34px;font-size:17px}.projects-heading{padding-top:40px;padding-bottom:85px;display:grid;grid-template-columns:1fr 1.3fr .7fr;align-items:start}.projects-heading h2{font-size:clamp(34px,4vw,60px);line-height:1.5;letter-spacing:.09em}.projects-heading h2 span{padding-left:1.5em}.projects-heading .english-note{align-self:end}.project{padding:0 4.5% 125px;position:relative}.project-top{display:flex;justify-content:space-between;align-items:center;padding:20px 0}.project-category{font-size:12px;letter-spacing:.09em}.project-figure{position:relative;height:66vw;max-height:770px;overflow:hidden;background:var(--stone)}.project-figure img{transition:transform 1.2s ease;object-position:center}.project-figure:hover img{transform:scale(1.025)}.project-figure figcaption{position:absolute;bottom:17px;left:24px;color:#fff;font-size:12px;letter-spacing:.05em;text-shadow:0 1px 5px #000;background:#0003;padding:2px 7px}.project-copy{padding:60px 5% 0;display:grid;grid-template-columns:1fr 1fr;gap:15%}.project-copy h3{font-size:clamp(36px,4vw,58px);letter-spacing:.1em;line-height:1.6;margin:13px 0 18px}.project-poem{font-family:var(--serif);font-size:23px;line-height:1.8;letter-spacing:.06em}.project-description{padding-top:7px;max-width:490px}.project-description>p{margin-bottom:22px}.small{font-size:13px;line-height:1.9;color:var(--muted)}details{margin:26px 0 0;border-top:1px solid #a39a8c70;border-bottom:1px solid #a39a8c70}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;padding:18px 0;font-size:12px;letter-spacing:.13em}summary::-webkit-details-marker{display:none}summary span{font-size:18px;line-height:1;transition:transform .3s}details[open] summary span{transform:rotate(45deg)}details>div{padding:0 0 25px;font-size:14px}.project-facts{margin:0 0 15px;font-size:14px}.project-facts>div{display:grid;grid-template-columns:90px 1fr;padding:7px 0}.project-facts dd{margin:0}.text-link{display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding:19px 0;font-size:14px;transition:color .3s,padding .3s}.text-link span{font-size:12px;letter-spacing:.09em}.text-link:hover{color:#98724d;padding-left:7px}.tokyo{background:#292a27;color:var(--paper);padding-top:36px;padding-bottom:110px}.tokyo .small{color:#bbb4a9}.tokyo .project-figure{height:57vw;max-height:680px}.tokyo .project-figure:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0005,transparent 50%);pointer-events:none}.image-title{position:absolute;left:5%;bottom:65px;z-index:1;font-family:Georgia,serif;font-size:clamp(55px,10vw,145px);line-height:1;letter-spacing:.04em}.image-title span{display:block;font-family:var(--sans);font-size:12px;letter-spacing:.35em;margin-top:20px}.lifecycle{list-style:none;margin:28px 0;padding:0;display:flex;flex-wrap:wrap;gap:14px 22px;font-family:Georgia,serif;font-size:16px}.lifecycle li{position:relative;padding-top:17px;border-top:1px solid #807a70}.lifecycle li:last-child{color:#e0c8a8}.divestment{font-family:Georgia,serif;font-style:italic;margin-top:20px}.business{padding-top:120px;padding-bottom:135px}.business-heading{display:flex;align-items:end;justify-content:space-between;margin:70px 0 65px;gap:30px}.business h2,.contact h2{font-size:clamp(30px,3.4vw,48px);line-height:1.7;letter-spacing:.08em}.business-heading p{font-size:14px;color:var(--muted)}.business-row{border-top:1px solid #a39a8c80;padding:35px 0 40px;display:grid;grid-template-columns:.25fr 1.25fr 1fr;gap:25px}.business-row:last-child{border-bottom:1px solid #a39a8c80}.business-number{font-size:12px;color:var(--muted);padding-top:9px}.business-row h3{font-family:Georgia,serif;font-size:clamp(26px,3vw,40px);line-height:1.25}.business-row h4{font-size:16px;margin-bottom:12px}.business-row p{font-size:14px;color:var(--muted)}.company{background:#ded9d0;padding-top:110px;padding-bottom:125px}.company-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:12%;margin-top:70px}.company h2{font-size:34px;letter-spacing:.1em}.company h2 span{display:block;font-family:var(--sans);font-size:12px;color:var(--muted);letter-spacing:.14em;margin-top:22px}.company-data{margin:0}.company-data>div{display:grid;grid-template-columns:110px 1fr;gap:20px;border-top:1px solid #a39a8c70;padding:20px 0;font-size:14px}.company-data>div:last-child{border-bottom:1px solid #a39a8c70}.company-data dt{color:var(--muted)}.company-data dd{margin:0}.contact{padding-top:100px;padding-bottom:105px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:15%;margin-top:60px}.contact-grid>div>p:first-child{font-size:14px}.contact-status{font-family:var(--serif);font-size:22px;margin:14px 0}.contact .text-link{margin-top:24px}footer{padding:40px 4.5% 28px;border-top:1px solid #a39a8c70;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:30px}footer .brand{font-size:30px}footer>p,footer>a:last-of-type{font-size:12px;letter-spacing:.05em}.prototype-note{width:100%;text-align:center;color:var(--muted);font-size:12px}.mobile-nav[hidden]{display:none}.motion-paused .hero-image,.motion-paused .scroll-stroke:after{animation-play-state:paused}@keyframes film-drift{from{transform:scale(1.015)}to{transform:scale(1.08)}}@keyframes scroll-stroke{0%{transform:translateY(0);opacity:0}20%{opacity:1}100%{transform:translateY(35px);opacity:0}}@media(min-width:1700px){.section-pad{padding-left:max(9%,calc((100vw - 1440px)/2));padding-right:max(9%,calc((100vw - 1440px)/2))}}@media(max-width:900px){.header nav{gap:20px}.section-pad{padding-left:7%;padding-right:7%}.philosophy-copy{padding-left:7%;grid-template-columns:1.3fr 1fr;gap:5%}.philosophy-note{font-size:13px}.projects-heading{grid-template-columns:1fr 1.3fr}.projects-heading .english-note{display:none}.project-copy{gap:9%}.company-grid{gap:7%;grid-template-columns:.8fr 1.2fr}.company-data>div{grid-template-columns:85px 1fr;gap:15px}.hero h1{font-size:48px}}@media(max-width:640px){html{scroll-padding-top:20px}.header{padding:24px 6%}.brand{font-size:32px;gap:12px}.header nav{display:none}.menu-toggle{display:block}.menu-toggle span{margin-left:9px}.header.menu-open{position:fixed;color:var(--ink)}.mobile-nav{position:fixed;inset:0;z-index:15;background:var(--paper);padding:120px 10% 35px;overflow-y:auto}.mobile-nav a{display:flex;align-items:center;justify-content:space-between;padding:17px 0;border-bottom:1px solid #a39a8c70;font-family:Georgia,serif;font-size:27px}.mobile-nav a span{font-size:12px;font-family:var(--sans);color:var(--muted)}body.menu-open{overflow:hidden}.hero{min-height:590px;max-height:1100px}.hero-caption{left:10%;top:39%;transform:none}.hero .eyebrow{font-size:12px}.hero h1{font-size:clamp(34px,8vw,48px);line-height:1.85;letter-spacing:.09em;margin-top:25px}.mobile-break{display:block}.hero-english{font-size:18px;margin-top:20px}.hero-bottom{bottom:24px;left:6%;right:6%;flex-wrap:wrap;row-gap:20px}.hero-bottom p{order:3;width:100%;text-align:left;font-size:12px}.hero-bottom p span{font-size:12px}.scroll-link{font-size:12px}.scroll-stroke{height:40px}.hero-image{object-position:58% center}.section-label{gap:20px;flex-wrap:wrap}.section-label span{font-size:12px}.philosophy{padding-top:75px;padding-bottom:90px}.philosophy-copy{display:block;padding:60px 0 0 6%}.philosophy h2{font-size:clamp(24px,6vw,32px);line-height:2.1;letter-spacing:.04em;white-space:normal}.philosophy-note{margin-top:50px;padding-left:13%;font-size:14px}.philosophy-note .english-note{font-size:16px;margin-top:23px}.projects-heading{display:block;padding-top:20px;padding-bottom:45px}.projects-heading h2{font-size:37px;margin:30px 0 0 15%}.project{padding:0 5% 70px}.project-top{display:block;padding:20px 0}.project-category{display:block;margin-top:6px;font-size:12px}.project-figure{height:115vw;max-height:650px}.project-figure figcaption{font-size:12px;line-height:1.5;left:12px;right:12px;bottom:12px}.project-copy{display:block;padding:34px 3% 0}.project-copy h3{font-size:36px}.project-poem{font-size:21px}.project-description{margin-top:33px;max-width:none}.project-description p{font-size:15px}.project-description .small{font-size:13px}.tokyo{padding-top:20px;padding-bottom:70px}.tokyo .project-figure{height:115vw;max-height:650px}.tokyo .project-figure img{object-position:60% center}.image-title{font-size:16vw;bottom:65px}.business{padding-top:75px;padding-bottom:80px}.business-heading{display:block;margin:40px 0}.business h2,.contact h2{font-size:31px}.business-heading p{margin-top:22px}.business-row{grid-template-columns:25px 1fr;gap:16px;padding:28px 0}.business-row h3{font-size:31px}.business-row>div{grid-column:2;margin-top:8px}.business-row h4{font-size:15px}.business-row p{font-size:14px}.company{padding-top:70px;padding-bottom:75px}.company-grid{display:block;margin-top:40px}.company h2{font-size:30px;margin-bottom:38px}.company h2 span{margin-top:9px}.company-data>div{grid-template-columns:82px 1fr;gap:12px;font-size:14px;padding:18px 0}.company-data dd{overflow-wrap:anywhere}.contact{padding-top:70px;padding-bottom:70px}.contact-grid{display:block;margin-top:35px}.contact-grid>div{margin-top:40px}footer{padding:30px 6%;gap:25px}footer>p{margin-left:auto}footer>a:last-of-type{width:100%;text-align:right}.prototype-note{font-size:12px;text-align:left;line-height:1.7}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.thread-ink{stroke-dashoffset:0!important}}
[hidden]{display:none!important}
/* V2: project-led identity, editorial rhythm and persistent navigation */
.brand{gap:14px}.brand-symbol{width:55px;height:55px;background:currentColor;mask:url('assets/feitu-symbol-v2.png') center/contain no-repeat;-webkit-mask:url('assets/feitu-symbol-v2.png') center/contain no-repeat}.brand .brand-words{font-family:var(--serif);font-size:32px;writing-mode:horizontal-tb;letter-spacing:.15em;display:block}.brand small{display:block;font-family:var(--sans);font-size:11px;letter-spacing:.32em;margin-top:9px}.hero-scroll{height:180svh;position:relative}.hero{position:sticky;top:0;height:100svh}.hero-caption{transition:opacity .25s,transform .4s}.hero-scenes{display:flex;gap:20px;margin-top:38px}.hero-scenes button{font-size:12px;border-bottom:1px solid #fff5;padding:7px 22px 7px 0;opacity:.6}.hero-scenes button[aria-pressed=true]{opacity:1;border-bottom-color:white}.hero-image{filter:brightness(.82);animation-duration:35s}.chapter-nav{position:fixed;right:18px;top:50%;transform:translateY(-50%);z-index:12;background:rgba(233,229,222,.92);padding:15px 12px;backdrop-filter:blur(12px);border:1px solid #a39a8c55}.chapter-nav a{display:flex;gap:10px;align-items:center;line-height:1.4;padding:10px 0;color:#777168}.chapter-nav b{font-size:12px;font-weight:400;min-width:20px}.chapter-nav span{font-size:10px;letter-spacing:.08em;max-width:0;opacity:0;overflow:hidden;transition:max-width .25s,opacity .25s}.chapter-nav:hover span,.chapter-nav:focus-within span{max-width:105px;opacity:1}.chapter-nav a[aria-current=true]{color:#272622}.chapter-nav a[aria-current=true] b{font-weight:700;border-bottom:1px solid #272622}.thread path{stroke-width:1.8;stroke:#9c8464}.thread-base{opacity:.3}.thread-ink{opacity:1}.project{padding-left:7%;padding-right:18%}.project-figure{height:53vw;max-height:670px}.project-copy{padding-left:0;padding-right:0;gap:11%}.project-gallery{display:grid;grid-template-columns:1fr 1.2fr .8fr;gap:24px;margin-top:65px;align-items:start}.project-gallery figure:nth-child(2){margin-top:65px}.project-gallery figure:nth-child(3){margin-top:130px}.project-gallery img{aspect-ratio:4/5;height:auto;object-fit:cover}.project-gallery figcaption{font-size:12px;color:var(--muted);margin-top:12px}.tokyo{padding-left:18%;padding-right:7%;background:#292a27}.tokyo .project-figure{height:49vw}.tokyo .project-copy{grid-template-columns:1fr 1.25fr}.project-description h4{font-family:var(--serif);font-size:20px;margin:8px 0 18px}.project-description details p{margin:15px 0}.company{padding-top:75px;padding-bottom:80px}.company-grid{margin-top:45px}.company-data>div{padding:15px 0}.section-pad{padding-right:12%}.project-description>p{line-height:2}.project-facts{margin-top:25px}.hero-bottom p span{max-width:360px}
@media(max-width:900px){.chapter-nav{right:8px;padding:9px 7px}.project{padding-left:6%;padding-right:11%}.tokyo{padding-left:11%;padding-right:6%}.section-pad{padding-right:11%}}
@media(max-width:640px){.brand-symbol{width:42px;height:42px}.brand .brand-words{font-size:26px}.brand small{font-size:10px}.hero-scroll{height:160svh}.hero-caption{left:8%;right:10%}.hero h1{max-width:9em;font-size:clamp(32px,8vw,43px);line-height:1.8}.hero-scenes{margin-top:25px}.chapter-nav{inset:auto 0 0;transform:none;display:flex;justify-content:space-around;border:0;border-top:1px solid #a39a8c60;padding:6px 8px}.chapter-nav a{flex-direction:column;gap:2px;padding:3px 1px}.chapter-nav span{max-width:80px;opacity:1;font-size:8px;letter-spacing:0}.chapter-nav b{font-size:11px;text-align:center}.project,.tokyo{padding-left:6%;padding-right:6%}.project-figure,.tokyo .project-figure{height:105vw}.project-gallery{grid-template-columns:1fr 1fr;gap:15px;margin-top:35px}.project-gallery figure:nth-child(2){margin-top:40px}.project-gallery figure:nth-child(3){grid-column:1/-1;margin-top:5px;width:75%;margin-left:auto}.project-gallery figure:nth-child(3) img{aspect-ratio:4/3}.project-gallery figcaption{font-size:12px}.section-pad{padding-right:7%}footer{padding-bottom:95px}.hero-bottom{bottom:35px}.hero-bottom p{padding-right:25px}.hero-bottom p span{font-size:10px}.company-grid{margin-top:30px}.thread path{stroke-width:1.4}}
/* V3: full wordmark, cross-dissolve stories, illustrated business */
.brand .brand-words{font-size:28px;letter-spacing:.08em;white-space:nowrap}.brand small{font-size:11px;letter-spacing:.38em}.header nav{gap:25px}.hero-scroll{height:210svh}.hero-stage,.hero-slide,.hero-fallback{position:absolute;inset:0;width:100%;height:100%;overflow:hidden}.hero-slide{opacity:0;transition:opacity 1.8s ease-in-out;will-change:opacity}.hero-slide.is-active{opacity:1}.hero-stage .scene-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.025);filter:brightness(.85)}.hero-slide.is-running .scene-media{animation:scene-drift-right 13s linear both}.hero-slide[data-drift=left].is-running .scene-media{animation-name:scene-drift-left}.hero-fallback{object-fit:cover}.hero-shade{background:linear-gradient(180deg,#0007 0%,#0002 22%,#0005 48%,#0008 100%)}.hero-caption{top:40%;left:10%;right:10%;transform:translateY(-15%);transition:opacity .38s ease,translate .6s ease}.hero-caption.copy-changing{opacity:0;translate:0 8px}.hero h1{font-size:clamp(36px,4.05vw,68px);letter-spacing:.11em;line-height:1.65;margin:19px 0 15px}.hero-english{font-size:clamp(17px,1.5vw,23px)}.hero-description{white-space:pre-line;font-size:15px;line-height:1.95;letter-spacing:.11em;margin-top:26px;color:#ffffffe6}.hero-scenes{gap:12px;margin-top:25px}.hero-scenes button{padding:8px 14px 8px 0;min-width:35px;transition:opacity .3s,border-color .3s}.hero-bottom p span{max-width:450px}.motion-paused .scene-media{animation-play-state:paused!important}.illustrated-business{border-top:1px solid #a39a8c70}.business-story{display:grid;grid-template-columns:1.1fr 1fr;gap:6%;align-items:center;padding:55px 0;border-bottom:1px solid #a39a8c70}.business-story figure{overflow:hidden;aspect-ratio:2.4}.business-story img{object-fit:cover;mix-blend-mode:multiply;transition:transform 1.2s}.business-story:hover img{transform:scale(1.025)}.business-story-copy .eyebrow{font-size:12px;color:var(--muted);letter-spacing:.1em}.business-story h3{font-size:26px;margin:10px 0 18px;line-height:1.5}.business-story h4{font-family:var(--serif);font-size:18px;margin-bottom:12px}.business-story-copy>p:not(.eyebrow){font-size:15px;line-height:2;color:var(--muted)}.business-story-copy .business-notes{font-size:12px!important;margin-top:17px;letter-spacing:.04em}.business-story:nth-child(2) figure{transform:translateX(18px)}
@keyframes scene-drift-right{from{transform:scale(1.025) translateX(-.6%)}to{transform:scale(1.13) translateX(1.4%)}}
@keyframes scene-drift-left{from{transform:scale(1.10) translateX(1%)}to{transform:scale(1.025) translateX(-1%)}}
@media(max-width:1000px){.header nav{gap:15px;font-size:11px}.brand .brand-words{font-size:24px}.brand-symbol{width:45px;height:45px}.business-story{gap:5%;grid-template-columns:1fr 1fr}.business-story h3{font-size:23px}}
@media(max-width:640px){.brand .brand-words{font-size:22px;letter-spacing:.06em}.brand{gap:10px}.brand-symbol{width:39px;height:39px}.brand small{font-size:10px;margin-top:7px}.hero-scroll{height:200svh}.hero{min-height:620px}.hero-caption{left:8%;right:8%;top:31%;transform:none}.hero h1{font-size:clamp(28px,7.1vw,40px);max-width:10em;line-height:1.75;letter-spacing:.05em;min-height:3.5em;margin:15px 0 12px}.hero-english{font-size:17px;max-width:90%;line-height:1.5}.hero-description{font-size:14px;margin-top:18px;letter-spacing:.03em}.hero-scenes{gap:8px;margin-top:18px;flex-wrap:wrap}.hero-scenes button{min-width:27px;padding-right:7px}.hero-bottom{bottom:62px}.hero-bottom p{max-width:85%;font-size:11px}.hero-bottom p span{font-size:11px}.business-story{display:block;padding:35px 0}.business-story figure{margin-bottom:24px;aspect-ratio:2.1}.business-story:nth-child(2) figure{transform:none}.business-story h3{font-size:25px}.business-story-copy>p:not(.eyebrow){font-size:16px}.business-story-copy .business-notes{font-size:12px!important}.business-story h4{font-size:18px}}
@media(prefers-reduced-motion:reduce){.hero-slide,.hero-caption{transition:none!important}.hero-stage .scene-media{animation:none!important;transform:none!important}}

@media(max-width:640px){.hero-caption{top:25%}.hero h1{white-space:pre-line;max-width:none;font-size:clamp(28px,6.8vw,38px)}}
.hero-stage{isolation:isolate;z-index:0;pointer-events:none}.hero-shade{z-index:1;pointer-events:none}.hero-caption,.hero-bottom{z-index:2}

.current-project-note{border-top:1px solid #ffffff30;padding-top:25px;margin-top:30px}.current-project-note p{margin-top:14px}.negishi-gallery{grid-template-columns:.8fr 1fr 1.2fr}.negishi-gallery figure img{height:auto;aspect-ratio:auto;object-fit:contain}.tokyo .project-figure img{object-position:50% 50%}.negishi-gallery figcaption{color:#c4bfb5}@media(max-width:640px){.negishi-gallery{grid-template-columns:1fr 1fr}.negishi-gallery figure:nth-child(3){width:100%}.negishi-gallery figure:nth-child(3) img{aspect-ratio:auto}.hero-scenes{gap:6px}.hero-scenes button{min-width:25px;padding-right:5px;font-size:12px}}

/* V3.4: a single viewport hero and independent project photo loops. */
.hero-scroll{height:auto}.hero{position:relative;top:auto}.project-slides{position:absolute;inset:0;isolation:isolate;z-index:0;background:#292a27;pointer-events:none}.project-slides .project-slide{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity 1.4s ease-in-out}.project-slides .project-slide.is-active{opacity:1}.project-figure figcaption,.project-figure .image-title{z-index:2;pointer-events:none}.project-slide-controls{position:absolute;top:18px;right:18px;z-index:3;display:flex;gap:8px;padding:5px 12px;background:#272622a6;color:#fff;backdrop-filter:blur(6px)}.project-slide-controls button{font-size:12px;padding:7px 5px;opacity:.65;border-bottom:1px solid transparent}.project-slide-controls button[aria-pressed=true]{opacity:1;border-bottom-color:currentColor}.project-slide-controls button:last-child{margin-left:8px;opacity:1}@media(max-width:640px){.hero-scroll{height:auto}.project-slide-controls{top:12px;right:12px;gap:5px;padding:3px 8px}}@media(prefers-reduced-motion:reduce){.project-slides .project-slide{transition:none}}

/* V3.5: seven 3-second scenes; only hero timing changes. */
.hero-slide{transition-duration:.7s}.hero-slide.show-complete{background:#292a27}.hero-slide.show-complete .scene-media{animation:none!important;transform:none!important}.hero-caption{transition-duration:.25s}.hero-slide.is-running .scene-media{animation-duration:5s}

/* Multilingual navigation and balanced translated typography. */
.language-switch{display:flex;align-items:center;gap:12px;margin-left:22px;white-space:nowrap;font-size:12px}.language-switch a{padding:8px 0;opacity:.65;border-bottom:1px solid transparent}.language-switch a[aria-current=page]{opacity:1;border-color:currentColor}.language-switch a:hover{opacity:1}.header>nav{margin-left:auto}.negishi-gallery{grid-template-columns:1fr 1.3fr}.negishi-gallery figure:nth-child(2){margin-top:12%}html[lang=en] h1,html[lang=en] h2,html[lang=en] h3{letter-spacing:.015em}html[lang=en] .hero h1{font-size:clamp(34px,4.1vw,64px);line-height:1.25}html[lang=en] .philosophy h2{font-size:clamp(30px,4.3vw,65px)}html[lang=en] .business h2{font-size:clamp(30px,4vw,56px)}html[lang=en] .business-story h3{font-size:25px}html[lang=en] .hero-description{letter-spacing:.02em}
@media(max-width:1000px){.header>nav{display:none}.menu-toggle{display:block}.language-switch{margin-left:auto;margin-right:20px}}@media(max-width:640px){.header{flex-wrap:wrap;gap:8px}.language-switch{gap:10px;margin-right:0;font-size:11px}.header .brand .brand-words{font-size:18px}.header .brand-symbol{width:30px;height:36px}.menu-toggle{font-size:11px}.negishi-gallery{grid-template-columns:1fr 1fr}html[lang=en] .hero h1{font-size:34px;min-height:2.5em}html[lang=en] .hero-description{font-size:13px}.language-switch a{min-height:32px;display:flex;align-items:center}}
/* V4.1 mobile editorial layout: readable measure, deliberate hierarchy. */
@media(max-width:1000px){
 .mobile-nav{position:fixed;inset:0;z-index:15;background:var(--paper);padding:150px 7% 45px;overflow-y:auto}
 .mobile-nav a{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid #a39a8c70;font-family:var(--serif);font-size:25px;line-height:1.5}
 .mobile-nav a span{font:14px/1.6 var(--sans);align-self:center;color:var(--muted)}
 .header.menu-open{position:fixed;color:var(--ink)}body.menu-open{overflow:hidden}
}
@media(max-width:640px){
 html{scroll-padding-top:24px}body{font-size:16px;line-height:1.9}
 .header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 20px;padding:22px 24px 12px;align-items:center}
 .header .brand{grid-column:1;grid-row:1;gap:10px}.header .brand .brand-words{font-size:22px;letter-spacing:.045em}
 .header .brand-symbol{width:34px;height:42px}.header .brand small{font-size:10px;letter-spacing:.34em;margin-top:8px}
 .menu-toggle{grid-column:2;grid-row:1;padding:10px 0 10px 10px;min-height:44px;font-size:12px;letter-spacing:.04em}
 .language-switch{grid-column:1/-1;grid-row:2;margin:0;gap:24px;font-size:14px;border-top:1px solid #ffffff35;padding-top:4px;justify-content:flex-end}
 .language-switch a{padding:6px 0;min-height:36px}.header.menu-open .language-switch{border-color:#a39a8c60}
 .hero{height:auto;min-height:100svh;max-height:none;display:flex;flex-direction:column;padding:185px 24px 96px}
 .hero-caption{position:relative;top:auto;left:auto;right:auto;transform:none;margin:auto 0 40px;width:100%;flex:none}
 .hero .eyebrow{font-size:12px;letter-spacing:.12em}
 .hero h1,html[lang=en] .hero h1{font-size:clamp(30px,8.1vw,40px);line-height:1.4;letter-spacing:.015em;min-height:0;max-width:100%;margin:20px 0 18px;white-space:normal;text-wrap:balance;overflow-wrap:normal;word-break:normal}
 html[lang=ja] .hero h1,html[lang=zh-CN] .hero h1{white-space:pre-line;line-height:1.6;font-size:clamp(27px,7.3vw,36px)}
 .hero-english{font-size:16px;line-height:1.6;max-width:100%;margin:0;letter-spacing:0}
 .hero-description,html[lang=en] .hero-description{font-size:14px;line-height:1.9;white-space:normal;letter-spacing:.015em;margin-top:20px;max-width:32em;text-wrap:pretty}
 .hero-description br{display:none}.hero-scenes{display:flex;flex-wrap:nowrap;gap:10px;margin-top:24px}.hero-scenes button{min-width:30px;min-height:40px;padding:6px 0;font-size:12px}
 .hero-bottom{position:relative;inset:auto;display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;letter-spacing:.04em;width:100%}
 .hero-bottom .scroll-link{font-size:11px;gap:10px}.scroll-stroke{height:30px}
 #motion-toggle{font-size:12px;padding:8px 0 8px 12px;min-height:44px}#motion-toggle span{margin-left:8px}
 .hero-bottom p{grid-column:1/-1;order:initial;text-align:left;max-width:100%;width:auto;padding:0;font-size:11px;line-height:1.6}
 .hero-bottom p span{font-size:11px;max-width:100%;margin-top:3px}
 .section-pad,.project,.tokyo{padding-left:24px;padding-right:24px}
 .section-label{display:block;font-size:12px;letter-spacing:.1em}.section-label span{display:block;margin-top:10px;font-size:14px}
 .philosophy{padding-top:76px;padding-bottom:80px}.philosophy-copy{padding:40px 0 0}
 .philosophy h2,html[lang=en] .philosophy h2{font-size:clamp(24px,6.6vw,30px);line-height:1.9;letter-spacing:.01em;white-space:normal;overflow-wrap:normal}
 html[lang=en] .philosophy h2{font-size:clamp(22px,6vw,28px);line-height:1.65}
 .philosophy h2 span{margin-top:16px}.philosophy-note{padding:0;margin-top:32px;font-size:16px;line-height:1.9}.philosophy-note br{display:none}.philosophy-note .english-note{font-size:15px;margin-top:22px}
 .projects-heading{padding-top:12px;padding-bottom:40px}.projects-heading h2{font-size:32px;margin:28px 0 0;line-height:1.5}.projects-heading h2 span{padding-left:0}
 .project{padding-bottom:72px}.project-top{padding:22px 0}.project-top .eyebrow{font-size:12px;letter-spacing:.08em}.project-category{font-size:12px;line-height:1.7;margin-top:8px;letter-spacing:.03em}
 .project-figure,.tokyo .project-figure{height:auto;aspect-ratio:4/5;max-height:none}
 .project-slide-controls{top:10px;right:10px;padding:2px 8px;gap:8px}.project-slide-controls button{min-height:38px;font-size:12px}
 .project-figure figcaption{left:12px;right:12px;bottom:12px;font-size:11px;line-height:1.6;letter-spacing:0}
 .project-copy{padding:28px 0 0}.project-copy>.eyebrow,.project-copy .eyebrow{font-size:11px;letter-spacing:.06em;line-height:1.7}
 .project-copy h3{font-size:32px;line-height:1.5;letter-spacing:.02em;margin:12px 0 20px;overflow-wrap:normal;text-wrap:balance}
 .project-poem{font-size:20px;line-height:1.8;letter-spacing:.02em}.project-description{margin-top:28px;padding:0}
 .project-description p,.project-description>p,.business-story-copy>p:not(.eyebrow){font-size:16px;line-height:1.95;text-wrap:pretty}
 .project-description .small,.small{font-size:13px;line-height:1.85}.project-description h4{font-size:21px;line-height:1.65}
 .project-gallery{gap:24px;margin-top:30px;grid-template-columns:1fr}.project-gallery figure:nth-child(n){width:100%;margin:0;grid-column:auto}
 .project-gallery figure img,.project-gallery figure:nth-child(3) img{aspect-ratio:4/3;object-fit:cover}.project-gallery figcaption{margin-top:10px;font-size:12px}
 .negishi-gallery{grid-template-columns:1fr 1fr;gap:16px;align-items:start}.negishi-gallery figure:nth-child(n) img{aspect-ratio:auto;object-fit:contain}.negishi-gallery figure:nth-child(2){margin-top:32px}
 .image-title{font-size:clamp(36px,12vw,58px);bottom:66px}.image-title span{font-size:11px;margin-top:10px}
 .lifecycle{display:grid;grid-template-columns:1fr 1fr;gap:18px;font-size:16px;margin:28px 0}.lifecycle li{padding-top:10px}
 .project-facts>div{grid-template-columns:1fr;gap:3px;padding:12px 0}.project-facts dt{color:var(--muted);font-size:13px}.project-facts dd{font-size:15px}
 .business{padding-top:76px;padding-bottom:76px}.business-heading{margin:36px 0}.business h2,html[lang=en] .business h2,.contact h2{font-size:30px;line-height:1.6;letter-spacing:.01em;text-wrap:balance}
 .business-heading p{font-size:16px;line-height:1.9;margin-top:24px}.business-heading p br{display:none}
 .business-story{padding:32px 0}.business-story figure{aspect-ratio:2/1;margin-bottom:26px}.business-story h3,html[lang=en] .business-story h3{font-size:24px;line-height:1.5;margin:12px 0 18px;text-wrap:balance}.business-story h4{font-size:19px;line-height:1.7}
 .business-story-copy .business-notes{font-size:13px!important;line-height:1.9!important;letter-spacing:0}.business-story-copy .eyebrow{font-size:11px;letter-spacing:.07em}
 .company{padding-top:72px;padding-bottom:72px}.company h2{font-size:27px;letter-spacing:.04em;margin-bottom:32px}.company h2 span{font-size:13px}
 .company-data>div{display:block;padding:19px 0}.company-data dt{font-size:13px;margin-bottom:7px;line-height:1.6}.company-data dd{font-size:16px;line-height:1.9;overflow-wrap:normal;word-break:normal}
 .contact{padding-top:72px;padding-bottom:72px}.contact-grid{margin-top:32px}.contact-grid>div{margin-top:30px}.contact-grid>div>p:first-child{font-size:15px}.contact-status{font-size:21px;line-height:1.7}.contact .small br{display:none}
 .text-link{font-size:14px;line-height:1.7;gap:12px}.text-link span{flex-shrink:0;font-size:12px}
 footer{display:grid;grid-template-columns:1fr;padding:32px 24px 105px;gap:24px}footer .brand .brand-words{font-size:24px}footer>p{margin-left:0}footer>a:last-of-type{width:auto;text-align:left}.prototype-note{text-align:left;font-size:12px;line-height:1.9}
 .chapter-nav{padding:8px 12px calc(8px + env(safe-area-inset-bottom));gap:16px;justify-content:flex-start;overflow-x:auto;scrollbar-width:none}.chapter-nav::-webkit-scrollbar{display:none}.chapter-nav a{flex:none;min-height:36px;justify-content:center;padding:6px 2px;line-height:1.4}.chapter-nav b{display:none}.chapter-nav span,.chapter-nav:hover span{max-width:none;font-size:12px;letter-spacing:.015em;opacity:1;white-space:nowrap}.chapter-nav a[aria-current=true]{border-bottom:1px solid var(--ink)}
 .thread path{stroke-width:1.1}.thread-base{opacity:.18}.thread-ink{opacity:.65}
}
