/* Home and browsing experience; original media and project detail styles stay intact. */
.hero { height:100svh; min-height:740px; }
.hero-video { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.65) contrast(1.08); }
.hero-overlay { background:linear-gradient(90deg,rgba(7,5,11,.8),rgba(7,5,11,.24) 80%),linear-gradient(0deg,#07050b 0%,transparent 52%,rgba(7,5,11,.5)); }
.hero-content { padding-top:120px;padding-bottom:9vh; }
.hero-logo { width:clamp(88px,10vw,145px);height:clamp(88px,10vw,145px);object-fit:contain;filter:drop-shadow(0 0 28px #4a008666);margin-bottom:16px; }
#hero-title { font-size:clamp(5rem,12vw,11rem);line-height:.92;letter-spacing:-.075em;margin:22px 0; }
#hero-title .hero-manifesto { display:block;font-size:clamp(.75rem,1.5vw,1.1rem);letter-spacing:.3em;margin-top:26px;line-height:1.5; }
.hero-copy { max-width:620px;font-size:clamp(.95rem,1.3vw,1.15rem);margin-top:20px; }
.hero-actions button { cursor:pointer; }
.portfolio-rows { display:grid;gap:52px; }
.portfolio-row { min-width:0; }
.portfolio-row-heading { display:flex;align-items:baseline;justify-content:space-between;gap:18px;margin-bottom:20px; }
.portfolio-row-heading h3 { font-size:clamp(1.5rem,2.6vw,2.5rem);letter-spacing:-.04em;margin:0; }
.portfolio-row-heading > span { color:var(--silver-2);font-size:.8rem;white-space:nowrap; }
.portfolio-row-cards { display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3);gap:24px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:18px;scrollbar-color:#684485 #151019; }
.portfolio-row-cards .portfolio-card { scroll-snap-align:start; }
.portfolio-row-cards:focus-visible { outline:2px solid #c99aff;outline-offset:6px; }
.credits-toolbar { display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:34px;padding-bottom:24px;border-bottom:1px solid var(--line); }
.credit-mode { display:flex;border:1px solid var(--line); }
.credit-mode button { min-height:46px;padding:10px 20px;border:0;background:transparent;color:var(--silver-2);cursor:pointer;letter-spacing:.08em;font-size:.8rem; }
.credit-mode button[aria-pressed=true] { background:#4a0086;color:white; }
.credit-filter-label { display:flex;align-items:center;gap:12px;font-size:.875rem;color:var(--silver-2); }
#credit-filter { max-width:100%;min-height:46px;padding:10px;background:var(--panel);color:var(--silver);border:1px solid var(--line);font:inherit; }
#credit-count { margin-left:auto;color:var(--silver-2);font-size:.875rem; }
.credit-year-label { color:#c99aff;display:block;margin-bottom:4px;font-size:.75rem; }
.credit-year h3 { overflow-wrap:anywhere; }
[hidden] { display:none!important; }
@media(max-width:1050px){.portfolio-row-cards{grid-auto-columns:calc((100% - 24px)/2)}.nav{gap:16px}.nav a{font-size:.72rem}}
@media(max-width:650px){.hero{min-height:790px}.hero-content{padding-top:160px;padding-bottom:65px}.hero-logo{width:90px;height:90px}.hero .kicker{font-size:.6rem;max-width:300px}#hero-title{font-size:5.5rem}.hero-actions{gap:8px}.hero-actions .button{padding:11px 14px;min-height:44px}.portfolio-row-cards{grid-auto-columns:88%;gap:16px}.portfolio-row-heading{align-items:start}.credit-filter-label{width:100%;min-width:0}#credit-filter{min-width:0;flex:1}.credits-toolbar{gap:14px}.nav{justify-content:flex-start;overflow-x:auto;white-space:nowrap;padding-bottom:8px}.portfolio-rows{gap:36px}}
.credit-list[data-mode=discipline] .credit-year { grid-template-columns:minmax(180px,.8fr) 2.2fr; }
.credit-list[data-mode=discipline] .credit-year h3 { font-size:clamp(1.4rem,2.5vw,2.3rem);line-height:1.15;color:var(--silver);-webkit-text-stroke:0;letter-spacing:-.035em; }
.credit-year-label { grid-column:1/-1; }
@media(max-width:900px){.site-header{grid-template-columns:1fr auto;gap:4px 20px;background:#07050be8}.site-header .nav{display:flex;grid-column:1/-1;grid-row:2;justify-content:flex-start;overflow-x:auto;white-space:nowrap;gap:22px;padding:8px 0}.nav a{min-height:32px;display:flex;align-items:center}.language-switch{grid-column:2;grid-row:1}.credit-list[data-mode=discipline] .credit-year{grid-template-columns:1fr}}
@media(max-width:900px){.site-header{display:grid}.site-header .nav{min-width:0}}
.hero-actions button { color:var(--silver); }

/* YouTube performance fills the hero while the existing poster remains a fallback. */
.hero-youtube { position:absolute;inset:0;overflow:hidden;opacity:0;pointer-events:none;transition:opacity .6s; }
.hero-youtube.is-ready { opacity:1; }
.hero-youtube iframe { position:absolute;left:50%;top:50%;width:100%;height:100%;min-width:177.78svh;min-height:56.25vw;transform:translate(-50%,-50%);border:0; }
@media(max-width:650px){.hero-youtube iframe{min-width:1405px;}}
@media(prefers-reduced-motion:reduce){.hero-youtube{transition:none;}}

/* Compact, fully visible cards: no horizontal carousel at any breakpoint. */
.portfolio-row-cards {grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-flow:row;grid-auto-columns:auto;overflow:visible;scroll-snap-type:none;gap:16px;padding-bottom:0;}
.portfolio-cover {aspect-ratio:16/9;}
.portfolio-card-body {padding:14px;}
.portfolio-title {font-size:clamp(1rem,1.3vw,1.25rem);line-height:1.22;margin:10px 0;}
.portfolio-meta {font-size:.65rem;}
.portfolio-role {font-size:.75rem;margin-bottom:14px;}
.portfolio-card-bottom {font-size:.7rem;padding-top:10px;}
.portfolio-open-label {font-size:.6rem;padding:5px 7px;right:7px;bottom:7px;}
@media(max-width:1050px){.portfolio-row-cards{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-columns:auto;}}
@media(max-width:650px){.portfolio-row-cards{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-columns:auto;gap:12px;}.portfolio-card-body{padding:10px;}.portfolio-title{font-size:1rem;}.portfolio-meta{font-size:.6rem;}}
@media(max-width:360px){.portfolio-row-cards{grid-template-columns:1fr;}}

/* Education archive excerpt; original archive sections remain preserved. */
.workshops-education {grid-column:1/-1;width:100%;margin-top:36px;padding:36px 5vw 64px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.4fr;gap:40px;align-items:center;}
.workshops-education h3 {font-size:clamp(1.5rem,2.8vw,2.4rem);letter-spacing:-.035em;margin:0 0 22px;}
.workshops-education ul {padding-left:20px;margin:0;color:var(--silver-2);line-height:1.7;}
.workshops-education li+li {margin-top:12px;}
.education-collage {display:block;}
.education-collage img {display:block;width:100%;height:auto;}
@media(max-width:900px){.workshops-education{grid-template-columns:1fr;gap:28px;}}

/* Detailed bilingual credits retain compact titles with a full-width scope note. */
.credit-year li { row-gap:10px; padding:22px 0; }
.credit-year .credit-description { grid-column:1/-1; margin:0; max-width:80ch; color:var(--silver-2); font-size:.92rem; line-height:1.75; word-break:keep-all; overflow-wrap:anywhere; }
.credit-year .credit-role { color:#c99aff; font-size:.85rem; line-height:1.6; }

html[lang="ko"] .credits-heading h2 { word-break:keep-all; font-size:clamp(2.5rem,5.5vw,5rem); line-height:1.15; }
