/* Exhibitions — JP */
.ex-hero{position:relative;min-height:100vh;display:flex;align-items:flex-end;color:var(--paper);background:#0d0c0a;overflow:hidden}
.ex-hero .bg{position:absolute;inset:0}
.ex-hero .bg img{width:100%;height:100%;object-fit:cover;animation:kb 22s ease-out forwards}
.ex-hero .bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,12,10,.35),rgba(13,12,10,.05) 40%,rgba(13,12,10,.85))}
.ex-hero .inner{position:relative;width:100%;max-width:1460px;margin:0 auto;padding:0 var(--pad) clamp(60px,8vw,120px)}
.ex-hero .t{font-family:var(--serif);font-weight:300;font-size:clamp(46px,8.4vw,136px);line-height:.95;letter-spacing:.03em;margin-top:22px}
.ex-hero .jt{font-family:var(--jp-serif);font-weight:300;font-size:clamp(17px,1.8vw,26px);letter-spacing:.14em;margin-top:22px;opacity:.9}
.ex-hero .meta{margin-top:30px;font-size:11px;letter-spacing:.24em;text-transform:uppercase;opacity:.7}

.ex-intro{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(30px,6vw,110px);align-items:start}
.ex-intro .poem{font-family:var(--jp-serif);font-weight:300;font-size:clamp(16px,1.45vw,20px);line-height:2.35;letter-spacing:.1em}
.ex-intro .poem p+p{margin-top:1.3em}
.ex-intro .en-p{font-family:var(--serif);font-style:italic;font-size:clamp(17px,1.4vw,21px);line-height:1.8;opacity:.75;margin-top:30px}
@media (max-width:900px){.ex-intro{grid-template-columns:1fr}}

