/* Opening sequence, studio composition, and motion states. */
:root{--motion-ease:cubic-bezier(.16,1,.3,1)}
html{scroll-padding-top:100px}.site-header.page-width{position:fixed;inset:0 0 auto;width:100%;height:88px;padding-inline:40px;z-index:10;color:#fff;transition:background .3s,color .3s,height .3s;background:transparent}.site-header.is-past-opening{color:#080808;background:#fff;height:74px}.header-actions{display:flex;gap:34px;align-items:center;font-size:14px}.header-actions>button{min-height:44px}.header-actions #motion-toggle{font-size:12px}.header-actions #menu-toggle{display:flex;align-items:center;gap:15px}.menu-lines{width:25px;display:grid;gap:6px}.menu-lines i{height:1px;display:block;background:currentColor;transition:transform .3s}.header-actions #menu-toggle:hover .menu-lines i:first-child{transform:translateX(3px)}.header-actions #menu-toggle:hover .menu-lines i:last-child{transform:translateX(-3px)}
.opening{height:155svh;min-height:880px;background:#fff}.opening-sticky{position:sticky;top:0;height:100svh;min-height:600px}.opening-frame{position:relative;width:100%;height:100%;overflow:hidden;isolation:isolate;background:#141414;color:#fff;clip-path:inset(var(--frame-inset,0px));will-change:clip-path}.opening-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;transform:scale(var(--image-scale,1.08));will-change:transform;animation:opening-image 1.4s var(--motion-ease)}.opening-shade{position:absolute;inset:0;background:linear-gradient(180deg,#00000066 0%,#00000018 28%,#00000022 43%,#000000a6 100%)}.opening-topline{position:absolute;top:150px;left:40px;right:40px;display:flex;justify-content:space-between;font-size:16px;line-height:1.8}.opening-topline>span:last-child{text-align:right;font-size:14px;line-height:1.7}.opening-name{position:absolute;left:3%;right:4%;bottom:108px;margin:0;display:flex;justify-content:space-between;align-items:baseline;gap:20px;font:400 clamp(105px,22vw,350px)/.94 var(--serif);letter-spacing:-.065em;transform:translateY(var(--name-y,0px));will-change:transform}.name-mask{display:block;overflow:hidden;padding-bottom:.06em}.name-mask>span,.name-mask>em{display:block;animation:name-unveil 1.15s var(--motion-ease) both}.name-mask>em{font-weight:400;padding-right:.07em;animation-delay:.12s}.opening-bottom{position:absolute;bottom:52px;left:40px;right:40px;display:flex;align-items:center;justify-content:space-between;font-size:14px}.scroll-invitation{display:flex;align-items:center;gap:18px}.scroll-mark{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #ffffff80;border-radius:50%;font-size:22px;overflow:hidden}.scroll-invitation:hover .scroll-mark{animation:arrow-nudge .65s var(--motion-ease)}.scene-link{display:flex;align-items:center;gap:22px;border-bottom:1px solid #ffffff80;min-height:44px}.scene-link>span{font-size:22px}.opening-asset-note{position:absolute;bottom:15px;left:40px;margin:0;font-size:12px;color:#e5e5e5}.introduction{display:grid;grid-template-columns:1fr 2.1fr 1fr;gap:40px;align-items:end;padding:60px 0 100px}.intro-index{font-size:14px;align-self:start;padding-top:10px}.introduction>p{font-family:var(--korean-serif);font-size:clamp(24px,3vw,42px);line-height:1.75;letter-spacing:-.035em;margin:0}.introduction>a{justify-self:end;white-space:nowrap}.practice-strip{overflow:hidden;padding:10px 0 70px;line-height:1.1;pointer-events:none}#practice-track{font-family:var(--serif);font-size:clamp(64px,10vw,155px);letter-spacing:-.04em;white-space:nowrap;width:max-content;transform:translateX(var(--track-x,-60px));color:#080808;will-change:transform}#practice-track i{font-weight:400;font-style:italic;margin-inline:32px}
.studio{padding-top:30px}.studio .section-caption{margin-bottom:60px}.studio-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:65px 28px;align-items:start}.studio-painting{grid-column:1/span 7;grid-row:1}.studio-note{grid-column:9/span 4;grid-row:1;padding-top:85px}.studio-note>span{font-size:12px;color:var(--secondary)}.studio-note p{font:400 clamp(21px,2.1vw,30px)/1.9 var(--korean-serif);letter-spacing:-.04em;margin:27px 0}.studio-writing{grid-column:2/span 4;grid-row:2;align-self:end;padding:50px 0 20px}.studio-writing>button{display:block;width:100%;text-align:left;position:relative;margin-top:27px;padding-bottom:24px;border-bottom:1px solid var(--black)}.words-mask{display:block;overflow:hidden;font:400 clamp(55px,7.5vw,112px)/1.1 var(--serif);letter-spacing:-.05em}.words-mask>span{display:block}.studio-writing button>em{display:block;font:italic 400 clamp(46px,6.6vw,95px)/1.1 var(--serif);letter-spacing:-.055em;margin-left:22px}.writing-arrow{position:absolute;right:0;bottom:30px;font-size:32px;transition:transform .4s var(--motion-ease)}.studio-writing button:hover .writing-arrow{transform:rotate(45deg)}.studio-writing>p{font-size:14px;line-height:1.9;margin-top:24px}.studio-acting{grid-column:8/span 5;grid-row:2;margin-top:-100px}.studio-media{overflow:hidden;background:#e9e9e9}.studio-media img{width:100%;transition:transform 1s var(--motion-ease)}.studio-acting .studio-media img{aspect-ratio:3/4;object-fit:cover;object-position:53%}.studio-media .art-button:hover img{transform:scale(1.045)}.studio-caption{display:grid;grid-template-columns:auto 1fr;column-gap:20px;row-gap:8px;margin-top:22px;align-items:baseline}.studio-caption>span:first-child{font-size:12px}.studio-caption h3{font:400 clamp(32px,4vw,60px)/1.1 var(--serif);letter-spacing:-.035em;margin:0;text-align:right}.studio-caption>span:last-child{grid-column:1/-1;font-size:12px;color:var(--secondary)}.work-hover{position:absolute;left:50%;top:50%;width:84px;height:84px;border-radius:50%;background:#ffffffeb;color:#080808;display:flex;align-items:center;justify-content:center;font-size:14px;transform:translate(-50%,-35%) scale(.8);opacity:0;transition:transform .4s var(--motion-ease),opacity .3s;pointer-events:none}.art-button:hover .work-hover,.art-button:focus-visible .work-hover{opacity:1;transform:translate(-50%,-50%) scale(1)}.studio-to-brands{position:relative;display:block;margin-top:120px;padding-bottom:42px;border-bottom:1px solid var(--black)}.studio-to-brands>span:first-child{display:block;font-size:14px;margin-bottom:22px}.studio-to-brands>span:nth-child(2){display:block;font:400 clamp(40px,8.6vw,125px)/1.2 var(--serif);letter-spacing:-.055em;padding-right:70px}.studio-to-brands em{font-weight:400}.large-arrow{position:absolute;bottom:40px;right:0;font-size:clamp(34px,6vw,84px);line-height:1;transition:transform .5s var(--motion-ease)}.studio-to-brands:hover .large-arrow{transform:translate(6px,-6px)}
.about .personal-name{position:sticky;top:110px}.brand-row summary{overflow:hidden;position:relative;transition:padding .45s var(--motion-ease)}.brand-row summary:hover{padding-left:14px}.brand-row summary:hover .brand-name{text-decoration:none}.brand-row .brand-detail{overflow:hidden}.brand-row[open] .brand-detail{animation:none}.brand-name small{transition:transform .5s var(--motion-ease);transform-origin:left}.brand-row summary:hover .brand-name small{transform:translateX(8px)}.section-caption{position:relative;border-top:0}.section-caption:before{content:'';position:absolute;inset:0 0 auto;height:1px;background:currentColor;transform-origin:left}.connections .invitation{position:sticky;top:120px;align-self:start}.signature>a{display:inline-block;transition:letter-spacing .6s var(--motion-ease)}.signature>a:hover{letter-spacing:-.025em}
.menu-dialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;background:#080808;color:#fff}.menu-dialog .dialog-head{border-color:#414141;background:#080808}.menu-body{max-width:1320px;margin:auto;padding:45px 60px 35px}.menu-body nav>a{display:flex;align-items:baseline;gap:32px;border-bottom:1px solid #414141;padding:10px 0;overflow:hidden}.menu-folio{font-size:12px;color:#b5b5b5}.menu-word{font:400 clamp(44px,7.3vw,104px)/1.25 var(--serif);letter-spacing:-.035em;display:flex;gap:35px;align-items:baseline}.menu-word em{font:400 16px var(--sans);letter-spacing:0;color:#b5b5b5}.menu-body nav>a>span:last-child{font-size:32px;margin-left:auto;transition:transform .4s}.menu-body nav>a:hover>span:last-child{transform:rotate(45deg)}.menu-body nav>a:hover .menu-word{font-style:italic}.menu-footer{display:flex;justify-content:space-between;gap:30px;margin-top:50px;font-size:14px;color:#b5b5b5}.menu-dialog[open]{animation:menu-unveil .6s var(--motion-ease)}.menu-dialog[open] .menu-word{animation:menu-word-in .65s var(--motion-ease) both}.menu-dialog[open] nav>a:nth-child(2) .menu-word{animation-delay:.06s}.menu-dialog[open] nav>a:nth-child(3) .menu-word{animation-delay:.12s}.menu-dialog[open] nav>a:nth-child(4) .menu-word{animation-delay:.18s}.archive-dialog[open]{animation:archive-unveil .55s var(--motion-ease)}.connect-dialog[open]{animation:contact-unveil .45s var(--motion-ease)}.art-dialog[open]{animation:none}.js-reveals [data-reveal]{opacity:0;transform:translateY(26px);transition:opacity .8s var(--motion-ease),transform .9s var(--motion-ease),clip-path 1.1s var(--motion-ease)}.js-reveals .studio-media[data-reveal]{opacity:1;transform:none;clip-path:inset(12% 0 12% 0)}.js-reveals [data-reveal].is-visible{opacity:1;transform:none;clip-path:inset(0)}.js-reveals .section-caption:before{transform:scaleX(0);transition:transform 1s var(--motion-ease)}.js-reveals .section-caption.is-visible:before{transform:scaleX(1)}[data-parallax]{transform:translateY(var(--parallax-y,0px));will-change:transform}[data-magnet]{transition:transform .25s var(--motion-ease)}
@keyframes name-unveil{from{transform:translateY(112%) rotate(5deg)}to{transform:none}}@keyframes opening-image{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0)}}@keyframes arrow-nudge{0%,100%{transform:translateY(0)}40%{transform:translateY(5px)}}@keyframes menu-unveil{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0)}}@keyframes menu-word-in{from{transform:translateY(115%) rotate(3deg)}to{transform:none}}@keyframes archive-unveil{from{clip-path:inset(100% 0 0 0)}to{clip-path:inset(0)}}@keyframes contact-unveil{from{opacity:0;transform:translateY(35px) scale(.985)}to{opacity:1;transform:none}}
#art-visual>img{width:auto;height:auto;max-width:100%;max-height:65dvh;margin-inline:auto}.art-dialog .art-copy{position:relative}.brand-row .brand-detail{min-height:0}
@media(min-width:1700px){.opening-name{left:max(4%,calc((100% - 1540px)/2));right:max(4%,calc((100% - 1540px)/2));font-size:350px}}
@media(max-width:1050px){.opening-name{font-size:22vw}.opening-topline{top:130px}.introduction{grid-template-columns:1fr 2.7fr;gap:30px}.introduction>a{grid-column:2;justify-self:start}.studio-grid{gap:50px 22px}.studio-note{grid-column:9/span 4;padding-top:30px}.studio-note p{font-size:22px}.studio-acting{margin-top:-40px}.studio-to-brands{margin-top:95px}}
@media(max-width:760px){.site-header.page-width{height:78px;padding-inline:22px}.header-actions{gap:21px}.header-contact{display:none}.header-actions #motion-toggle{font-size:12px}.opening{height:130svh;min-height:770px}.opening-sticky{min-height:570px}.opening-topline{left:24px;right:24px;top:115px;font-size:14px}.opening-topline>span:last-child{font-size:12px}.opening-name{left:22px;right:22px;bottom:147px;font-size:21vw;gap:14px}.opening-bottom{left:24px;right:24px;bottom:65px}.opening-asset-note{left:24px;right:24px;bottom:23px;font-size:12px}.opening-image{object-position:56%}.introduction{display:block;padding:25px 0 65px}.intro-index{display:block;font-size:12px;margin-bottom:26px}.introduction>p{font-size:28px}.introduction>a{margin-top:26px}.practice-strip{padding-bottom:45px}#practice-track{font-size:76px}#practice-track i{margin-inline:15px}.studio .section-caption{margin-bottom:35px}.studio-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:45px 14px}.studio-painting{grid-column:1/span 6;grid-row:1}.studio-note{grid-column:2/span 5;grid-row:2;padding-top:0}.studio-note p{font-size:25px;margin:18px 0}.studio-acting{grid-column:3/span 4;grid-row:3;margin-top:0}.studio-writing{grid-column:1/span 5;grid-row:4;align-self:start;padding-top:0}.words-mask{font-size:86px}.studio-writing button>em{font-size:75px}.studio-caption h3{font-size:43px}.studio-to-brands{margin-top:65px;padding-bottom:30px}.studio-to-brands>span:nth-child(2){font-size:57px;padding-right:40px}.studio-to-brands .large-arrow{bottom:36px;font-size:36px}.about .personal-name,.connections .invitation{position:static}.menu-body{padding:35px 24px}.menu-body nav>a{gap:18px;padding:20px 0}.menu-word{font-size:clamp(40px,8.5vw,62px);gap:20px}.menu-word em{font-size:14px}.menu-body nav>a>span:last-child{font-size:22px}.menu-footer{flex-wrap:wrap;margin-top:35px;font-size:14px}[data-parallax]{transform:none!important}.work-hover{width:64px;height:64px}.brand-row summary:hover{padding-left:0}}
@media(max-width:430px){.site-header.page-width{padding-inline:18px}.identity{font-size:14px}.header-actions{gap:16px}.menu-lines{width:21px}.opening-topline>span:last-child{display:none}.opening-name{left:18px;right:18px;bottom:157px}.opening-bottom{left:18px;right:18px}.opening-asset-note{left:18px;right:18px;font-size:12px}.introduction>p{font-size:25px}.studio-to-brands>span:nth-child(2){font-size:46px}.studio-note p{font-size:23px}.studio-caption{column-gap:12px}.studio-caption h3{font-size:38px}.menu-body nav>a{gap:14px}.menu-word{gap:14px}.menu-word em{font-size:12px}}
@media(hover:none){.work-hover{display:none}.scene-link,.art-button{touch-action:manipulation}}
.motion-paused .opening-frame{clip-path:none!important}.motion-paused .opening-image{transform:none!important;clip-path:none!important}.motion-paused .opening-name,.motion-paused [data-parallax],.motion-paused [data-magnet],.motion-paused #practice-track{transform:none!important}.motion-paused [data-reveal]{opacity:1!important;transform:none!important;clip-path:none!important}.motion-paused .section-caption:before{transform:none!important}.motion-paused .name-mask>*{transform:none!important}
@media(prefers-reduced-motion:reduce){html:not(.motion-enabled) .opening-frame{clip-path:none!important}html:not(.motion-enabled) .opening-image,html:not(.motion-enabled) .opening-name,html:not(.motion-enabled) [data-parallax],html:not(.motion-enabled) #practice-track{transform:none!important}html:not(.motion-enabled) [data-reveal]{opacity:1!important;transform:none!important;clip-path:none!important}html:not(.motion-enabled) .section-caption:before{transform:none!important}}
