body.root-page{background:#f5f4f1;font-family:Pretendard,"Noto Sans KR","Malgun Gothic",sans-serif;letter-spacing:-.015em}
.root-page main{width:960px;max-width:calc(100% - 48px);margin:auto;padding:52px 0 20px}
.home-hero{display:flex;align-items:center;justify-content:space-between;gap:48px;padding-bottom:28px}
.hero-copy{min-width:0}
.hero-affiliation{display:inline-flex;vertical-align:bottom;margin:0 0 3px 12px}
.hero-copy h1{display:inline-block;vertical-align:middle}
.hero-affiliation .company-affiliation{margin:0;padding:0 0 0 12px}
.hero-affiliation .company-affiliation img{transform:none;width:48px}
.hero-eyebrow{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 16px;color:#a55212;font-size:10px;font-weight:700;letter-spacing:.15em}
.hero-tech{display:inline-block;padding:4px 8px;border:1px solid #ded7ce;border-radius:5px;color:#6e655b;font-size:10px;font-weight:500;letter-spacing:0;line-height:1.3;white-space:nowrap}
.hero-copy h1{font-size:44px;line-height:1.2;letter-spacing:-.05em}
.hero-copy h1 span{display:block;margin-top:9px;font-size:22px;font-weight:500;letter-spacing:-.035em}
.home-hero .linkedin-profile{flex:none;width:148px;height:148px;margin:0 30px 0 0}
.root-page .linkedin-provider{text-align:left;margin:15px 0 0;font-size:12px}
.career-stats{display:flex;gap:28px;margin:18px 0 0}
.career-stats>div{display:flex;align-items:baseline;gap:9px;flex-direction:row-reverse}
.career-stats dt{font-size:11px;color:#77716a}
.career-stats dd{margin:0;font-size:23px;font-weight:700;line-height:1.2;letter-spacing:-.04em}
.career-stats dd span:not([data-career-years]){margin-left:2px;font-size:13px;font-weight:500}
.root-page .intro{display:block;padding:22px 0;margin:0;border-top:1px solid #dcd8d1;border-bottom:0}
.root-page .intro small{padding:0;font-size:10px;letter-spacing:.12em;margin-bottom:13px;color:#a55212}
.root-page .intro small::before{display:none}
.root-page .intro p{font-size:14px;line-height:1.9}
.career-timeline{padding:22px 0 26px;border-top:1px solid #dcd8d1}
.timeline-heading{display:flex;align-items:baseline;gap:16px;margin-bottom:22px}
.timeline-heading small{color:#a55212;font-size:10px;letter-spacing:.12em;font-weight:700}
.timeline-heading h2{margin:0;font-size:16px;font-weight:600}
.timeline-axis{display:grid;grid-template-columns:24.5% 42.5% 1fr auto;margin-bottom:8px;color:#8c8175;font-size:10px;font-variant-numeric:tabular-nums}
.timeline-rows{display:grid;grid-template-columns:24.5fr 42.5fr 33fr;list-style:none;margin:0;padding:0}
.timeline-rows li{min-width:0;padding:0}
.timeline-rows a{position:relative;display:flex;flex-direction:column;gap:7px;height:100%;padding:19px 14px 0 0;border-top:5px solid #bc7036;color:#34302b;text-decoration:none}
.timeline-rows a::before{content:"";position:absolute;top:-7px;left:0;width:9px;height:9px;border-radius:50%;background:#bc7036;border:2px solid #f5f4f1}
.timeline-rows li:nth-child(2) a{border-color:#968167}.timeline-rows li:nth-child(2) a::before{background:#968167}
.timeline-rows li:nth-child(3) a{border-color:#647e76}.timeline-rows li:nth-child(3) a::before{background:#647e76}
.timeline-rows strong{font-size:12px;letter-spacing:.025em}
.timeline-rows time{font-size:10px;color:#756b60;font-variant-numeric:tabular-nums}
.timeline-rows a>span{font-size:12px;color:#6d655c;line-height:1.5}
.timeline-rows a:hover strong{color:#a55212}
.timeline-rows a:focus-visible{outline:2px solid #f5821f;outline-offset:3px}
.root-page nav{gap:12px;border-top:1px solid #dcd8d1;padding-top:22px}
.root-page nav a{min-height:110px;padding:17px 18px 30px;border-color:#dedad3;border-radius:8px;box-shadow:none}
.root-page nav a small{font-size:9px;color:#f5821f;margin-bottom:6px}
.root-page nav a strong{font-size:17px;letter-spacing:-.025em}
.root-page nav a p{margin:6px 0 0;color:#77716a;font-size:11px;line-height:1.6}
.root-page nav a span{font-size:9px;right:14px;bottom:10px}
.root-page .seasonal-controls{top:auto;bottom:16px;right:68px;z-index:151}
.root-page .seasonal-options{top:auto;bottom:calc(100% + 8px)}
@media(max-width:680px){.root-page main{width:100%;max-width:none;padding:30px 20px 20px}.home-hero{gap:14px;align-items:flex-start;padding-bottom:24px}.hero-eyebrow{font-size:8px;margin-bottom:13px}.hero-copy h1{font-size:34px}.hero-copy h1 span{font-size:16px;line-height:1.5}.hero-stack{font-size:11px;max-width:225px;margin-top:12px}.hero-stack span{margin:0 3px}.home-hero .linkedin-profile{width:72px;height:72px;margin:22px 0 0}.root-page .linkedin-provider{font-size:10px;margin-top:13px}.company-affiliation{margin-left:7px;padding-left:7px}.company-affiliation img{width:38px}.career-stats{gap:20px;flex-wrap:wrap;margin-top:16px}.career-stats>div{gap:6px}.career-stats dd{font-size:21px}.career-stats dt{font-size:10px}.root-page .intro{padding:20px 0}.root-page .intro p{font-size:13px}.timeline-heading{display:block;margin-bottom:18px}.timeline-heading h2{margin-top:6px;font-size:15px}.timeline-axis{display:none}.timeline-rows{display:block}.timeline-rows a{padding:0 0 20px 18px;border-top:0;border-left:3px solid #bc7036;gap:5px}.timeline-rows a::before{top:0;left:-7px}.timeline-rows li:last-child a{padding-bottom:0}.timeline-rows strong{font-size:12px}.timeline-rows time{font-size:10px}.timeline-rows a>span{font-size:11px}.root-page nav{padding-top:20px;gap:8px}.root-page nav a{min-height:96px;padding:15px 16px 24px}.root-page nav a strong{font-size:16px}.root-page nav a span{bottom:9px}.root-page .seasonal-controls{bottom:12px;right:58px}}
@media(prefers-reduced-motion:reduce){.root-page nav a{transition:none}}
.timeline-scroll{overflow-x:auto;border:0;border-radius:0;background:transparent}
.timeline-scroll:focus-visible{outline:2px solid var(--site-accent);outline-offset:3px}
.timeline-chart{--label-width:190px;min-width:850px;padding:18px 18px 8px}
.timeline-axis{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));margin:0 0 8px var(--label-width);font-size:11px;color:var(--site-muted)}
.timeline-axis>span{padding-left:7px}
.timeline-rows{display:block;margin:0;padding:0;list-style:none;background:none}
.timeline-rows li{width:100%;margin:0;padding:0}
.timeline-rows a{display:grid;grid-template-columns:var(--label-width) minmax(0,1fr);gap:0;align-items:center;height:auto;padding:0;border:0!important;border-radius:0;background:none!important;color:var(--site-text)}
.timeline-rows a::before{display:none}
.timeline-label{padding:20px 14px 20px 0;display:flex;flex-direction:column;gap:7px}
.timeline-label strong{font-size:13px;letter-spacing:.025em}
.timeline-label>span{font-size:12px;color:var(--site-copy);line-height:1.5}
.timeline-track{position:relative;align-self:stretch;display:flex;align-items:center;border-top:1px solid var(--site-border);background:repeating-linear-gradient(90deg,var(--site-border) 0,var(--site-border) 1px,transparent 1px,transparent 11.111111%)}
.timeline-period{position:relative;left:var(--start);width:var(--duration);min-height:58px;display:flex;flex-direction:column;justify-content:center;gap:5px;padding:10px 10px;border:1px solid var(--project-color);border-left:4px solid var(--project-color);border-radius:7px;background:color-mix(in srgb,var(--project-color) 16%,var(--site-surface));transition:transform .18s ease,box-shadow .18s ease}
.timeline-period time{font-size:11px;font-weight:600;color:var(--site-text);white-space:nowrap}
.timeline-period>span{font-size:10px;color:var(--site-copy);white-space:nowrap;letter-spacing:-.035em}
.timeline-rows a:hover .timeline-period{transform:translateY(-2px);box-shadow:0 4px 12px #0002}
.timeline-hint{margin:10px 0 0;font-size:11px;color:var(--site-muted)}
.timeline-chart{padding:12px 14px 4px}
.timeline-label{padding:11px 12px 11px 0;gap:4px}
.timeline-label strong{font-size:12px}
.timeline-label>span{font-size:11px}
.timeline-period{min-height:32px;padding:6px 9px;border-radius:5px}
.timeline-period time{font-size:11px}
.timeline-heading{margin-bottom:14px}
.timeline-chart{--label-width:0px;min-width:850px;padding:14px 18px 18px}
.timeline-axis{margin:0 0 12px;grid-template-columns:repeat(9,minmax(0,1fr))}
.timeline-axis>span{padding-left:0}
.timeline-rows{position:relative;display:flex;min-height:102px;padding-top:0}
.timeline-rows::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--site-border);border-radius:4px}
.timeline-rows li{position:absolute;left:var(--start);width:var(--duration);margin:0;padding:0}
.timeline-rows a{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:17px 10px 0 0!important;border:0!important}
.timeline-label{position:relative;z-index:1;padding:0;gap:7px}
@media(min-width:681px){.timeline-label{padding-left:12px;padding-right:8px}.timeline-period time{left:12px!important}}
.timeline-thumbnail{position:absolute;top:5px;right:0;left:auto;width:45%;height:calc(100% - 5px);object-fit:cover;object-position:center;border-radius:0 0 5px 0;opacity:.28;pointer-events:none;mask-image:linear-gradient(90deg,transparent,#000);-webkit-mask-image:linear-gradient(90deg,transparent,#000)}
html[data-theme="dark"] .timeline-thumbnail{opacity:.36}
.timeline-rows .timeline-track{z-index:2}
.timeline-label strong{font-size:13px}
.timeline-label>span{font-size:12px;order:1;margin-top:24px}
.timeline-track{position:absolute;top:0;left:0;right:0;height:5px;display:block;border:0;background:var(--project-color);border-radius:3px;align-self:auto}
.timeline-track::before{content:"";position:absolute;top:-3px;left:-2px;width:11px;height:11px;border:2px solid #f5f4f1;border-radius:50%;background:var(--project-color)}
html[data-theme="dark"] .timeline-track::before{border-color:var(--site-bg)}
.timeline-period{position:static;display:block;width:auto;min-height:0;padding:0;border:0;background:none;border-radius:0;box-shadow:none!important;transform:none!important}
.timeline-period time{position:absolute;top:42px;left:0;font-size:11px!important;font-weight:400;line-height:1.5}
@media(max-width:680px){.timeline-chart{--label-width:0px;min-width:850px;padding:14px 18px 18px}.timeline-label strong{font-size:13px}.timeline-label>span{font-size:12px}}
@media(max-width:680px){.timeline-chart{--label-width:170px;padding:14px 14px 6px}.timeline-hint::after{content:" 좁은 화면에서는 좌우로 스크롤해 주세요."}.timeline-label strong{font-size:13px}.timeline-label>span{font-size:12px}.timeline-rows li:last-child a{padding:0}.timeline-rows time{font-size:11px}}
@media(max-width:680px){.hero-affiliation{display:block;margin:10px 0 0}.hero-affiliation .company-affiliation{border:0;padding:0}.hero-affiliation .company-affiliation img{width:40px}.career-stats{gap:14px 20px}}
.timeline-axis,.timeline-rows time{font-size:12px}
.timeline-rows strong{font-size:14px}
.timeline-rows a>span{font-size:13px}
.root-page nav a p{font-size:13px}
.root-page nav a span{font-size:11px}
.root-page nav a{min-height:120px;padding-bottom:34px}
.career-stats dt{font-size:12px}
@media(min-width:681px){
  body.root-page.has-site-footer{padding-bottom:80px}
  .root-page main{padding-bottom:8px}
  .root-page .site-contact{bottom:42px}
  .root-page .site-footer{bottom:12px}
}
@media screen{
  html[data-theme="dark"] .root-page :is(.career-timeline,nav,.hero-tech){border-color:var(--site-border)}
  html[data-theme="dark"] .root-page :is(.timeline-rows a,.timeline-heading h2){color:var(--site-text)}
  html[data-theme="dark"] .root-page :is(.timeline-axis,.timeline-rows time,.career-stats dt,.hero-tech){color:var(--site-muted)}
  html[data-theme="dark"] .root-page :is(.timeline-rows a>span,nav a p){color:var(--site-copy)}
  html[data-theme="dark"] .root-page :is(.hero-eyebrow,.timeline-heading small){color:#ffae69}
  html[data-theme="dark"] .timeline-rows a::before{border-color:var(--site-bg)}
  html[data-theme="dark"] .timeline-rows a:hover strong{color:#ffae69}
  html[data-theme="dark"] .hero-affiliation .company-affiliation::before{color:var(--site-muted)}
}
@media(max-width:680px){
  .home-hero{display:grid;grid-template-columns:minmax(0,1fr) 64px;gap:12px;position:relative}
  .hero-copy{display:contents}
  .hero-eyebrow{grid-column:1 / -1;gap:10px;margin-bottom:2px;font-size:9px}
  .hero-copy h1{grid-column:1;grid-row:2;align-self:center}
  .home-hero .linkedin-profile{grid-column:2;grid-row:2;width:64px;height:64px;margin:0}
  .hero-copy h1 span{font-size:15px;white-space:nowrap}
  .hero-affiliation{grid-column:1 / -1;grid-row:3;display:flex;margin:0}
  .hero-affiliation .company-affiliation{display:inline-flex;align-items:center;gap:8px}
  .hero-affiliation .company-affiliation::before{content:"소속";font-size:11px;color:#77716a}
  .career-stats{grid-column:1 / -1;grid-row:4;display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:8px 0 0}
  .career-stats>div{justify-content:flex-end;gap:8px}
  .career-stats dt{font-size:11px}
  .timeline-rows strong{font-size:14px}
  .timeline-rows time{font-size:12px}
  .timeline-rows a>span{font-size:13px}
  .root-page nav a{min-height:108px;padding-bottom:32px}
  .root-page nav a p{font-size:12px}
  .root-page nav a span{font-size:10px}
}
@media(max-width:680px){
  .timeline-scroll{overflow:visible}
  .timeline-chart{min-width:0;padding:6px 0 0}
  .timeline-axis{display:none}
  .timeline-rows{display:block;min-height:0;padding:0 0 0 6px}
  .timeline-rows::before{display:none}
  .timeline-rows li{position:relative;left:auto;width:100%;margin:0}
  .timeline-rows a{display:flex;min-height:100px;padding:0 0 22px 22px!important}
  .timeline-rows li:last-child a{min-height:78px;padding-bottom:0!important}
  .timeline-label{padding:0;gap:6px}
  .timeline-label>span{order:1;margin-top:23px;font-size:13px}
  .timeline-track{top:0;bottom:0;left:0;right:auto;width:3px;height:auto;border-radius:0}
  .timeline-track::before{top:0;left:-4px}
  .timeline-rows li:last-child .timeline-track{bottom:8px}
  .timeline-period time{top:25px;left:22px;font-size:12px!important}
  .timeline-thumbnail{top:0;right:0;left:auto;width:45%;height:84px;border-radius:0 4px 4px 0;object-position:center 35%;mask-image:linear-gradient(90deg,transparent 0%,#000 38%,#000 72%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 38%,#000 72%,transparent 100%)}
}
@media(min-width:681px){.timeline-thumbnail{mask-image:linear-gradient(90deg,transparent 0%,#000 38%,#000 72%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 38%,#000 72%,transparent 100%)}}
