.hero{position:relative;height:100vh;width:100%;padding:28px var(--gutter);overflow:hidden}.hero-topbar{display:flex;justify-content:space-between;margin-top:10px;font-size:12px;letter-spacing:.04em;color:var(--text)}.hero-resume-link{color:inherit;text-decoration:none;transition:opacity .15s ease}.hero-resume-link:hover{opacity:.6}.hero-copy{position:absolute;top:max(220px,26vh);left:var(--gutter);max-width:560px}.hero-copy h1{font-size:clamp(36px,6.5vw,100px);line-height:.94;font-weight:600;letter-spacing:-.01em;margin-bottom:28px}.hero-copy p{font-size:clamp(17px,1.7vw,22px);font-weight:400;color:var(--text);line-height:1.5;max-width:460px}.hero-helix{position:absolute;top:6.5%;left:52%;transform:translate(-50%);height:96%;width:340px;max-width:40vw}.hero-helix svg{width:100%;height:100%}.hero-access{position:absolute;bottom:160px;right:var(--gutter);font-size:11px;letter-spacing:.04em;color:var(--text-meta)}.hero-enter{position:absolute;bottom:24px;right:var(--gutter);font-size:clamp(48px,10vw,160px);font-weight:600;letter-spacing:-.02em;line-height:1;color:var(--text);transition:opacity .15s ease}.hero-enter:hover{opacity:.6}@media (max-width: 720px){.hero-helix{display:none}.hero-copy{max-width:300px}}.trajectory{padding:120px 0 80px}.trajectory h2{font-size:clamp(72px,13vw,210px);font-weight:900;line-height:.86;letter-spacing:-.02em;max-width:1150px;color:var(--text)}.trajectory-meta{display:flex;gap:64px;margin-top:32px}.trajectory-meta-col{display:flex;flex-direction:column;gap:6px;font-size:24px;font-weight:400;letter-spacing:0;color:var(--text)}@media (max-width: 720px){.trajectory-meta{flex-direction:column;gap:20px}}.works{padding:60px 0 100px}.works-grid{display:grid;grid-template-columns:280px 1fr;gap:200px}.works-title{font-size:clamp(36px,4.5vw,60px);font-weight:600;line-height:1;letter-spacing:-.01em;color:var(--text)}.works-list{max-width:560px}.works-item{display:grid;grid-template-columns:60px 1fr;gap:20px;margin-bottom:90px}.works-item:last-child{margin-bottom:0}.works-time{font-size:13px;color:var(--text-meta);padding-top:2px}.works-name{display:inline-block;font-style:italic;font-weight:400;font-size:22px;color:var(--text);text-decoration:none;margin-bottom:10px;transition:opacity .15s ease}.works-name:hover{opacity:.6}.works-description{font-size:15px;font-weight:400;line-height:1.5;color:var(--text);margin-bottom:14px}.works-stack{font-size:12px;font-weight:400;color:var(--text-muted);line-height:1.9}@media (max-width: 900px){.works-grid{gap:60px}}@media (max-width: 720px){.works-grid{grid-template-columns:1fr;gap:40px}}.contact{padding:100px 0 160px;position:relative}.contact-top{display:grid;grid-template-columns:280px 1fr;column-gap:200px;row-gap:24px;align-items:center}.contact-note{grid-column:2;grid-row:1;font-size:16px;font-weight:400;letter-spacing:.02em;color:var(--text);line-height:1.7;max-width:340px}@media (max-width: 900px){.contact-top{gap:60px}}.contact h2{grid-column:1;grid-row:1;font-size:clamp(56px,8vw,96px);font-weight:900;line-height:.92;letter-spacing:-.02em;color:var(--text);margin-bottom:0}.contact-cta{grid-column:1;grid-row:2;display:inline-block;font-size:32px;font-weight:400;color:var(--text);text-decoration:none;border-bottom:1px solid var(--text);padding-bottom:2px;transition:opacity .15s ease}.contact-cta:hover{opacity:.6}@media (max-width: 720px){.contact-top{grid-template-columns:1fr;gap:40px;align-items:start}.contact h2{grid-column:1;grid-row:1}.contact-note{grid-column:1;grid-row:2}.contact-cta{grid-column:1;grid-row:3}}.scroll-sections{position:relative;max-width:1680px;margin:0 auto;padding:0 var(--gutter)}.scroll-sections-content{max-width:calc(100% - var(--rail-width) - 24px)}.scroll-sections-rail{position:absolute;top:0;bottom:0;right:var(--gutter);width:var(--rail-width)}.scroll-sections-rail-sticky{position:sticky;top:40px;height:90vh;width:100%}.scroll-sections-rail-sticky svg{width:100%;height:100%}@media (max-width: 900px){.scroll-sections-rail{display:none}.scroll-sections-content{max-width:100%}}@font-face{font-family:PP Mori;src:url(/fonts/PPMori-Extralight.otf) format("opentype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:PP Mori;src:url(/fonts/PPMori-ExtralightItalic.otf) format("opentype");font-weight:200;font-style:italic;font-display:swap}@font-face{font-family:PP Mori;src:url(/fonts/PPMori-Regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:PP Mori;src:url(/fonts/PPMori-Italic.otf) format("opentype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:PP Mori;src:url(/fonts/PPMori-Semibold.otf) format("opentype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:PP Mori;src:url(/fonts/PPMori-SemiboldItalic.otf) format("opentype");font-weight:600;font-style:italic;font-display:swap}@font-face{font-family:PP Mori;src:url(/fonts/PPMori-Black.otf) format("opentype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:PP Mori;src:url(/fonts/PPMori-BlackItalic.otf) format("opentype");font-weight:900;font-style:italic;font-display:swap}:root{--bg: #FFFFFF;--text: #0E0E0C;--text-muted: #5C5A50;--text-meta: #8A8879;--strand-front: 14, 14, 12;--strand-back: 201, 199, 190;--strand-line: #D9D7CC;--font-display: "PP Mori", -apple-system, sans-serif;--rail-width: 300px;--content-max: 640px;--gutter: 32px}*{box-sizing:border-box}html{overflow-x:hidden}html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--font-display)}body.scroll-locked{overflow:hidden;height:100vh}h1,h2,h3,p{margin:0}a{color:inherit}button{font-family:inherit;background:none;border:none;cursor:pointer;padding:0;color:inherit}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
