@charset "UTF-8";
:root{--paper:#f5f4ef;--ink:#232820;--muted:#71776c;--line:#d5d8ce;--accent:#cc4b30;--white:#fff;--serif:Georgia,"Times New Roman",serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,"Apple SD Gothic Neo","Noto Sans KR","Malgun Gothic",sans-serif;-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.65}body.dialog-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,[contenteditable]{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:wait;opacity:.55}a,button{touch-action:manipulation}button{border:0;background:none}img{max-width:100%;height:auto;display:block}[hidden]{display:none!important}::selection{background:#edcfbc}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,[contenteditable]:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.section-shell{max-width:1440px;margin-inline:auto;padding-inline:clamp(24px,6vw,88px)}.eyebrow,.section-number,.hero-index,.hero-bottom,.header-pdf,.period,.work-meta,.site-footer,.portrait figcaption{font-family:Arial,sans-serif;font-size:11px;letter-spacing:.1em;font-weight:500}.skip-link{position:fixed;top:8px;left:8px;padding:12px 20px;background:var(--ink);color:white;z-index:100;transform:translateY(-180%)}.skip-link:focus{transform:none}.site-header{height:88px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,6vw,88px);position:sticky;top:0;z-index:10;background:rgba(245,244,239,.96);backdrop-filter:blur(14px)}.wordmark{font-size:32px;font-weight:800;letter-spacing:-2px;line-height:1}.brand-dot{font-size:12px;color:var(--accent);vertical-align:top;display:inline-block;margin:3px 0 0 6px}.site-header nav{display:flex;gap:38px;font-size:13px}.site-header nav a{padding:10px 0;position:relative}.site-header nav a:hover:after{content:"";position:absolute;bottom:3px;left:0;width:100%;height:2px;background:var(--accent)}.header-pdf{display:flex;gap:24px;align-items:center}.header-pdf span{font-size:22px}.hero{padding-top:40px}.hero-top{display:flex;justify-content:space-between;align-items:center}.hero-index{color:var(--muted)}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 30%;gap:7%;align-items:center;padding-block:60px 54px}.hero-name{font-size:20px;margin:0 0 27px;font-weight:600}.hero-name span{font:10px Arial,sans-serif;letter-spacing:.1em;display:inline-block;margin-left:18px;color:var(--muted)}h1,h2,h3,p,figure{margin-top:0}.hero h1{font-size:clamp(40px,5.8vw,82px);line-height:1.18;letter-spacing:-.073em;margin:0 0 28px;font-weight:600;white-space:nowrap}.hero h1 span{color:#72786d}.hero-description{color:var(--muted);font-size:14px;margin-bottom:36px}.round-link{display:inline-flex;align-items:center;gap:35px;font-size:14px;font-weight:600}.arrow-circle{display:grid;place-items:center;width:48px;height:48px;border:1px solid #8c9485;border-radius:50%;font-size:24px;transition:background .2s,color .2s}.round-link:hover .arrow-circle{background:var(--ink);color:var(--paper)}.portrait{margin:0;position:relative}.portrait>img{width:100%;aspect-ratio:4/5;object-fit:cover;filter:saturate(.8);border-radius:150px 150px 2px 2px}.portrait figcaption{display:flex;justify-content:space-between;margin-top:18px;font-size:9px;letter-spacing:.05em;color:var(--muted)}.hero-bottom{border-block:1px solid var(--line);padding-block:21px;display:flex;justify-content:space-between;color:var(--muted);font-size:10px}.hero-bottom a{display:flex;gap:30px}.about,.experience,.works{padding-top:108px;padding-bottom:108px;border-bottom:1px solid var(--line)}.section-heading h2{font-size:clamp(32px,3.5vw,46px);font-weight:500;line-height:1.2;letter-spacing:-.06em;margin:17px 0 45px}.section-number{color:var(--accent);font-size:11px}.about{display:grid;grid-template-columns:27% 1fr;gap:7%}.about-body{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:48px}.intro-copy p{font-size:15px;line-height:2.05;margin-bottom:22px;word-break:keep-all}.intro-copy p:first-child{font-size:19px;line-height:1.85;letter-spacing:-.035em}.skills{padding-top:5px}.skills h3{font-size:11px;letter-spacing:.12em;margin-bottom:28px}.skill{display:flex;flex-direction:column;gap:8px;padding-bottom:17px}.skill>span:first-child{font-size:10px;letter-spacing:.05em;color:var(--muted)}.skill-dots{display:flex;gap:7px}.skill-dots i{height:8px;width:8px;border:1px solid #9aa28e;border-radius:50%;display:block}.skill-dots .filled{background:#6a775b;border-color:#6a775b}.experience{display:grid;grid-template-columns:27% 1fr;gap:7%;background:#eeeee7}.experience-row{display:grid;grid-template-columns:170px 1fr;gap:24px;border-bottom:1px solid #d8dbd0;padding:24px 0}.experience-row:first-child{padding-top:0}.period{color:var(--muted);padding-top:4px;letter-spacing:.03em}.experience-row h3{font-size:20px;font-weight:600;letter-spacing:-.04em;margin:0 0 12px}.experience-row p:not(.period){font-size:14px;line-height:1.9;color:#62695f;margin:0;word-break:keep-all}.experience-row .past-url{font-size:11px!important;margin-top:10px!important;color:#a05b43!important;overflow-wrap:anywhere}.education{margin-top:40px;display:grid;grid-template-columns:170px 1fr;column-gap:24px}.education h3{font-size:11px;letter-spacing:.1em;grid-row:span 2;padding-top:3px}.education p{display:flex;justify-content:space-between;gap:12px;font-size:13px;margin-bottom:10px}.education p span{font-size:11px;color:var(--muted)}.works-heading{display:flex;justify-content:space-between;align-items:center}.works-heading>p{color:var(--muted);font-size:13px}.count{font-family:var(--serif);font-style:italic;font-size:24px;letter-spacing:0;vertical-align:top;margin-left:16px;color:var(--accent)}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:35px}.filters button{padding:9px 17px;border:1px solid var(--line);font-size:12px;border-radius:30px;transition:background .2s}.filters button span{font:10px Arial;margin-left:5px;opacity:.7}.filters button.active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.filters button:hover{border-color:var(--ink)}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 24px}.work-card{min-width:0}.work-open{text-align:left;width:100%;padding:0}.work-visual{aspect-ratio:1.15;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#e6e8df;padding:24px}.work-visual.tone-1{background:#ece4da}.work-visual.tone-2{background:#e4e6e2}.work-visual.tone-3{background:#e9e5e0}.work-visual>img{max-height:100%;width:100%;height:100%;object-fit:contain;object-position:top;transition:transform .45s ease}.work-open:hover .work-visual>img{transform:scale(1.045)}.open-circle{position:absolute;right:16px;bottom:16px;background:var(--paper);border-radius:50%;display:grid;place-items:center;width:36px;height:36px;font-size:21px;box-shadow:0 2px 14px #0000000a;transition:background .2s}.work-open:hover .open-circle{background:var(--accent);color:white}.work-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;letter-spacing:.03em;margin:17px 0 8px}.work-card h3{font-size:17px;font-weight:500;letter-spacing:-.035em;margin:0;line-height:1.5}.text-cover{font-size:clamp(24px,3vw,38px);letter-spacing:-.05em;line-height:1.45;word-break:break-word;padding:10px}.text-link{font-size:13px;border-bottom:1px solid currentColor;display:inline-flex;gap:18px;padding:5px 0}.archive-link{margin-top:50px}.empty-state{padding:70px 20px;text-align:center;color:var(--muted);border:1px dashed var(--line)}.contact{padding-block:80px;background:var(--ink);color:var(--paper)}.contact .section-number{color:#b8bfae}.contact-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px;margin-top:24px}.contact h2{font-size:72px;font-weight:500;line-height:1.3;letter-spacing:-.08em;margin-bottom:10px}.contact-grid>div>p{font-size:12px;color:#b8bfae}.contact-details a{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #495042;padding:16px 0;font-size:clamp(17px,2vw,26px);overflow-wrap:anywhere;letter-spacing:-.025em}.contact-details a span{color:#b8bfae}.contact-details>p{margin-top:22px}.site-footer{display:flex;justify-content:space-between;gap:20px;padding-block:27px;font-size:10px;letter-spacing:.02em;color:var(--muted)}.site-footer>div{display:flex;gap:26px}.site-footer button{padding:0;font-size:11px}.site-footer button:hover{color:var(--accent)}.admin-zone{padding-block:64px;border-top:1px solid var(--line);background:#eaece3}.admin-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.admin-heading h2{font-size:34px;letter-spacing:-.05em;margin:10px 0}.admin-heading p{font-size:14px;color:var(--muted)}label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:600}input:not([type=file],[type=hidden]),select{width:100%;min-width:0;border:1px solid #c6ccbe;padding:13px 15px;border-radius:2px;background:#fff;color:var(--ink);font-size:16px}input::placeholder{color:#8e9585;font-size:14px}.editor-fields{display:grid;grid-template-columns:1fr 190px;gap:20px}.cover-field{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin:22px 0;font-size:12px;color:var(--muted)}.upload-label{cursor:pointer;border:1px solid #b9c1ae;padding:8px 15px;font-size:12px;background:var(--paper);display:flex;flex-direction:row;align-items:center}.upload-label input{max-width:230px;font-size:12px}.cover-field>img{width:64px;height:64px;object-fit:cover;border-radius:3px}.cover-field>button{text-decoration:underline;font-size:12px}.editor-wrap{border:1px solid #bfc7b5;background:white}.editor-toolbar{display:flex;flex-wrap:wrap;padding:8px;gap:3px;background:#f7f8f3;border-bottom:1px solid #d4dacb}.editor-toolbar button{padding:8px 11px;font-size:13px;min-height:38px;min-width:38px;border-radius:2px}.editor-toolbar button:hover{background:#e1e6d9}#post-body{min-height:290px;padding:25px;line-height:1.9;overflow-wrap:anywhere}#post-body:empty:before{content:attr(data-placeholder);color:#9aa18f;pointer-events:none}#post-body img{max-height:650px;width:auto;margin:16px auto}#post-body h2,#post-body h3{letter-spacing:-.04em}blockquote{border-left:3px solid var(--accent);padding:10px 20px;margin:18px 0;color:var(--muted);background:#f5f5ef}.editor-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:20px;gap:15px}#editor-status{font-size:12px;color:#68735c;margin:0}.primary-button{background:var(--ink);color:var(--paper);padding:15px 23px;display:flex;justify-content:space-between;gap:32px;align-items:center;font-size:14px;border-radius:2px;font-weight:500}.primary-button:hover{background:#424d36}.primary-button span{font-size:22px}.primary-button:disabled{opacity:.55}dialog{border:0;padding:0;color:var(--ink);background:var(--paper);max-height:90dvh;overscroll-behavior:contain}dialog::backdrop{background:rgba(19,25,18,.67);backdrop-filter:blur(5px)}.login-dialog{width:min(460px,calc(100% - 32px));padding:32px;border-radius:4px}.dialog-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.icon-button{font-size:32px;line-height:1;min-width:44px;min-height:44px;font-weight:300}.login-dialog h2{font-size:28px;letter-spacing:-.04em;margin-bottom:10px}.login-dialog p{font-size:13px;color:var(--muted);line-height:1.8}.login-dialog label{margin-top:18px}.login-dialog .primary-button{width:100%;margin-top:20px}.form-message{color:#b73326!important;min-height:20px}.work-dialog{width:min(1040px,calc(100% - 32px));padding:0 40px 40px;border-radius:3px}.project-bar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:14px 0;position:sticky;top:0;z-index:2;background:var(--paper)}.project-bar>span{font-size:11px;letter-spacing:.06em;color:var(--accent)}.project-title{padding-block:30px 15px}.project-title h2{font-size:clamp(24px,4vw,38px);letter-spacing:-.05em;line-height:1.4;margin-bottom:15px}.project-title p{white-space:pre-line;font-size:14px;color:var(--muted)}.project-page{width:100%;height:auto;background:white}.prose{font-size:16px;line-height:1.9;overflow-wrap:anywhere}.prose img{max-width:100%;height:auto;margin:auto}.prose p{margin-bottom:1em}.prose a{color:var(--accent);text-decoration:underline}.prose pre{white-space:pre-wrap;background:#ebece6;padding:20px}.project-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.project-actions button,.project-actions a{border:1px solid var(--line);padding:9px 18px;font-size:12px}.project-actions .danger{color:#b73326}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:14px 24px;border-radius:4px;box-shadow:0 8px 30px #0002;z-index:50;font-size:13px;max-width:calc(100% - 30px);text-align:center}.setup-page{min-height:100dvh;display:grid;place-items:center;padding:25px}.setup-card{width:min(460px,100%);background:white;padding:38px;border:1px solid var(--line)}.setup-card>.wordmark{display:block;margin-bottom:45px}.setup-card h1{font-size:30px;letter-spacing:-.05em;margin:14px 0}.setup-card p{font-size:14px;color:var(--muted)}.setup-card label{margin-top:18px}.setup-card .primary-button{width:100%;margin-top:25px}#setup-message{color:#b73326;font-size:13px}
@media(min-width:1600px){.hero-grid{padding-block:78px 70px}.hero h1{font-size:88px}}@media(max-width:1100px){.about-body{grid-template-columns:1fr;gap:30px}.skills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.skills h3{grid-column:1/-1}.experience-row{grid-template-columns:130px 1fr}.education{grid-template-columns:130px 1fr}.hero h1{font-size:clamp(38px,6vw,68px)}.work-grid{gap:35px 18px}.work-visual{padding:18px}.contact-grid{gap:40px}}@media(max-width:760px){html{scroll-padding-top:83px}.section-shell{padding-inline:24px}.site-header{height:72px;padding-inline:24px}.wordmark{font-size:28px}.site-header nav{gap:21px;font-size:12px}.header-pdf{display:none}.hero{padding-top:25px}.hero-index{font-size:8px;letter-spacing:.04em}.eyebrow{font-size:10px}.hero-grid{grid-template-columns:1fr 31%;gap:5%;padding-block:44px 35px}.hero-name{font-size:16px;margin-bottom:18px}.hero-name span{font-size:8px;margin:6px 0 0;display:block}.hero h1{font-size:clamp(31px,6vw,45px);letter-spacing:-.08em;margin-bottom:20px}.hero-description{font-size:11px;line-height:1.7;margin-bottom:22px;max-width:230px;word-break:keep-all}.round-link{font-size:12px;gap:24px}.arrow-circle{width:36px;height:36px;font-size:20px}.portrait figcaption{font-size:8px;display:block;margin-top:10px}.portrait figcaption span{display:block}.portrait figcaption span+span{display:none}.hero-bottom{font-size:8px;gap:12px;padding-block:17px}.hero-bottom>a{gap:12px;white-space:nowrap}.about,.experience{display:block;padding-block:64px}.section-heading h2{font-size:35px;margin:14px 0 30px}.about-body{gap:24px}.intro-copy p{font-size:14px;line-height:1.9}.intro-copy p:first-child{font-size:18px}.skills{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 15px}.skill-dots{gap:5px}.skill-dots i{width:6px;height:6px}.skill>span:first-child{font-size:9px}.experience-row{grid-template-columns:115px 1fr;gap:16px;padding:23px 0}.period{font-size:10px}.experience-row h3{font-size:18px}.experience-row p:not(.period){font-size:13px}.education{grid-template-columns:115px 1fr;gap:10px 16px}.education p{flex-direction:column;gap:3px}.education h3{font-size:10px}.works{padding-block:64px}.works-heading{display:block}.works-heading>p{font-size:12px;margin-bottom:25px}.filters{gap:7px}.filters button{font-size:11px;padding:8px 13px}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 16px}.work-visual{padding:15px;aspect-ratio:1}.work-card h3{font-size:14px}.work-meta{font-size:9px;margin-block:13px 5px}.open-circle{width:28px;height:28px;right:10px;bottom:10px;font-size:18px}.contact{padding-block:55px}.contact-grid{grid-template-columns:1fr;gap:20px}.contact h2{font-size:56px}.contact-details a{font-size:21px}.site-footer{flex-direction:column;gap:15px;font-size:9px;padding-block:24px}.site-footer>div{justify-content:space-between}.admin-zone{padding-block:45px}.admin-heading{align-items:start;gap:10px}.admin-heading p{font-size:12px}.editor-fields{grid-template-columns:1fr}.cover-field{gap:10px}.upload-label{flex-wrap:wrap;max-width:100%}.editor-toolbar button{font-size:12px;padding:8px}#post-body{padding:17px;min-height:260px}.editor-bottom{align-items:stretch;flex-direction:column}.editor-bottom .primary-button{justify-content:center}dialog{max-height:92dvh}.work-dialog{padding:0 20px 25px}.project-title{padding-top:20px}.project-title h2{font-size:25px}.login-dialog{padding:25px}.setup-card{padding:25px}.setup-card h1{font-size:26px}}@media(max-width:380px){.section-shell,.site-header{padding-inline:18px}.site-header nav{gap:16px}.hero h1{font-size:29px}.hero-index{display:none}.hero-grid{grid-template-columns:1fr 30%;gap:4%}.hero-bottom>span{max-width:170px;line-height:1.6}.skills{grid-template-columns:repeat(2,minmax(0,1fr))}.work-grid{gap:28px 12px}.work-visual{padding:12px}.work-card h3{font-size:13px}.contact-details a{font-size:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}@media print{.site-header,.site-footer,.admin-zone,.filters,.round-link,dialog,.archive-link{display:none!important}.section-shell{padding:25px;max-width:none}.hero-grid{padding:20px 0}.work-grid{grid-template-columns:repeat(3,1fr)}.work-card{break-inside:avoid}.about,.experience,.works{padding-block:30px}.contact{background:white;color:black}.contact-details a{color:black}}

.profile-settings{border:1px solid var(--line);padding:22px;margin-bottom:35px}.profile-settings summary{cursor:pointer;font-size:20px;font-weight:600}.profile-settings summary span{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:6px}.profile-settings fieldset{border:0;border-top:1px solid var(--line);padding:22px 0;margin:25px 0;min-width:0}.profile-settings legend{font-size:18px;font-weight:600;padding-right:20px}.profile-settings label{display:flex;flex-direction:column;gap:8px;font-size:13px;min-width:0}.profile-settings input,.profile-settings textarea,.profile-settings select{width:100%;min-width:0;border:1px solid var(--line);background:white;padding:12px;color:var(--ink);border-radius:0}.profile-settings textarea{resize:vertical}.profile-row{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:20px;background:#eeeee7;margin-bottom:16px}.profile-row-experience label:nth-child(3),.profile-row-experience label:nth-child(4){grid-column:1/-1}.profile-row button{justify-self:start}.profile-contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.profile-wide{grid-column:1/-1}.profile-settings .editor-bottom{flex-wrap:wrap}.profile-settings .editor-bottom p{flex:1;min-width:160px}.intro-copy p{white-space:pre-line}.contact-details a{overflow-wrap:anywhere}.profile-settings textarea:focus-visible{outline:3px solid var(--accent);outline-offset:4px}@media(max-width:760px){.profile-settings{padding:16px}.profile-row,.profile-contact-fields{grid-template-columns:1fr}.profile-row{padding:14px}.profile-settings summary{font-size:18px}.profile-settings .primary-button{width:100%}}

.work-card[data-category="video"] .work-visual{padding:0;background:#181d17;aspect-ratio:16/9}.work-card[data-category="video"] .work-visual img{width:100%;height:100%;object-fit:cover}.work-card[data-video-format="short"] .work-visual img{object-fit:contain}.work-card[data-category="video"] .open-circle{background:#cc4b30;color:white}.youtube-player{border:0;width:100%;aspect-ratio:16/9;min-height:200px;background:#111;display:block}.youtube-player.youtube-short{width:min(100%,360px);aspect-ratio:9/16;max-height:75dvh;margin-inline:auto}.video-help{font-size:13px;color:var(--muted);grid-column:1/-1}.channel-link{margin-top:20px}.contact-details .channel-link{font-size:18px}#video-fields{margin-block:20px}.work-card h3{overflow-wrap:anywhere}
