:root{--ink:#252b29;--paper:#f7f7f3;--muted:#727972;--line:#d9ddd5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,'Noto Sans JP','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{display:block;width:100%}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #9a7852;outline-offset:7px}.skip{position:fixed;top:-100px;z-index:99;background:white;padding:15px}.skip:focus{top:0}.header{position:absolute;top:0;left:0;width:100%;padding:36px 4.5%;display:flex;align-items:center;justify-content:space-between;z-index:5;color:white}.header.dark{position:relative;color:var(--ink)}.brand{width:190px;display:block}.brand-line{display:flex;align-items:baseline;gap:11px}.brand-en{font-family:'Helvetica Neue',Arial,sans-serif;font-size:54px;font-weight:200;letter-spacing:1px;line-height:1}.brand-jp{font-weight:400;font-size:25px;letter-spacing:5px;white-space:nowrap}.brand small{display:block;font-size:12px;letter-spacing:5px;margin-top:12px;white-space:nowrap}.nav{display:flex;gap:30px;align-items:center}.nav a{font-size:14px;letter-spacing:.05em;padding:8px 0;border-bottom:1px solid transparent}.nav a:hover,.nav a[aria-current]{border-color:currentColor}.menu{display:none;background:transparent;border:0;padding:12px}.hero{height:100svh;min-height:660px;position:relative;overflow:hidden;color:white;background:#23496b}.hero>img{height:100%;object-fit:cover;object-position:50% 63%;animation:zoom 16s ease-out forwards}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#102f4438,transparent 35%,#07141b66)}.hero-copy{position:absolute;z-index:1;left:7%;bottom:15%}.eyebrow{font-size:12px;letter-spacing:.18em;font-weight:400;text-transform:uppercase}.hero h1{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:clamp(36px,4.6vw,70px);font-weight:400;letter-spacing:.13em;line-height:1.6;margin:22px 0}.hero-foot{position:absolute;bottom:35px;left:4.5%;right:4.5%;z-index:1;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.12em}.scroll{display:flex;align-items:center;gap:20px}.scroll:before{content:'';width:60px;height:1px;background:currentColor}.wrap{width:86%;max-width:1320px;margin:auto}.intro{padding:140px 0;display:grid;grid-template-columns:1fr 1.1fr;gap:12%}.label{font-size:13px;letter-spacing:.15em;color:var(--muted);margin:0 0 35px}.serif{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-weight:400;letter-spacing:.08em;line-height:1.9}.intro h2{font-size:32px;margin:0}.bodycopy{line-height:2.3;font-size:16px}.textlink{display:inline-flex;justify-content:space-between;gap:60px;padding:20px 0;border-bottom:1px solid var(--ink);font-size:14px;margin-top:20px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:45px}.section-head h2,.page-title h1{font-size:clamp(44px,6vw,80px);font-weight:300;letter-spacing:-.03em;margin:0}.section-head span{font-size:14px}.project-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:7%;align-items:start}.project-grid>a:nth-child(2){margin-top:150px}.photo{overflow:hidden;background:#e2e4de;position:relative}.photo>img{transition:transform 1s}.project-grid a:hover .photo>img{transform:scale(1.035)}.photo.landscape{aspect-ratio:1.35}.photo.landscape img{height:100%;object-fit:cover}.tile{aspect-ratio:631/789;position:relative;overflow:hidden}.tile img{position:absolute;width:229.32%;max-width:none;left:0;top:0}.tile.q1 img{left:-100%}.tile.q2 img{top:-100%}.tile.q3 img{left:-100%;top:-100%}.project-caption{padding:20px 0;display:flex;justify-content:space-between;align-items:start;gap:12px}.project-caption h3{font-weight:400;font-size:19px;margin:0 0 8px}.project-caption small{font-size:12px;color:var(--muted);letter-spacing:.05em}.arrow{font-size:26px;font-weight:300}.works-section{padding-bottom:130px}.profile-band{display:grid;grid-template-columns:1fr 1fr;background:#e9ece6}.profile-band .profile-photo{min-height:500px;object-fit:cover}.profile-band>div{padding:80px 14%}.profile-band h2{font-size:29px}.contact{padding:110px 0 90px;border-bottom:1px solid var(--line)}.contact-row{display:flex;align-items:center;justify-content:space-between;gap:30px}.contact h2{font-size:clamp(45px,6vw,80px);font-weight:300;margin:0 0 25px}.contact p{line-height:2}.contact .round{width:80px;height:80px;border:1px solid #89938a;border-radius:50%;display:grid;place-items:center;font-size:30px}.footer{padding:55px 0 30px}.footer-main{display:flex;justify-content:space-between;gap:35px}.footer p{font-size:13px;line-height:2}.footer-bottom{display:flex;justify-content:space-between;margin-top:55px;font-size:12px;color:var(--muted)}.page-title{padding:70px 0 65px}.page-title p{font-size:14px;letter-spacing:.14em;margin-top:25px}.detail-hero{max-height:85vh;object-fit:cover}.project-intro{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:85px 0}.project-intro h1{font-size:34px;line-height:1.7;font-weight:400;margin:15px 0}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:50px 5%;padding-bottom:100px}.gallery figure{margin:0}.gallery figcaption{font-size:14px;margin-top:17px}.gallery .wide{grid-column:1/-1}.gallery .wide img{width:100%;max-height:750px;object-fit:contain}.gallery button{display:block;width:100%;padding:0;border:0;background:none;text-align:left}.profile-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:10%;padding-bottom:110px}.profile-layout img{aspect-ratio:1;object-fit:cover}.profile-layout h2{font-size:34px;margin-top:0}.profile-layout .name-en{font-size:12px;letter-spacing:.16em}.timeline{margin-top:50px;border-top:1px solid var(--line)}.timeline p{display:grid;grid-template-columns:100px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:22px 0;margin:0;font-size:14px;line-height:1.8}.info{max-width:900px;margin:0 auto 100px}.info dl{margin:0}.info dl>div{display:grid;grid-template-columns:180px 1fr;padding:28px 0;border-bottom:1px solid var(--line);line-height:1.9}.info dt{color:var(--muted);font-size:14px}.info dd{margin:0;overflow-wrap:anywhere}.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:55px 0}.contact-options a{border:1px solid var(--line);padding:35px 25px;display:flex;flex-direction:column;gap:20px}.contact-options strong{font-size:clamp(18px,2.5vw,28px);font-weight:400;overflow-wrap:anywhere}.contact-options small{color:var(--muted)}dialog{border:0;padding:0;background:#171c19;color:white;max-width:95vw;width:1000px;max-height:95svh}dialog::backdrop{background:#07100deb}dialog .light-image{width:min(65vw,600px);margin:55px auto 20px}dialog .close{position:absolute;right:15px;top:12px;background:none;color:white;border:0;padding:12px}dialog .controls{display:flex;justify-content:center;align-items:center;gap:35px;padding:15px 20px 25px}dialog .controls button{background:none;border:1px solid #68716b;color:white;padding:10px 18px}.reveal{opacity:1}.motion .reveal{opacity:0;transform:translateY(28px);transition:opacity 1s,transform 1s}.motion .reveal.shown{opacity:1;transform:none}@keyframes zoom{from{transform:scale(1.055)}to{transform:scale(1)}}@media(min-width:1600px){.hero>img{object-position:center 65%}}@media(max-width:800px){.header{padding:25px 6%}.brand{width:156px}.brand-en{font-size:43px}.brand-jp{font-size:21px}.brand small{font-size:10px;letter-spacing:4px}.menu{display:block;z-index:7;font-size:14px}.nav{display:none;position:absolute;top:0;left:0;width:100%;padding:120px 8% 40px;background:var(--paper);color:var(--ink);flex-direction:column;align-items:start;gap:15px}.nav.open{display:flex}.menu[aria-expanded=true]{color:var(--ink)}.hero{min-height:650px;max-height:1000px}.hero>img{object-position:55% 60%}.hero-copy{left:7%;bottom:18%}.hero h1{font-size:37px}.hero-foot{left:7%;right:7%;font-size:10px}.hero-foot>span{max-width:160px;line-height:1.7}.intro{padding:80px 0;grid-template-columns:1fr;gap:30px}.intro h2{font-size:27px}.label{margin-bottom:25px}.project-grid{grid-template-columns:1fr;gap:35px}.project-grid>a:nth-child(2){margin-top:0}.project-grid>a:nth-child(2) .tile{aspect-ratio:1}.works-section{padding-bottom:70px}.section-head{margin-bottom:30px}.section-head h2{font-size:48px}.profile-band{grid-template-columns:1fr}.profile-band .profile-photo{min-height:0;max-height:450px;aspect-ratio:1.2}.profile-band>div{padding:50px 7%}.profile-band h2{font-size:26px}.contact{padding:70px 0}.contact .round{width:55px;height:55px;flex-shrink:0}.contact h2{font-size:50px}.footer-main{flex-direction:column}.footer-bottom{gap:20px;font-size:10px}.page-title{padding:45px 0}.page-title h1{font-size:54px}.project-intro{grid-template-columns:1fr;gap:15px;padding:45px 0}.project-intro h1{font-size:28px}.gallery{gap:35px 20px}.gallery figcaption{font-size:12px;line-height:1.8}.profile-layout{grid-template-columns:1fr;gap:45px;padding-bottom:65px}.profile-layout img{max-height:400px}.info dl>div{grid-template-columns:1fr;gap:12px;padding:22px 0}.contact-options{grid-template-columns:1fr}.timeline p{grid-template-columns:90px 1fr;gap:10px}.bodycopy{line-height:2.2}dialog .light-image{width:85vw}.wrap{width:86%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion .reveal{opacity:1;transform:none}}
/* Editorial portfolio */
.brand-en{font-family:'Helvetica Neue','Segoe UI',Arial,sans-serif;font-weight:300;letter-spacing:-2px}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 2.4s ease;display:block}.hero-slide.active{opacity:1}.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:center 62%;transform:scale(1.035);transition:transform 10s linear}.hero-slide.active img{transform:scale(1)}.hero-copy{pointer-events:none}.hero-foot{align-items:center}.slideshow-controls{display:flex;gap:16px;align-items:center}.slide-toggle{border:1px solid #ffffff80;background:#0002;color:white;width:42px;height:42px;border-radius:50%}.hero:after{pointer-events:none}.project-card .photo{aspect-ratio:1.35}.project-card .photo img{height:100%;object-fit:cover}.project-caption small{display:block;margin-bottom:14px}.project-caption h3{margin:0}.works-index{row-gap:65px}.works-index>a:nth-child(even){margin-top:110px}.works-index>a:nth-child(odd){margin-top:0}.home-projects{row-gap:55px}.landscape-break{margin:0 0 120px}.landscape-break img{height:240px;object-fit:cover}.profile-band .profile-photo{object-position:50% 25%;max-height:640px}.profile-layout .portrait{aspect-ratio:4/5;object-position:50% 25%;max-height:none}.portrait-credit{margin-top:25px}.profile-greeting{font-size:25px;margin-top:45px}.project-top{padding:35px 0 55px}.breadcrumb{font-size:13px;color:var(--muted)}.project-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-top:55px}.project-heading h1{font-size:clamp(32px,4vw,56px);margin:0}.project-heading .label{margin-bottom:15px}.project-heading>p{font-size:17px}.project-cover{width:92%;margin:0 auto}.project-cover img{width:100%;height:auto;max-height:82vh;object-fit:contain}.project-story{display:grid;grid-template-columns:1fr 2fr;gap:12%;padding:110px 0}.project-story h2{font-size:29px;margin:0 0 25px}.project-story p{margin:0;max-width:690px}.editorial{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:90px 3%;align-items:center}.spread{margin:0;min-width:0}.spread-2{grid-column:1/13}.spread-3{grid-column:1/6}.spread-4{grid-column:7/13;padding-top:110px}.spread-5{grid-column:2/12}.spread-6{grid-column:1/7}.spread-7{grid-column:8/13;padding-top:90px}.spread img{width:100%;height:auto;max-height:850px;object-fit:contain}.spread-2 img,.spread-5 img{max-height:80vh}.spread figcaption{display:flex;gap:22px;font-size:14px;line-height:1.9;padding-top:18px}.spread figcaption span{color:var(--muted);font-size:12px;padding-top:2px;flex-shrink:0}.zoom-photo{position:relative;width:100%;display:block;background:none;border:0;padding:0}.zoom-mark{position:absolute;right:15px;bottom:15px;width:35px;height:35px;background:#ffffffce;display:grid;place-items:center;border-radius:50%;font-size:20px;opacity:0;transition:opacity .3s}.zoom-photo:hover .zoom-mark,.zoom-photo:focus-visible .zoom-mark{opacity:1}.project-next{padding:100px 0 40px;display:flex;justify-content:space-between;gap:25px;font-size:14px}.light-image img{max-height:72svh;object-fit:contain;width:100%;height:auto}dialog{width:1100px}dialog .light-image{width:90%;margin:60px auto 0}dialog .controls{padding-bottom:10px}.light-caption{font-size:14px;text-align:center;line-height:1.8;padding:0 20px 20px;margin:0}.label,.eyebrow{font-size:13px}.brand small{font-size:12px}.header{gap:30px}.nav{gap:24px}.profile-band>div{padding:65px 12%}
@media(max-width:1000px){.nav{gap:14px}.nav a{font-size:13px}.header{padding-left:4%;padding-right:4%}.project-heading{align-items:start;flex-direction:column;gap:5px}}
@media(max-width:700px){.hero{min-height:590px}.hero-slide img{object-position:50% 50%}.hero-slide:nth-child(1) img{object-position:51% 55%}.hero-copy{bottom:20%}.hero h1{font-size:34px}.hero-foot{gap:15px}.hero-foot>span{font-size:10px}.scroll:before{width:20px}.slide-counter{font-size:11px}.brand small{font-size:12px;letter-spacing:2px}.brand{width:165px}.header{padding:25px 6%}.nav{gap:15px}.nav a{font-size:16px;padding:10px 0}.project-grid{grid-template-columns:1fr}.works-index>a:nth-child(even),.home-projects>a:nth-child(2){margin-top:0}.project-card .photo{aspect-ratio:1.2}.works-index,.home-projects{row-gap:35px}.section-head{align-items:start;gap:15px}.section-head h2{font-size:39px}.section-head>span{padding-top:14px;white-space:nowrap}.landscape-break{margin-bottom:65px}.landscape-break img{height:150px}.profile-band .profile-photo{max-height:520px;aspect-ratio:4/5;object-position:center 25%}.profile-band>div{padding:45px 7%}.project-top{padding:30px 0}.project-heading{margin-top:30px}.project-heading h1{font-size:32px}.project-heading>p{font-size:16px}.project-cover{width:100%}.project-cover img{max-height:75svh}.project-story{padding:65px 0;grid-template-columns:1fr;gap:5px}.project-story h2{font-size:24px}.editorial{gap:45px 4%;grid-template-columns:repeat(6,minmax(0,1fr))}.spread-2,.spread-5{grid-column:1/7}.spread-3,.spread-6{grid-column:1/6}.spread-4,.spread-7{grid-column:2/7;padding-top:0}.spread figcaption{font-size:14px;gap:12px}.spread img{max-height:70svh}.zoom-mark{opacity:1;right:10px;bottom:10px;width:28px;height:28px;font-size:17px}.project-next{padding-top:65px;flex-wrap:wrap}.project-next a{padding:10px 0}.label{font-size:12px}.profile-layout .portrait{max-height:600px}.hero .eyebrow{font-size:10px;letter-spacing:.12em}.footer-bottom{font-size:12px}.contact-options{margin-top:35px}.contact-options a{padding:28px 20px}.contact-options strong{font-size:21px}}
@media(max-height:550px) and (orientation:landscape){.hero{height:110svh;min-height:480px}.editorial{grid-template-columns:repeat(12,minmax(0,1fr));gap:45px 3%}.spread-2{grid-column:1/13}.spread-3{grid-column:1/6}.spread-4{grid-column:7/13}.spread-5{grid-column:2/12}.spread-6{grid-column:1/7}.spread-7{grid-column:8/13}.spread img{max-height:none}.project-story{grid-template-columns:1fr 2fr}.project-grid{grid-template-columns:1fr 1fr}}
/* Profile revision: architecture first, modest original portrait. */
.revised-profile{grid-template-columns:1fr 1.15fr;gap:8%;align-items:start}.profile-works{background:#fff;padding:30px}.profile-work-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px}.profile-works figure{margin:0}.profile-works figcaption{font-size:12px;line-height:1.8;padding-top:12px;color:var(--muted)}.photo-crop{position:relative;overflow:hidden}.profile-layout .photo-crop img{position:absolute;top:var(--image-top);left:var(--image-left);width:var(--image-width);max-width:none;height:auto;max-height:none;aspect-ratio:auto;object-fit:initial}.profile-works .profile-collage{width:78%;margin:45px auto 5px}.profile-collage img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}.profile-identity{display:flex;align-items:start;justify-content:space-between;gap:22px}.profile-identity .small-portrait{width:132px;flex:0 0 132px}.profile-identity h2{font-size:32px}.profile-identity .label{line-height:1.8}.revised-profile .profile-greeting{margin-top:40px}.editorial figcaption{align-items:start;max-width:720px}.editorial figcaption span{padding-top:2px}.spread figcaption{line-height:2}
@media(max-width:900px){.revised-profile{gap:5%;grid-template-columns:1fr 1.15fr}.profile-works{padding:20px}.profile-identity{gap:15px}.profile-identity .small-portrait{width:100px;flex-basis:100px}.profile-identity h2{font-size:28px}.profile-identity .label{font-size:12px}.profile-identity .name-en{font-size:11px;letter-spacing:.1em}}
@media(max-width:700px){.revised-profile{display:flex;flex-direction:column;gap:45px}.revised-profile>div{width:100%}.profile-works{padding:22px}.profile-works .profile-collage{width:76%;margin-top:30px}.profile-identity .small-portrait{width:100px;flex-basis:100px}.profile-identity h2{font-size:29px}.profile-identity .label{font-size:12px}.profile-works figcaption{font-size:12px}.revised-profile .profile-greeting{margin-top:35px}.spread figcaption{font-size:14px;line-height:2}}
/* Final portrait sizing and unified profile background. */
.profile-works{background:transparent}
@media(min-width:901px){.profile-identity .small-portrait{width:264px;flex-basis:264px}.profile-identity{flex-wrap:wrap}.profile-identity>div:first-child{flex:1;min-width:180px}}
@media(min-width:701px) and (max-width:900px){.profile-identity .small-portrait{width:200px;flex-basis:200px}.profile-identity{flex-wrap:wrap}}
@media(max-width:700px){.profile-band .profile-photo{width:50%;height:auto;min-height:0;max-height:260px;aspect-ratio:4/5;object-fit:cover;justify-self:center;margin:35px auto 0}.hero-slide img,.hero-slide:nth-child(1) img{object-position:center center}}

/* Compact home portrait alongside an architectural model. */
.profile-band{align-items:center}
.profile-band>.home-profile-visual{padding:55px 8%;display:flex;align-items:center;justify-content:center;gap:28px;flex-wrap:wrap}
.profile-band .profile-photo{width:264px;max-width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:auto;object-fit:contain;margin:0;flex:none}
.home-profile-model{width:200px;max-width:100%;margin:0}
.home-profile-model figcaption{font-size:12px;color:var(--muted);margin-top:12px;letter-spacing:.06em}
@media(min-width:701px) and (max-width:900px){.profile-band .profile-photo{width:200px}}
@media(max-width:700px){
 .profile-band>.home-profile-visual{padding:40px 7% 0;gap:28px;flex-wrap:nowrap}
 .profile-band .profile-photo{width:100px;max-width:35%;height:auto;min-height:0;max-height:none;aspect-ratio:auto;margin:0}
 .home-profile-model{width:150px;max-width:50%}
 .hero{width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:4/5}
 .hero-slide img,.hero-slide.active img{object-fit:contain;object-position:center;transform:none;transition:none}
 .hero-copy{bottom:17%}
 .hero h1{font-size:clamp(24px,7vw,34px);margin:12px 0}
 .hero .eyebrow{font-size:9px}
 .hero-foot{bottom:16px}
 .hero-foot .scroll{display:none}
}

/* Preserve quiet space where the Reikyo images were removed. */
.home-profile-space{width:200px;flex:none}.profile-work-space{aspect-ratio:436/273}
@media(max-width:700px){.home-profile-space{width:150px;max-width:50%}}
