/* Small measured endpoints on the existing horizontal rules. */
header,footer,.exhibition-list .poster-card,.fair-row,.education-program,.home-index .poster-link{position:relative}
header::after,footer::after,.exhibition-list .poster-card::after,.fair-row::after,.education-program::after,.home-index .poster-link::after{content:"";position:absolute;left:0;right:0;height:7px;pointer-events:none;background:linear-gradient(#a0a09a,#a0a09a) left center/1px 7px no-repeat,linear-gradient(#a0a09a,#a0a09a) right center/1px 7px no-repeat;border:0;width:auto}
header::after,.fair-row::after,.education-program::after{bottom:-4px}
footer::after,.exhibition-list .poster-card::after,.home-index .poster-link::after{top:-4px;bottom:auto}
.poster-card h2 a::before{content:"𖥔";width:15px;height:auto;top:0;background:none;color:#999;font-family:"Apple Symbols","Noto Sans Bamum",sans-serif;font-size:14px;font-weight:400;line-height:inherit}

/* Home poster rules share the same end ticks, including the title separator. */
.home-index .poster-link::after{display:block}
.home-index .poster-card h2{position:relative}
.home-index .poster-card h2::after{content:"";position:absolute;left:0;right:0;top:-4px;height:7px;pointer-events:none;background:linear-gradient(#a0a09a,#a0a09a) left center/1px 7px no-repeat,linear-gradient(#a0a09a,#a0a09a) right center/1px 7px no-repeat}
@media(max-width:650px){.home-index .poster-card h2::after{display:none}.home-index .poster-card{position:relative}.home-index .poster-card:not(:last-child)::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:7px;pointer-events:none;background:linear-gradient(#a0a09a,#a0a09a) left center/1px 7px no-repeat,linear-gradient(#a0a09a,#a0a09a) right center/1px 7px no-repeat}}
@media(max-width:380px){.home-index .poster-card h2::after{display:block}}
/* Recent exhibitions: downward top endpoints and upward bottom endpoints. */
.home-index .poster-link::after{top:0;bottom:auto;height:6px;background:linear-gradient(#a0a09a,#a0a09a) left top/1px 6px no-repeat,linear-gradient(#a0a09a,#a0a09a) right top/1px 6px no-repeat}
.home-index .poster-card h2{border-top:0}
.home-index .poster-card h2::after{content:none;display:none}
.home-index .poster-card{position:relative;border-bottom:1px solid var(--house-line);padding-bottom:22px}
.home-index .poster-card::after,.home-index .poster-card:not(:last-child)::after{content:"";position:absolute;left:0;right:0;bottom:0;top:auto;height:6px;pointer-events:none;background:linear-gradient(#a0a09a,#a0a09a) left bottom/1px 6px no-repeat,linear-gradient(#a0a09a,#a0a09a) right bottom/1px 6px no-repeat}
@media(max-width:650px){.home-index .poster-card:last-child{border-bottom:1px solid var(--house-line)}}
/* The upward-facing rule sits directly beneath each recent poster. */
.home-index .poster-card,.home-index .poster-card:last-child{border-bottom:0}
.home-index .poster-card::after,.home-index .poster-card:not(:last-child)::after{content:none;display:none}
.home-index .poster-link{border-bottom:1px solid var(--house-line);padding-bottom:18px}
.home-index .poster-link::before{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;pointer-events:none;background:linear-gradient(#a0a09a,#a0a09a) left bottom/1px 6px no-repeat,linear-gradient(#a0a09a,#a0a09a) right bottom/1px 6px no-repeat}
@media(max-width:650px){.home-index .poster-link{padding-bottom:14px}}
/* Year archives use the same bracketed poster area as recent exhibitions. */
.exhibition-list .poster-card{border-top:0;padding-top:0}
.exhibition-list .poster-card::after{content:none;display:none}
.exhibition-list .poster-link,.exhibition-list .archive-empty-frame{position:relative;display:flex;box-sizing:border-box;aspect-ratio:3/4;border-top:1px solid var(--house-line);border-bottom:1px solid var(--house-line);padding:18px 0;align-items:flex-start;justify-content:center}
.exhibition-list .poster-link::before,.exhibition-list .poster-link::after,.exhibition-list .archive-empty-frame::before,.exhibition-list .archive-empty-frame::after{content:"";display:block;position:absolute;left:0;right:0;height:6px;width:auto;border:0;pointer-events:none;background:linear-gradient(#a0a09a,#a0a09a) left/1px 6px no-repeat,linear-gradient(#a0a09a,#a0a09a) right/1px 6px no-repeat}
.exhibition-list .poster-link::before,.exhibition-list .archive-empty-frame::before{top:0;bottom:auto}
.exhibition-list .poster-link::after,.exhibition-list .archive-empty-frame::after{bottom:0;top:auto}
.exhibition-list .poster-card h2{margin-top:24px}
@media(max-width:650px){.exhibition-list .poster-link,.exhibition-list .archive-empty-frame{padding:14px 0}.exhibition-list .poster-card h2{margin-top:20px}}
/* Fair and practice lists open downward at the top and upward at the bottom. */
.fair-list,.education-programs{position:relative}
.fair-list::before,.education-programs::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;pointer-events:none;background:linear-gradient(#a0a09a,#a0a09a) left top/1px 6px no-repeat,linear-gradient(#a0a09a,#a0a09a) right top/1px 6px no-repeat}
.fair-row:last-child::after,.education-program:last-child::after{bottom:0;top:auto;height:6px;background:linear-gradient(#a0a09a,#a0a09a) left bottom/1px 6px no-repeat,linear-gradient(#a0a09a,#a0a09a) right bottom/1px 6px no-repeat}

/* Page boundary rules stay straight; content rules retain their endpoints. */
header::after,footer::after{content:none;display:none}

/* Interior list dividers are straight; only outer ends retain ticks. */
.fair-row:not(:last-child)::after,.education-program:not(:last-child)::after{content:none;display:none}

/* Practice and fair lists use plain straight rules throughout. */
.fair-list::before,.education-programs::before,.fair-row::after,.fair-row:last-child::after,.education-program::after,.education-program:last-child::after{content:none;display:none}

/* Identity uses the same fine bracketed rules as the exhibition posters. */
header .brand-switch.brand-cloud{position:relative;background:none;border-top:1px solid var(--house-line);border-bottom:1px solid var(--house-line);padding:10px 16px;margin:-10px 0;color:var(--ink)}
header .brand-switch.brand-cloud::before,header .brand-switch.brand-cloud::after{content:"";position:absolute;left:0;right:0;height:5px;pointer-events:none;border-left:1px solid var(--house-line);border-right:1px solid var(--house-line)}
header .brand-switch.brand-cloud::before{top:0}
header .brand-switch.brand-cloud::after{bottom:0}
header .brand-switch.brand-cloud .brand-en,header .brand-switch.brand-cloud .brand-ko{font-size:18px;line-height:1.5;letter-spacing:.025em}
header .brand-switch.brand-cloud .brand-ko{letter-spacing:.1em;text-indent:.1em}
@media(max-width:650px){header .brand-switch.brand-cloud{padding:9px 13px;margin:-9px 0}header .brand-switch.brand-cloud .brand-en,header .brand-switch.brand-cloud .brand-ko{font-size:17px}}

/* Mobile archive posters keep the same breathing room as recent exhibitions. */
@media(max-width:650px){
 .exhibition-list .poster-link{aspect-ratio:auto;padding:14px 0}
 .exhibition-list .poster-link img{width:100%;height:auto;max-height:none}
}

/* Archive rules follow each poster's natural ratio at every screen size. */
.exhibition-list .poster-link{aspect-ratio:auto}
.exhibition-list .poster-link img{width:100%;height:auto;max-height:none}

/* Keep archive captions aligned while the rules follow individual posters. */
.exhibition-list .poster-card h2{margin-top:calc(24px + var(--poster-caption-gap,0px))}
@media(max-width:650px){.exhibition-list .poster-card h2{margin-top:calc(20px + var(--poster-caption-gap,0px))}}

/* Consistent portrait mats keep the full poster visible without cropping. */
.exhibition-list .poster-link{aspect-ratio:3/4;background:#f1f1ef;background-clip:content-box;position:relative}
.exhibition-list .poster-link img{position:absolute;left:0;top:18px;width:100%;height:calc(100% - 36px);max-height:none;object-fit:contain;object-position:center}
.exhibition-list .poster-card h2{margin-top:24px}
@media(max-width:650px){
 .exhibition-list .poster-link img{top:14px;height:calc(100% - 28px)}
 .exhibition-list .poster-card h2{margin-top:20px}
}

/* The 2026 portrait proportion is the archive standard; only other formats get a mat. */
.exhibition-list .poster-link{aspect-ratio:auto;background:transparent}
.exhibition-list .poster-link.poster-needs-mat{background:#f1f1ef;background-clip:content-box}
.exhibition-list .poster-link img{position:static;width:100%;height:auto;aspect-ratio:1980/2800;object-fit:contain;object-position:center}

/* Mat colors follow the dominant edge tone of each poster. */
.exhibition-list .poster-link.poster-needs-mat{background-color:var(--poster-mat,#f1f1ef)}

/* Align the decorative glyph optically with the first text line. */
.poster-card h2 a::before{left:4px;top:4px}
.intro-chapters>p{padding-left:20px}
.intro-chapters>p::before{content:"𖥔";left:0;top:4px;width:15px;height:auto;background:none;color:#999;font-family:"Apple Symbols","Noto Sans Bamum",sans-serif;font-size:14px;font-weight:400;line-height:27px}
.intro-chapters>p::after{content:none;display:none}

/* Slightly darker, finer symbols; introduction marks follow the first line. */
.poster-card h2 a::before,.intro-chapters>p::before{color:#777;-webkit-text-stroke:.22px #fff}
.intro-chapters>p::before{top:1px;line-height:27px}

/* Same glyph outline with a smaller central disc, independent of font fallback. */
.poster-card h2 a::before,.intro-chapters>p::before{content:"";width:14px;height:14px;background:url('/assets/title-symbol.svg') center/14px 14px no-repeat;-webkit-text-stroke:0;transform:translateY(-50%)}
.poster-card h2 a::before{top:13.6px}
.intro-chapters>p::before{top:13.5px}
