/* ============================================================
   V2 — Jeff Koons-style skin (overrides on top of site.css)
   Helvetica-ish, small uppercase type, image-first
   ============================================================ */
body{font-family:"Helvetica Neue",Helvetica,"Noto Sans JP",Arial,sans-serif;font-size:13px}

/* nav */
.wordmark{font-size:19px;font-weight:600;letter-spacing:.3em}
.menu{gap:30px}
.menu a{font-size:12.5px;letter-spacing:.2em;text-transform:uppercase}
.dropdown a{font-size:12px;letter-spacing:.14em;text-transform:uppercase}

/* page headings — small, quiet, uppercase */
.page-head .kicker{display:none}
.page-head h1{font-size:14px;font-weight:500;letter-spacing:.26em;text-transform:uppercase}
.page-head h1 span{font-size:1em!important;letter-spacing:.1em}
.page-head p{font-size:14px;max-width:560px;line-height:1.65}

/* series index */
.cap .title{font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.cap .meta{font-size:11px;letter-spacing:.06em}

/* gallery captions — reduced per request */
.gallery.captioned figcaption .t{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#222}
.gallery.captioned figcaption .m{font-size:11px;letter-spacing:.04em;color:#666;margin-top:2px}
.gallery.captioned figure{margin-bottom:34px}
.lb-caption .t{font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.lb-caption .m{font-size:11px}

/* biography / news / contact */
.cv-block h2{font-size:12px;letter-spacing:.3em;font-weight:600}
.cv-block h2 .excerpt{font-weight:400;letter-spacing:.04em;text-transform:none;color:var(--soft);font-size:.92em}
.bio-lead{font-size:.92rem;line-height:1.95}
.cv-row,.cv-cols div{font-size:12.5px}
footer{font-size:11px;letter-spacing:.08em}

/* contact — hint under the send button */
.form-note{font-size:11.5px;color:#9a9a9a;margin:12px 0 0;letter-spacing:.02em;line-height:1.6}

/* news — extra detail lines under the venue */
.news-row .what .detail{font-size:12.5px;color:#555;line-height:1.6;margin-top:3px}

/* works — Japanese description under the English one (JA size kept as-is) */
.page-head .jp-desc{margin-top:6px;color:#555;font-size:12.5px}

/* themes — named group headings with EN/JA + description */
.theme-title{font-weight:600;font-size:12.5px;letter-spacing:.22em;text-transform:uppercase;margin:0;color:var(--ink)}
.theme-title span[lang=ja]{font-weight:400;letter-spacing:.08em;text-transform:none;color:#666;margin-left:8px;font-size:.92em}
.theme-desc{font-size:12.5px;color:#555;margin:8px 0 0;max-width:620px;line-height:1.7}
.theme-desc.jp-desc{margin-top:3px}

/* The Seasons: force a 3-across grid (spring · summer · fall on top,
   winter centered on the second row) instead of the masonry flow */
.gallery.seasons{column-count:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:start}
.gallery.seasons figure{margin:0}
.gallery.seasons figure:nth-child(4){grid-column:2}
@media(max-width:600px){
  .gallery.seasons{grid-template-columns:1fr}
  .gallery.seasons figure:nth-child(4){grid-column:auto}
}

/* contact: breathing room under the button, and keep the footer at the
   bottom of the viewport when the page is shorter than the screen */
body.page-contact,body.page-news{min-height:100vh;display:flex;flex-direction:column}
body.page-contact footer,body.page-news footer{margin-top:auto}
body.page-contact .contact-wrap{padding-bottom:150px}
body.page-news .news-wrap{padding-bottom:90px}

/* ===== fullscreen slideshow home ===== */
body.home-slideshow{overflow:hidden}
body.home-slideshow .bar{position:absolute;top:0;left:0;right:0;z-index:80}
/* scrim: keeps the wordmark/menu legible over light artwork */
body.home-slideshow .bar::before{
  content:"";position:absolute;top:0;left:0;right:0;height:190px;
  pointer-events:none;z-index:-1;
  background:linear-gradient(180deg,rgba(0,0,0,.62) 0%,rgba(0,0,0,.42) 35%,rgba(0,0,0,.18) 70%,rgba(0,0,0,0) 100%);
}
body.home-slideshow .wordmark,body.home-slideshow .menu a,body.home-slideshow .nav-toggle{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.65),0 2px 22px rgba(0,0,0,.4)}
body.home-slideshow .dropdown a{color:var(--ink);text-shadow:none}
.slideshow{position:fixed;inset:0;background:#000}
.slideshow a{display:block;position:absolute;inset:0}
.slideshow img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  opacity:0;transition:opacity 2.2s ease}
.slideshow img.on{opacity:1}
@media(max-width:600px){
  body.home-slideshow .menu{background:#fff}
  body.home-slideshow .menu a{color:var(--ink);text-shadow:none}
  /* on narrow screens drop the JP subtitle onto its own line so it doesn't
     wrap mid-phrase next to the English title */
  .page-head h1 span{display:block;margin-top:4px}
}

/* ===== works — series strips (koons style) ===== */
.series-block{padding:46px 0 0}
.series-head{padding:0 var(--pad) 26px}
.series-title{display:block;font-weight:600;font-size:12.5px;letter-spacing:.22em;text-transform:uppercase;line-height:1.4;color:var(--ink)}
.series-title:hover{opacity:.6}
.view-all{display:inline-block;margin-top:6px;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#b3b3b3}
.view-all:hover{color:var(--ink)}
.view-all span[lang=ja]{text-transform:none;letter-spacing:.08em;margin-left:6px}
.strip{display:flex;gap:2px;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.strip::-webkit-scrollbar{display:none}
.strip figure{flex:0 0 auto;margin:0;cursor:pointer;background:#f4f3f1}
.strip img{height:min(46vh,420px);width:auto;display:block;transition:opacity .25s}
.strip figure:hover img{opacity:.85}
.strip-nav{display:flex;justify-content:space-between;padding:16px var(--pad) 6px}
.strip-nav button{background:none;border:0;cursor:pointer;font-size:1.5rem;color:var(--ink);padding:4px 10px;transition:opacity .2s}
.strip-nav button:hover{opacity:.5}
@media(max-width:600px){.strip img{height:38vh}}
