@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Noto+Sans+JP:wght@400;500;700&display=swap');
:root{--ink:#111;--paper:#f7f6f1;--line:#c9c7bf;--muted:#6e6d67;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans','Noto Sans JP',sans-serif;line-height:1.8}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:20px 4vw;background:rgba(247,246,241,.92);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}.site-mark{font-weight:600;letter-spacing:.04em}.site-nav{display:flex;gap:22px;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.site-nav a:hover{opacity:.5}.menu-button{display:none;border:0;background:none}.page-hero{min-height:74vh;display:grid;place-content:center;text-align:center;padding:120px 6vw 80px;border-bottom:1px solid var(--line)}.page-hero.compact{min-height:52vh}.page-hero h1{margin:.08em 0;font-size:clamp(54px,9vw,128px);line-height:.95;font-weight:500;letter-spacing:-.05em}.page-hero p{margin:6px}.eyebrow{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.down,.text-link{display:inline-block;margin-top:30px;border-bottom:1px solid}.works,.case-list,.archive-year,.about-copy,.contact-wrap,.shop-intro,.shop-shelf{max-width:var(--max);margin:auto;padding:110px 5vw}.art-card{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(240px,.75fr);gap:7vw;align-items:center;margin-bottom:150px}.art-card.reverse{grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr)}.art-card.reverse .image-button{order:2}.art-card h2{font-size:clamp(34px,5vw,70px);line-height:1;margin:.2em 0}.art-card span{font-size:12px}.image-button{padding:0;border:0;background:none;text-align:left;cursor:zoom-in}.image-button img{width:100%;transition:transform .35s}.image-button:hover img{transform:scale(.985)}.quiet-panel,.manifesto{padding:120px 6vw;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.quiet-panel h2,.manifesto h2{font-size:clamp(42px,7vw,92px);margin:.1em}.site-footer{padding:90px 5vw 40px;text-align:center}.site-footer p span{display:block;font-size:clamp(24px,4vw,54px);line-height:1.4}.footer-small{font-size:11px!important;letter-spacing:.12em;color:var(--muted);margin:35px 0}.archive-year>header,.section-heading{display:grid;grid-template-columns:80px 1fr 1fr;align-items:end;border-bottom:1px solid;padding-bottom:20px}.archive-year>header h2,.section-heading h2{font-size:clamp(40px,7vw,90px);margin:0;line-height:1}.archive-entry{padding:70px 0 20px}.archive-entry h3{font-size:clamp(32px,5vw,62px);margin:.2em 0}.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:45px}.update-note{max-width:760px;margin:0 auto 120px;padding:40px;border:1px solid}.intro{max-width:900px;margin:auto;padding:120px 5vw;text-align:center}.intro h2{font-size:clamp(34px,4.5vw,60px);line-height:1.3}.display-line{white-space:nowrap}.translation-case{padding:100px 0;border-bottom:1px solid}.translation-case h3{font-size:clamp(30px,4vw,56px);margin:.1em 0}.pair{display:grid;grid-template-columns:1fr 40px 1fr;align-items:center;gap:20px;margin-top:45px}.pair i{text-align:center}.pair b{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px}.feature-project{max-width:var(--max);margin:0 auto 120px;padding:80px 5vw;display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.feature-project h2{font-size:clamp(40px,6vw,80px);line-height:1}.shop-intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.shop-intro h2{font-size:clamp(40px,6vw,82px);line-height:1.1}.shop-intro img{max-height:560px;margin:auto}.shop-shelf{padding-top:0}.product-card{max-width:560px;margin:auto;text-align:center}.product-placeholder{aspect-ratio:4/5;display:grid;place-content:center;background:#eceae2;border:1px solid;letter-spacing:.18em}.disabled-button{display:inline-block;margin-top:20px;padding:13px 28px;border:1px solid;color:var(--muted)}.lead{font-size:clamp(26px,4vw,52px);line-height:1.7}.about-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:100px}.about-columns h2{font-size:28px}.contact-wrap{max-width:1320px;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:6vw}.contact-copy h2{font-size:clamp(38px,4vw,56px);line-height:1.28;letter-spacing:-.035em}.contact-copy h2 span{display:block;white-space:nowrap}.mail{margin-top:40px;font-weight:600}.contact-form{display:grid;gap:28px}.contact-form label{display:grid;gap:7px;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.contact-form input,.contact-form textarea{border:0;border-bottom:1px solid;background:transparent;padding:12px 2px;outline:none}.contact-form textarea{border:1px solid;padding:12px}.contact-form button{padding:15px;border:1px solid;background:var(--ink);color:var(--paper);cursor:pointer}.contact-form button:disabled{opacity:.5}.trap{position:absolute!important;left:-9999px}.lightbox{width:min(92vw,1100px);border:0;padding:45px;background:#111;color:#fff}.lightbox::backdrop{background:rgba(0,0,0,.84)}.lightbox figure{margin:0}.lightbox img{max-height:78vh;margin:auto}.lightbox-close{position:absolute;right:12px;top:5px;border:0;background:none;color:#fff;font-size:34px;cursor:pointer}.lightbox figcaption{text-align:center;margin-top:15px}.reveal{opacity:0;transform:translateY(25px);transition:.8s ease}.reveal.is-visible{opacity:1;transform:none}@media(max-width:760px){.display-line{white-space:normal}.contact-copy h2 span{white-space:normal}.site-header{align-items:flex-start}.menu-button{display:block}.site-nav{display:none;position:absolute;top:67px;left:0;right:0;padding:25px 4vw;background:var(--paper);border-bottom:1px solid;flex-direction:column}.site-nav.is-open{display:flex}.page-hero{min-height:62vh}.art-card,.art-card.reverse,.feature-project,.shop-intro,.contact-wrap{grid-template-columns:1fr}.art-card.reverse .image-button{order:0}.art-card{gap:30px;margin-bottom:100px}.archive-grid{grid-template-columns:1fr}.pair{grid-template-columns:1fr}.pair i{transform:rotate(90deg)}.about-columns{grid-template-columns:1fr}.archive-year>header,.section-heading{grid-template-columns:50px 1fr}.archive-year>header p,.section-heading p{grid-column:2}.site-footer{padding-top:60px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.reveal{opacity:1;transform:none;transition:none}}
/* About page — deliberate Japanese line composition */
.about-page .about-copy{
  max-width:1320px;
  padding-top:72px;
  padding-bottom:118px;
}
.about-lead{
  margin:0;
  font-size:clamp(36px,3.55vw,64px);
  font-weight:400;
  line-height:1.62;
  letter-spacing:-.035em;
}
.about-lead span{
  display:block;
  white-space:nowrap;
}
.about-page .about-columns{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:64px;
  margin-top:118px;
}
.about-page .about-columns section{
  min-width:0;
}
.about-page .about-columns h2{
  margin:0 0 24px;
  font-size:clamp(24px,2vw,32px);
  line-height:1.2;
}
.about-page .about-columns p{
  margin:0;
  font-size:clamp(15px,1.15vw,18px);
  line-height:1.9;
}

@media(max-width:1100px){
  .about-lead{
    font-size:clamp(34px,4.3vw,54px);
  }
  .about-lead span{
    white-space:normal;
  }
}
@media(max-width:760px){
  .about-page .about-copy{
    padding-top:64px;
    padding-bottom:84px;
  }
  .about-lead{
    font-size:clamp(30px,9vw,44px);
    line-height:1.55;
  }
  .about-lead span{
    display:inline;
  }
  .about-page .about-columns{
    gap:48px;
    margin-top:72px;
  }
  .about-page .about-columns p br{
    display:none;
  }
}

.opened-date {
  margin: 0 0 1rem;
  color: rgba(17,17,17,.46);
  font-size: .68rem;
  letter-spacing: .18em;
  text-transform: uppercase;
}


/* Work — CHEAPER'S Recipe */
.recipe-section{max-width:var(--max);margin:auto;padding:110px 5vw;border-top:1px solid var(--line)}
.recipe-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:6vw;align-items:end;padding-bottom:28px;border-bottom:1px solid var(--line)}
.recipe-heading h2{margin:.08em 0 0;font-size:clamp(42px,7vw,88px);font-weight:500;line-height:.95;letter-spacing:-.05em}
.recipe-heading>p{margin:0;color:var(--muted);font-size:13px;line-height:1.8}
.recipe-case{padding:90px 0 20px}
.recipe-meta{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.75fr);column-gap:7vw;align-items:end;margin-bottom:44px}
.recipe-meta .eyebrow,.recipe-meta h3,.recipe-meta>p:nth-of-type(2){grid-column:1}
.recipe-meta h3{margin:.08em 0;font-size:clamp(42px,6vw,76px);font-weight:500;line-height:1}
.recipe-meta>p:nth-of-type(2){margin:0;color:var(--muted)}
.recipe-lead{grid-column:2!important;grid-row:1/4;margin:0;align-self:end;font-size:clamp(16px,1.5vw,20px);line-height:2}
.recipe-image{display:block;width:min(100%,980px);margin:0 auto}
.recipe-image img{width:100%;border:1px solid var(--line);box-shadow:0 20px 55px rgba(17,17,17,.08)}
.recipe-note{max-width:620px;margin:34px auto 0;color:var(--muted);text-align:center;font-size:13px;letter-spacing:.02em}
@media(max-width:760px){.recipe-section{padding:80px 5vw}.recipe-heading,.recipe-meta{grid-template-columns:1fr}.recipe-heading{gap:24px}.recipe-heading>p{margin-top:8px}.recipe-meta{gap:22px;margin-bottom:30px}.recipe-lead{grid-column:1!important;grid-row:auto;margin-top:10px}.recipe-case{padding-top:60px}.recipe-note{text-align:left}}