.ex-full{position:relative;height:clamp(420px,86vh,980px);overflow:hidden;background:#111}
.ex-full img{position:absolute;inset:-6% 0;width:100%;height:112%;object-fit:cover}
.ex-full.contain{background:#0d0c0a;height:auto;padding:clamp(40px,6vw,90px) var(--pad)}
.ex-full.contain img{position:static;width:100%;height:auto;max-height:88vh;object-fit:contain;inset:auto}

.ex-duo{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(10px,1.4vw,22px)}
.ex-duo a.ph{display:block;overflow:hidden;cursor:zoom-in}
.ex-duo .w7{grid-column:1/8;aspect-ratio:3/2}
.ex-duo .w5{grid-column:8/13;aspect-ratio:4/5;align-self:end}
.ex-duo .w6a{grid-column:1/7;aspect-ratio:4/3}
.ex-duo .w6b{grid-column:7/13;aspect-ratio:4/3;margin-top:clamp(40px,7vw,120px)}
.ex-duo .w12{grid-column:1/13;aspect-ratio:21/9}
.ex-duo .w5l{grid-column:1/6;aspect-ratio:3/4}
.ex-duo .w7r{grid-column:6/13;aspect-ratio:3/2;align-self:center}
@media (max-width:760px){.ex-duo{grid-template-columns:1fr}.ex-duo > *{grid-column:1/-1!important;margin-top:0!important;aspect-ratio:3/2!important}}

.stmt-b{max-width:44em;margin:0 auto;text-align:center}
.stmt-b .poem{font-family:var(--jp-serif);font-weight:300;font-size:clamp(16px,1.5vw,21px);line-height:2.4;letter-spacing:.1em;margin-top:40px}
.stmt-b .poem p+p{margin-top:1.3em}
.stmt-b .coin{font-family:var(--serif);font-style:italic;font-size:clamp(28px,3vw,46px);margin-top:36px;color:var(--gold)}
.sec:not(.dark) .stmt-b .coin{color:var(--lacquer)}

.arc{border-top:1px solid var(--line)}
.dark .arc{border-color:var(--line-light)}
.arc .row{display:grid;grid-template-columns:110px 1.3fr 1fr;gap:30px;padding:26px 0;border-bottom:1px solid var(--line);align-items:baseline}
.dark .arc .row{border-color:var(--line-light)}
.arc .row .y{font-family:var(--serif);font-size:17px;letter-spacing:.12em;color:var(--muted)}
.dark .arc .row .y{color:rgba(244,241,234,.5)}
.arc .row b{font-family:var(--jp-serif);font-weight:400;font-size:clamp(16px,1.4vw,19px);letter-spacing:.06em;line-height:1.7}
.arc .row span{font-size:13.5px;line-height:1.9;opacity:.75}
@media (max-width:760px){.arc .row{grid-template-columns:70px 1fr}.arc .row span{grid-column:2}}

.info dl{display:grid;grid-template-columns:130px 1fr;gap:16px 28px;font-size:14px;line-height:1.95;border-top:1px solid var(--line);padding-top:30px}
.dark .info dl{border-color:var(--line-light)}
.info dt{font-size:11px;letter-spacing:.24em;text-transform:uppercase;opacity:.55;padding-top:4px}
@media (max-width:640px){.info dl{grid-template-columns:1fr;gap:4px}.info dd{margin-bottom:14px}}

.trilogy-nav{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line-light)}
.trilogy-nav a{padding:40px 30px 44px 0;border-bottom:1px solid var(--line-light);display:flex;flex-direction:column;gap:10px;transition:color .4s}
.trilogy-nav a:not(:last-child){border-right:1px solid var(--line-light)}
.trilogy-nav a:not(:first-child){padding-left:30px}
.trilogy-nav a:hover{color:var(--gold)}
.trilogy-nav a.cur{color:var(--gold)}
.trilogy-nav .n{font-family:var(--serif);font-size:15px;letter-spacing:.2em;opacity:.5}
.trilogy-nav b{font-family:var(--serif);font-weight:300;font-size:clamp(22px,2.2vw,32px)}
.trilogy-nav i{font-style:normal;font-size:12px;letter-spacing:.14em;opacity:.55}
@media (max-width:760px){.trilogy-nav{grid-template-columns:1fr}.trilogy-nav a{padding:26px 0!important;border-right:0!important}}

/* list page */
.ex-card-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(20px,2.4vw,40px) clamp(14px,1.6vw,26px)}
.ex-card{display:block}
.ex-card .ph{overflow:hidden}
.ex-card .k{display:flex;justify-content:space-between;gap:14px;margin-top:18px;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted)}
.ex-card h3{font-family:var(--serif);font-weight:300;font-size:clamp(24px,2.4vw,36px);line-height:1.1;margin-top:10px;letter-spacing:.02em}
.ex-card .j{font-family:var(--jp-serif);font-size:14px;letter-spacing:.08em;margin-top:8px;color:var(--ink-2)}
.ex-card:hover h3{color:var(--lacquer)}
.ex-card.c8 {grid-column:span 8}.ex-card.c8 .ph{aspect-ratio:16/10}
.ex-card.c4 {grid-column:span 4}.ex-card.c4 .ph{aspect-ratio:4/5}
.ex-card.c6 {grid-column:span 6}.ex-card.c6 .ph{aspect-ratio:3/2}
.ex-card.c12{grid-column:span 12}.ex-card.c12 .ph{aspect-ratio:21/9}
.ex-card.c3 {grid-column:span 3}.ex-card.c3 .ph{aspect-ratio:3/4}
@media (max-width:900px){.ex-card-grid{grid-template-columns:1fr 1fr}.ex-card{grid-column:span 1!important}.ex-card.c8,.ex-card.c12{grid-column:1/-1!important}.ex-card .ph{aspect-ratio:4/5!important}.ex-card.c8 .ph,.ex-card.c12 .ph{aspect-ratio:3/2!important}}
@media (max-width:480px){.ex-card-grid{grid-template-columns:1fr}.ex-card .ph{aspect-ratio:3/2!important}}
.ex-hist .row{display:grid;grid-template-columns:90px 1.4fr 1fr;gap:26px;padding:20px 0;border-bottom:1px solid var(--line);align-items:baseline;font-size:14px}
.ex-hist .row b{font-family:var(--jp-serif);font-weight:400;font-size:16px;letter-spacing:.05em}
.ex-hist .row .y{font-family:var(--serif);color:var(--muted);letter-spacing:.1em}
.ex-hist .row span{color:var(--muted);font-size:13px}
@media (max-width:760px){.ex-hist .row{grid-template-columns:60px 1fr}.ex-hist .row span{grid-column:2}}

/* UI polish v2 — exhibitions mobile: stack meta, give titles full width */
@media (max-width:900px){
  .ex-card .k{flex-direction:column;align-items:flex-start;gap:3px;letter-spacing:.2em;line-height:1.7}
  .ex-card h3{font-size:clamp(24px,6.4vw,32px);line-height:1.15;margin-top:8px}
  .ex-card .j{font-size:13.5px;line-height:1.8}
  .ex-hist .row{grid-template-columns:1fr;gap:4px;padding:18px 0}
  .ex-hist .row span{grid-column:auto}
  .ex-hist .row .y{font-size:13px}
  .arc .row{grid-template-columns:1fr;gap:4px}
  .arc .row span{grid-column:auto}
}
@media (max-width:760px){
  .ex-hero .t{font-size:clamp(38px,11vw,58px);line-height:1;word-break:keep-all}
  .ex-hero .jt{font-size:16px;letter-spacing:.08em;line-height:1.8}
  .ex-hero .meta{letter-spacing:.16em;line-height:1.9}
}

/* portrait flyer: show whole */
.ex-full.contain a{display:block;cursor:zoom-in}
.ex-full.contain img{margin:0 auto;width:auto;max-width:100%}
@media (max-width:760px){.ex-full.contain img{width:100%;max-height:none}}
.stmt-b .stmt-h{margin-top:30px}
