:root{--paper:#f7f6f2;--surface:#fff;--ink:#191919;--muted:#676763;--line:#d6d4ce;--accent:#2457d6;--header-height:68px;--gutter:clamp(1.1rem, 3vw, 2.5rem);--content:1120px;--reading:680px;--section-space:clamp(4.5rem, 8vw, 7rem);--sans:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*,:before,:after{box-sizing:border-box}html{background:var(--paper);color:var(--ink);scroll-behavior:smooth;text-size-adjust:100%}body{background:var(--paper);min-width:320px;color:var(--ink);font-family:var(--sans);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;font-weight:400;line-height:1.62;overflow-x:hidden}:lang(ko){word-break:keep-all}main{display:block}h1,h2,h3,h4,p,dl,dd,figure,ol,ul{margin:0}h1,h2,h3,h4{font-family:var(--sans);letter-spacing:-.035em;font-weight:650;line-height:1.15}img,svg{max-width:100%;display:block}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}a:hover{color:var(--accent)}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}::selection{color:var(--ink);background:#dce6ff}[hidden]{display:none!important}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:1000;background:var(--ink);color:#fff;padding:.7rem .9rem;font-size:.875rem;font-weight:600;position:fixed;top:.75rem;left:.75rem;transform:translateY(-150%)}.skip-link:focus{color:#fff;transform:translateY(0)}.site-header{z-index:100;min-height:var(--header-height);padding:0 max(var(--gutter), calc((100vw - var(--content)) / 2));border-bottom:1px solid var(--line);background:#f7f6f2fa;grid-template-columns:1fr auto auto;align-items:center;display:grid;position:sticky;top:0}.wordmark,.header-nav a,.language-link{align-items:center;min-height:44px;font-size:.875rem;line-height:1;text-decoration:none;display:inline-flex}.wordmark{letter-spacing:-.02em;justify-self:start;font-weight:700}.header-nav{align-items:center;gap:1.55rem;display:flex}.header-nav a,.language-link{min-width:44px;color:var(--muted);justify-content:center}.header-nav .header-linkedin-link{color:var(--accent);font-weight:650;text-decoration:underline #2457d66b}.language-link{margin-left:1.75rem;font-weight:600}.header-nav a:hover,.language-link:hover{color:var(--ink)}.locale-prompt{z-index:300;padding:.85rem max(var(--gutter), calc((100vw - var(--content)) / 2));border-top:1px solid var(--ink);background:var(--paper);position:fixed;bottom:0;left:0;right:0}.locale-prompt>div{max-width:var(--content);justify-content:space-between;align-items:center;gap:2rem;margin:0 auto;display:flex}.locale-prompt p{font-weight:620}.locale-prompt nav{align-items:center;gap:1.5rem;display:flex}.locale-prompt a,.locale-prompt button{min-height:44px;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;font-size:.9rem;display:inline-flex}.locale-prompt a{color:var(--accent);font-weight:650}.locale-prompt button{color:var(--muted);text-underline-offset:.22em;padding:0;text-decoration:underline 1px}.site-footer{padding:clamp(3.5rem, 7vw, 5.5rem) max(var(--gutter), calc((100vw - var(--content)) / 2)) 2rem;border-top:1px solid var(--line)}.footer-contact{grid-template-columns:minmax(0,1.35fr) minmax(12rem,.65fr);gap:clamp(2rem,8vw,7rem);padding-bottom:3.5rem;display:grid}.footer-contact>div{gap:.45rem;display:grid}.footer-contact p{color:var(--muted);font-size:.9rem}.footer-contact a{letter-spacing:-.035em;align-items:center;width:fit-content;min-height:44px;font-size:clamp(1.35rem,2.8vw,2.2rem);font-weight:600;display:inline-flex}.footer-contact .footer-linkedin{color:var(--accent)}.footer-meta{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:2rem;padding-top:1rem;font-size:.84rem;display:flex}.footer-meta nav{gap:1.25rem;display:flex}.footer-meta a{justify-content:center;align-items:center;min-width:44px;min-height:44px;text-decoration:none;display:inline-flex}.footer-privacy{max-width:40rem;color:var(--muted);margin-top:1rem;font-size:.84rem}.not-found{text-align:center;place-content:center;gap:1.25rem;min-height:100svh;padding:2rem;display:grid}.not-found>p:first-child{color:var(--muted)}.not-found h1{font-size:clamp(2.5rem,8vw,5rem)}.not-found nav{justify-content:center;gap:1.5rem;display:flex}.not-found nav a{justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}@media (width<=720px){:root{--header-height:103px;--section-space:4.5rem}body{font-size:1rem}.site-header{min-height:var(--header-height);grid-template-columns:1fr auto;grid-template-areas:"wordmark language""navigation navigation";padding-top:.15rem;padding-bottom:.15rem}.wordmark,.header-nav a,.language-link{font-size:.75rem}.wordmark{grid-area:wordmark}.header-nav{border-top:1px solid var(--line);grid-area:navigation;justify-content:space-between;width:100%}.language-link{grid-area:language;margin-left:.85rem}.locale-prompt>div{flex-direction:column;align-items:flex-start;gap:.25rem}.locale-prompt nav{justify-content:space-between;width:100%}.footer-contact{grid-template-columns:1fr;gap:2rem;padding-bottom:2.5rem}.footer-contact a{overflow-wrap:anywhere}}@media (width<=390px){.footer-meta{flex-direction:column;align-items:flex-start;gap:.75rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.hero{min-height:min(800px, calc(100svh - var(--header-height)));border-bottom:1px solid var(--ink);background:var(--paper);grid-template:"heading portrait"1fr"details portrait"/minmax(0,1.38fr) minmax(380px,.92fr);display:grid;position:relative;overflow:hidden}.hero-heading{margin-right:clamp(3rem,6vw,6rem);margin-left:max(var(--gutter), calc((100vw - var(--content)) / 2));grid-area:heading;align-self:end;padding:clamp(4rem,8vh,6rem) 0 2.5rem}.hero h1{letter-spacing:-.075em;text-transform:uppercase;max-width:8ch;font-size:clamp(5.3rem,9vw,9rem);font-weight:720;line-height:.8}.hero h1 span{display:block}.hero h1 span:last-child{color:var(--accent);margin-top:.08em;margin-left:.3em;font-weight:520}.hero-ko h1{text-transform:none;max-width:10ch}.hero-ko h1 span:last-child{margin-top:.2em;margin-left:.05em;font-size:.7em}.hero-thesis{letter-spacing:-.045em;max-width:24ch;margin-top:2.25rem;font-size:clamp(1.65rem,2.6vw,2.5rem);font-weight:520;line-height:1.18}.hero-details{max-width:42rem;margin-right:clamp(3rem,6vw,6rem);margin-left:max(var(--gutter), calc((100vw - var(--content)) / 2));border-top:1px solid var(--ink);grid-area:details;align-self:start;padding:1.7rem 0 clamp(3.5rem,7vh,5.5rem)}.hero-role{max-width:38rem;font-size:1rem;font-weight:620;line-height:1.55}.hero-intro{max-width:36rem;color:var(--muted);margin-top:.8rem}.hero-work-link{min-height:44px;color:var(--ink);align-items:center;margin-top:1.25rem;font-size:.95rem;font-weight:650;display:inline-flex}.hero-portrait{isolation:isolate;border-left:1px solid var(--ink);background:#d7d7d7;grid-area:portrait;align-self:stretch;min-height:660px;position:relative;overflow:hidden}.hero-portrait picture,.hero-portrait img{width:100%;height:100%}.hero-portrait img{object-fit:cover;object-position:50% 22%}.portrait-geometry{z-index:2;aspect-ratio:4/5;pointer-events:none;width:100%;height:auto;position:absolute;top:52%;left:0;right:0;transform:translateY(-50%)}.portrait-orbit,.portrait-line{fill:none;stroke:#f7f6f2d1;stroke-width:1.6px;vector-effect:non-scaling-stroke}.portrait-orbit{opacity:.72}.portrait-node{fill:var(--paper);stroke:var(--ink);stroke-width:1.5px;vector-effect:non-scaling-stroke}.portrait-node-main{fill:var(--accent);stroke:var(--paper);stroke-width:2.5px}.portrait-projects{z-index:3;aspect-ratio:4/5;pointer-events:none;width:100%;height:auto;position:absolute;top:52%;left:0;right:0;transform:translateY(-50%)}.portrait-project-link{min-width:44px;min-height:38px;color:var(--paper);letter-spacing:.045em;pointer-events:auto;background:#191919f0;border:1px solid #f7f6f2f0;align-items:center;padding:.5rem .68rem;font-size:.72rem;font-weight:650;line-height:1;text-decoration:none;display:inline-flex;position:absolute}.portrait-project-link:hover{background:var(--paper);color:var(--ink)}.portrait-link-innos{top:41.5%;left:4.5%}.portrait-link-commit{top:57.8%;left:4.5%}.portrait-link-linkedin{background:var(--accent);color:#fff;border-color:#fff;flex-direction:column;align-items:flex-start;gap:.24rem;min-width:9.5rem;padding:.65rem .75rem;top:72.5%;right:3%}.portrait-link-linkedin small{letter-spacing:0;text-transform:none;font-size:.62rem;font-weight:500}.portrait-link-linkedin:hover{color:var(--accent);background:#fff}.education-section,.work-section{width:min(calc(100% - (2 * var(--gutter))), var(--content));padding:var(--section-space) 0;grid-template-columns:minmax(11rem,.62fr) minmax(0,2fr);gap:clamp(2rem,7vw,6rem);margin:0 auto;display:grid}.education-section{border-bottom:1px solid var(--line)}.editorial-section-title h2{letter-spacing:-.055em;font-size:clamp(2.15rem,4vw,3.2rem)}.education-list,.experience-list{border-top:1px solid var(--ink)}.education-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(12rem,.9fr) minmax(0,1.1fr);gap:clamp(1.5rem,4vw,3.5rem);padding:1.55rem 0;display:grid}.education-row h3{font-size:1.15rem}.education-row-primary h3{font-size:clamp(1.35rem,2vw,1.65rem)}.education-row div p{color:var(--muted);margin-top:.35rem;font-size:.9rem}.education-row>p{max-width:32rem}.experience-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(12rem,.9fr) minmax(0,1.25fr) minmax(8rem,.55fr);grid-template-areas:"name summary period""name summary open";gap:.4rem clamp(1.5rem,4vw,3.5rem);padding:1.8rem 0;display:grid}.experience-name{grid-area:name}.experience-name h3{font-size:clamp(1.2rem,2vw,1.55rem)}.experience-name h3 a{align-items:center;min-height:44px;display:inline-flex}.experience-name p,.experience-period{color:var(--muted);font-size:.88rem}.experience-name p{margin-top:.15rem}.experience-period{text-align:right;grid-area:period}.experience-summary{grid-area:summary;max-width:34rem}.experience-open{grid-area:open;place-self:end;align-items:center;min-height:44px;font-size:.88rem;font-weight:620;display:inline-flex}.experience-row-earlier{border-top:1px solid var(--ink);margin-top:1.25rem}@media (width<=900px){.hero{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);min-height:700px}.hero-heading,.hero-details{margin-right:2.5rem}.hero h1{font-size:clamp(4.5rem,9vw,6.5rem)}.portrait-project-link{min-height:44px}.education-section,.work-section{grid-template-columns:minmax(9rem,.48fr) minmax(0,2fr);gap:2.5rem}.experience-row{grid-template-columns:minmax(10rem,.8fr) minmax(0,1.2fr);grid-template-areas:"name period""summary summary""open open";gap:.8rem 1.5rem}.experience-period{text-align:right}.experience-open{justify-self:start}}@media (width<=720px){.hero{grid-template:"heading""portrait""details"/1fr;min-height:auto;overflow:visible}.hero-heading,.hero-details{margin-right:var(--gutter);margin-left:var(--gutter)}.hero-heading{padding:3.3rem 0 2rem}.hero h1{max-width:none;font-size:clamp(4.35rem,20vw,5.2rem)}.hero-ko h1{font-size:clamp(3.25rem,15vw,4rem)}.hero-thesis{max-width:20ch;margin-top:1.8rem;font-size:clamp(1.55rem,7vw,2rem)}.hero-portrait{min-height:0;margin:0 var(--gutter);aspect-ratio:4/5;border:1px solid var(--ink);overflow:hidden}.portrait-project-link{min-height:44px;padding:.48rem .56rem;font-size:.62rem}.portrait-link-linkedin{min-width:7.8rem;padding:.58rem .62rem}.portrait-link-linkedin small{font-size:.55rem}.portrait-project-link:focus-visible{outline-offset:-3px}.hero-details{padding:1.5rem 0 3.75rem}.education-section,.work-section{grid-template-columns:1fr;gap:2rem;padding-top:4rem;padding-bottom:4.5rem}.education-row{grid-template-columns:1fr;gap:.75rem}.experience-row{grid-template-columns:1fr;grid-template-areas:"name""period""summary""open";gap:.75rem;padding:1.6rem 0}.experience-period{text-align:left}}@media (width<=430px){.hero h1{font-size:clamp(4rem,19vw,4.75rem)}.hero-ko h1{font-size:clamp(3rem,14vw,3.6rem)}.portrait-link-linkedin{min-width:7.2rem;right:2%}}.inner-page,.project-page{background:var(--paper)}.profile-intro{width:min(calc(100% - (2 * var(--gutter))), var(--content));padding:var(--section-space) 0;border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);align-items:center;gap:clamp(3rem,8vw,7rem);margin:0 auto;display:grid}.profile-copy{max-width:var(--reading)}.profile-copy h1{letter-spacing:-.06em;font-size:clamp(3.6rem,6vw,5.4rem)}.profile-lead{letter-spacing:-.025em;margin-top:2rem;font-size:clamp(1.25rem,2.3vw,1.75rem);font-weight:500;line-height:1.45}.profile-copy>p:not(.profile-lead){max-width:38rem;color:var(--muted);margin-top:1.25rem}.profile-linkedin{min-height:44px;color:var(--accent);align-items:center;margin-top:1.5rem;font-weight:650;display:inline-flex}.profile-portrait{aspect-ratio:4/5;border:1px solid var(--line);background:#dedede;overflow:hidden}.profile-portrait picture,.profile-portrait img{width:100%;height:100%}.profile-portrait img{object-fit:cover;object-position:50% 24%}.profile-section{width:min(calc(100% - (2 * var(--gutter))), var(--content));border-bottom:1px solid var(--line);grid-template-columns:minmax(11rem,.62fr) minmax(0,2fr);gap:clamp(2rem,7vw,6rem);margin:0 auto;padding:3.75rem 0;display:grid}.profile-section>h2{letter-spacing:-.055em;font-size:clamp(2.15rem,4vw,3.2rem)}.profile-facts,.profile-roles{border-top:1px solid var(--ink)}.profile-facts>div,.profile-roles article{border-bottom:1px solid var(--line);grid-template-columns:minmax(10rem,1fr) minmax(0,1fr);gap:1.5rem;padding:1.25rem 0;display:grid}.profile-facts dt,.profile-roles article>p{color:var(--muted);font-size:.88rem}.profile-facts dd{line-height:1.5}.profile-roles h3{font-size:1.08rem}.profile-roles h3 a{align-items:center;min-height:44px;display:inline-flex}.profile-roles div p{color:var(--muted);margin-top:.2rem;font-size:.92rem}.simple-page{width:min(calc(100% - (2 * var(--gutter))), var(--content));padding:var(--section-space) 0;margin:0 auto}.page-heading{max-width:var(--reading);padding-bottom:3.5rem}.page-heading h1{letter-spacing:-.06em;font-size:clamp(3.6rem,6vw,5.4rem)}.page-heading p{margin-top:1.5rem;font-size:1.25rem}.page-heading time{color:var(--muted);margin-top:.75rem;font-size:.88rem;display:block}.now-list{border-top:1px solid var(--ink)}.now-list article{border-bottom:1px solid var(--line);grid-template-columns:minmax(10rem,.7fr) minmax(0,1.8fr);gap:clamp(2rem,6vw,5rem);padding:1.7rem 0;display:grid}.now-list h2{font-size:1.15rem}.now-list h2 a{align-items:center;min-height:44px;display:inline-flex}.now-list p{max-width:42rem;color:var(--muted)}.project-page{width:min(calc(100% - (2 * var(--gutter))), 920px);padding:clamp(3.5rem, 7vw, 6rem) 0 var(--section-space);margin:0 auto}.project-back{min-height:44px;color:var(--muted);align-items:center;margin-bottom:clamp(3rem,7vw,5rem);font-size:.92rem;display:inline-flex}.project-document{max-width:760px}.project-document-heading h1{letter-spacing:-.068em;font-size:clamp(3.6rem,8vw,5.7rem)}.project-document-heading p{max-width:40rem;margin-top:1.6rem;font-size:clamp(1.25rem,2.5vw,1.65rem);line-height:1.5}.project-properties{border-top:1px solid var(--ink);margin-top:clamp(3rem,7vw,5rem)}.project-properties>div{border-bottom:1px solid var(--line);grid-template-columns:9rem minmax(0,1fr);gap:1.5rem;padding:.85rem 0;display:grid}.project-properties dt{color:var(--muted);font-size:.88rem}.project-properties dd{line-height:1.5}.project-prose{max-width:66ch;padding:clamp(3.5rem,7vw,5rem) 0;font-size:1.08rem;line-height:1.78}.project-prose p+p{margin-top:1.35rem}.project-links{border-top:1px solid var(--ink);padding-top:2.25rem}.project-links h2{margin-bottom:1.25rem;font-size:1.2rem}.project-links ul{border-top:1px solid var(--line);padding:0;list-style:none}.project-links li{border-bottom:1px solid var(--line)}.project-links a{grid-template-columns:minmax(10rem,.7fr) minmax(0,1.3fr);align-items:center;gap:1.5rem;min-height:54px;padding:.65rem 0;display:grid}.project-links a>span:first-child{font-weight:620}.project-links small{color:var(--muted);font-size:.88rem;line-height:1.45}@media (width<=720px){.profile-intro{grid-template-columns:1fr;gap:2.5rem;padding:3.5rem 0 4.5rem}.profile-copy h1,.page-heading h1{font-size:clamp(3.2rem,15vw,4.7rem)}.profile-portrait{max-height:540px}.profile-section{grid-template-columns:1fr;gap:1.5rem;padding:3.25rem 0}.now-list article{grid-template-columns:1fr;gap:.65rem}.project-document-heading h1{font-size:clamp(3.25rem,16vw,4.8rem)}}@media (width<=440px){.profile-facts>div,.profile-roles article,.project-properties>div,.project-links a{grid-template-columns:1fr;gap:.35rem}.profile-facts dt{font-weight:600}.project-properties>div{padding:.95rem 0}.project-links a{gap:.15rem;padding:.85rem 0}}
