/* 04 — About / Japanese editorial minimalism */
.studio,
html[data-theme="light"] .studio,
html[data-site-theme="mono-light"] .studio,
html[data-site-theme="chromatic"] .studio{
  position:relative;
  isolation:isolate;
  display:grid!important;
  grid-template-columns:clamp(48px,6vw,86px) minmax(280px,38vw) minmax(320px,1fr)!important;
  gap:0!important;
  align-items:stretch!important;
  padding:clamp(96px,12vw,180px) max(24px,6vw)!important;
  background:#f2f0e9!important;
  background-image:none!important;
  color:#0a0a0a!important;
  text-align:left!important;
}
.studio::after{
  content:"遠近";
  position:absolute;
  top:clamp(54px,7vw,92px);
  right:max(24px,6vw);
  width:46px;
  aspect-ratio:1;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#b82424;
  color:#fff;
  font:600 11px/1 "Hiragino Mincho ProN","Yu Mincho",serif;
  letter-spacing:.08em;
}
.studio-jp{
  grid-column:1;
  margin:0;
  padding:4px 0 0;
  border-right:1px solid currentColor;
  writing-mode:vertical-rl;
  text-orientation:upright;
  font:500 clamp(18px,1.65vw,25px)/1.15 "Hiragino Mincho ProN","Yu Mincho","Noto Serif JP",serif;
  letter-spacing:.3em;
}
.studio .founder{
  grid-column:2;
  width:100%!important;
  margin:0!important;
  padding:0 clamp(24px,3vw,48px)!important;
  background:transparent!important;
  transform:none!important;
}
.studio .founder img{
  width:100%;
  height:100%;
  max-height:760px;
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center 24%;
  border:1px solid #0a0a0a;
  filter:grayscale(1) contrast(1.18);
}
.studio .founder figcaption{
  margin:16px 0 0!important;
  text-align:left!important;
  color:#333!important;
  font:10px PlexCond,sans-serif;
  letter-spacing:.16em;
}
.studio-copy{
  grid-column:3;
  align-self:center;
  max-width:none!important;
  margin:0!important;
  padding:clamp(28px,4vw,68px)!important;
  background:transparent!important;
  border:0!important;
  border-left:1px solid #0a0a0a!important;
  backdrop-filter:none!important;
  text-align:left!important;
}
.studio-copy .section-tag{
  margin:0 0 clamp(42px,6vw,82px)!important;
  color:#333!important;
}
.studio-copy h2{
  max-width:760px;
  margin:0!important;
  color:#0a0a0a!important;
  font-size:clamp(54px,6.4vw,108px)!important;
  line-height:.86!important;
  letter-spacing:-.035em!important;
  text-align:left!important;
}
.studio-copy h2 span,.studio-copy h2 em{display:block;color:inherit!important;font-style:normal}
.studio-copy h2 em{margin-left:clamp(18px,4vw,68px)}
.studio-copy>p:not(.section-tag){
  max-width:580px!important;
  margin:clamp(42px,5vw,72px) 0 0!important;
  color:#292929!important;
  font-size:clamp(15px,1.25vw,19px);
  line-height:1.95!important;
}
.studio .values{
  display:grid!important;
  grid-template-columns:1fr 1fr;
  gap:0!important;
  margin-top:clamp(44px,5vw,72px)!important;
  border-top:1px solid #0a0a0a;
  border-bottom:1px solid #0a0a0a;
}
.studio .values span{
  position:relative;
  min-height:70px;
  padding:25px 14px 20px 38px!important;
  border:0!important;
  border-radius:0!important;
  color:#0a0a0a!important;
  font-size:10px;
}
.studio .values span:nth-child(odd){border-right:1px solid #0a0a0a!important}
.studio .values span:nth-child(-n+2){border-bottom:1px solid #0a0a0a!important}
.studio .values span::before{position:absolute;left:12px;top:24px;color:#888;font-size:8px}
.studio .values span:nth-child(1)::before{content:"一"}.studio .values span:nth-child(2)::before{content:"二"}.studio .values span:nth-child(3)::before{content:"三"}.studio .values span:nth-child(4)::before{content:"四"}

html[data-site-theme="mono-dark"] .studio{
  background:#050505!important;
  background-image:none!important;
  color:#f2f0e9!important;
}
html[data-site-theme="mono-dark"] .studio-jp,
html[data-site-theme="mono-dark"] .studio-copy{border-color:#f2f0e9!important}
html[data-site-theme="mono-dark"] .studio-copy h2,
html[data-site-theme="mono-dark"] .studio-copy>p:not(.section-tag),
html[data-site-theme="mono-dark"] .studio-copy .section-tag,
html[data-site-theme="mono-dark"] .studio .founder figcaption,
html[data-site-theme="mono-dark"] .studio .values span{color:#f2f0e9!important}
html[data-site-theme="mono-dark"] .studio .founder img,
html[data-site-theme="mono-dark"] .studio .values,
html[data-site-theme="mono-dark"] .studio .values span{border-color:#f2f0e9!important}

@media(max-width:900px){
  .studio,.studio:is(html[data-theme="light"] *){
    grid-template-columns:48px 1fr!important;
  }
  .studio .founder{grid-column:2;padding:0 0 54px 28px!important}
  .studio-copy{grid-column:2;padding:54px 0 0 28px!important;border-left:0!important;border-top:1px solid currentColor!important}
  .studio-jp{grid-row:1/span 2}
}
@media(max-width:620px){
  .studio,
  html[data-theme="light"] .studio,
  html[data-site-theme="mono-light"] .studio,
  html[data-site-theme="mono-dark"] .studio,
  html[data-site-theme="chromatic"] .studio{
    display:grid!important;
    grid-template-columns:34px minmax(0,1fr)!important;
    padding:88px 20px!important;
  }
  .studio::after{top:34px;right:20px;width:38px;font-size:9px}
  .studio-jp{font-size:16px;letter-spacing:.22em}
  .studio .founder{margin:0!important;padding:0 0 42px 18px!important}
  .studio .founder img{max-height:none;aspect-ratio:4/5}
  .studio-copy{padding:42px 0 0 18px!important}
  .studio-copy .section-tag{margin-bottom:36px!important}
  .studio-copy h2{font-size:clamp(46px,15vw,72px)!important}
  .studio-copy h2 em{margin-left:0}
  .studio-copy>p:not(.section-tag){font-size:15px;line-height:1.8!important}
  .studio .values{grid-template-columns:1fr}
  .studio .values span{border-right:0!important;border-bottom:1px solid currentColor!important}
  .studio .values span:last-child{border-bottom:0!important}
}

/* Turkish/Latin-only about layout: preserve the minimal grid, remove Japanese copy. */
.studio,
html[data-theme="light"] .studio,
html[data-site-theme="mono-light"] .studio,
html[data-site-theme="mono-dark"] .studio,
html[data-site-theme="chromatic"] .studio{
  grid-template-columns:minmax(280px,40vw) minmax(320px,1fr)!important;
}
.studio::after{content:none!important;display:none!important}
.studio-jp{display:none!important}
.studio .founder{grid-column:1!important;padding-left:0!important}
.studio-copy{grid-column:2!important}
.studio .values span:nth-child(1)::before{content:"01"}
.studio .values span:nth-child(2)::before{content:"02"}
.studio .values span:nth-child(3)::before{content:"03"}
.studio .values span:nth-child(4)::before{content:"04"}
@media(max-width:900px){
  .studio,.studio:is(html[data-theme="light"] *){grid-template-columns:1fr!important}
  .studio .founder,.studio-copy{grid-column:1!important}
  .studio .founder{padding:0 0 54px!important}
  .studio-copy{padding:54px 0 0!important}
}
@media(max-width:620px){
  .studio,html[data-theme="light"] .studio,html[data-site-theme="mono-light"] .studio,html[data-site-theme="mono-dark"] .studio,html[data-site-theme="chromatic"] .studio{grid-template-columns:minmax(0,1fr)!important}
  .studio .founder{padding:0 0 42px!important}
  .studio-copy{padding:42px 0 0!important}
}

/* Shared responsive and multilingual safety layer (kept last in the cascade). */
html{max-width:100%;overflow-x:clip;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{max-width:100%;overflow-x:clip}
img,svg,video,canvas{max-width:100%;height:auto}
main,main>section,.site-header,.connected-footer{min-width:0;max-width:100%}
:where(h1,h2,h3,p,a,summary,address,small,span){overflow-wrap:break-word}
html[lang="ja"] :where(h1,h2,h3,p,a,summary){word-break:normal;line-break:strict}
html[lang="es"] :where(h1,h2,h3),html[lang="it"] :where(h1,h2,h3){hyphens:auto}
@media(max-width:700px){
  .site-header{width:100%;max-width:100%;padding-inline:16px}.header-tools{min-width:0}
  .mega-menu,.mega-menu__body{max-width:100%;overflow-x:hidden}.mega-menu__primary a{font-size:clamp(30px,10vw,42px);line-height:1.02}
  .manifesto h2,html[data-theme="light"] .manifesto h2{max-width:100%!important;font-size:clamp(39px,12vw,62px)!important;line-height:.94!important;letter-spacing:-.035em!important}
  html[lang="es"] .manifesto h2,html[lang="it"] .manifesto h2{font-size:clamp(30px,8.4vw,45px)!important}
  html[lang="ja"] .manifesto h2{font-size:clamp(34px,10vw,52px)!important;line-height:1.08!important;letter-spacing:.01em!important}
  .archive-head h2,.objects h2,.studio h2,.contact h2{max-width:100%;font-size:clamp(42px,15vw,74px)!important;line-height:.92!important}
  html[lang="ja"] .archive-head h2,html[lang="ja"] .objects h2,html[lang="ja"] .studio h2,html[lang="ja"] .contact h2{font-size:clamp(38px,12vw,62px)!important;line-height:1.08!important}
  html[lang="es"] .archive-head h2,html[lang="es"] .objects h2,html[lang="es"] .studio h2,html[lang="es"] .contact h2,html[lang="it"] .archive-head h2,html[lang="it"] .objects h2,html[lang="it"] .studio h2,html[lang="it"] .contact h2{font-size:clamp(34px,10vw,54px)!important}
  .filters{max-width:100%;overflow-x:auto!important;flex-wrap:nowrap!important;justify-content:flex-start!important;scrollbar-width:none}.filters::-webkit-scrollbar{display:none}.filters button{flex:0 0 auto}
  .archive .art-grid,.rail-track{max-width:100%}.art-meta h3,.rail-card h3{overflow-wrap:anywhere}
  .faq-list summary{grid-template-columns:minmax(0,1fr) 34px;gap:12px}.faq-answer__link{max-width:100%;white-space:normal}
  .connected-footer__grid,.connected-footer__bottom{max-width:100%;overflow:hidden}.footer-theme.footer-theme--triple{max-width:100%}
}
@supports not (overflow:clip){html,body{overflow-x:hidden}}
