@font-face{font-family:Gmarket;src:url('./assets/fonts/GmarketSans-Medium.ttf');font-weight:400 500;font-display:swap}
@font-face{font-family:Gmarket;src:url('./assets/fonts/GmarketSans-Bold.ttf');font-weight:600 900;font-display:swap}
:root{font-family:Arial,Gmarket,sans-serif;font-size:14px;font-weight:500;line-height:1.35;color:#101010;background:#fff;letter-spacing:0;--gutter:25px;--row-gap:25px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid #2458ef;outline-offset:5px}h1,h2,h3,p,ul,dl,dd{margin:0}h1,h2,h3{font-size:inherit;font-weight:500;letter-spacing:0}ul{list-style:none;padding:0}svg{height:15px;width:15px;flex:none}img{display:block;max-width:100%}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:-60px;left:12px;z-index:100;background:#111;color:#fff;padding:10px}.skip-link:focus{top:10px}
.studio-header{position:fixed;z-index:30;top:0;left:0;right:0;display:grid;grid-template-columns:20% 1fr 31%;gap:0;align-items:start;padding:21px var(--gutter);pointer-events:none;color:#111;transition:opacity .22s}.studio-header>*{pointer-events:auto}.studio-brand{font-size:14px;font-weight:600;line-height:1.3}.studio-brand sup{font-size:9px;vertical-align:top}.studio-brand span{font-family:Gmarket,sans-serif;font-size:9px;display:block;margin-top:5px;font-weight:400}.studio-position{font-size:14px;line-height:1.3}.studio-header nav{font-size:12px;line-height:1.4;text-align:right;display:grid;gap:4px}.studio-header nav>div{display:flex;gap:16px;justify-content:flex-end;font-family:Gmarket,sans-serif;font-size:10px}.studio-header a:hover{text-decoration:underline;text-underline-offset:4px}.studio-hero{height:calc(100svh - 220px);min-height:410px;position:relative;display:flex;align-items:flex-end;padding:0 var(--gutter) 16px}.hero-context{position:absolute;top:112px;left:calc(20% + 15px);font-size:10px;color:#737373;font-family:Gmarket,sans-serif}.wordmark-scene{position:relative;isolation:isolate;width:100%;height:180px;overflow:hidden;touch-action:pan-y;cursor:grab}.wordmark-scene:active{cursor:grabbing}.wordmark-scene canvas{position:absolute;inset:0;display:block;width:100%;height:100%}.wordmark-fallback{font-family:Arial,sans-serif;font-size:160px;font-weight:900;line-height:180px;white-space:nowrap;text-align:center}.webgl-ready .wordmark-fallback{visibility:hidden}
.project-field{padding-bottom:50px;overflow:hidden;position:relative}.project-row{--tile-width:calc((100vw - 150px)/5);width:100%;overflow:hidden;margin:0 0 26px;touch-action:pan-y;position:relative;cursor:grab}.row-track{display:flex;gap:var(--row-gap);width:max-content;will-change:transform}.project-tile{width:var(--tile-width);flex:none;background:none;border:0;border-radius:0;padding:0;text-align:left;display:block;position:relative;user-select:none}.tile-image{position:relative;aspect-ratio:5/3;overflow:hidden;background:#f2f2f2}.tile-image img{width:100%;height:100%;object-fit:cover;transform:translate3d(var(--mx,0),var(--my,0),0) scale(1.015);transition:transform .45s cubic-bezier(.2,.65,.2,1),opacity .2s;pointer-events:none}.project-tile[data-fit=contain] .tile-image img{object-fit:contain}.project-tile:hover .tile-image img{transform:translate3d(var(--mx,0),var(--my,0),0) scale(1.055)}.tile-caption{display:flex;align-items:start;justify-content:space-between;gap:14px;padding-top:9px;font-size:12px;line-height:1.45}.tile-caption strong{font-weight:500;word-break:keep-all}.tile-caption small{font-size:10px;white-space:nowrap}.project-tile:hover .tile-caption strong{text-decoration:underline;text-underline-offset:3px}.row-wide{--tile-width:min(760px,58vw)}.row-medium{--tile-width:min(440px,33vw)}.row-feature{--tile-width:min(900px,66vw)}.row-wide .tile-caption,.row-feature .tile-caption{font-size:14px}.row-wide .tile-caption small,.row-feature .tile-caption small{font-size:11px}
.studio-information{padding:0 6.7%;scroll-margin-top:115px;font-family:Gmarket,sans-serif;font-size:12px;line-height:1.8}.information-row{display:grid;grid-template-columns:140px minmax(0,1fr);gap:0;padding:65px 0}.information-row h2{font-family:Arial,sans-serif;font-size:13px;line-height:1.5}.about-row>div{max-width:620px}.information-row p+p{margin-top:13px}.plain-link{display:inline-flex;align-items:center;gap:7px;margin-top:19px;font-family:Arial,Gmarket,sans-serif}.plain-link:hover{text-decoration:underline;text-underline-offset:3px}.service-columns{display:grid;grid-template-columns:1fr 1.15fr;gap:46px}.service-columns>ul{line-height:1.8}.service-columns>p,.service-columns>div{max-width:560px}.experience-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.experience-list div+div{margin-top:17px}.experience-list dt{font-family:Arial,sans-serif;font-size:13px}.experience-list dd{color:#606060;font-size:11px;line-height:1.8}.project-list li{display:flex;justify-content:space-between;align-items:start;gap:20px;line-height:1.9}.project-list span{font-size:10px;color:#606060;text-align:right}.resource-links{display:grid;gap:13px;align-content:start}.resource-links a{display:inline-flex;align-items:center;gap:6px}.resource-links a:hover{text-decoration:underline;text-underline-offset:3px}.muted{font-size:10px;color:#777}.contact-columns{display:grid;grid-template-columns:1fr 1.15fr;gap:46px}.contact-columns>div:first-child>a{display:block;font-family:Arial,sans-serif;font-size:14px;line-height:1.6}.social-links{display:grid;gap:3px;margin-top:20px;font-family:Arial,sans-serif;font-size:12px}.social-links a{display:flex;align-items:center;gap:5px}.contact-row{padding-bottom:105px;scroll-margin-top:90px}.studio-footer{padding:60px var(--gutter) 25px}.footer-wordmark{height:160px}.footer-meta{display:flex;justify-content:space-between;align-items:center;font-size:9px;margin-top:14px;color:#666}.footer-meta a{display:flex;align-items:center;gap:5px}
.project-dock{position:fixed;z-index:41;bottom:0;left:0;right:0;padding:13px var(--gutter) 11px;display:flex;gap:18px;background:#ffffffef;backdrop-filter:blur(8px)}.dock-track{display:flex;gap:20px;overflow-x:auto;scrollbar-width:none;flex:1;min-width:0}.dock-track::-webkit-scrollbar{display:none}.dock-tile{background:none;border:0;border-radius:0;padding:0;flex:0 0 130px;text-align:left}.dock-tile img{height:72px;width:100%;object-fit:cover}.dock-tile span{font-size:9px;display:block;padding-top:5px;white-space:nowrap}.dock-tile.is-selected img{outline:2px solid currentColor;outline-offset:-2px}.dock-controls{display:flex;align-items:center;gap:7px}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:0;background:none;border-radius:0;padding:0}.icon-button:hover{background:#e9e9e9}.work-cursor{position:fixed;pointer-events:none;z-index:60;display:flex;align-items:center;gap:5px;transform:translate(-100px,-100px);padding:7px 9px;background:#fff;color:#111;font-size:9px;border:1px solid #111;opacity:0;transition:opacity .15s}.work-cursor svg{width:13px;height:13px}.work-cursor.is-visible{opacity:1}
.detail-backdrop{position:fixed;z-index:35;inset:0;background:#171717e8}.project-modal{position:fixed;z-index:40;inset:0;overflow-y:auto;overscroll-behavior:contain;padding:65px var(--gutter) 160px;color:#fff;scrollbar-width:thin;scrollbar-color:#777 transparent}.detail-inner{display:grid;grid-template-columns:minmax(0,1fr) 22%;gap:40px;align-items:start;min-height:calc(100svh - 220px)}.detail-media{display:grid;gap:40px;min-width:0}.detail-media figure{margin:0}.detail-media img{width:100%;height:auto;object-fit:contain;background:#efefef}.detail-media figcaption{font-family:Gmarket,sans-serif;font-size:10px;color:#aaa;padding-top:9px;line-height:1.8}.detail-info{position:sticky;top:0;max-height:calc(100svh - 230px);overflow-y:auto;padding-right:25px;scrollbar-width:thin;scrollbar-color:#777 transparent;font-family:Gmarket,sans-serif;font-size:11px;line-height:1.8}.detail-info h2{font-size:19px;font-weight:700;line-height:1.5;word-break:keep-all}.detail-year{font-family:Arial,sans-serif;font-size:11px;margin-top:3px;color:#bbb}.detail-info dl{margin-top:28px}.detail-info dt{font-family:Arial,sans-serif;font-size:9px;line-height:1.5;color:#aaa;margin:22px 0 4px}.detail-info dd{word-break:keep-all}.detail-info ul{line-height:1.9}.detail-info li+li{margin-top:7px}.detail-links{display:grid;gap:12px;margin-top:30px}.detail-links a{display:flex;align-items:center;gap:7px;font-size:11px}.detail-links a:hover{text-decoration:underline;text-underline-offset:4px}.detail-paging{display:flex;gap:13px;align-items:center;font-family:Arial,sans-serif;font-size:10px;margin-top:27px}.detail-close{position:fixed;z-index:43;top:16px;right:16px;color:#fff;background:#242424;min-width:32px;min-height:32px}.detail-close:hover,.detail-paging .icon-button:hover{background:#444}.case-notes{font-family:Gmarket,sans-serif;font-size:13px;line-height:2;padding:30px 0;display:grid;gap:30px}.case-notes section{display:grid;grid-template-columns:160px 1fr;gap:25px}.case-notes h3{font-size:12px;color:#aaa;line-height:1.9}.case-notes p{max-width:650px;word-break:keep-all}.case-notes ul{display:grid;gap:9px}.case-notes a{display:inline-flex;align-items:center;gap:7px;text-decoration:underline;text-underline-offset:4px}.case-notes .case-privacy{font-size:11px;color:#aaa}.modal-open{overflow:hidden}.modal-open .studio-header{opacity:0;pointer-events:none}.modal-open .studio-header>*{pointer-events:none}.modal-open .project-dock{background:#242424f5;color:#fff}.modal-open .dock-controls .icon-button:hover{background:#444}
@media(min-width:1800px){.studio-hero{height:calc(100svh - 250px)}.wordmark-scene{height:215px}.row-wide{--tile-width:58vw}.row-feature{--tile-width:66vw}.studio-information{font-size:14px}.information-row{grid-template-columns:180px 1fr;padding:80px 0}.information-row h2{font-size:14px}}
@media(max-width:1000px){.information-row{grid-template-columns:105px 1fr}.experience-grid{gap:22px}.experience-grid .information-row{grid-template-columns:95px 1fr}.service-columns,.contact-columns{gap:28px}.detail-inner{grid-template-columns:minmax(0,1fr) 29%;gap:25px}.detail-info h2{font-size:17px}.case-notes section{grid-template-columns:1fr;gap:8px}}
@media(max-width:720px){:root{--gutter:18px;--row-gap:16px}.studio-header{grid-template-columns:1fr auto;padding-top:19px}.studio-brand{font-size:12px}.studio-brand span{font-size:8px}.studio-position{display:none}.studio-header nav{font-size:9px;gap:5px}.studio-header nav>div{font-size:9px;gap:12px}.studio-hero{height:calc(100svh - 230px);min-height:340px;padding-bottom:15px}.hero-context{top:110px;left:var(--gutter);font-size:8px}.wordmark-scene{height:140px}.wordmark-fallback{font-size:100px;line-height:140px}.project-row{--tile-width:58vw;margin-bottom:20px}.row-wide{--tile-width:86vw}.row-medium{--tile-width:72vw}.row-feature{--tile-width:92vw}.tile-caption{font-size:10px;padding-top:7px;gap:9px}.tile-caption small{font-size:8px}.row-wide .tile-caption,.row-feature .tile-caption{font-size:11px}.row-wide .tile-caption small,.row-feature .tile-caption small{font-size:9px}.project-field{padding-bottom:30px}.studio-information{padding:0 var(--gutter);font-size:11px;line-height:1.9;scroll-margin-top:90px}.information-row{grid-template-columns:72px minmax(0,1fr);padding:36px 0}.information-row h2{font-size:10px;line-height:1.9}.about-row p br{display:none}.service-columns,.contact-columns{grid-template-columns:1fr;gap:25px}.experience-grid{grid-template-columns:1fr;gap:0}.experience-grid .information-row{grid-template-columns:72px 1fr}.experience-list dt{font-size:11px}.experience-list dd{font-size:10px}.project-list li{font-size:10px;gap:10px}.project-list span{font-size:8px}.contact-columns>div:first-child>a{font-size:12px}.social-links{font-size:10px}.muted{font-size:9px}.contact-row{padding-bottom:60px}.studio-footer{padding:30px var(--gutter) 18px}.footer-wordmark{height:110px}.footer-meta{font-size:8px}.project-dock{padding:10px 12px 8px;gap:8px}.dock-track{gap:12px}.dock-tile{flex-basis:90px}.dock-tile img{height:50px}.dock-tile span{font-size:8px}.dock-controls{gap:2px}.dock-controls .icon-button{width:23px;height:25px}.dock-controls svg{height:13px;width:13px}.project-modal{padding:58px var(--gutter) 125px}.detail-inner{display:flex;flex-direction:column;gap:25px}.detail-info{position:relative;top:auto;max-height:none;overflow:visible;order:-1;padding-right:35px;width:100%;font-size:11px}.detail-info h2{font-size:20px}.detail-info dl{display:grid;grid-template-columns:70px minmax(0,1fr);gap:10px 12px;margin-top:20px}.detail-info dt{margin:0;font-size:9px;padding-top:3px}.detail-info dd{font-size:11px}.detail-info dt:nth-of-type(3),.detail-info dd:nth-of-type(3){display:none}.detail-info ul{line-height:1.8}.detail-links{display:flex;flex-wrap:wrap;gap:13px;margin-top:18px}.detail-links a{font-size:10px}.detail-paging{margin-top:15px}.detail-media{gap:25px;width:100%}.detail-media figcaption{font-size:9px}.case-notes{font-size:11px;line-height:2;padding:10px 0;gap:25px}.case-notes section{display:block}.case-notes h3{font-size:10px;margin-bottom:8px}.case-notes .case-privacy{font-size:10px}.work-cursor{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.work-cursor{display:none}}
.project-row{padding-left:var(--gutter);padding-right:var(--gutter)}.detail-media figure:first-child{min-height:160px;transform-origin:top left}
.is-scrolled .studio-header{background:#ffffffed;backdrop-filter:blur(8px)}
.detail-info{top:0}
.detail-media[data-case=kia] figure:first-child img,.detail-media[data-case=fitness] figure:first-child img,.detail-media[data-case=ax] figure:first-child img{max-height:calc(100svh - 215px);object-fit:contain;background:transparent}
@media(max-width:720px){.studio-information{font-size:12px}.information-row,.experience-grid .information-row{grid-template-columns:84px minmax(0,1fr)}}
@media(max-width:720px){.detail-info dt:nth-of-type(3),.detail-info dd:nth-of-type(3){display:block}}
@media(max-width:720px){.detail-info{top:auto}}
