#kim-portfolio .kg-section{border-top:1px solid var(--line);background:var(--paper);color:var(--ink);padding:34px 5%}#kim-portfolio .kg-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-top:14px;display:flex}#kim-portfolio .kg-heading h2{font-size:clamp(28px,4cqw,42px)}#kim-portfolio .kg-score{color:var(--muted)}#kim-portfolio .kg-board{aspect-ratio:900/550;touch-action:pan-y;width:100%;height:auto;display:block}#kim-portfolio .kg-board[data-playing=true]{touch-action:none}#kim-portfolio .kg-controls{flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px;display:flex}#kim-portfolio .kg-controls button{background:var(--paper);color:var(--ink);border:1px solid var(--line);min-height:44px;padding:11px 18px;font:12px monospace}#kim-portfolio .kg-controls button:first-child{background:var(--ink);color:var(--paper)}#kim-portfolio .kg-steer{align-items:center;gap:12px;margin-left:auto;font:12px monospace;display:flex}#kim-portfolio .kg-steer input{width:150px;min-height:44px;accent-color:var(--ink)}#kim-portfolio .ke-site .kg-help,#kim-portfolio .ke-site .kg-status{color:var(--muted);margin:12px 0 0;font-size:12px}@container (width<=600px){#kim-portfolio .kg-steer{justify-content:space-between;width:100%;margin-left:0}#kim-portfolio .kg-steer input{flex:1;max-width:210px}}#kim-portfolio .kx-section{border-top:1px solid var(--ke-line);padding:34px 5% 40px}#kim-portfolio .kx-heading{justify-content:space-between;align-items:end;gap:25px;margin:16px 0 28px;display:flex}#kim-portfolio .kx-heading h2{margin:10px 0;font-size:clamp(30px,4.6cqw,46px)}#kim-portfolio .kx-heading>.ke-mono{color:var(--ke-dim);white-space:nowrap;margin-bottom:12px}#kim-portfolio .kx-entry{border-top:1px solid var(--ke-line);grid-template-columns:1fr 2.5fr;gap:35px;padding:25px 0;display:grid}#kim-portfolio .kx-date{color:var(--ke-dim);flex-direction:column;gap:12px;display:flex}#kim-portfolio .kx-type{letter-spacing:.3px;color:var(--ke-dim);font:11px/1.5 monospace}#kim-portfolio .kx-description{border-left:1px solid var(--ke-line);padding-left:24px;position:relative}#kim-portfolio .kx-description:before{content:"";background:var(--ke-ink);border-radius:50%;width:7px;height:7px;position:absolute;top:6px;left:-4px}#kim-portfolio .kx-description h3{margin-bottom:6px}#kim-portfolio .kx-org{color:var(--ke-dim);font-size:12px}#kim-portfolio .kx-description p{max-width:570px;font-size:13px}#kim-portfolio .kx-description ul{color:var(--ke-dim);margin:14px 0 20px;padding-left:17px;font-size:13px}#kim-portfolio .kx-description li{margin:8px 0}#kim-portfolio .kx-credentials{grid-template-columns:1fr 1fr;gap:35px;display:grid}#kim-portfolio .kx-credential{border-top:1px solid var(--ke-line);grid-template-columns:30px 1fr;gap:10px;min-width:0;padding:22px 0;display:grid}#kim-portfolio .kx-cert-number{color:var(--ke-dim);padding-top:2px}#kim-portfolio .kx-credential h3{margin-top:12px}#kim-portfolio .kx-credential p{margin:6px 0 16px;font-size:13px}#kim-portfolio .kx-credential .ke-mono{color:var(--ke-dim)}#kim-portfolio .kx-proof{margin-top:20px}#kim-portfolio .kx-proof summary{border-bottom:1px solid var(--ke-line);padding:10px 0;font-size:13px}#kim-portfolio .kx-proof-body{padding-top:18px}#kim-portfolio .kx-proof-body .ke-image{min-height:150px}@container (width<=600px){#kim-portfolio .kx-heading{display:block}#kim-portfolio .kx-heading h2{font-size:34px}#kim-portfolio .kx-heading>.ke-mono{display:none}#kim-portfolio .kx-entry{grid-template-columns:1fr;gap:18px}#kim-portfolio .kx-date{flex-flow:wrap;gap:10px 20px}#kim-portfolio .kx-description{margin-left:4px;padding-left:18px}#kim-portfolio .kx-credentials{grid-template-columns:1fr;gap:0}}#kim-portfolio .kt-section{border-top:1px solid var(--ke-line);padding:34px 5% 45px}#kim-portfolio .kt-intro{grid-template-columns:1.5fr 1fr;align-items:center;gap:35px;margin:15px 0 30px;display:grid}#kim-portfolio .kt-intro h2{font-size:clamp(30px,4.7cqw,46px)}#kim-portfolio .kt-intro p{max-width:300px}#kim-portfolio .kt-layout{border-top:1px solid var(--ke-line);grid-template-columns:1fr 2.5fr;gap:35px;padding:25px 0;display:grid}#kim-portfolio .kt-mark{margin-bottom:14px;font:34px/1.2 monospace;display:block}#kim-portfolio .kt-rail h3{margin-bottom:8px}#kim-portfolio .kt-rail .ke-mono{color:var(--ke-dim)}#kim-portfolio .kt-row{border-bottom:1px solid var(--ke-line);grid-template-columns:120px 1fr;gap:18px;padding:14px 0;display:grid}#kim-portfolio .kt-row:first-child{padding-top:0}#kim-portfolio .kt-category{color:var(--ke-dim);font:11px/1.6 monospace}#kim-portfolio .kt-items{flex-wrap:wrap;gap:8px;display:flex}#kim-portfolio .kt-items span{background:var(--ke-paper);color:var(--ke-ink);border:1px solid var(--ke-line);padding:7px 11px;font-size:12px;line-height:1.4}@container (width<=600px){#kim-portfolio .kt-intro,#kim-portfolio .kt-layout{grid-template-columns:1fr;gap:16px}#kim-portfolio .kt-intro{margin-bottom:20px}#kim-portfolio .kt-intro h2{margin-bottom:0;font-size:34px}#kim-portfolio .kt-intro p{margin:0}#kim-portfolio .kt-row{grid-template-columns:1fr;gap:10px}#kim-portfolio .kt-mark{display:none}#kim-portfolio .kt-layout{padding-top:20px}#kim-portfolio .kt-items span{padding:7px 10px}}#kim-portfolio .kp-stage{isolation:isolate;min-height:490px;margin-top:20px;position:relative}#kim-portfolio h1.kp-name{z-index:0;letter-spacing:-.07em;margin:0;padding:20px 0 0;font-size:clamp(70px,16cqw,160px);font-weight:500;line-height:.83;position:relative}#kim-portfolio .kp-name span{text-align:right;color:#0000;-webkit-text-stroke:1px var(--ke-ink);letter-spacing:-.065em;margin-top:18px;font-size:.76em;display:block}#kim-portfolio .kp-orbit{border:1px solid var(--ke-line);z-index:0;border-radius:50%;width:340px;height:340px;position:absolute;top:125px;left:50%;transform:translate(-50%)}#kim-portfolio .kp-portrait{z-index:2;width:300px;height:390px;position:absolute;bottom:0;left:50%;overflow:hidden;transform:translate(-50%)}#kim-portfolio .kp-head{background:var(--ke-image);border:1px solid var(--ke-line);border-radius:48% 48% 44% 44%;width:106px;height:135px;position:absolute;top:30px;left:97px}#kim-portfolio .kp-body{background:var(--ke-image);border:1px solid var(--ke-line);border-radius:110px 110px 0 0;width:298px;height:275px;position:absolute;bottom:-30px}#kim-portfolio .kp-photo-label{text-align:center;letter-spacing:1px;color:var(--ke-dim);font:11px monospace;position:absolute;bottom:95px;left:0;right:0}#kim-portfolio .kp-left{z-index:3;max-width:200px;position:absolute;bottom:50px;left:0}#kim-portfolio .kp-left .ke-mono{font-size:14px}#kim-portfolio .kp-left p{font-size:12px}#kim-portfolio .kp-work{border-bottom:1px solid var(--ke-ink);padding:10px 0;font-size:13px;display:inline-block}#kim-portfolio .kp-object{border:1px dashed var(--ke-line);text-align:center;z-index:1;background:var(--ke-paper);width:114px;height:114px;color:var(--ke-dim);border-radius:28px;flex-direction:column;justify-content:center;align-items:center;gap:12px;font:11px/1.5 monospace;display:flex;position:absolute;bottom:90px;right:5%;transform:rotate(9deg)}#kim-portfolio .kp-object svg{width:32px;height:32px}#kim-portfolio .kp-sidenote{color:var(--ke-dim);position:absolute;bottom:18px;right:0}#kim-portfolio .kp-hero-footer{z-index:4;border-top:1px solid var(--ke-line);background:var(--ke-paper);justify-content:space-between;align-items:center;gap:18px;padding-top:20px;display:flex;position:relative}#kim-portfolio .kp-hero-footer a{font-size:12px}#kim-portfolio .kp-hero-footer .ke-mono{color:var(--ke-dim)}#kim-portfolio .ke-site{background:var(--ke-paper);color:var(--ke-ink);border:1px solid var(--ke-line);margin-top:16px;font:14px/1.6 Arial,sans-serif;container-type:inline-size}#kim-portfolio .ke-site *{box-sizing:border-box}#kim-portfolio .ke-site a{color:inherit;text-decoration:none}#kim-portfolio .ke-site p{color:var(--ke-dim);margin:16px 0;font-size:14px}#kim-portfolio .ke-header{border-bottom:1px solid var(--ke-line);align-items:center;gap:26px;padding:22px 5%;display:flex}#kim-portfolio .ke-logo{letter-spacing:-4px;font-size:38px;font-weight:500;line-height:1}#kim-portfolio .ke-logo span{vertical-align:top;letter-spacing:0;margin-left:7px;font:12px monospace}#kim-portfolio .ke-meta{font:11px/1.4 monospace}#kim-portfolio nav a{padding:8px 0}#kim-portfolio .ke-hero{padding:26px 5% 36px}#kim-portfolio .ke-overline,#kim-portfolio .ke-sectionline{color:var(--ke-dim);justify-content:space-between;gap:20px;font:11px/1.5 monospace;display:flex}#kim-portfolio .ke-title{padding:32px 0 26px;position:relative}#kim-portfolio h1{letter-spacing:-.065em;margin:0;font-size:clamp(40px,10.6cqw,112px);font-weight:500;line-height:.94}#kim-portfolio .ke-outline{color:#0000;-webkit-text-stroke:1px var(--ke-ink)}#kim-portfolio .ke-star{font-size:clamp(50px,9cqw,95px);line-height:1;position:absolute;top:6%;right:1%}#kim-portfolio .ke-hero-bottom{grid-template-columns:1fr 2fr 1fr;align-items:center;gap:25px;display:grid}#kim-portfolio .ke-mono{letter-spacing:.4px;font:11px/1.6 monospace}#kim-portfolio .ke-side{color:var(--ke-dim)}#kim-portfolio .ke-round{border:1px solid var(--ke-ink);border-radius:50%;flex-direction:column;justify-content:center;justify-self:end;align-items:center;width:112px;height:112px;font:11px/1.3 monospace;display:flex}#kim-portfolio .ke-arrow{margin-top:5px;font-size:26px}#kim-portfolio .ke-band{background:var(--ke-inverse);color:var(--ke-inverse-ink);flex-wrap:wrap;justify-content:space-around;align-items:center;gap:15px;padding:14px 4%;font:11px/1.5 monospace;display:flex}#kim-portfolio .ke-work{padding:34px 5% 42px}#kim-portfolio .ke-feature{grid-template-columns:1fr 1.6fr;align-items:center;gap:40px;margin:30px 0 42px;display:grid}#kim-portfolio .ke-number{color:var(--ke-dim);font:12px monospace}#kim-portfolio h2{letter-spacing:-.045em;margin:16px 0;font-size:clamp(30px,4.8cqw,52px);font-weight:500;line-height:1.02}#kim-portfolio .ke-image{background:var(--ke-image);border:1px solid var(--ke-line);color:var(--ke-dim);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:32px 18px;font:11px/1.5 monospace;display:flex;position:relative}#kim-portfolio .ke-image svg{width:30px;height:30px}#kim-portfolio .ke-mainimage{background:repeating-linear-gradient(135deg,var(--ke-image) 0px,var(--ke-image) 32px,var(--ke-line) 33px,var(--ke-image) 34px);min-height:310px}#kim-portfolio .ke-corner{font-size:11px;position:absolute;top:14px;left:16px}#kim-portfolio .ke-image-footer{font-size:11px;position:absolute;bottom:14px;left:12px;right:12px}#kim-portfolio .ke-details{margin-top:22px;font-size:13px}#kim-portfolio .ke-details summary{border-bottom:1px solid var(--ke-ink);padding:10px 0;list-style:none}#kim-portfolio .ke-details p{font-size:12px}#kim-portfolio .ke-project-pair{grid-template-columns:1.2fr 1fr;gap:45px;display:grid}#kim-portfolio .ke-tall{min-height:280px}#kim-portfolio .ke-short{min-height:200px}#kim-portfolio .ke-offset{padding-top:70px}#kim-portfolio .ke-project-title{justify-content:space-between;align-items:center;gap:15px;margin-top:15px;display:flex}#kim-portfolio h3{letter-spacing:-.5px;margin:0;font-size:20px;font-weight:500}#kim-portfolio .ke-secondary p{margin-top:5px;font-size:12px}#kim-portfolio .ke-index{border-top:1px solid var(--ke-line);flex-direction:column;gap:10px;margin-top:25px;padding-top:15px;font-size:13px;display:flex}#kim-portfolio .ke-about{border-top:1px solid var(--ke-line);grid-template-columns:.8fr 1.5fr;align-items:center;gap:55px;padding:44px 5%;display:grid}#kim-portfolio .ke-portrait{min-height:320px;margin:5px 8px;transform:rotate(-3deg)}#kim-portfolio .ke-photo-note{text-align:left;color:var(--ke-ink);position:absolute;bottom:18px;left:18px}#kim-portfolio em{font-family:Georgia,serif;font-weight:400}#kim-portfolio .ke-skill-row{border-top:1px solid var(--ke-line);justify-content:space-between;gap:20px;padding:12px 0;font-size:12px;display:flex}#kim-portfolio .ke-skill-row span:last-child{color:var(--ke-dim);text-align:right}#kim-portfolio .ke-resume{margin-top:12px;font-size:12px;display:block}#kim-portfolio .ke-creative{border-top:1px solid var(--ke-line);padding:28px 5% 35px}#kim-portfolio .ke-film{border-top:7px dotted var(--ke-line);border-bottom:7px dotted var(--ke-line);grid-template-columns:1fr 1.3fr 1fr;gap:12px;margin-top:24px;padding:12px 0;display:grid}#kim-portfolio .ke-film .ke-image{min-height:160px}#kim-portfolio .ke-film-caption{color:var(--ke-dim);justify-content:space-between;gap:20px;margin-top:12px;font-size:12px;display:flex}#kim-portfolio .ke-contact{background:var(--ke-inverse);color:var(--ke-inverse-ink);padding:30px 5%}#kim-portfolio .ke-contact h2{margin:28px 0;font-size:clamp(40px,8cqw,80px);line-height:1.08}#kim-portfolio .ke-contact-bottom{border-top:1px solid;justify-content:space-between;gap:20px;padding-top:18px;font-size:12px;display:flex}#kim-portfolio footer{justify-content:space-between;gap:18px;padding:18px 5%;font:11px monospace;display:flex}#kim-portfolio .ke-mobile-stage{justify-content:center;padding:15px;display:flex}#kim-portfolio .ke-mobile-holder{width:100%;min-width:0;max-width:390px}@container (width<=600px){#kim-portfolio .ke-header{flex-wrap:wrap;gap:16px}#kim-portfolio .ke-meta{font-size:11px}#kim-portfolio nav{justify-content:space-between;gap:16px;width:100%;margin:0}#kim-portfolio .ke-overline span:last-child{display:none}#kim-portfolio .ke-title{padding-top:48px}#kim-portfolio h1{font-size:11cqw}#kim-portfolio .ke-star{font-size:40px;top:5px}#kim-portfolio .ke-hero-bottom{grid-template-columns:1fr auto;gap:16px}#kim-portfolio .ke-side{display:none}#kim-portfolio .ke-round{width:90px;height:90px}#kim-portfolio .ke-hero-bottom p{font-size:13px}#kim-portfolio .ke-band{justify-content:center;font-size:11px}#kim-portfolio .ke-band span:last-child{display:none}#kim-portfolio .ke-feature{grid-template-columns:1fr;gap:24px}#kim-portfolio .ke-feature-copy h2{font-size:40px}#kim-portfolio .ke-mainimage{min-height:230px}#kim-portfolio .ke-sectionline span:last-child{display:none}#kim-portfolio .ke-project-pair{grid-template-columns:1fr;gap:30px}#kim-portfolio .ke-offset{padding-top:0}#kim-portfolio .ke-tall{min-height:230px}#kim-portfolio .ke-about{grid-template-columns:1fr;gap:24px}#kim-portfolio .ke-portrait{min-height:240px;margin:10px}#kim-portfolio .ke-about h2{font-size:34px}#kim-portfolio .ke-skill-row{flex-direction:column;gap:5px}#kim-portfolio .ke-skill-row span:last-child{text-align:left}#kim-portfolio .ke-film{grid-template-columns:1fr 1fr}#kim-portfolio .ke-film .ke-image{min-height:130px;padding:20px 8px}#kim-portfolio .ke-film .ke-image:last-child{grid-column:1/-1;min-height:150px}#kim-portfolio .ke-film-caption,#kim-portfolio .ke-contact-bottom{flex-direction:column;gap:8px}#kim-portfolio .ke-contact h2{font-size:13cqw}}@container (width<=700px){#kim-portfolio .kp-stage{min-height:520px}#kim-portfolio .kp-left{background:var(--ke-paper);width:100%;max-width:100%;padding:12px 0;position:absolute;bottom:12px}#kim-portfolio .kp-left .ke-mono{font-size:12px}#kim-portfolio .kp-left p{margin:7px 0}#kim-portfolio .kp-portrait{width:240px;height:310px;bottom:135px}#kim-portfolio .kp-head{width:84px;height:110px;top:20px;left:78px}#kim-portfolio .kp-body{border-radius:90px 90px 0 0;width:238px;height:225px}#kim-portfolio .kp-photo-label{font-size:11px;bottom:70px}#kim-portfolio .kp-orbit{width:260px;height:260px;top:145px}#kim-portfolio .kp-object{border-radius:20px;gap:4px;width:80px;height:80px;font-size:11px;bottom:200px;right:0}#kim-portfolio .kp-object svg{width:22px;height:22px}#kim-portfolio .kp-sidenote{display:none}#kim-portfolio .kp-hero-footer{flex-wrap:wrap;align-items:flex-start}#kim-portfolio .kp-hero-footer a{order:3;width:100%}#kim-portfolio h1.kp-name{font-size:18cqw}#kim-portfolio .kp-name span{font-size:.83em}}@container (width<=400px){#kim-portfolio .kp-stage{min-height:510px}#kim-portfolio .kp-portrait{width:220px;bottom:140px}#kim-portfolio .kp-head{left:68px}#kim-portfolio .kp-body{width:218px}#kim-portfolio .kp-object{width:70px;height:80px;bottom:220px;right:-5px}#kim-portfolio .kp-orbit{width:230px;height:230px;top:145px}#kim-portfolio .kp-hero-footer .ke-mono{font-size:10px}}#kim-portfolio .ke-header{flex-wrap:wrap;gap:20px}#kim-portfolio nav{flex-wrap:wrap;gap:14px;font-size:12px}#kim-portfolio nav a{white-space:nowrap;align-items:center;min-height:44px;display:inline-flex}@container (width<=820px){#kim-portfolio nav{justify-content:flex-start;gap:4px 18px;width:100%;margin:0}}@container (width<=400px){#kim-portfolio nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;display:grid}#kim-portfolio nav a{border-bottom:1px solid var(--ke-line)}}#kim-portfolio .kim-hero-photo{object-fit:cover;object-position:52% 65%;width:100%;height:100%;display:block}#kim-portfolio .kp-portrait{border:1px solid var(--ke-line);border-radius:140px 140px 0 0}#kim-portfolio .kp-photo-label{background:var(--ke-paper);letter-spacing:.3px;padding:9px 6px;font-size:10px;bottom:0}#kim-portfolio .kim-about-photo{min-height:320px;padding:0;overflow:hidden}#kim-portfolio .kim-about-photo img{object-fit:cover;object-position:32% 76%;width:100%;height:340px;display:block}#kim-portfolio .kim-hire{max-width:185px;margin-top:12px;font-size:12px;display:block}#kim-portfolio .ke-contact-bottom{overflow-wrap:anywhere;flex-wrap:wrap}@container (width<=700px){#kim-portfolio .kp-stage{min-height:560px}#kim-portfolio .kp-portrait{bottom:180px}#kim-portfolio .kp-left{padding-bottom:12px;bottom:0}#kim-portfolio .kp-object{bottom:245px}#kim-portfolio .kim-about-photo img{height:300px}}#kim-portfolio .kp-portrait{background:var(--paper);border:0;border-radius:0}#kim-portfolio .kim-hero-photo{object-fit:cover;object-position:50% 36%}#kim-portfolio .kp-photo-label{display:none}#kim-portfolio .kim-about-photo{background:var(--paper);border:1px solid var(--ke-line)}#kim-portfolio .kim-about-photo img{object-fit:cover;object-position:50% 30%}#kim-portfolio .ke-contact .ke-sectionline{color:var(--muted)}#kim-portfolio .ke-contact-bottom{border-color:var(--line);color:var(--ink)}#kim-portfolio .ke-contact a:hover{color:var(--ink);text-decoration:underline}#kim-portfolio .ki-site{background:var(--paper);color:var(--ink);margin-top:16px;font:14px/1.5 Arial,sans-serif;container-type:inline-size}#kim-portfolio .ki-site *{box-sizing:border-box}#kim-portfolio .ki-site a{color:inherit;text-decoration:none}#kim-portfolio .ki-nav{border-bottom:1px solid var(--surface);align-items:center;gap:25px;padding:22px 5%;display:flex}#kim-portfolio .ki-logo{letter-spacing:-3px;font-size:38px}#kim-portfolio .ki-caption{color:var(--muted);font:11px/1.5 monospace}#kim-portfolio nav{gap:24px;margin-left:auto;font-size:12px;display:flex}#kim-portfolio .ki-stage{isolation:isolate;min-height:510px;position:relative;overflow:hidden}#kim-portfolio .ki-topline{color:var(--muted);justify-content:space-between;gap:15px;font:11px monospace;display:flex;position:absolute;top:25px;left:5%;right:5%}#kim-portfolio .ki-name{letter-spacing:-.07em;z-index:1;margin:0;font-size:15.5cqw;font-weight:500;line-height:.85;position:absolute;top:70px;left:5%;right:5%}#kim-portfolio .ki-name span{text-align:right;color:#0000;-webkit-text-stroke:1px var(--muted);margin-top:17px;font-size:.78em;display:block}#kim-portfolio .ki-portrait{z-index:2;transform-origin:50% 40%;width:284px;height:380px;margin-left:-142px;position:absolute;bottom:0;left:50%}#kim-portfolio .ki-portrait img{object-fit:cover;object-position:50% 35%;width:100%;height:100%;mask-image:linear-gradient(to bottom,var(--paper) 85%,transparent);display:block}#kim-portfolio .ki-description{z-index:3;max-width:220px;font:12px/1.6 monospace;position:absolute;bottom:40px;left:5%}#kim-portfolio .ki-description p{color:var(--muted);margin:20px 0;font:13px/1.6 Arial,sans-serif}#kim-portfolio .ki-description a{border-bottom:1px solid var(--muted);padding:8px 0;display:inline-block}#kim-portfolio .ki-side{color:var(--muted);font:11px monospace;position:absolute;bottom:38px;right:5%}#kim-portfolio .ki-bottom{border-top:1px solid var(--surface);color:var(--muted);justify-content:space-between;gap:20px;padding:20px 5%;font:11px monospace;display:flex}#kim-portfolio .ki-projects{border-top:1px solid var(--surface);padding:30px 5%}#kim-portfolio .ki-projects>span{color:var(--muted);font:11px monospace}#kim-portfolio .ki-projects>div{border-bottom:1px solid var(--surface);justify-content:space-between;padding:15px 0;font-size:22px;display:flex}#kim-portfolio .ki-projects>div span{color:var(--muted);font-size:18px}#kim-portfolio .ki-about{color:var(--muted);border-top:1px solid var(--surface);padding:20px 5%;font-size:12px}@container (width<=600px){#kim-portfolio .ki-nav{flex-wrap:wrap;gap:18px}#kim-portfolio nav{justify-content:space-between;width:100%;margin:0}#kim-portfolio .ki-stage{min-height:580px}#kim-portfolio .ki-name{font-size:17cqw;top:70px}#kim-portfolio .ki-topline span:last-child{display:none}#kim-portfolio .ki-topline{max-width:85%;font-size:10px}#kim-portfolio .ki-portrait{width:220px;height:300px;margin-left:-110px;bottom:158px}#kim-portfolio .ki-description{max-width:90%;font-size:11px;bottom:10px;left:5%}#kim-portfolio .ki-description p{margin:9px 0}#kim-portfolio .ki-side{display:none}#kim-portfolio .ki-bottom{flex-direction:column;gap:8px}#kim-portfolio .ki-projects>div{font-size:19px}}#kim-portfolio .kl-object{z-index:3;text-align:center;pointer-events:none;width:170px;height:190px;position:absolute;bottom:90px;right:4%}#kim-portfolio .kl-object canvas{width:100%;height:160px;display:block}#kim-portfolio .kl-object>span{letter-spacing:1.4px;color:var(--muted);font:10px monospace}#kim-portfolio .ki-description a{transition:transform .18s,border-color .18s}#kim-portfolio .ki-description a:hover{border-color:var(--ink);transform:translate(4px)}#kim-portfolio .ki-description a:after{content:"";background:var(--ink);width:0;height:1px;transition:width .22s;display:block}#kim-portfolio .ki-description a:hover:after{width:100%}#kim-portfolio .ki-portrait{background:0 0}#kim-portfolio .ki-portrait img{will-change:transform;background:0 0;transition:transform .18s ease-out}@container (width<=600px){#kim-portfolio .ki-portrait{width:240px;height:320px;margin-left:-120px}}@container (width<=600px){#kim-portfolio .kl-object{width:92px;height:105px;bottom:185px;right:2%}#kim-portfolio .kl-object canvas{height:85px}#kim-portfolio .kl-object>span{letter-spacing:0;font-size:9px}}@media (prefers-reduced-motion:reduce){#kim-portfolio .ki-portrait img,#kim-portfolio .ki-name,#kim-portfolio .ki-description a,#kim-portfolio .ki-description a:after{transition:none}}#kim-portfolio .ki-nav{flex-wrap:wrap;gap:16px 24px}#kim-portfolio .ki-nav nav{flex-wrap:wrap;justify-content:flex-start;gap:6px 24px;width:100%;margin:0}#kim-portfolio .ki-nav nav a{border-bottom:1px solid #0000;min-height:44px;font-size:12px}#kim-portfolio .ki-nav nav a:hover,#kim-portfolio .ki-nav nav a[aria-current=location]{border-bottom-color:var(--ink);color:var(--ink)}#kim-portfolio .ke-site section[id]{scroll-margin-top:18px}@container (width<=400px){#kim-portfolio .ki-nav nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;display:grid}}:root{color-scheme:dark;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0}button,input,summary,a{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--ink);outline-offset:5px}[hidden]{display:none!important}.sr-only{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.skip-link{z-index:100;background:var(--ink);color:var(--paper);padding:14px;position:absolute;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}#kim-portfolio{max-width:1440px;margin:auto}#kim-portfolio .ke-site{border:0;margin-top:0}#kim-portfolio .ki-site{margin-top:0}#kim-portfolio .ki-nav{padding-top:28px}#kim-portfolio .ki-nav nav{gap:6px 26px}#kim-portfolio .ki-stage{min-height:560px}#kim-portfolio .ki-portrait{width:330px;height:440px;margin-left:-165px}#kim-portfolio .ki-name{font-size:min(15.5cqw,210px)}#kim-portfolio .ki-name span{margin-top:22px}#kim-portfolio .ke-site .ki-description p{font-size:13px}#kim-portfolio .ki-replay{border:0;border-bottom:1px solid var(--line);color:var(--muted);background:0 0;min-height:44px;padding:8px 0;font:11px monospace}#kim-portfolio .ke-site section{position:relative}#kim-portfolio .project-grid{grid-template-columns:1.2fr 1fr;gap:48px;margin-top:32px;display:grid}#kim-portfolio .project-featured{grid-column:1/-1;grid-template-columns:1fr 1.6fr;align-items:center;gap:44px;display:grid}#kim-portfolio .project-featured .project-visual{grid-area:1/2}#kim-portfolio .project-featured .project-copy{grid-area:1/1}#kim-portfolio .project-placeholder{background:var(--surface);border:1px solid var(--line);flex-direction:column;justify-content:space-between;gap:30px;min-height:280px;padding:24px;display:flex}#kim-portfolio .project-featured .project-placeholder{min-height:340px}#kim-portfolio .project-wordmark{letter-spacing:-.06em;overflow-wrap:anywhere;font-size:clamp(24px,4cqw,52px)}#kim-portfolio .project-copy{padding-top:18px}#kim-portfolio .project-copy h3{margin:10px 0;font-size:28px}#kim-portfolio .project-featured h3{overflow-wrap:anywhere;font-size:clamp(30px,4cqw,52px);line-height:1.05}#kim-portfolio .project-copy p{max-width:470px}#kim-portfolio .project-offset{padding-top:72px}#kim-portfolio .project-visual img{object-fit:contain;background:var(--surface);width:100%;height:auto;display:block}#kim-portfolio .project-links{flex-wrap:wrap;gap:18px;margin-top:20px;font-size:13px;display:flex}#kim-portfolio .project-links a,#kim-portfolio .credential-link{border-bottom:1px solid var(--line);padding:10px 0;display:inline-block}#kim-portfolio .project-links:empty{display:none}#kim-portfolio .certificate-image{width:100%;height:auto;margin-top:20px}#kim-portfolio .ke-film img{width:100%;height:auto;display:block}#kim-portfolio .ke-contact{background:var(--paper);color:var(--ink)}#kim-portfolio footer{flex-wrap:wrap;align-items:center}.not-found{max-width:700px;margin:15vh auto;padding:32px}.not-found h1{letter-spacing:-.06em;font-size:clamp(40px,8vw,70px)}@container (width<=800px){#kim-portfolio .ki-description{max-width:170px}#kim-portfolio .ki-portrait{width:284px;height:380px;margin-left:-142px}#kim-portfolio .project-featured{gap:25px}}@container (width<=600px){#kim-portfolio .ki-stage{min-height:580px}#kim-portfolio .ki-portrait{width:240px;height:320px;margin-left:-120px;bottom:158px}#kim-portfolio .ki-name{font-size:17cqw}#kim-portfolio .ki-description{max-width:90%}#kim-portfolio .project-grid,#kim-portfolio .project-featured{display:block}#kim-portfolio .project{margin-bottom:34px}#kim-portfolio .project-offset{padding-top:0}#kim-portfolio .project-placeholder,#kim-portfolio .project-featured .project-placeholder{min-height:230px}#kim-portfolio .ki-topline,#kim-portfolio .kl-object>span{font-size:11px}#kim-portfolio .ki-nav nav{gap:0 16px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}#kim-portfolio .ki-nav{flex-wrap:nowrap;gap:24px;padding:14px 5%;position:relative}#kim-portfolio .ki-nav nav{flex-wrap:nowrap;gap:clamp(12px,1.6vw,24px);width:auto;margin-left:auto;display:flex}#kim-portfolio .ki-logo{flex-shrink:0;line-height:1}#kim-portfolio .nav-toggle{color:inherit;border:1px solid var(--line);background:0 0;min-height:44px;margin-left:auto;padding:10px 16px}#kim-portfolio .ki-stage{height:min(720px,62vw);min-height:650px}#kim-portfolio .ki-name{letter-spacing:-.075em;color:var(--ink);font-size:clamp(130px,16cqw,230px);line-height:.82;top:42px;left:5%;right:5%}#kim-portfolio .ki-name span{text-align:left;letter-spacing:-.065em;-webkit-text-stroke:1.5px var(--ink);margin-top:8px;font-size:.79em}#kim-portfolio .ki-portrait{pointer-events:none;width:45%;height:92%;margin-left:0;inset:0 3% auto auto}#kim-portfolio .ki-portrait img{object-fit:contain;object-position:center top;mask-image:linear-gradient(var(--paper) 86%,transparent)}#kim-portfolio .ki-description{max-width:48%;font:clamp(19px,2.1cqw,28px)/1.25 Arial,sans-serif;bottom:88px}#kim-portfolio .ke-site .ki-description p{margin:18px 0;font-size:14px;line-height:1.6}#kim-portfolio .hero-actions{flex-wrap:wrap;align-items:center;gap:24px;font:14px/1.5 Arial,sans-serif;display:flex}#kim-portfolio .ki-description a{min-height:44px;padding:12px 0}#kim-portfolio .ki-description .hero-primary{background:var(--ink);color:var(--paper);border:1px solid var(--ink);padding:13px 22px}#kim-portfolio .ki-description a:after{display:none}#kim-portfolio .hero-scroll{min-height:44px;color:var(--muted);align-items:center;font:12px/1.5 monospace;display:flex;position:absolute;bottom:20px;left:5%}#kim-portfolio .project,#kim-portfolio .project-visual{min-width:0}#kim-portfolio .screenshot-carousel{outline-offset:5px;min-width:0}#kim-portfolio .screenshot-stack{padding:12px 12px 0 0;position:relative}#kim-portfolio .screenshot-peek{border:1px solid var(--line);background:var(--surface);position:absolute;inset:0 0 14px 14px;overflow:hidden}#kim-portfolio .screenshot-peek img{object-fit:contain;opacity:.45;width:100%;height:100%}#kim-portfolio .screenshot-window{aspect-ratio:3/2;background:var(--surface);border:1px solid var(--line);touch-action:pan-y pinch-zoom;position:relative;overflow:hidden}#kim-portfolio .screenshot-slide{height:100%}#kim-portfolio .screenshot-open{background:var(--surface);cursor:zoom-in;border:0;width:100%;height:100%;padding:0;display:block}#kim-portfolio .screenshot-open:focus-visible{outline-offset:-5px}#kim-portfolio .screenshot-open img{object-fit:contain;width:100%;height:100%}#kim-portfolio .screenshot-placeholder{text-align:center;height:100%;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:20px;display:flex}#kim-portfolio .screenshot-placeholder>span:first-child{letter-spacing:-.04em;color:var(--ink);overflow-wrap:anywhere;font-size:clamp(20px,3cqw,38px)}#kim-portfolio .screenshot-placeholder small{text-transform:uppercase;font:11px/1.5 monospace}#kim-portfolio .screenshot-toolbar{align-items:center;gap:8px;min-height:74px;font:11px/1.5 monospace;display:flex}#kim-portfolio .screenshot-caption{flex:1;min-width:0}#kim-portfolio .screenshot-counter{white-space:nowrap}#kim-portfolio .screenshot-toolbar button,#kim-portfolio .screenshot-viewer button{border:1px solid var(--line);background:var(--surface);min-width:44px;min-height:44px;color:var(--ink);font:16px monospace}#kim-portfolio .screenshot-viewer{border:1px solid var(--line);background:var(--paper);width:min(1200px,94vw);max-width:94vw;height:90dvh;max-height:90dvh;color:var(--ink);padding:20px;position:fixed;inset:0}#kim-portfolio .screenshot-viewer[open]{flex-direction:column;gap:12px;display:flex}#kim-portfolio .screenshot-viewer::backdrop{background:#000000e0}#kim-portfolio .viewer-close{align-self:flex-end;padding:8px 16px}#kim-portfolio .viewer-image{flex:1;justify-content:center;align-items:center;min-height:0;display:flex}#kim-portfolio .viewer-image img{object-fit:contain;width:100%;height:100%;display:block}#kim-portfolio .viewer-toolbar{justify-content:center;align-items:center;gap:16px;font:12px/1.5 monospace;display:flex}#kim-portfolio .viewer-caption{text-align:center}@container (width<=1100px){#kim-portfolio .ki-nav{flex-wrap:wrap}#kim-portfolio .ki-nav nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;width:100%;margin:0;display:grid}#kim-portfolio .ki-nav nav a{border-bottom:1px solid var(--line)}#kim-portfolio .ki-stage{height:620px;min-height:620px}#kim-portfolio .ki-name{font-size:17cqw}#kim-portfolio .ki-portrait{width:49%;height:82%;right:1%}}@container (width<=700px){#kim-portfolio .ki-stage{flex-direction:column;height:auto;min-height:0;padding:34px 5% 18px;display:flex}#kim-portfolio .ki-name{z-index:3;pointer-events:none;font-size:21cqw;line-height:.85;position:relative;inset:auto}#kim-portfolio .ki-name span{margin-top:5px;font-size:.77em}#kim-portfolio .ki-portrait{z-index:2;align-self:flex-end;width:75%;height:75cqw;margin:-14cqw -3% 0 0;position:relative;inset:auto}#kim-portfolio .ki-description{width:100%;max-width:100%;margin-top:4px;font-size:23px;position:relative;inset:auto}#kim-portfolio .kl-object{width:64px;height:64px;inset:40cqw auto auto 5%}#kim-portfolio .kl-object canvas{height:64px}#kim-portfolio .hero-scroll{margin-top:24px;font-size:11px;position:relative;inset:auto}#kim-portfolio .hero-actions{gap:20px}#kim-portfolio .screenshot-toolbar{gap:5px;font-size:10px}}#kim-portfolio .project-carousel{outline-offset:6px;margin-top:28px}#kim-portfolio .project-selectors{flex-wrap:wrap;gap:8px 24px;margin-bottom:24px;display:flex}#kim-portfolio .project-selectors button{min-height:44px;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;padding:10px 0;font:13px/1.5 Arial,sans-serif}#kim-portfolio .project-selectors button[aria-pressed=true]{border-color:var(--ink);color:var(--ink)}#kim-portfolio .project-viewport{touch-action:pan-y pinch-zoom;overflow:hidden}#kim-portfolio .project-track{transform-origin:50%;grid-auto-columns:100%;grid-auto-flow:column;align-items:stretch;gap:24px;width:calc(100% - 48px);display:grid}#kim-portfolio .project-slide{background:var(--surface);border:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);align-items:center;gap:32px;min-width:0;padding:28px;display:grid}#kim-portfolio .project-slide[aria-hidden=true]{opacity:.45}#kim-portfolio .project-slide .project-copy{min-width:0;padding:0}#kim-portfolio .project-slide h3{overflow-wrap:anywhere;font-size:clamp(28px,3.4cqw,48px);line-height:1.08}#kim-portfolio .project-navigation{justify-content:space-between;align-items:center;gap:12px;margin-top:24px;display:flex}#kim-portfolio .project-navigation button{background:var(--ink);min-height:44px;color:var(--paper);border:1px solid var(--ink);padding:10px 18px;font:12px/1.5 Arial,sans-serif}#kim-portfolio .project-counter{white-space:nowrap;color:var(--muted);font:11px/1.5 monospace}#kim-portfolio .screenshot-gallery{min-width:0}#kim-portfolio .screenshot-thumbnails{gap:8px;display:flex}#kim-portfolio .screenshot-toolbar{flex-wrap:wrap;align-items:center;gap:12px;padding-top:12px}#kim-portfolio .screenshot-toolbar .screenshot-thumbnail{border:1px solid var(--line);background:var(--surface);width:72px;height:52px;color:var(--muted);padding:3px;font:10px/1.3 monospace}#kim-portfolio .screenshot-thumbnail[aria-pressed=true]{outline:2px solid var(--ink);outline-offset:2px}#kim-portfolio .screenshot-thumbnail img{object-fit:contain;width:100%;height:100%}#kim-portfolio .screenshot-thumbnail small{font-size:8px;display:block}#kim-portfolio .screenshot-caption{flex-basis:100%;min-height:18px}#kim-portfolio .viewer-toolbar button{padding:8px;font-size:12px}@container (width<=800px){#kim-portfolio .project-slide{grid-template-columns:1fr;align-content:start;gap:24px;padding:20px}#kim-portfolio .project-track{width:calc(100% - 32px)}#kim-portfolio .project-selectors{gap:8px 16px}#kim-portfolio .project-navigation{flex-wrap:wrap}#kim-portfolio .project-counter{text-align:center;flex-basis:100%;order:-1}#kim-portfolio .project-navigation button{padding:10px 12px}}#kim-portfolio .project-wrap-preview{background:var(--surface);border:1px solid var(--line);opacity:.45;flex-direction:column;justify-content:center;min-width:0;padding:28px;display:flex}#kim-portfolio .project-wrap-preview h3{overflow-wrap:anywhere;font-size:clamp(28px,3.4cqw,48px)}#kim-portfolio .photography-gallery{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:24px;margin:28px 0;display:grid}#kim-portfolio .photography-gallery figure{min-width:0;margin:0}#kim-portfolio .photo-open{cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;display:block}#kim-portfolio .photo-open img{object-fit:contain;width:100%;height:auto;display:block}#kim-portfolio .photography-gallery figcaption{color:var(--muted);margin-top:12px;font:12px/1.5 monospace}#kim-portfolio .photography-viewer .viewer-toolbar{flex-wrap:wrap}#kim-portfolio .photography-viewer .viewer-toolbar button{padding:8px 12px;font-size:12px}@container (width<=900px){#kim-portfolio .photography-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (width<=550px){#kim-portfolio .photography-gallery{grid-template-columns:1fr}#kim-portfolio .photography-viewer .viewer-caption{order:-1;width:100%}}:root{--paper:#f5f4ef;--surface:#e9e8e2;--ink:#19191b;--muted:#57575c;--line:#8b8b90;--header-height:73px;color-scheme:light;background:var(--paper);color:var(--ink)}:root[data-theme=dark]{--paper:#0b0b0d;--surface:#19191e;--ink:#eeeeec;--muted:#b8b8bd;--line:#606068;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme]){--paper:#0b0b0d;--surface:#19191e;--ink:#eeeeec;--muted:#b8b8bd;--line:#606068;color-scheme:dark}}#kim-portfolio{--ke-paper:var(--paper);--ke-ink:var(--ink);--ke-dim:var(--muted);--ke-line:var(--line);--ke-image:var(--surface);--ke-inverse:var(--ink);--ke-inverse-ink:var(--paper)}#kim-portfolio .ke-contact{--paper:#0b0b0d;--surface:#19191e;--ink:#eeeeec;--muted:#b8b8bd;--line:#606068;background:var(--paper);color:var(--ink)}#kim-portfolio .ke-contact p,#kim-portfolio .ke-contact-bottom{color:var(--muted)}#kim-portfolio .ki-nav{z-index:30;background:var(--paper);isolation:isolate;gap:18px;min-height:73px;padding:10px 4%;position:sticky;top:0}#kim-portfolio .ki-nav nav{order:1;gap:clamp(10px,1.2vw,18px)}#kim-portfolio .nav-preferences{order:2;align-items:center;gap:6px;margin-left:auto;display:flex}#kim-portfolio .nav-toggle{order:3;margin-left:0}#kim-portfolio .preference-toggle{width:44px;height:44px;color:var(--ink);border:1px solid var(--line);background:0 0;border-radius:50%;place-items:center;display:grid}.preference-toggle svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px;transition:transform .25s}.preference-toggle:active svg{transform:scale(.85)rotate(-12deg)}#theme-toggle .moon,[data-theme=dark] #theme-toggle circle,[data-theme=dark] #theme-toggle .sun-rays{display:none}[data-theme=dark] #theme-toggle .moon{display:block}#sound-toggle .sound-waves{opacity:0;transform-origin:50%;transition:opacity .18s,transform .18s;transform:scale(.8)}#sound-toggle[aria-pressed=true] .sound-waves{opacity:1;transform:scale(1)}#sound-toggle[aria-pressed=true] .sound-muted{display:none}#kim-portfolio .reading-progress{pointer-events:none;height:2px;position:absolute;bottom:-1px;left:0;right:0}.reading-progress span{background:var(--ink);transform-origin:0;width:100%;height:100%;display:block;transform:scaleX(0)}#kim-portfolio .ke-site section[id],#ke-top{scroll-margin-top:calc(var(--header-height) + 20px)}#kim-portfolio .ki-stage{height:650px;min-height:650px;overflow:visible}#kim-portfolio .ki-name{letter-spacing:-.065em;font-size:clamp(110px,14cqw,200px);line-height:.86;top:38px;left:5%;right:5%}#kim-portfolio .ki-name span{letter-spacing:.018em;font-kerning:none;-webkit-text-stroke:1px var(--ink);white-space:nowrap;font-size:.77em}#kim-portfolio .ki-portrait{width:44%;height:85%;top:12px;right:3%}#kim-portfolio .ki-description{max-width:46%;bottom:88px}#kim-portfolio .ki-description .hero-primary,#kim-portfolio .project-navigation button,#kim-portfolio .kg-controls button:first-child{background:var(--ink);color:var(--paper)}#kim-portfolio .kim-about-photo{background:0 0}::view-transition-old(root),::view-transition-new(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){z-index:1}@container (width<=1340px){#kim-portfolio .ki-nav{flex-wrap:wrap}#kim-portfolio .ki-nav nav{order:4;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;width:100%;max-height:65dvh;margin:0;display:grid;overflow-y:auto}#kim-portfolio .ki-nav nav a{border-bottom:1px solid var(--line)}}@container (width<=800px){#kim-portfolio .ki-stage{flex-direction:column;height:auto;min-height:0;padding:32px 5% 18px;display:flex}#kim-portfolio .ki-name{z-index:3;font-size:19cqw;line-height:.88;position:relative;inset:auto}#kim-portfolio .ki-name span{margin-top:5px;font-size:.77em}#kim-portfolio .ki-portrait{z-index:2;align-self:flex-end;width:72%;height:72cqw;margin:-10cqw 0 0;position:relative;inset:auto}#kim-portfolio .ki-description{width:100%;max-width:100%;margin-top:12px;font-size:23px;position:relative;inset:auto}#kim-portfolio .kl-object{width:64px;height:64px;inset:40cqw auto auto 5%}#kim-portfolio .kl-object canvas{height:64px}#kim-portfolio .hero-scroll{margin-top:24px;font-size:11px;position:relative;inset:auto}}@media (prefers-reduced-motion:reduce){::view-transition-group(root){animation:none!important}.preference-toggle svg{transition:none}}@container (width<=1340px){#kim-portfolio .ki-nav nav{background:var(--paper);border-bottom:1px solid var(--line);padding:12px 4% 20px;position:absolute;top:100%;left:0;right:0}}#kim-portfolio .ki-logo{letter-spacing:-.03em}#kim-portfolio .ki-name{will-change:auto;transition:none}#kim-portfolio .ki-portrait img{will-change:auto;transition:none;transform:none}#kim-portfolio .kl-object{width:80px;height:80px;bottom:32px;right:5%}#kim-portfolio .kl-object canvas{height:80px}#kim-portfolio .ke-about{gap:clamp(28px,5cqw,72px);padding-block:64px}#kim-portfolio .project-track{grid-template-columns:100%;grid-auto-columns:auto;grid-auto-flow:row;gap:0;width:calc(100% - 42px);display:grid;transform:none}#kim-portfolio .project-slide{visibility:hidden;pointer-events:none;opacity:1;background:var(--paper);border-color:var(--line);grid-area:1/1;grid-template-columns:minmax(0,.85fr) minmax(0,1.65fr);gap:clamp(24px,4cqw,56px);padding:clamp(20px,3cqw,42px)}#kim-portfolio .project-slide[aria-hidden=false],#kim-portfolio .project-slide:not([aria-hidden]){visibility:visible;pointer-events:auto;z-index:2}#kim-portfolio .project-slide[data-peek=true]{visibility:visible;opacity:.4;z-index:0;transform:translate(calc(100% + 24px))scale(.98)}#kim-portfolio .project-slide[data-departing=true]{visibility:visible;z-index:1;transform:none}#kim-portfolio .project-carousel[data-moving=true] .project-slide[data-peek=true]:not([data-departing]){visibility:hidden}#kim-portfolio .project-copy .ke-number{letter-spacing:.1em;margin-bottom:26px;display:block}#kim-portfolio .project-slide h3{margin:0 0 18px;font-size:clamp(28px,3.4cqw,48px)}#kim-portfolio .project-copy p{line-height:1.75}#kim-portfolio .screenshot-composition{isolation:isolate;padding:18px 16px 0 0;position:relative}#kim-portfolio .screenshot-rear{background:var(--surface);border:1px solid var(--line);pointer-events:none;opacity:.7;z-index:-1;position:absolute;inset:0 0 18px 16px;transform:rotate(1.5deg)}#kim-portfolio .screenshot-rear img{object-fit:contain;width:100%;height:100%}#kim-portfolio .screenshot-window{aspect-ratio:16/10;box-shadow:0 12px 25px #00000012}#kim-portfolio .screenshot-toolbar{min-height:112px;padding:18px 4px 0}#kim-portfolio .screenshot-thumbnail{transition:opacity .18s,outline-color .18s}#kim-portfolio .photography-gallery{grid-template-columns:1.15fr .72fr 1fr;align-items:start;gap:clamp(24px,4cqw,60px);margin:44px 0 48px}#kim-portfolio .photography-gallery figure:nth-child(2){margin-top:90px}#kim-portfolio .photography-gallery figure:nth-child(3){margin-top:38px}#kim-portfolio .photography-gallery figcaption{align-items:center;gap:16px;padding-top:8px;line-height:1.6;display:flex}#kim-portfolio .photo-number{letter-spacing:.08em;color:var(--muted);font-size:10px}#kim-portfolio .photo-title{color:var(--ink);transition:translate .2s}#kim-portfolio .photo-hint{margin-left:auto;transition:translate .2s}#kim-portfolio .photography-gallery figure:focus-within .photo-title{translate:3px}#kim-portfolio .photography-gallery figure:focus-within .photo-hint{translate:2px -2px}#kim-portfolio .action-arrow{transition:translate .18s;display:inline-block}#kim-portfolio .action-inner{transition:translate .18s,scale .1s;display:inline-block}#kim-portfolio .ki-description a:hover{transform:none}#kim-portfolio :is(a,button,summary):focus-visible .action-arrow{translate:2px -2px}#kim-portfolio :is(a,button):active .action-inner{translate:0;scale:.98}#kim-portfolio :is(.project-links a,.credential-link,.ke-resume[href],.ke-film-caption a,.ke-contact a,.hero-actions a:not(.hero-primary)){background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0 1px;transition:background-size .2s}#kim-portfolio :is(.project-links a,.credential-link,.ke-resume[href],.ke-film-caption a,.ke-contact a,.hero-actions a:not(.hero-primary)):is(:hover,:focus-visible){background-size:100% 1px;text-decoration:none}#kim-portfolio :is(a,button,summary):focus-visible{outline:2px solid var(--ink);outline-offset:5px}@media (hover:hover) and (pointer:fine){#kim-portfolio :is(a,button,summary):hover .action-arrow{translate:2px -2px}#kim-portfolio :is(.hero-primary,.project-navigation button):hover .action-inner{translate:0 -2px}#kim-portfolio .photography-gallery figure:hover .photo-title{translate:3px}#kim-portfolio .photography-gallery figure:hover .photo-hint{translate:2px -2px}}@container (width<=900px){#kim-portfolio .photography-gallery{grid-template-columns:1.1fr .9fr;gap:32px}#kim-portfolio .photography-gallery figure:nth-child(2){margin-top:54px}#kim-portfolio .photography-gallery figure:nth-child(3){grid-column:1/-1;justify-self:end;width:68%;margin-top:0}}@container (width<=800px){#kim-portfolio .project-slide{grid-template-columns:1fr;align-content:start;gap:26px}#kim-portfolio .project-track{width:100%}#kim-portfolio .project-slide[data-peek=true]{visibility:hidden}#kim-portfolio .project-copy .ke-number{margin-bottom:14px}#kim-portfolio .screenshot-composition{padding:0}#kim-portfolio .screenshot-rear{display:none}#kim-portfolio .kl-object{width:64px;height:64px;inset:40cqw auto auto 5%}#kim-portfolio .kl-object canvas{height:64px}}@container (width<=650px){#kim-portfolio .photography-gallery{grid-template-columns:1fr;gap:38px;margin-block:28px}#kim-portfolio .photography-gallery figure:nth-child(n){grid-column:auto;width:100%;margin-top:0}}@media (prefers-reduced-motion:reduce){#kim-portfolio .ki-name,#kim-portfolio .kl-object{translate:none!important}#kim-portfolio .action-inner,#kim-portfolio .action-arrow,#kim-portfolio .photo-title,#kim-portfolio .photo-hint{transition:none;translate:none!important;scale:none!important}}#kim-portfolio .ki-nav nav a{align-items:center;min-height:44px;padding-block:10px;font-size:13px;display:inline-flex}#kim-portfolio .screenshot-caption{color:var(--ink);font-size:12px;line-height:1.5}#kim-portfolio .screenshot-thumbnail{min-width:76px;min-height:56px}#kim-portfolio .screenshot-thumbnail span{font-size:11px}#kim-portfolio .viewer-close,#kim-portfolio .viewer-toolbar button{min-width:44px;min-height:44px;padding:10px 14px;font-size:13px}#kim-portfolio .project-navigation button{min-height:44px;padding:10px 14px;font-size:13px}#kim-portfolio .viewer-caption{font-size:13px;line-height:1.5}html[data-intro]{scrollbar-gutter:stable;background:#0b0b0d;overflow:hidden}html[data-intro] body{background:#0b0b0d}html[data-intro] #kim-portfolio,html[data-intro] #kim-portfolio *,html[data-intro] .skip-link{visibility:hidden!important}.intro-overlay{display:none}html[data-intro] .intro-overlay{z-index:2147483000;isolation:isolate;color:#fff;visibility:visible;background:#0b0b0d;font-family:Arial,sans-serif;display:block;position:fixed;inset:0;overflow:hidden}.intro-overlay *{box-sizing:border-box}.intro-overlay .intro-center{pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.intro-overlay .ki-intro-mark{text-align:center;color:#fff;opacity:1;visibility:visible}.intro-overlay .ki-intro-mark>span{letter-spacing:-4px;font-size:clamp(80px,10vw,112px);font-weight:500;line-height:1.1;display:block}html[data-intro] .intro-overlay .ki-skip{all:unset;box-sizing:border-box;z-index:2;color:#fff;white-space:nowrap;cursor:pointer;background:#0b0b0d;border:1px solid #8b8b90;border-radius:0;justify-content:center;align-items:center;gap:6px;width:max-content;max-width:calc(100% - 48px);height:44px;min-height:44px;max-height:44px;padding:0 14px;font:12px/1.5 monospace;transition:none;animation:none;position:absolute;inset:24px 24px auto auto;transform:translate(0,0)scale(1);display:inline-flex!important}.intro-overlay .ki-skip:focus-visible{outline-offset:4px;outline:2px solid #fff}.intro-overlay .ki-skip:hover{border-color:#fff}html[data-intro=running] .intro-overlay{pointer-events:none;background:0 0}html[data-intro] .intro-overlay .ki-skip{pointer-events:auto}html[data-intro=running] #kim-portfolio,html[data-intro=running] #kim-portfolio .ke-site,html[data-intro=running] #kim-portfolio main,html[data-intro=running] #kim-portfolio .ki-stage,html[data-intro=running] #kim-portfolio .ki-stage *,html[data-intro=running] #kim-portfolio .ki-nav,html[data-intro=running] #kim-portfolio .ki-nav *{visibility:visible!important}html[data-intro] #kim-portfolio .ke-site{border-color:#0000}html[data-intro] #kim-portfolio .ki-stage{overflow:visible}
