/* Eric B.J Kim — multipage site; familiar typography and colour palette */
:root{color-scheme:dark;--bg:#151516;--bg-2:#1c1c1e;--ink:#ece9e3;--ink-2:#a9a59d;--ink-3:#817c74;--line:#2b2b2e;--accent:#c9b58f;--display:'Cormorant Garamond','Noto Serif KR',Georgia,serif;--body:'Manrope','Noto Sans KR',system-ui,-apple-system,sans-serif}
@media(prefers-color-scheme:light){:root:not([data-theme="dark"]){color-scheme:light;--bg:#f3f2ef;--bg-2:#e9e8e4;--ink:#171716;--ink-2:#5c5a55;--ink-3:#827e77;--line:#d9d7d1;--accent:#8a7550}}
:root[data-theme="light"]{color-scheme:light;--bg:#f3f2ef;--bg-2:#e9e8e4;--ink:#171716;--ink-2:#5c5a55;--ink-3:#827e77;--line:#d9d7d1;--accent:#8a7550}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:300 16px/1.75 var(--body);-webkit-font-smoothing:antialiased}body:lang(ko){word-break:keep-all}a{color:inherit;text-decoration:none}button{font-family:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}img{max-width:100%;display:block}[hidden]{display:none!important}p{margin:0}.wrap{max-width:1180px;margin-inline:auto;padding-inline:clamp(18px,4vw,48px)}.skip{position:absolute;z-index:100;left:12px;top:-60px;background:var(--ink);color:var(--bg);padding:6px 12px}.skip:focus{top:12px}
header{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 91%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;gap:22px;height:68px}.logo{font:400 23px var(--display);letter-spacing:.07em;white-space:nowrap}.menu{display:flex;align-items:center;gap:clamp(14px,2.15vw,30px);padding:0;margin:0;list-style:none}.menu a{font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-2);transition:color .2s}.menu a:hover,.menu a.active{color:var(--ink)}.menu a.active{border-bottom:1px solid var(--accent);padding-bottom:5px}.lang{display:flex;align-items:center;gap:6px;margin-left:4px;font-size:12px}.lang button{background:none;border:none;padding:4px 2px;color:var(--ink-3);font:inherit;letter-spacing:.06em;cursor:pointer}.lang button[aria-pressed="true"]{color:var(--ink);border-bottom:1px solid var(--accent)}.lang .sep{color:var(--ink-3)}.burger{display:none;border:0;background:none;color:var(--ink);padding:8px;cursor:pointer}.burger svg{display:block}
@media(max-width:850px){.burger{display:block}.menu{display:none;position:absolute;left:0;right:0;top:68px;padding:10px clamp(18px,4vw,48px) 20px;flex-direction:column;align-items:flex-start;gap:0;border-bottom:1px solid var(--line);background:var(--bg)}.menu.open{display:flex}.menu li{width:100%}.menu a{display:block;padding:12px 0;font-size:13px}.menu a.active{border:0;color:var(--accent)}.lang{margin:8px 0 0}}
/* Home: no long scrolling sections */
.home-hero{min-height:calc(100svh - 131px);display:flex;align-items:stretch}.home-grid{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(26px,5vw,76px);align-items:center}.home-copy{padding-block:clamp(42px,7vw,92px)}.eyebrow{font-size:11px;letter-spacing:.23em;text-transform:uppercase;color:var(--ink-3);margin:0 0 24px}.hero-name{font:300 clamp(66px,9vw,128px)/.93 var(--display);letter-spacing:-.005em;margin:0 0 32px}.hero-name em{font-weight:300}.home-lede{font-size:clamp(15px,1.5vw,18px);color:var(--ink-2);max-width:43ch;margin-bottom:44px}.hero-links{display:flex;flex-wrap:wrap;gap:28px}.subtle-link{font-size:12px;text-transform:uppercase;letter-spacing:.14em;padding-bottom:5px;border-bottom:1px solid var(--ink-3)}.subtle-link:hover{border-color:var(--ink)}.home-image{height:100%;min-height:550px;align-self:stretch;display:flex;align-items:end;overflow:hidden}.home-image img{width:100%;height:100%;max-height:calc(100svh - 132px);min-height:550px;object-fit:cover;object-position:center top;filter:saturate(.92)}
@media(max-width:760px){.home-hero{min-height:0}.home-grid{grid-template-columns:1fr;gap:0}.home-image{order:-1;min-height:0;height:auto;max-height:65vh}.home-image img{min-height:0;max-height:65vh;height:auto;aspect-ratio:4/5;object-fit:cover}.home-copy{padding-block:40px 64px}.hero-name{font-size:clamp(64px,15vw,106px)}.home-lede{margin-bottom:28px}}
/* inner pages */
.inner{padding-block:clamp(52px,7vw,96px) clamp(75px,10vw,140px);min-height:calc(100svh - 132px)}.page-head{margin-bottom:clamp(44px,6vw,80px);border-bottom:1px solid var(--line);padding-bottom:32px}.page-head .eyebrow{margin-bottom:13px}.page-title{font:300 clamp(56px,7vw,94px)/1 var(--display);margin:0 0 14px}.page-description{color:var(--ink-2);max-width:68ch;font-size:16px}h2{font:300 clamp(34px,4vw,52px)/1.12 var(--display);margin:0 0 30px}h3{font-weight:400}section+section{margin-top:clamp(56px,8vw,112px)}.muted{color:var(--ink-2)}
/* About */
.about-grid{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);align-items:start;gap:clamp(26px,6vw,90px)}.about-grid > div{min-width:0}.about-photo{width:100%;max-width:380px;min-width:0}.about-photo img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;object-position:center}.bio{display:grid;gap:22px;color:var(--ink-2);font-size:17px}.bio p:first-child{color:var(--ink);font-size:19px}.facts{display:grid;gap:0;border-top:1px solid var(--line);margin-top:36px}.fact{display:grid;grid-template-columns:116px 1fr;gap:12px;border-bottom:1px solid var(--line);padding:14px 0}.fact dt{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}.fact dd{margin:0;color:var(--ink-2);font-size:14px}.empathy{display:grid;grid-template-columns:1fr 2fr;gap:clamp(24px,6vw,88px);background:var(--bg-2);padding:clamp(28px,5vw,64px)}.empathy-title{font:italic 300 clamp(36px,5vw,70px)/1 var(--display)}.empathy-sub{font-size:13px;color:var(--ink-3);margin-top:14px}.empathy-body{display:grid;gap:22px;color:var(--ink-2)}.empathy-sign{font:italic 24px var(--display);color:var(--ink)}
@media(max-width:860px){.about-grid,.empathy{grid-template-columns:minmax(0,1fr)}.about-photo{max-width:380px;width:100%;min-width:0}.about-photo img{width:100%;min-width:0}}
.additional-bio{margin-top:clamp(56px,8vw,100px);padding-bottom:48px;border-bottom:1px solid var(--line)}.additional-bio-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:clamp(24px,5vw,70px);align-items:start}.additional-bio-grid.no-image{grid-template-columns:1fr}.additional-bio-grid img{width:100%;max-height:480px;object-fit:cover}.additional-bio-grid p{max-width:80ch;color:var(--ink-2);white-space:pre-line}@media(max-width:760px){.additional-bio-grid{grid-template-columns:1fr}}
/* Schedule, detailed expandable programs and past archive */
.schedule-list{border-top:1px solid var(--line)}.event{display:grid;grid-template-columns:124px minmax(0,1fr);gap:clamp(18px,3vw,38px);padding:28px 0;border-bottom:1px solid var(--line)}.event-date{font-family:var(--display);font-size:43px;line-height:1}.event-month{display:block;font:11px/1.5 var(--body);letter-spacing:.12em;color:var(--ink-3);text-transform:uppercase;margin-top:8px}.event-title{margin:0 0 5px;font-weight:400;font-size:21px;line-height:1.4}.event-venue{color:var(--ink-2);font-size:14px}.event-prog{margin-top:8px;color:var(--ink-2);white-space:pre-line;font-size:15px}.event-detail{margin-top:16px}.event-detail summary{cursor:pointer;color:var(--accent);font-size:12px;text-transform:uppercase;letter-spacing:.12em;list-style-position:inside}.event-body{margin-top:20px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:20px;font-size:14px;color:var(--ink-2)}.event-body.no-image{grid-template-columns:1fr}.event-body img{width:100%;height:auto;max-height:320px;object-fit:cover}.event-description{white-space:pre-line}.event-link{display:inline-block;margin-top:14px;font-size:12px;color:var(--ink);border-bottom:1px solid var(--accent)}.schedule-archive{margin-top:78px}.empty-state{color:var(--ink-3);padding:26px 0;font-size:15px}
@media(max-width:600px){.event{grid-template-columns:82px 1fr}.event-date{font-size:34px}.event-body{grid-template-columns:1fr}}
/* Media */
.gallery{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.gallery figure{margin:0;background:var(--bg-2);overflow:hidden}.gallery img{width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(.9);transition:transform .5s}.gallery img:hover{transform:scale(1.025)}.gallery .g1{grid-column:span 3;grid-row:span 2;aspect-ratio:3/4}.gallery .g2,.gallery .g3{grid-column:span 3;aspect-ratio:3/2}.gallery .g4,.gallery .g5{grid-column:span 3;aspect-ratio:4/5}.gallery .g-extra{grid-column:span 2;aspect-ratio:4/5}.videos{border-top:1px solid var(--line)}.video{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(24px,5vw,80px);align-items:center;padding:clamp(32px,5vw,65px) 0;border-bottom:1px solid var(--line)}.video-player{aspect-ratio:16/9;background:#080808}.video-player iframe{width:100%;height:100%;border:0;display:block}.video-info{min-width:0;text-align:center}.video-kind{font-size:11px;text-transform:uppercase;color:var(--accent);letter-spacing:.2em;margin-bottom:16px}.video-title{font:300 clamp(27px,3.4vw,43px)/1.2 var(--display);overflow-wrap:anywhere;margin:0 0 18px}.video-description{font-size:14px;color:var(--ink-2);white-space:pre-line;margin-bottom:16px}.video-link{display:inline-block;font-size:11px;letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid var(--ink-3);padding-bottom:5px}.media-group-title{margin-bottom:28px}
@media(max-width:760px){.gallery{grid-template-columns:repeat(2,1fr)}.gallery .g1{grid-column:span 2;grid-row:auto}.gallery .g2,.gallery .g3,.gallery .g4,.gallery .g5,.gallery .g-extra{grid-column:span 1;aspect-ratio:3/4}.video{grid-template-columns:1fr}.video-info{padding-inline:8px}}
/* News */
.news-list{border-top:1px solid var(--line)}.news-item{display:grid;grid-template-columns:150px minmax(0,1fr);gap:28px;padding:35px 0;border-bottom:1px solid var(--line)}.news-date{font-size:12px;letter-spacing:.08em;color:var(--ink-3)}.news-title{font:300 clamp(27px,3.4vw,38px)/1.25 var(--display);margin:0 0 12px}.news-summary{font-size:15px;color:var(--ink-2);max-width:75ch}.news-details summary{cursor:pointer;font-size:12px;color:var(--accent);margin-top:14px;letter-spacing:.1em;text-transform:uppercase}.news-full{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:26px;margin-top:22px}.news-full.no-image{grid-template-columns:1fr}.news-full img{width:100%;max-height:360px;object-fit:cover}.news-body{white-space:pre-line;color:var(--ink-2);font-size:15px}.news-source{display:inline-block;margin-top:20px;font-size:12px;border-bottom:1px solid var(--accent)}
@media(max-width:640px){.news-item{grid-template-columns:1fr;gap:10px}.news-full{grid-template-columns:1fr}}
/* Contact */
.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,6vw,100px)}.contact-label{font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--ink-3);margin-bottom:8px}.contact-email{font:300 clamp(24px,3vw,36px) var(--display);overflow-wrap:anywhere}.copy{display:inline-block;margin-top:12px;border:1px solid var(--line);background:none;color:var(--ink-2);font-size:11px;padding:8px 14px;letter-spacing:.12em;cursor:pointer}.social-links{display:flex;gap:20px;flex-wrap:wrap}.social-links a{display:inline-block;border-bottom:1px solid var(--line);font-size:14px}.contact-note{background:var(--bg-2);padding:30px;color:var(--ink-2);font-size:14px}.contact-note h2{font-size:30px;color:var(--ink)}
@media(max-width:800px){.contact-grid{grid-template-columns:1fr}}
footer{border-top:1px solid var(--line);padding-block:24px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px;font-size:12px;letter-spacing:.07em;color:var(--ink-3)}.footer-links{display:flex;gap:20px}.footer-links a:hover{color:var(--ink)}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Homepage editorial previews: keep the original hero and provide short routes to full pages. */
.home-preview{padding-block:clamp(64px,9vw,118px);border-top:1px solid var(--line)}
.home-preview .eyebrow{margin-bottom:11px}
.preview-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:clamp(28px,4.3vw,52px)}
.preview-heading h2,.home-contact-grid h2{font:300 clamp(43px,5vw,66px)/1.05 var(--display);margin:0}
.preview-all{flex:none;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);border-bottom:1px solid var(--accent);padding-bottom:7px;transition:color .2s}
.preview-all:hover{color:var(--ink)}
.home-about-grid{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:clamp(30px,7vw,105px);align-items:center}
.home-about-image{display:block;max-width:320px;min-width:0}
.home-about-image img{width:100%;height:auto;object-fit:contain;display:block}
.home-about-copy{min-width:0;max-width:70ch}
.home-about-lede{font-size:clamp(19px,2.2vw,27px);line-height:1.62;color:var(--ink);margin-bottom:22px}
.home-about-secondary{font-size:clamp(14px,1.4vw,17px);color:var(--ink-2);margin-bottom:30px;line-height:1.85}
.home-schedule-list{border-top:1px solid var(--line)}
.home-event{display:grid;grid-template-columns:140px minmax(0,1fr) auto;align-items:start;gap:clamp(15px,3vw,38px);padding:26px 0;border-bottom:1px solid var(--line)}
.home-event-date{font:300 34px/1.1 var(--display);white-space:nowrap}
.home-event-date small{display:block;font:11px/1.6 var(--body);letter-spacing:.1em;color:var(--ink-3);margin-top:5px}
.home-event-main{min-width:0}
.home-event-title{font-size:19px;line-height:1.4;font-weight:400;margin:0 0 7px}
.home-event-venue,.home-event-program{font-size:13px;color:var(--ink-2);line-height:1.7}
.home-event-program{margin-top:4px;white-space:pre-line}
.home-event-link{font-size:11px;text-transform:uppercase;letter-spacing:.11em;color:var(--accent);white-space:nowrap;margin-top:6px}
.home-empty{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:38px 0;color:var(--ink-3);font-size:15px}
.home-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(9px,1.7vw,20px)}
.home-gallery a{overflow:hidden;background:var(--bg-2);display:block;aspect-ratio:4/5}
.home-gallery img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .5s}
.home-gallery a:hover img{transform:scale(1.03)}
.home-featured-video{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(22px,5vw,65px);align-items:center;margin-top:clamp(36px,6vw,72px);padding-top:clamp(28px,5vw,45px);border-top:1px solid var(--line)}
.home-featured-video[hidden]{display:none!important}
.home-featured-player{width:100%;aspect-ratio:16/9;background:#070707;min-width:0}
.home-featured-player iframe{display:block;width:100%;height:100%;border:0}
.home-featured-kind{font-size:11px;letter-spacing:.17em;color:var(--accent);text-transform:uppercase}
.home-featured-title{font:300 clamp(25px,3vw,38px)/1.18 var(--display);margin:10px 0 14px;overflow-wrap:anywhere}
.home-featured-desc{color:var(--ink-2);font-size:14px;white-space:pre-line;margin-bottom:17px}
.home-featured-more{display:inline-block;color:var(--ink-2);font-size:12px;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid var(--accent);padding-bottom:4px}
.home-news-list{border-top:1px solid var(--line)}
.home-news-row{display:grid;grid-template-columns:140px minmax(0,1fr) auto;gap:clamp(16px,3vw,34px);padding:30px 0;border-bottom:1px solid var(--line);align-items:start}
.home-news-date{font-size:12px;color:var(--ink-3)}
.home-news-title{font:300 clamp(25px,3vw,36px)/1.2 var(--display);margin:0 0 10px}
.home-news-summary{color:var(--ink-2);font-size:14px;line-height:1.7;max-width:64ch}
.home-news-arrow{font-size:14px;color:var(--accent)}
.contact-preview{background:var(--bg-2)}
.home-contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(25px,6vw,90px);align-items:center}
.home-contact-grid p:not(.eyebrow){color:var(--ink-2);font-size:16px;max-width:44ch;margin-bottom:26px}
@media(max-width:850px){.home-about-grid{grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:28px}}
@media(max-width:680px){.preview-heading{align-items:start;flex-direction:column;gap:16px}.home-about-grid,.home-featured-video,.home-contact-grid{grid-template-columns:minmax(0,1fr)}.home-about-image{max-width:270px}.home-event,.home-news-row{grid-template-columns:78px minmax(0,1fr);gap:16px}.home-event-link,.home-news-arrow{grid-column:2}.home-event-date{font-size:27px}.home-gallery{gap:8px}.home-gallery a{aspect-ratio:3/4}.home-preview{padding-block:62px}}
