.v20-root{--bg:#fff;--ink:#111316;--ink-2:#5f636b;--line:#e7e7e9;--soft:#f5f5f6;--accent:#1a1a1a;--gold:#b08956}.font-v20{font-family:var(--font-pretendard), var(--font-noto-sans-kr), -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", system-ui, sans-serif;letter-spacing:-.01em}.v20-root{background:var(--bg);color:var(--ink);overflow-x:clip}.font-display,.font-agenda{font-family:"agenda", var(--font-bebas), "Bebas Neue", "Inter", "Helvetica Neue", system-ui, sans-serif;letter-spacing:.01em;text-transform:uppercase;font-style:normal;font-weight:700}.font-agenda-italic{font-family:"agenda", var(--font-bebas), "Bebas Neue", "Inter", system-ui, sans-serif;letter-spacing:.01em;text-transform:uppercase;font-style:italic;font-weight:700}.font-agenda-regular{font-family:"agenda", var(--font-bebas), "Bebas Neue", "Inter", system-ui, sans-serif;letter-spacing:.01em;font-style:normal;font-weight:400}.font-agenda-condensed{font-family:"agenda-condensed", "agenda", var(--font-bebas), "Bebas Neue", system-ui, sans-serif;letter-spacing:.02em;text-transform:uppercase;font-style:normal;font-weight:700}.font-agenda-condensed-italic{font-family:"agenda-condensed", "agenda", var(--font-bebas), "Bebas Neue", system-ui, sans-serif;letter-spacing:.02em;text-transform:uppercase;font-style:italic;font-weight:700}.font-agenda-x-condensed{font-family:"agenda-extra-condensed", "agenda-condensed", "agenda", var(--font-bebas), system-ui, sans-serif;letter-spacing:.04em;text-transform:uppercase;font-style:normal;font-weight:400}.font-agenda-x-condensed-italic{font-family:"agenda-extra-condensed", "agenda-condensed", "agenda", var(--font-bebas), system-ui, sans-serif;letter-spacing:.04em;text-transform:uppercase;font-style:italic;font-weight:700}.font-agenda-u-condensed{font-family:"agenda-ultra-condensed", "agenda-extra-condensed", "agenda-condensed", "agenda", var(--font-bebas), system-ui, sans-serif;letter-spacing:.06em;text-transform:uppercase;font-style:normal;font-weight:400}.font-agenda-u-condensed-italic{font-family:"agenda-ultra-condensed", "agenda-extra-condensed", "agenda-condensed", "agenda", var(--font-bebas), system-ui, sans-serif;letter-spacing:.06em;text-transform:uppercase;font-style:italic;font-weight:400}.font-agenda-u-condensed-bold{font-family:"agenda-ultra-condensed", "agenda-extra-condensed", "agenda-condensed", "agenda", var(--font-bebas), system-ui, sans-serif;letter-spacing:.06em;text-transform:uppercase;font-style:normal;font-weight:700}.font-agenda-u-condensed-bold-italic{font-family:"agenda-ultra-condensed", "agenda-extra-condensed", "agenda-condensed", "agenda", var(--font-bebas), system-ui, sans-serif;letter-spacing:.06em;text-transform:uppercase;font-style:italic;font-weight:700}.v20-hero{background:#000;height:100vh;min-height:720px;position:relative;overflow:hidden}.v20-hero:after{content:"";pointer-events:none;z-index:1;background:linear-gradient(#00000040 0%,#0000 30% 60%,#0000008c 100%);position:absolute;inset:0}.v20-scrolldown{z-index:3;font-family:"agenda", var(--font-bebas), "Bebas Neue", sans-serif;letter-spacing:.4em;color:#ffffffd9;flex-direction:column;align-items:center;gap:10px;font-size:12px;display:flex;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}.v20-scrolldown:after{content:"";background:linear-gradient(#ffffffd9 0%,#fff0 100%);width:1px;height:50px;animation:1.8s ease-in-out infinite v20-scroll-tick}@keyframes v20-scroll-tick{0%{transform-origin:top;opacity:.85;transform:scaleY(0)}50%{transform-origin:top;opacity:.85;transform:scaleY(1)}51%{transform-origin:bottom}to{transform-origin:bottom;opacity:0;transform:scaleY(0)}}.v20-established{border-bottom:1px solid var(--line);padding:120px 0}.v20-established .deco-line{background:linear-gradient(90deg,#11131680 0%,#111316e6 28%,#d4ae69 65%,#e8c882 100%);border-radius:2px;flex:1;height:3px;position:relative;overflow:hidden;box-shadow:0 0 18px #e8c88259}.v20-established .deco-line:after{content:"";filter:blur(2.5px);opacity:0;background:linear-gradient(90deg,#0000 0%,#fff6d7e6 40%,#ffe6a5 50%,#fff6d7e6 60%,#0000 100%);width:130px;animation:3.6s cubic-bezier(.4,.05,.2,1) infinite v20-future-comet;position:absolute;top:-3px;bottom:-3px;left:0}.v20-spread.is-in .deco-line:after{animation-delay:1.5s}@keyframes v20-future-comet{0%{opacity:0;left:-120px}12%{opacity:1}85%{opacity:1}to{opacity:0;left:calc(100% + 20px)}}@media (prefers-reduced-motion:reduce){.v20-established .deco-line:after{animation:none;display:none}}.v20-spread{overflow:visible}.v20-spread .year-left{opacity:0;transition:transform 2.4s cubic-bezier(.16,1,.3,1) .2s,opacity 1s ease-out .2s;display:inline-block;transform:translate(64px)}.v20-spread .year-right{opacity:0;transition:transform 2.4s cubic-bezier(.16,1,.3,1) .2s,opacity 1s ease-out .2s;display:inline-block;transform:translate(-64px)}.v20-spread .deco-line{transform-origin:0;transition:transform 2.6s cubic-bezier(.16,1,.3,1) .6s;transform:scaleX(0)}.v20-spread.is-in .year-left,.v20-spread.is-in .year-right{opacity:1;transform:none}.v20-spread.is-in .deco-line{transform:scaleX(1)}@media (prefers-reduced-motion:reduce){.v20-spread .year-left,.v20-spread .year-right,.v20-spread .deco-line{opacity:1;transition:none;transform:none}}@media (max-width:767px){.v20-spread .deco-line{flex:none;align-self:stretch;width:auto;height:3px;margin-right:8px}.v20-spread .year-left{transform:translateY(-28px)}.v20-spread .year-right{transform:translateY(28px)}.v20-spread.is-in .year-left,.v20-spread.is-in .year-right{transform:none}.v20-established .deco-line:after{width:100px}}@media (pointer:fine){.v20-cursor-on,.v20-cursor-on *{cursor:none!important}}.v20-cursor{pointer-events:none;z-index:99999;will-change:transform, width, height;opacity:0;border-radius:50%;transition:opacity .25s;position:fixed;top:0;left:0}.v20-cursor.on{opacity:1}.v20-cursor-dot{background:#fff5d8;width:8px;height:8px;transition:opacity .25s,width .25s,height .25s,background .25s,box-shadow .25s;box-shadow:0 0 8px #ffebafd9,0 0 0 1px #0000000f}.v20-cursor-dot.hover{background:#ffe9a8;width:14px;height:14px;box-shadow:0 0 14px #ffdc82e6,0 0 0 1px #0000000f}.v20-cursor-ring{background:0 0;border:1.5px solid #d4ae69d9;width:38px;height:38px;transition:opacity .25s,width .4s cubic-bezier(.16,1,.3,1),height .4s cubic-bezier(.16,1,.3,1),border-color .3s,background .3s,box-shadow .3s;box-shadow:0 0 24px #e8c88266,inset 0 0 12px #e8c8822e,0 0 0 1px #0000000a}.v20-cursor-ring.hover{background:#e8c88214;border-color:#e8c882a6;width:92px;height:92px;box-shadow:0 0 36px #e8c8828c,inset 0 0 22px #e8c88238}@media (pointer:coarse){.v20-cursor{display:none}}.v20-about-row{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;align-items:center;min-height:80vh;display:grid}.v20-about-row.reverse{direction:rtl}.v20-about-row.reverse>*{direction:ltr}@media (max-width:1023px){.v20-about-row,.v20-about-row.reverse{direction:ltr;grid-template-columns:1fr}}.v20-marquee{width:max-content;animation:28s linear infinite v20-marquee;display:flex}.v20-marquee>*{flex-shrink:0}@keyframes v20-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.v20-marquee:hover{animation-play-state:paused}.v20-fadeup{opacity:0;transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);transform:translateY(36px)}.v20-fadeup.is-in{opacity:1;transform:none}.v20-fadeup-d1{transition-delay:.1s}.v20-fadeup-d2{transition-delay:.2s}.v20-fadeup-d3{transition-delay:.3s}.v20-fadeup-d4{transition-delay:.4s}@media (prefers-reduced-motion:reduce){.v20-fadeup,.v20-fadeup.is-in{opacity:1;transition:none;transform:none}.v20-marquee,.v20-scrolldown:after{animation:none}}.v20-portfolio-card{cursor:pointer;position:relative;overflow:hidden}.v20-portfolio-card .img-wrap{transition:transform .9s cubic-bezier(.16,1,.3,1);position:absolute;inset:0}.v20-portfolio-card:hover .img-wrap{transform:scale(1.07)}.v20-portfolio-card .overlay{pointer-events:none;background:linear-gradient(#0000 40%,#000000c7 100%);transition:opacity .7s;position:absolute;inset:0}.v20-portfolio-card:hover .overlay{opacity:.85}.v20-nav-link{padding:4px 0;display:inline-block;position:relative}.v20-nav-link:after{content:"";background:currentColor;height:1px;transition:right .45s cubic-bezier(.16,1,.3,1);position:absolute;bottom:-2px;left:0;right:100%}.v20-nav-link:hover:after{right:0}
