:root{--bg: oklch(95.7% 0 0);--surface: oklch(99% .002 95);--fg: oklch(24.4% 0 0);--muted: oklch(52% 0 0);--border: oklch(84% 0 0);--accent: oklch(72% .16 135);--tone-mono-filter: grayscale(1) saturate(0) contrast(1.08);--font-display: "Arial Narrow", "Helvetica Neue Condensed", "Helvetica Neue", system-ui, sans-serif;--font-body: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", system-ui, sans-serif;--font-mono: "SF Mono", "JetBrains Mono", Menlo, ui-monospace, monospace}*{box-sizing:border-box}html{background:var(--bg);color:var(--fg);scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);background:var(--bg);color:var(--fg);line-height:1.55;letter-spacing:0}button,a{font:inherit;color:inherit}a{text-decoration:none}button{border-radius:0}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}h1,h2,h3{text-wrap:balance}.tone-mono,[data-tone=mono]{filter:var(--tone-mono-filter)}.tone-mono-blend,[data-tone=mono-blend]{filter:var(--tone-mono-filter);mix-blend-mode:multiply}.icon-mono,[data-icon-tone=mono]{color:var(--fg);filter:var(--tone-mono-filter)}.shell,.case-page{min-height:100vh;position:relative;background:var(--bg)}.topbar{position:absolute;inset:0 0 auto;z-index:20;display:flex;justify-content:space-between;align-items:flex-start;padding:28px 32px 0;mix-blend-mode:multiply}.brand,.brand-button{--brand-logo-height: clamp(24px, 2.4vw, 31px);display:inline-flex;align-items:center;line-height:0}.brand.compact{--brand-logo-height: 28px}.brand-logo{display:block;width:auto;height:var(--brand-logo-height);max-width:min(36vw,124px);aspect-ratio:481 / 124;object-fit:contain}.brand-button{border:0;background:transparent;padding:0;cursor:pointer}.nav{display:flex;align-items:center;gap:28px;font-size:13px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.nav a{border-bottom:1px solid transparent}.nav a:hover{border-color:var(--fg);color:var(--fg)}.contact{max-width:1200px;margin:90px auto 0;padding:34px 0 0;border-top:2px solid var(--fg);display:grid;grid-template-columns:1.4fr .6fr;gap:40px;align-items:start;position:relative;overflow:clip;opacity:0;transform:translateY(28px);transition:opacity .68s cubic-bezier(.2,.8,.2,1),transform .78s cubic-bezier(.2,.8,.2,1)}.contact:before,.contact:after{content:"";position:absolute;pointer-events:none}.contact:before{left:0;right:0;top:-2px;height:2px;background:var(--fg);opacity:.24;transform:scaleX(.16);transform-origin:left center;transition:opacity .68s ease,transform .82s cubic-bezier(.2,.8,.2,1)}.contact:after{inset:0;z-index:0;background:linear-gradient(180deg,color-mix(in oklch,var(--bg),var(--fg) 8%) 0%,color-mix(in oklch,var(--bg),transparent 18%) 42%,transparent 100%);opacity:0;transform:translateY(-100%)}.contact>*{position:relative;z-index:1}.contact h2{margin:0;font-family:var(--font-display);font-size:clamp(42px,6.5vw,78px);line-height:.9;letter-spacing:-.03em;text-transform:uppercase;opacity:0;transform:translateY(-18px)}.contact p{margin:0;color:var(--fg);word-break:keep-all;opacity:0;transform:translateY(-10px)}.contact a{border-bottom:2px solid var(--fg);font-weight:650}.contact-visible{opacity:1;transform:translateY(0)}.contact-visible:before{opacity:.82;transform:scaleX(1)}.contact-visible:after{animation:contact-reveal-wipe .92s cubic-bezier(.2,.8,.2,1) .05s both}.contact-visible h2{animation:contact-title-reveal .78s cubic-bezier(.2,.8,.2,1) .08s both}.contact-visible p{animation:contact-body-reveal .82s cubic-bezier(.2,.8,.2,1) .16s both}.contact-exiting{animation:contact-exit-up .58s cubic-bezier(.2,.8,.2,1) both}.contact-exiting:before{animation:contact-line-exit .58s cubic-bezier(.2,.8,.2,1) both}.contact-exiting:after{animation:contact-exit-wipe .58s cubic-bezier(.2,.8,.2,1) both}.contact-exiting h2{animation:contact-title-exit .52s cubic-bezier(.2,.8,.2,1) both}.contact-exiting p{animation:contact-body-exit .52s cubic-bezier(.2,.8,.2,1) .04s both}.link-btn,.ghost-btn,.mail-action{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border:1px solid var(--fg);background:var(--fg);color:var(--bg);cursor:pointer;font-size:12px;letter-spacing:.1em;text-transform:uppercase;transition:transform .16s ease,background .16s ease}.ghost-btn{background:transparent;color:var(--fg)}.link-btn:hover,.ghost-btn:hover,.mail-action:hover{transform:translateY(-2px)}.toast{position:fixed;right:24px;bottom:24px;padding:12px 14px;background:var(--fg);color:var(--bg);font-size:13px;opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .18s ease,transform .18s ease;z-index:40}.toast.show{opacity:1;transform:translateY(0)}@keyframes contact-reveal-wipe{0%{opacity:.78;transform:translateY(-100%)}52%{opacity:.34;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}@keyframes contact-title-reveal{0%{opacity:0;filter:blur(8px);transform:translateY(-18px)}to{opacity:1;filter:blur(0);transform:translateY(0)}}@keyframes contact-body-reveal{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes contact-exit-up{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-22px)}}@keyframes contact-line-exit{0%{opacity:.82;transform:scaleX(1)}to{opacity:.18;transform:scaleX(.12)}}@keyframes contact-exit-wipe{0%{opacity:0;transform:translateY(100%)}48%{opacity:.26;transform:translateY(0)}to{opacity:0;transform:translateY(-100%)}}@keyframes contact-title-exit{0%{opacity:1;filter:blur(0);transform:translateY(0)}to{opacity:0;filter:blur(7px);transform:translateY(-18px)}}@keyframes contact-body-exit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}@media(prefers-reduced-motion:reduce){.contact,.contact:before,.contact:after,.contact-visible,.contact-visible h2,.contact-visible p,.contact-exiting,.contact-exiting h2,.contact-exiting p{animation:none;transition:none;filter:none;transform:none;opacity:1}.contact:before{transform:scaleX(1)}}.hero{--hero-pull: 0;box-sizing:border-box;min-height:110svh;display:grid;place-items:center;padding:130px 32px 110px;position:relative;overflow:hidden;border-bottom:2px solid var(--fg)}.hero:after{content:"";position:absolute;left:50%;bottom:76px;width:1px;height:calc(22px + (var(--hero-pull) * .46px));background:color-mix(in oklch,var(--fg),transparent 55%);opacity:calc(.24 + (var(--hero-pull) * .008));transform:translate(-50%);transform-origin:top;pointer-events:none;transition:height .5s cubic-bezier(.2,.8,.2,1),opacity .46s ease}.hero-copy{width:min(1120px,100%);text-align:center;transform:translateY(calc(var(--hero-pull) * -.42px));transition:opacity .62s cubic-bezier(.2,.8,.2,1),filter .62s cubic-bezier(.2,.8,.2,1),transform .72s cubic-bezier(.2,.8,.2,1);will-change:opacity,filter,transform}.hero-leaving .hero-copy{opacity:0;filter:blur(10px);transform:translateY(-56px) scale(.985)}.hero-leaving:after{height:82px;opacity:.72;transition:height .54s cubic-bezier(.2,.8,.2,1),opacity .5s ease}.eyebrow{display:block;width:fit-content;margin:0 auto 22px;font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);position:relative;overflow:hidden}.eyebrow:after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:1px;background:currentColor;opacity:.5;transform:translate(-102%);animation:portfolio-line-scan .86s cubic-bezier(.25,.8,.25,1) .18s forwards}.eyebrow-letter{display:inline-block;opacity:0;transform:translateY(11px) rotateX(72deg);transform-origin:50% 80%;animation:portfolio-letter-in .58s cubic-bezier(.22,1,.36,1) forwards;animation-delay:calc(45ms * var(--letter-index))}.hero h1{margin:0;font-family:"Noto Sans KR",var(--font-display);font-size:clamp(64px,11vw,143px);line-height:.86;letter-spacing:-.03em;font-weight:800}.hero-note{max-width:44rem;margin:30px auto 0;font-size:clamp(16px,1.25vw,18px);color:#3d3d3d;font-weight:350;word-break:keep-all;white-space:pre-line}.typewriter{display:inline-block;min-height:4.65em;white-space:pre-line}.typewriter-cursor{display:inline-block;width:1px;height:1.05em;margin-left:3px;background:var(--fg);vertical-align:-.14em;animation:typewriter-cursor-blink .88s steps(2,start) infinite}.sns{position:absolute;left:32px;bottom:28px;display:flex;gap:14px;align-items:center;color:var(--muted);font-size:12px;letter-spacing:.08em;text-transform:uppercase;transition:opacity .46s ease,filter .46s ease,transform .52s cubic-bezier(.2,.8,.2,1)}.sns a{color:var(--fg);border-bottom:1px solid var(--fg)}.hero-index{position:absolute;right:32px;bottom:28px;font-family:var(--font-mono);font-size:12px;color:var(--muted);letter-spacing:.12em;transition:opacity .46s ease,filter .46s ease,transform .52s cubic-bezier(.2,.8,.2,1)}.hero-leaving .sns,.hero-leaving .hero-index{opacity:0;filter:blur(6px);transform:translateY(-18px)}.main{padding:80px 32px 120px}.section-switcher{width:min(1200px,100%);min-height:1138px;margin:0 auto;position:relative;padding-top:0}.section-rail{--rail-item-width: 131px;--rail-item-half: 65.5px;--rail-dot-size: 13px;width:100%;height:116px;position:absolute;left:0;top:135px;overflow:visible}.section-rail:before{content:"";position:absolute;left:0;right:0;top:28px;height:1px;background:color-mix(in oklch,var(--fg),transparent 74%)}.section-rail-item{position:absolute;left:clamp(var(--rail-item-half),var(--rail-center),calc(100% - var(--rail-item-half)));top:-8px;width:var(--rail-item-width);height:106px;transform:translate(-50%);z-index:1;display:block;border:0;background:transparent;padding:0;cursor:pointer;color:var(--muted);transition:color .18s ease}.section-rail-item:after{content:"";position:absolute;left:calc(50% + 11px);top:50px;width:42px;height:1px;background:color-mix(in oklch,var(--fg),transparent 58%);transform-origin:left center;transform:rotate(50deg)}.section-rail-item:focus-visible{outline:1px solid color-mix(in oklch,var(--fg),transparent 52%);outline-offset:12px}.section-rail-dot{position:absolute;left:calc(50% - (var(--rail-dot-size) / 2));top:29.5px;width:var(--rail-dot-size);height:var(--rail-dot-size);border:1px solid color-mix(in oklch,var(--fg),transparent 46%);background:var(--bg);transform:rotate(45deg);transition:background .2s ease,border-color .2s ease,transform .2s cubic-bezier(.22,1,.36,1)}.section-rail-dot:after{content:none}.section-rail-label{position:absolute;left:calc(50% + 27px);top:88px;white-space:nowrap;font-size:12px;line-height:16px;letter-spacing:.08em;color:inherit;transition:color .18s ease,transform .18s cubic-bezier(.22,1,.36,1)}.section-rail-item:hover,.section-rail-item[aria-current=true]{color:var(--fg)}.section-rail-item:hover .section-rail-label{transform:translateY(-2px)}.section-rail-item:not([aria-current=true]):hover .section-rail-dot{border-color:color-mix(in oklch,var(--fg),transparent 32%);background:color-mix(in oklch,var(--fg),transparent 82%);transform:rotate(45deg) scale(1.08)}.section-rail-item[aria-current=true] .section-rail-dot{border-color:var(--fg);background:var(--fg);transform:rotate(45deg) scale(1.08)}.section-head{max-width:1200px;margin:0;display:flex;justify-content:space-between;gap:24px;align-items:end;border-bottom:0;padding-bottom:0}.section-head h2{margin:0;font-family:var(--font-display);font-size:clamp(46px,5.2vw,76px);line-height:.95;letter-spacing:-.02em;text-transform:uppercase;width:fit-content;will-change:clip-path,opacity,transform}.section-head[data-title-direction=forward] h2{animation:section-title-reveal-forward .54s cubic-bezier(.2,.8,.2,1) both}.section-head[data-title-direction=backward] h2{animation:section-title-reveal-backward .54s cubic-bezier(.2,.8,.2,1) both}.section-head[data-title-direction=down] h2{animation:section-title-reveal-down .54s cubic-bezier(.2,.8,.2,1) both}.filters{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.filter{border:1px solid color-mix(in oklch,var(--fg),transparent 80%);background:transparent;min-height:38px;padding:0 13px;cursor:pointer;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.filter[aria-pressed=true]{background:var(--fg);color:var(--bg)}.section-content-reveal{position:relative;overflow:clip}.section-content-reveal:not(:empty){animation:section-content-reveal .62s cubic-bezier(.2,.8,.2,1) both}.section-content-reveal:not(:empty):before{content:"";position:absolute;left:0;right:0;top:242px;height:2px;background:var(--fg);opacity:.34;z-index:3;pointer-events:none;animation:section-fill-edge .62s cubic-bezier(.2,.8,.2,1) both}.card-list{max-width:1200px;margin:242px auto 0;border-top:1px solid transparent}.info-card{display:grid;grid-template-columns:.7fr 1.45fr .85fr;gap:36px;min-height:175px;padding:38px 0;border-bottom:1px solid color-mix(in oklch,var(--fg),transparent 82%);align-items:center}.meta{display:flex;flex-direction:column;gap:10px;font-family:var(--font-mono);font-size:12px;color:var(--muted);letter-spacing:.06em}.tag{width:fit-content;border:1px solid color-mix(in oklch,var(--fg),transparent 72%);padding:3px 8px;text-transform:uppercase;color:var(--fg);letter-spacing:.08em}.info-card h3{margin:0 0 12px;font-family:var(--font-display);font-size:clamp(30px,3.2vw,42px);line-height:1;letter-spacing:-.02em;text-transform:uppercase}.info-card p{margin:0;color:var(--muted);max-width:56ch;word-break:keep-all}.card-actions{justify-self:end;display:flex;flex-direction:column;gap:12px;align-items:flex-end}.stack-grid{max-width:1200px;margin:242px auto 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.stack-item{min-height:156px;padding:22px;border:1px solid color-mix(in oklch,var(--fg),transparent 82%);display:flex;flex-direction:column;justify-content:space-between;background:color-mix(in oklch,var(--surface),transparent 35%)}.stack-item strong{font-size:15px;font-weight:600}.stack-item span,.node span{font-family:var(--font-mono);font-size:11px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.career-timeline{--career-axis-x: 96px;--career-dot-slot: 24px;--career-dot-slot-half: 12px;max-width:1200px;margin:242px auto 0;padding:0;list-style:none;position:relative;display:grid;gap:0}.career-timeline:before{content:"";position:absolute;left:var(--career-axis-x);top:10px;height:calc(100% - 20px);width:1px;background:var(--fg)}.career-timeline-item{display:grid;grid-template-columns:var(--career-dot-slot) 52px minmax(0,1fr);gap:28px;min-height:112px;align-items:start;position:relative;padding-left:calc(var(--career-axis-x) - var(--career-dot-slot-half))}.career-timeline-dot{width:12px;height:12px;margin-top:3px;justify-self:center;border:1px solid var(--fg);border-radius:50%;background:var(--bg);display:block;position:relative;z-index:1}.career-timeline-dot[data-active=true]{background:var(--fg)}.career-timeline-year{font-family:var(--font-mono);font-size:12px;color:var(--muted);letter-spacing:.04em;line-height:18px}.career-timeline p{margin:0;color:var(--fg);font-size:16px;line-height:1.55;font-weight:600;word-break:keep-all}.career-timeline-archive{max-width:1200px;margin:242px auto 0;padding:0;list-style:none;position:relative}.career-timeline-archive:before{content:"";position:absolute;left:clamp(128px,17vw,208px);top:0;bottom:0;width:2px;background:color-mix(in oklch,var(--fg),transparent 82%)}.career-timeline-archive-item{display:grid;grid-template-columns:clamp(128px,17vw,208px) minmax(0,1fr);gap:clamp(28px,5vw,72px);min-height:176px;position:relative}.career-timeline-archive-item+.career-timeline-archive-item{margin-top:10px}.career-timeline-archive-marker{display:grid;grid-template-columns:1fr 18px;align-items:start;gap:18px;padding-top:7px;position:relative;z-index:1}.career-timeline-archive-index{font-family:var(--font-mono);font-size:12px;color:var(--muted);letter-spacing:.06em;line-height:1;text-align:right}.career-timeline-archive-dot{width:18px;height:18px;border:2px solid var(--fg);background:var(--bg);display:block;transform:translate(50%);box-shadow:0 0 0 8px var(--bg)}.career-timeline-archive-entry{padding:0 0 44px;border-bottom:1px solid color-mix(in oklch,var(--fg),transparent 82%)}.career-timeline-archive-meta{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px;font-family:var(--font-mono);font-size:11px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.career-timeline-archive-meta span:first-child{color:var(--fg);border:1px solid color-mix(in oklch,var(--fg),transparent 76%);padding:2px 7px}.career-timeline-archive-entry h3{margin:0 0 10px;font-family:var(--font-display);font-size:clamp(34px,4.2vw,58px);line-height:1;letter-spacing:-.02em;text-transform:uppercase}.career-timeline-archive-entry p{max-width:60ch;margin:0;color:var(--muted);word-break:keep-all}@keyframes portfolio-letter-in{0%{opacity:0;filter:blur(5px);transform:translateY(11px) rotateX(72deg)}to{opacity:1;filter:blur(0);transform:translateY(0) rotateX(0)}}@keyframes portfolio-line-scan{0%{transform:translate(-102%)}to{transform:translate(102%)}}@keyframes typewriter-cursor-blink{0%,45%{opacity:1}46%,to{opacity:0}}@keyframes section-title-reveal-forward{0%{clip-path:inset(0 100% 0 0);opacity:0;transform:translate(-22px)}62%{opacity:1}to{clip-path:inset(0 0 0 0);opacity:1;transform:translate(0)}}@keyframes section-title-reveal-backward{0%{clip-path:inset(0 0 0 100%);opacity:0;transform:translate(22px)}62%{opacity:1}to{clip-path:inset(0 0 0 0);opacity:1;transform:translate(0)}}@keyframes section-title-reveal-down{0%{clip-path:inset(0 0 100% 0);opacity:0;transform:translateY(-18px)}62%{opacity:1}to{clip-path:inset(0 0 0 0);opacity:1;transform:translateY(0)}}@keyframes section-content-reveal{0%{clip-path:inset(0 0 100% 0);opacity:.45}to{clip-path:inset(0 0 0 0);opacity:1}}@keyframes section-fill-edge{0%{transform:translateY(-18px) scaleX(.08);transform-origin:left center;opacity:.5}72%{opacity:.34}to{transform:translateY(520px) scaleX(1);transform-origin:left center;opacity:0}}@media(prefers-reduced-motion:reduce){.hero:after,.hero-copy,.eyebrow:after,.eyebrow-letter,.typewriter-cursor,.section-rail-fill,.section-rail-dot,.section-rail-label,.section-head h2,.section-content-reveal,.section-content-reveal:before{animation:none;transition:none}.hero-copy,.eyebrow-letter,.section-head h2,.section-content-reveal{opacity:1;filter:none;transform:none;clip-path:none}}.case-topbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:24px 32px;background:color-mix(in oklch,var(--bg),transparent 8%);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid color-mix(in oklch,var(--fg),transparent 86%)}.back{min-height:40px;border:0;border-bottom:1px solid var(--fg);background:transparent;cursor:pointer;font-size:12px;letter-spacing:.1em;text-transform:uppercase}.case-hero{min-height:625px;padding:90px 32px 70px;display:grid;align-items:end;border-bottom:2px solid var(--fg)}.case-hero-inner{width:min(1200px,100%);margin:0 auto;display:grid;grid-template-columns:1.4fr .6fr;gap:60px;align-items:end}.case-hero h1{margin:0;font-family:var(--font-display);font-size:clamp(58px,10vw,119px);line-height:.86;letter-spacing:-.03em;text-transform:uppercase;max-width:100%;overflow-wrap:anywhere}.summary{color:#3d3d3d;font-size:clamp(16px,1.35vw,17px);max-width:38ch;margin:0;word-break:keep-all}.case-main{padding:80px 32px 120px}.content{width:min(1200px,100%);margin:0 auto;display:grid;grid-template-columns:.62fr 1.38fr;gap:60px}.toc{position:sticky;top:92px;align-self:start;display:grid;gap:10px;font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.toc button{width:fit-content;border:0;border-bottom:1px solid transparent;background:transparent;padding:6px 0;cursor:pointer;text-transform:uppercase}.toc button[aria-selected=true]{color:var(--fg);border-color:var(--fg)}.panel{border-top:2px solid var(--fg);padding-top:30px}.panel h2{margin:0 0 20px;font-family:var(--font-display);font-size:clamp(38px,4.8vw,57px);line-height:.95;letter-spacing:-.02em;text-transform:uppercase}.panel p{max-width:66ch;color:var(--muted);font-size:17px;word-break:keep-all}.rule-list{margin:32px 0 0;padding:0;list-style:none;border-top:1px solid color-mix(in oklch,var(--fg),transparent 82%)}.rule-list li{display:grid;grid-template-columns:120px 1fr;gap:24px;padding:22px 0;border-bottom:1px solid color-mix(in oklch,var(--fg),transparent 82%)}.rule-list code{font-family:var(--font-mono);font-size:12px;color:var(--muted);letter-spacing:.08em}.diagram{margin-top:34px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--fg);border-left:1px solid var(--fg)}.node{min-height:134px;padding:18px;border-right:1px solid var(--fg);border-bottom:1px solid var(--fg);display:flex;flex-direction:column;justify-content:space-between;background:var(--surface)}.node strong{font-size:18px}.mail-action{width:fit-content;margin-top:28px;text-decoration:none}.case-contact{margin-bottom:110px}@media(max-width:900px){.topbar{padding:22px 20px 0}.case-topbar{padding:20px}.brand{--brand-logo-height: 23px}.nav{gap:14px;font-size:11px}.hero{min-height:108svh;padding-inline:20px}.sns{left:20px;bottom:22px}.hero-index{display:none}.main,.case-main{padding:56px 20px 90px}.section-switcher{min-height:auto;padding-top:0}.section-rail{--rail-item-width: 72px;--rail-item-half: 36px;position:relative;left:auto;top:auto;width:100%;height:86px;margin-top:42px;margin-bottom:42px}.section-rail:before{top:28px}.section-rail-item{height:92px}.section-rail-dot{left:29.5px;top:29.5px}.section-rail-item:after{display:none}.section-rail-label{left:50%;top:70px;width:max-content;margin-top:0;font-size:11px;transform:translate(-50%)}.section-rail-item:hover .section-rail-label{transform:translate(-50%) translateY(-2px)}.section-head{display:block}.filters{margin-top:22px;justify-content:flex-start}.card-list,.stack-grid,.career-timeline,.career-timeline-archive{margin-top:0}.section-content-reveal:not(:empty):before{top:0}.info-card{grid-template-columns:1fr;gap:18px;padding:32px 0}.card-actions{justify-self:start;align-items:flex-start;flex-direction:row;flex-wrap:wrap}.stack-grid{grid-template-columns:repeat(2,1fr)}.career-timeline{--career-axis-x: 8px;--career-dot-slot: 16px;--career-dot-slot-half: 8px;padding-left:0}.career-timeline:before{left:var(--career-axis-x);top:8px;height:calc(100% - 16px)}.career-timeline-item{grid-template-columns:var(--career-dot-slot) 52px minmax(0,1fr);gap:10px;padding-left:calc(var(--career-axis-x) - var(--career-dot-slot-half));min-height:96px}.career-timeline p{font-size:15px}.career-timeline-archive:before{left:8px}.career-timeline-archive-item{grid-template-columns:1fr;gap:18px;padding-left:34px;min-height:0}.career-timeline-archive-marker{display:flex;gap:12px;align-items:center;padding-top:0;position:static}.career-timeline-archive-index{text-align:left}.career-timeline-archive-dot{order:-1;width:16px;height:16px;position:absolute;left:0;top:0;z-index:1;transform:none}.career-timeline-archive-entry{padding-bottom:34px}.contact{grid-template-columns:1fr}.case-hero{padding:70px 20px 56px;min-height:560px}.case-hero-inner,.content{grid-template-columns:1fr;gap:34px}.toc{position:static;display:flex;flex-wrap:wrap;gap:16px}.rule-list li{grid-template-columns:1fr;gap:8px}.diagram{grid-template-columns:1fr}}@media(max-width:520px){.nav a:nth-child(2),.nav a:nth-child(3){display:none}.hero h1{font-size:clamp(58px,18vw,86px)}.section-rail-label{font-size:10px}.case-hero h1{font-size:clamp(44px,15vw,62px);letter-spacing:-.04em}.sns{right:20px;flex-wrap:wrap}.stack-grid{grid-template-columns:1fr}.career-timeline-archive-entry h3{font-size:clamp(34px,12vw,52px)}.career-timeline-archive-meta{gap:8px}.contact{margin-top:70px}}
