.hero{padding:clamp(72px, 9vh, 96px) var(--gutter) 0}.stage{max-width:1360px;min-height:clamp(520px,82vh,780px);margin:0 auto;position:relative}.hero-art{aspect-ratio:670/620;transform-origin:55% 100%;z-index:4;pointer-events:none;will-change:transform;width:min(70%,930px);position:absolute;bottom:0;right:0}.hero-art img{max-width:none}.hero-art .live{width:100%;height:100%;transition:opacity 1.6s;position:absolute;inset:0;overflow:visible}.hero-art .paint{opacity:.001;will-change:opacity;transition:opacity 1.8s;display:none;position:absolute}:root[data-theme=light] .hero-art .paint-light,:root[data-theme=dark] .hero-art .paint-dark{display:block}.hero-art.painted .paint{opacity:1}.hero-art.painted .live{opacity:0}.hero-art .bokeh{aspect-ratio:1;opacity:.5;filter:blur(3px);animation:9s ease-in-out infinite alternate drift;animation-delay:var(--d);background:#f6dfe1;border-radius:50%;position:absolute}:root[data-theme=dark] .hero-art .bokeh{opacity:.1;background:#ff5468}@keyframes drift{0%{transform:translate(0,0)scale(1)}to{transform:translate(6px,-9px)scale(1.12)}}.hero-art .bf{opacity:0;transform-origin:0 0;will-change:transform, filter;width:0;height:0;position:absolute;top:0;left:0}.hero-art .wing{transform-origin:4px 92px;will-change:transform;width:100px;height:196px;position:absolute;top:-92px;left:-4px}.hero-art .bbody{width:40px;height:98px;position:absolute;top:-56px;left:-20px;overflow:visible}.bb{fill:#0c0809}.bseg{fill:none;stroke:#4a2327;stroke-width:.7px}.ant{fill:none;stroke:#0c0809;stroke-width:1.15px;stroke-linecap:round}:root[data-theme=dark] .bb{fill:#ecebe6}:root[data-theme=dark] .bseg{stroke:#b9a0a4}:root[data-theme=dark] .ant{stroke:#ecebe6}@media (prefers-reduced-motion:reduce){.hero-art .bokeh{animation:none}.hero-art .live,.hero-art .paint{transition:none}}.dust{pointer-events:none;z-index:2;width:100%;height:100%;position:absolute;inset:0}.hero-copy{z-index:3;max-width:46%;position:absolute;bottom:4px;left:0}.hero-copy h1{margin-left:-.02em;font-weight:400}.hero-copy .nm{font:400 clamp(60px, 6.9vw, 108px) / .95 var(--display);letter-spacing:-.012em;display:block}.hero-copy .say{font:italic 400 clamp(21px, 2vw, 29px) / 1.3 var(--display);letter-spacing:.002em;color:var(--ink);margin-top:12px;display:block}.hero-copy .say .aka{letter-spacing:.06em;color:var(--mute);margin-bottom:6px;font-size:.66em;display:block}.hero-copy .say .line{display:block}.home section{padding:clamp(40px, 7vh, 72px) var(--gutter) 0;position:relative}.home #experience{padding-bottom:clamp(64px,11vh,120px)}.wrap{max-width:1360px;margin:0 auto}.home h2,.page-title{font:400 clamp(32px, 3.2vw, 44px) / 1.1 var(--display);letter-spacing:-.01em;border-bottom:1.5px solid var(--ink);flex-wrap:wrap;align-items:baseline;gap:14px;padding-bottom:10px;display:flex}.page-title{font-size:clamp(42px,4.6vw,64px)}.exp{margin-top:2px;list-style:none}.job{border-bottom:1px solid var(--faint);grid-template-columns:minmax(300px,400px) minmax(0,1fr);align-items:center;gap:20px 40px;padding:26px 0;display:grid}.job .mark{align-items:center;gap:14px;min-height:60px;display:flex}.logo{filter:brightness(0);width:auto;max-width:100%;height:30px;display:block}:root[data-theme=dark] .logo{filter:brightness(0)invert(.93)}.logo.team{height:60px}.job .job-sep{fill:none;width:10px;height:44px;stroke:var(--ink);stroke-width:1.2px;stroke-linecap:round;opacity:.55;flex:none}.job .name{font:400 clamp(24px, 2.2vw, 30px) / 1.2 var(--display)}.job .meta{font:400 14.5px var(--hand);color:var(--mute);letter-spacing:.02em}.job ul{max-width:42em;list-style:none}.job li{padding-left:1.3em;font-size:16px;line-height:1.65;position:relative}.job li:before{content:"";background:var(--ink);width:.8em;height:1px;position:absolute;top:.85em;left:0}@media (width<=900px){.hero{padding-top:76px}.stage{flex-direction:column;min-height:0;display:flex}.hero-art{order:-1;width:100%;max-width:520px;margin:0 auto;position:relative;bottom:auto;right:auto}.hero-copy{max-width:none;margin-top:-6%;padding-bottom:24px;position:relative}.hero-copy h1{font-size:clamp(76px,22vw,124px)}.job{grid-template-columns:1fr;gap:12px;padding:22px 0}.job .mark{flex-wrap:wrap;gap:10px 12px}.logo{height:26px}.logo.team{height:52px}.job .job-sep{height:36px}}
