/* 02: a dark, project-led studio index. */
.variant-2:not(.subpage){background:#162234;color:#fff}
.variant-2 .site-header,.variant-2 .mobile-menu{color:#162234}
.variant-2 .site-footer{background:#fff;color:#162234}
.index-hero.hero-two{display:block;height:100svh;min-height:680px;max-height:1100px;background:#162234;color:#fff;isolation:isolate}
.index-opening{position:absolute;top:35px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;gap:40px;z-index:5}
.index-opening img{width:205px}.index-opening p{margin-left:auto;font:10px/1.8 LibreBaskerville,serif}.index-opening>a:last-child{font:12px/1.8 LibreBaskerville,serif;border-bottom:1px solid #ffffff70;padding-bottom:5px}
.index-hero-copy{position:absolute;top:22%;left:6%;right:6%;z-index:4;pointer-events:none}
.index-hero-copy .eyebrow{font-size:10px;margin-bottom:28px}
.index-hero-copy h1{font:400 clamp(110px,16vw,240px)/.82 var(--serif);letter-spacing:-.045em}
.index-hero-copy .index-subtitle{display:block;font:italic 400 .29em/1.2 var(--serif);letter-spacing:0;text-align:right;margin-right:4%;margin-top:12px}
.assembly.index-assembly{left:0;right:0;top:47%;bottom:17%;opacity:1;overflow:hidden;background:#162234;z-index:1}
.index-hero-bottom{position:absolute;bottom:30px;left:6%;right:6%;display:flex;align-items:center;justify-content:space-between;gap:30px;z-index:5;font:11px/1.8 LibreBaskerville,serif}
.index-hero-bottom>a{border-bottom:1px solid #ffffff80;padding-bottom:5px}
.index-japanese{position:absolute;left:6%;bottom:11%;font-size:11px;line-height:2;z-index:4;color:#d3d5d9}
.index-works,.index-services,.index-profile,.index-contact{padding:100px 6%}
.index-section-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:24px;border-bottom:1px solid #ffffff45;margin-bottom:65px;font:11px/1.8 LibreBaskerville,serif}
.index-section-top .eyebrow{font-size:11px}.index-section-top>a{text-decoration:underline;text-underline-offset:7px}
.index-project-layout{display:grid;grid-template-columns:23% 1fr;gap:5%}
.index-project-title{align-self:start;position:sticky;top:130px}
.index-project-title h2{font:400 clamp(48px,5.5vw,82px)/1.05 var(--serif);letter-spacing:-.02em}
.index-project-title p{font:10px/2 LibreBaskerville,serif;margin-top:35px;max-width:160px}
.index-works .work-grid{gap:45px 22px}.index-works .work-card:nth-child(n){transform:none}
.index-works .work-caption h3{font-size:12px;color:#d3d5d9}.index-works .work-image{background:#263445}
.index-about{background:#d3d5d9;color:#162234;padding:120px 8%;display:grid;grid-template-columns:1fr 1fr;gap:10%}
.index-about-title h2{font:400 clamp(50px,5.5vw,84px)/1.12 var(--serif);letter-spacing:-.025em;margin-top:48px}.index-about-title em{font-weight:400}
.index-rule{display:block;width:80px;height:1px;background:#162234;margin-top:55px}
.index-about .prose,.index-about .prose>p:first-child{font-size:14px;line-height:2.2}
.index-interlude{position:relative;isolation:isolate;overflow:hidden;height:350px}
.index-interlude .motion-art{inset:-25% 0;height:150%;width:100%}
.index-interlude>p{position:absolute;z-index:3;inset:0;display:grid;place-items:center;font:400 clamp(50px,7vw,110px)/1 var(--serif);letter-spacing:-.02em;pointer-events:none;text-shadow:0 2px 18px #16223450}
.index-service{display:grid;grid-template-columns:40px 1fr 1.25fr;gap:30px;padding:36px 0;border-bottom:1px solid #ffffff35}
.index-no{font:10px/1.7 LibreBaskerville,serif;padding-top:11px}
.index-service h3{font:400 clamp(30px,3.5vw,50px)/1.15 var(--serif)}
.service-jp{font-size:11px;line-height:1.8;margin-top:12px;opacity:.7}
.service-description{font-size:13px;line-height:2.1}.service-description p{font-size:inherit}
.index-profile{display:grid;grid-template-columns:1fr 1fr;gap:10%;border-top:1px solid #ffffff35}
.index-profile h2{font:400 clamp(40px,4.6vw,66px)/1.18 var(--serif);margin-top:44px;letter-spacing:-.02em}
.index-profile .company-copy h3{font-size:19px}.index-profile .company-copy p,.index-profile .company-copy dt,.index-profile .company-copy dd{font-size:13px}.index-profile .company-copy dt{color:#d3d5d9}
.index-contact{display:grid;grid-template-columns:1fr 1fr;gap:8%;border-top:1px solid #ffffff35;padding-top:105px;padding-bottom:115px}
.index-contact h2{font:400 clamp(70px,8vw,120px)/1.1 var(--serif);letter-spacing:-.04em;margin:36px 0 45px}
.index-contact-links a{display:block;font:12px/2.5 LibreBaskerville,serif}
.index-contact input,.index-contact textarea{background:#263445;color:white;border-bottom:1px solid #ffffff45}
.index-contact .send-button{background:transparent;color:white;border:1px solid #ffffff80;text-align:center;justify-content:center}
.index-contact .send-button:hover{background:white;color:#162234}

/* 03: a light editorial layout, centered typography and open graphic forms. */
.hero-three.edition-hero{padding:0;height:100svh;min-height:680px;max-height:1100px;isolation:isolate}
.edition-opening{position:absolute;left:6%;right:6%;top:35px;display:flex;align-items:center;justify-content:space-between;gap:30px;z-index:5}
.edition-opening img{width:180px}.edition-opening nav{display:flex;gap:35px;font:12px/1.8 LibreBaskerville,serif}
.edition-hero-center{position:absolute;left:6%;right:6%;top:21%;z-index:4;text-align:center}
.edition-hero-center>.eyebrow{font-size:10px;letter-spacing:.03em;margin-bottom:32px}
.edition-hero-center h1{font:400 clamp(90px,11.6vw,176px)/.9 var(--serif);letter-spacing:-.04em}
.edition-hero-center h1 em{font-weight:400;color:#4c5c68}
.edition-under-title{display:flex;align-items:baseline;justify-content:center;gap:50px;margin-top:30px}
.edition-under-title>span{font:italic 32px/1.3 var(--serif)}.edition-under-title>p{font-size:11px;line-height:2}
.quiet-composition.edition-hero-art{position:absolute;left:0;right:0;top:auto;bottom:-30px;width:100%;height:23%;background:transparent;overflow:hidden;opacity:1;z-index:1}
.edition-hero-art .motion-art{background:transparent}
.edition-hero-art .motion-plane{background:#d3d5d9;-webkit-mask-image:url('graphic/obsessive-large-navy-v4.png');mask-image:url('graphic/obsessive-large-navy-v4.png');-webkit-mask-size:110% auto;mask-size:110% auto}
.edition-hero-art .motion-plane[data-layer="1"],.edition-hero-art .motion-plane[data-layer="2"]{display:none}
.edition-hero-art .motion-plane[data-layer="3"]{background:#162234;-webkit-mask-size:70% auto;mask-size:70% auto;-webkit-mask-position:80% 40%;mask-position:80% 40%}
.edition-hero-bottom{position:absolute;left:6%;right:6%;bottom:25%;display:flex;justify-content:space-between;align-items:center;z-index:5;font:11px/1.8 LibreBaskerville,serif}
.edition-intro{padding:130px 7%;display:grid;grid-template-columns:24% 1fr;gap:8%;border-bottom:1px solid #16223425}
.edition-side-label>span{font:10px/1.8 LibreBaskerville,serif;letter-spacing:.07em}
.edition-side-label>p{font:13px/1.8 var(--serif);margin-top:35px}
.edition-intro-content h2{font:400 clamp(45px,5.5vw,78px)/1.15 var(--serif);letter-spacing:-.02em;margin-bottom:50px}
.edition-intro .prose{columns:2;column-gap:40px;max-width:none}
.edition-intro .prose>p{break-inside:avoid;font-size:13px;line-height:2.15}.edition-intro .prose>p:first-child{font-size:13px}
.edition-intro .prose p br{display:none}
.edition-works{padding:110px 7% 125px}
.edition-section-header{display:grid;grid-template-columns:1fr 2fr;gap:30px;align-items:end;margin-bottom:65px;position:relative}
.edition-section-header>.eyebrow{align-self:start;font-size:10px}
.edition-section-header h2{font:400 clamp(55px,7.5vw,108px)/1.02 var(--serif);letter-spacing:-.03em}
.edition-section-header>a{position:absolute;left:0;bottom:5px;font-size:12px;gap:0}
.edition-works .work-grid{gap:52px 28px;counter-reset:projects}
.edition-works .work-card{counter-increment:projects;border-top:1px solid #16223430;padding-top:12px}
.edition-works .work-card:before{content:'0' counter(projects);display:block;font:10px/1.4 LibreBaskerville,serif;margin-bottom:18px;color:#4c5c68}
.edition-works .work-caption h3{font-size:13px}.edition-works .work-caption{margin-top:18px}
.edition-practice{padding:110px 7%;background:#f3f4f5;display:grid;grid-template-columns:1fr 1.25fr;gap:10%}
.edition-practice h2{font:400 clamp(42px,4.6vw,65px)/1.2 var(--serif);letter-spacing:-.025em;margin-top:35px}
.edition-practice-art{width:95%;height:230px;position:relative;overflow:hidden;margin-top:55px}
.edition-practice-art .motion-art{inset:-20% 0;height:140%}
.edition-service{border-bottom:1px solid #16223435}.edition-service:first-child{border-top:1px solid #16223435}
.edition-service summary{display:flex;align-items:center;gap:25px;padding:25px 0;cursor:pointer;list-style:none}.edition-service summary::-webkit-details-marker{display:none}
.edition-number{font:10px/1.8 LibreBaskerville,serif;color:#4c5c68;min-width:20px}
.edition-service h3{font:400 clamp(28px,3vw,42px)/1.15 var(--serif);letter-spacing:-.02em}
.edition-plus{margin-left:auto;font:10px/1.8 LibreBaskerville,serif;letter-spacing:0;color:#4c5c68}
.edition-service-content{padding:0 0 26px 45px}.edition-service-content>p{font-size:13px;line-height:2.1}.edition-service-content .service-jp{margin:0 0 14px;font-size:11px;opacity:1;color:#4c5c68}
.edition-profile{padding:105px 7%;display:grid;grid-template-columns:24% 1fr;gap:8%;border-bottom:1px solid #16223425}
.edition-profile .company-copy{max-width:650px}.edition-profile .company-copy h3{font-size:19px}.edition-profile .company-copy p,.edition-profile .company-copy dt,.edition-profile .company-copy dd{font-size:13px}
.edition-contact{padding:110px 7%;display:grid;grid-template-columns:1fr 1fr;gap:10%;background:#162234;color:#fff}
.edition-contact h2{font:400 clamp(55px,6.4vw,90px)/1.08 var(--serif);letter-spacing:-.03em;margin:38px 0}
.edition-contact-links a{display:block;font:12px/2.5 LibreBaskerville,serif}
.edition-contact input,.edition-contact textarea{background:#263445;color:white}
.edition-contact .send-button{border-color:#ffffff80;background:transparent;justify-content:center}.edition-contact .send-button:hover{background:#fff;color:#162234}

/* Shared finishing: restrained reveals and no decorative symbol collection. */
.site-footer{justify-content:center;padding:30px 23px}
.site-footer p{margin:0!important;width:auto!important;text-align:center;order:0!important}
.service-mark,.work-caption>span,.send-button>span,.text-link>span,.more-link>span,.back-top>span{display:none}
.service-row{grid-template-columns:40px 260px 1fr}.variant-2 .service-row,.variant-3 .service-row{grid-template-columns:40px 1fr 1.2fr}
.reveal-item{opacity:0;translate:0 20px;transition:opacity .9s ease,translate .9s cubic-bezier(.22,.61,.36,1);transition-delay:var(--reveal-delay,0ms)}
.reveal-item.is-revealed{opacity:1;translate:0 0}
@media(max-width:1050px){
 .index-project-layout{grid-template-columns:20% 1fr;gap:5%}.index-project-title h2{font-size:52px}.index-works .work-grid{gap:35px 16px}
 .index-service{grid-template-columns:30px 1fr 1.2fr;gap:22px}.index-about{gap:7%;padding-inline:6%}
 .edition-intro,.edition-profile{grid-template-columns:21% 1fr;gap:6%}.edition-intro .prose{column-gap:25px}
 .edition-practice{gap:6%}.edition-service summary{gap:16px}.edition-service-content{padding-left:36px}
}
@media(max-width:768px){
 .index-hero.hero-two{min-height:650px;height:100svh;max-height:950px}
 .index-opening{top:27px;left:23px;right:23px;gap:20px}.index-opening img{width:164px}.index-opening p{display:none}.index-opening>a:last-child{font-size:10px}
 .index-hero-copy{left:23px;right:23px;top:24%}.index-hero-copy .eyebrow{font-size:8px;margin-bottom:25px}.index-hero-copy h1{font-size:clamp(82px,21.5vw,150px)}.index-hero-copy .index-subtitle{font-size:.36em;margin-top:15px;margin-right:0}
 .assembly.index-assembly{left:0;right:0;top:46%;bottom:21%;opacity:1}
 .index-japanese{left:23px;right:23px;bottom:14%;font-size:10px;max-width:28em}
 .index-hero-bottom{left:23px;right:23px;bottom:26px;gap:20px;font-size:10px}.index-hero-bottom>p{display:none}
 .index-works,.index-services,.index-profile,.index-contact{padding:70px 23px}.index-section-top{margin-bottom:38px;gap:20px;font-size:10px;padding-bottom:20px}.index-section-top .eyebrow{font-size:9px}.index-section-top>p{display:none}
 .index-project-layout{display:block}.index-project-title{position:static;margin-bottom:35px}.index-project-title h2{font-size:54px}.index-project-title h2 br{display:none}.index-project-title p{max-width:none;font-size:9px;margin-top:15px}
 .index-works .work-grid{gap:32px 14px}.index-works .work-caption h3{font-size:11px}
 .index-about{display:block;padding:75px 23px}.index-about-title h2{font-size:50px;margin-top:30px}.index-rule{margin:35px 0}.index-about .prose,.index-about .prose>p:first-child{font-size:13px}
 .index-interlude{height:220px}.index-interlude>p{font-size:43px}
 .index-service{grid-template-columns:25px 1fr;gap:18px;padding-block:28px}.index-service h3{font-size:33px}.service-description{grid-column:2;font-size:12px}.service-jp{font-size:10px}
 .index-profile{display:block}.index-profile h2{font-size:45px;margin:30px 0 45px}.index-profile .company-copy h3{font-size:18px}.index-profile .company-copy p,.index-profile .company-copy dt,.index-profile .company-copy dd{font-size:12px}
 .index-contact{display:block}.index-contact h2{font-size:78px;margin:25px 0}.index-contact-links{margin-bottom:40px}.index-contact-links a{font-size:11px}
 .hero-three.edition-hero{min-height:700px}.edition-opening{left:23px;right:23px;top:28px;gap:20px}.edition-opening img{width:146px}.edition-opening nav{gap:18px;font-size:10px}.edition-opening nav a:nth-child(2){display:none}
 .edition-hero-center{left:22px;right:22px;top:25%}.edition-hero-center>.eyebrow{font-size:8px;margin-bottom:36px}.edition-hero-center h1{font-size:clamp(51px,13.6vw,90px);line-height:1.02}.edition-hero-center h1 .type-line:first-child{font-size:1.35em}
 .edition-under-title{display:block;margin-top:25px}.edition-under-title>span{font-size:28px}.edition-under-title>p{font-size:10px;margin-top:20px}
 .quiet-composition.edition-hero-art{height:21%;bottom:-15px;left:0;right:0;width:100%}.edition-hero-art .motion-plane{-webkit-mask-size:240% auto;mask-size:240% auto}.edition-hero-art .motion-plane[data-layer="3"]{-webkit-mask-size:170% auto;mask-size:170% auto}
 .edition-hero-bottom{left:23px;right:23px;bottom:24%;font-size:10px}
 .edition-intro,.edition-profile{padding:75px 23px;display:block}.edition-side-label>p{display:none}.edition-intro-content h2{font-size:45px;margin:35px 0}.edition-intro .prose{columns:auto}.edition-intro .prose>p,.edition-intro .prose>p:first-child{font-size:13px}
 .edition-works{padding:75px 23px}.edition-section-header{display:block;margin-bottom:40px}.edition-section-header h2{font-size:60px;margin:28px 0}.edition-section-header>a{position:static;font-size:11px}
 .edition-works .work-grid{gap:35px 14px}.edition-works .work-caption h3{font-size:11px}.edition-works .work-card:before{font-size:9px;margin-bottom:12px}
 .edition-practice{padding:75px 23px;display:block}.edition-practice h2{font-size:43px;margin-top:28px}.edition-practice-art{width:100%;height:170px;margin:32px 0 40px}
 .edition-service h3{font-size:32px}.edition-service summary{gap:18px;padding-block:23px}.edition-service-content{padding-left:38px}.edition-service-content>p{font-size:12px}.edition-plus{font-size:9px}
 .edition-profile .company-copy{margin-top:35px}.edition-profile .company-copy h3{font-size:18px}.edition-profile .company-copy p,.edition-profile .company-copy dt,.edition-profile .company-copy dd{font-size:12px}
 .edition-contact{padding:75px 23px;display:block}.edition-contact h2{font-size:63px;margin:28px 0}.edition-contact-links{margin-bottom:40px}.edition-contact-links a{font-size:11px}
 .service-row,.variant-2 .service-row,.variant-3 .service-row{grid-template-columns:27px 1fr}
}
@media(prefers-reduced-motion:reduce){.reveal-item{opacity:1;translate:none;transition:none}.type-line>*{animation:none}.index-assembly,.edition-hero-art{transform:none!important}}
