/* End matter shares the exhibition's existing type and colour tokens. */
.exhibition-end,.exhibition-footer { width:min(calc(100% - var(--page-margin)*2),1536px); margin-inline:auto; }
.exhibition-end { border-top:1px solid var(--line); padding-top:clamp(80px,10vw,160px); }
.exhibition-end section,.exhibition-end { scroll-margin-top:calc(var(--header-height) + 28px); }
.end-opening { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:40px 24px; padding-bottom:clamp(100px,13vw,200px); }
.end-index { grid-column:1/3; margin:6px 0 0; font-size:13px; letter-spacing:.1em; }
.end-index span { display:block; margin-bottom:24px; font-size:clamp(72px,10vw,152px); letter-spacing:-.065em; line-height:1; font-weight:300; }
.end-opening h2 { grid-column:4/-1; margin:0; font-family:var(--serif); font-size:clamp(30px,4.5vw,68px); font-weight:400; line-height:1.85; letter-spacing:.015em; }
.end-english { grid-column:8/-1; margin:16px 0 0; font-family:var(--english-serif); font-size:clamp(22px,2.6vw,38px); line-height:1.3; color:var(--secondary); letter-spacing:-.02em; }
.end-resource-section { border-top:1px solid var(--line); padding-block:48px 96px; }
.end-resource-heading { display:grid; grid-template-columns:1fr 2fr; gap:24px; align-items:baseline; }
.end-resource-heading > p { margin:0; font-family:var(--english-serif); font-size:clamp(24px,3.4vw,48px); line-height:1.2; letter-spacing:-.035em; overflow-wrap:anywhere; }
.end-resource-heading h3 { margin:0; font:400 clamp(23px,2.8vw,36px)/1.5 var(--serif); }
.end-resource-intro { margin:30px 0 48px auto; width:66%; max-width:52em; font-size:14px; line-height:1.9; color:var(--secondary); }
.end-group { border-top:1px solid var(--line); }
.end-group:last-child { border-bottom:1px solid var(--line); }
.end-group > summary { display:grid; grid-template-columns:40px minmax(0,1fr) auto; align-items:center; gap:24px; padding-block:24px; min-height:92px; cursor:pointer; list-style:none; font-size:20px; }
.end-group > summary::-webkit-details-marker { display:none; }
.end-group-number { font:12px/1.5 var(--sans); color:var(--secondary); }
.end-group summary small { display:block; font:10px/1.8 var(--sans); letter-spacing:.08em; color:var(--secondary); margin-top:6px; }
.end-count { font:10px/1.6 var(--sans); color:var(--secondary); max-width:12em; overflow-wrap:anywhere; }
.end-count > span { display:inline-block; margin-left:20px; font-size:18px; }
.end-count > span::before { content:"＋"; }
.end-group[open] > summary .end-count > span::before { content:"−"; }
.end-group > summary:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
.reference-list,.credit-list { padding:0 0 24px; margin:0 0 0 25%; list-style:none; }
.reference-list li,.credit-list li { display:grid; grid-template-columns:48px minmax(0,1fr); gap:20px; padding-block:26px; border-top:1px solid var(--line); scroll-margin-top:calc(var(--header-height) + 24px); }
.end-entry-number { padding-top:6px; font:11px/1.8 var(--sans); color:var(--secondary); overflow-wrap:anywhere; }
.reference-list h4,.credit-list h4 { margin:0 0 14px; font-size:17px; font-weight:500; line-height:1.8; }
.reference-list p,.credit-list p { margin:10px 0 0; font-size:14px; line-height:1.9; }
.reference-list div,.credit-list div,.exhibition-end a { min-width:0; overflow-wrap:anywhere; }
.end-entry-meta,.end-entry-note { color:var(--secondary); }
.exhibition-end a { text-underline-offset:4px; text-decoration-thickness:1px; }
.end-about > p { max-width:38em; margin:32px 0 0 auto; width:66%; font-size:16px; line-height:2.1; }
.exhibition-footer { display:flex; flex-wrap:wrap; align-items:end; justify-content:space-between; gap:24px 40px; border-top:1px solid var(--line); padding-block:36px 48px; }
.exhibition-footer p { margin:0; font-size:13px; line-height:1.8; }
.exhibition-footer p[lang] { font-size:9px; letter-spacing:.07em; color:var(--secondary); margin-top:8px; }
.exhibition-footer nav { display:flex; flex-wrap:wrap; gap:0 24px; }
.exhibition-footer a { min-height:44px; display:inline-flex; align-items:center; font-size:12px; text-underline-offset:4px; }
.drawer-resources { display:grid; grid-template-columns:1fr; gap:0; border-top:1px solid var(--line); padding-block:12px; }
.drawer-resources a { display:flex; justify-content:space-between; align-items:center; gap:16px; min-height:44px; font-size:11px; letter-spacing:.05em; text-decoration:none; }
.drawer-resources a > span { font-size:11px; color:var(--secondary); }
.drawer-resources a:hover { text-decoration:underline; text-underline-offset:4px; }
/* Permit text enlargement to wrap rather than enlarge the page or drawer. */
.end-group > summary > span { min-width:0; overflow-wrap:anywhere; }
.chapter-state { white-space:normal; max-width:6em; overflow-wrap:anywhere; }
.chapter-en,.tea-section-english,.history-display { overflow-wrap:anywhere; }
.tea-section-opening > *, .history-opening > * { min-width:0; }
.making-next { overflow-wrap:anywhere; }
/* Small, local reading grounds protect text over changing photographic detail. */
.hero-english,.hero-introduction { position:relative; isolation:isolate; width:fit-content; max-width:100%; }
.hero-english::before,.hero-introduction::before { content:""; position:absolute; z-index:-1; inset:-12px -18px; background:rgba(245,242,233,.68); filter:blur(9px); pointer-events:none; }
.hero-caption,.scroll-cue { isolation:isolate; }
.hero-caption::before,.scroll-cue::before { content:""; position:absolute; z-index:-1; inset:-10px -16px; background:rgba(15,30,20,.8); filter:blur(8px); pointer-events:none; }
@media (max-width:767px) {
 .end-opening { grid-template-columns:1fr; gap:40px; padding-bottom:100px; }
 .end-index,.end-opening h2,.end-english { grid-column:1; }
 .end-index span { font-size:80px; margin-bottom:16px; }
 .end-opening h2 { font-size:clamp(25px,6.9vw,34px); line-height:2; }
 .end-english { font-size:25px; margin-top:0; }
 .end-resource-section { padding-block:32px 72px; }
 .end-resource-heading { grid-template-columns:1fr; gap:16px; }
 .end-resource-heading > p { font-size:34px; }
 .end-resource-heading h3 { font-size:25px; }
 .end-resource-intro,.end-about > p { width:100%; margin-top:24px; }
 .end-group > summary { grid-template-columns:22px minmax(0,1fr) auto; gap:12px; font-size:17px; }
 .end-group summary[lang] { font-size:16px; }
 .end-count { font-size:9px; }
 .end-count > span { margin-left:6px; }
 .end-group summary > span[lang] { font-size:14px; overflow-wrap:anywhere; }
 .reference-list,.credit-list { margin-left:0; }
 .reference-list li,.credit-list li { grid-template-columns:32px minmax(0,1fr); gap:12px; }
 .reference-list h4,.credit-list h4 { font-size:16px; }
 .reference-list p,.credit-list p { font-size:13px; }
 .end-about > p { font-size:15px; }
 .exhibition-footer { display:grid; grid-template-columns:1fr auto; }
 .exhibition-footer nav { grid-column:1/-1; gap:0 22px; }
 .exhibition-footer p[lang] { max-width:26em; }
}
@media (prefers-reduced-motion:reduce) {
 .exhibition-end *, .drawer-resources * { transition:none!important; animation:none!important; }
}
