:root{--bg: #07060a;--fg: #ffffff;--muted: rgba(255, 255, 255, .7);--accent: #ffffff;--ease: cubic-bezier(.22, 1, .36, 1);--serif: "Instrument Serif", Georgia, serif;--sans: "Space Grotesk", system-ui, sans-serif;--pad: clamp(1.25rem, 5vw, 6rem)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:auto;scrollbar-gutter:auto;scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar,body::-webkit-scrollbar,#scroll::-webkit-scrollbar{width:0;height:0;display:none}body{background:var(--bg);color:var(--fg);font-family:var(--sans);font-weight:300;-webkit-font-smoothing:antialiased;overflow-x:hidden;cursor:none}@media (hover: none){body{cursor:auto}}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}#gl{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0;display:block}#gl:after{content:none}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(120% 120% at 50% 50%,#07060a00,#07060a59 70%,#07060a99)}main{position:relative;z-index:1}.aspect-word{position:relative;width:fit-content}.aspect-dots{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;opacity:0}.aspect-dot{position:absolute;top:0;left:0;width:13px;height:5px;overflow:visible;--glow: 1;--bar: 1;border-radius:999px;background:color-mix(in srgb,var(--c) calc(var(--bar) * 100%),transparent);box-shadow:0 0 calc(18px * var(--glow) * var(--bar)) var(--c),0 0 calc(6px * var(--glow) * var(--bar)) var(--c);filter:drop-shadow(0 0 calc(4px * var(--glow)) var(--c)) drop-shadow(0 0 calc(10px * var(--glow)) color-mix(in srgb,var(--c) 45%,transparent));will-change:transform,width,height}.aspect-dot path{fill:var(--c)}.user-core{position:relative;display:flex;flex-direction:column;align-items:center;gap:.4rem;margin:clamp(2rem,8vh,6rem) 0}.user-core__word{font-family:var(--serif);font-size:clamp(3rem,12vw,9rem);line-height:.9;letter-spacing:.02em}.user-core__sub{font-family:var(--sans);font-weight:300;font-size:clamp(.85rem,1.6vw,1.1rem);letter-spacing:.28em;text-transform:uppercase;color:var(--muted)}.lede--center{max-width:46ch;margin-inline:auto;text-align:center}.section{position:relative;min-height:100vh;padding:clamp(4rem,12vh,12rem) var(--pad);display:flex;flex-direction:column;justify-content:center}.wrap{max-width:1100px;width:100%;margin:0 auto}.wrap--center{text-align:center}.section__num{display:inline-block;font-size:.8rem;letter-spacing:.25em;text-transform:uppercase;color:var(--muted);margin-bottom:2rem}.section--hero{align-items:flex-start;justify-content:flex-end;min-height:100vh}.hero{max-width:1100px;margin:0 auto;width:100%}.hero__eyebrow{font-size:.85rem;letter-spacing:.3em;text-transform:uppercase;color:var(--muted);margin-bottom:1.5rem}.hero__title{font-family:var(--serif);font-weight:400;line-height:.92;font-size:clamp(2.6rem,9vw,7.5rem);letter-spacing:-.02em;margin-bottom:1.5rem}.hero__title .line{display:block}.line--italic{font-style:italic;color:var(--accent)}.hero__sub{font-family:var(--serif);font-style:italic;font-size:clamp(1.25rem,3vw,2.2rem);color:var(--fg);max-width:28ch;margin-bottom:1rem}.hero__role{font-size:clamp(.85rem,1.3vw,1.05rem);line-height:1.5;color:var(--muted);max-width:40ch;margin-bottom:2.5rem}.lede{font-size:clamp(1rem,1.6vw,1.3rem);line-height:1.6;color:var(--muted);max-width:44ch}.timeline{list-style:none}.timeline-item{display:grid;grid-template-columns:clamp(5rem,12vw,9rem) 1fr;gap:clamp(1.5rem,4vw,3rem);padding:clamp(2.5rem,7vh,6rem) 0;border-top:1px solid rgba(255,255,255,.12);transition:opacity .5s var(--ease)}.timeline .timeline-item:last-child{border-bottom:1px solid rgba(255,255,255,.12)}.timeline-item__year{font-family:var(--serif);font-size:clamp(1.4rem,3vw,2.4rem);color:var(--muted);font-variant-numeric:tabular-nums;letter-spacing:.02em;padding-top:.15em}.timeline-item__body{max-width:56ch}.timeline-item__org{display:inline-flex;align-items:center;height:38px;padding:0 1rem;border:1px solid rgba(255,255,255,.18);border-radius:100px;margin-bottom:.9rem;background:#ffffff08}.timeline-item__logo{height:16px;width:auto;display:block;opacity:.92}.timeline-item__org-text{font-family:var(--sans);font-weight:700;font-size:.95rem;letter-spacing:.16em;text-transform:uppercase;color:var(--fg)}.timeline-item__role{display:block;font-size:.9rem;letter-spacing:.04em;color:var(--muted);margin-bottom:1.1rem}.timeline-item__org[data-logo=brainlab] .timeline-item__logo{height:16px}.timeline-item__org[data-logo=soley] .timeline-item__logo{height:15px}.timeline-item__headline{font-family:var(--serif);font-weight:400;font-size:clamp(1.7rem,4.5vw,3.4rem);line-height:1.05;letter-spacing:-.01em;margin-bottom:.75rem}.timeline-item__sub{font-size:clamp(1rem,1.6vw,1.25rem);line-height:1.6;color:var(--muted);max-width:46ch}.timeline-item__wins{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}.win-card{display:flex;flex-direction:column;gap:.5rem;padding:1.1rem 1.4rem;min-width:220px;flex:1 1 220px;border:1px solid rgba(255,255,255,.18);border-radius:14px;background:#ffffff08;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:transform .5s var(--ease),border-color .4s var(--ease),background .4s var(--ease)}.win-card:hover{transform:translateY(-4px);border-color:#fff6;background:#ffffff0f}.win-card__title{font-family:var(--serif);font-size:clamp(1.3rem,2.5vw,1.8rem);line-height:1.05}.win-card__sub{font-size:.85rem;line-height:1.45;color:var(--muted)}.win-card--flip .win-card__sub{order:1;font-family:var(--serif);font-size:clamp(1.3rem,2.5vw,1.8rem);line-height:1.15;color:var(--fg)}.win-card--flip .win-card__title{order:2;font-family:var(--sans);font-size:.85rem;line-height:1.45;color:var(--muted)}@media (max-width: 600px){.timeline-item{grid-template-columns:1fr;gap:.75rem}.timeline-item__wins{flex-direction:column;gap:.6rem;margin-top:1.25rem}.win-card{min-width:0;flex:0 0 auto;padding:.85rem 1rem;border-radius:12px}.win-card__title,.win-card--flip .win-card__sub{font-size:1.15rem}.win-card--flip .win-card__title{font-size:.85rem}}.section--contact{text-align:center;align-items:center}.contact-links{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:3rem;font-size:.95rem;letter-spacing:.1em;text-transform:uppercase}.contact-links a{color:var(--fg);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .3s var(--ease),color .3s var(--ease)}.contact-links a:hover{color:var(--accent);border-color:var(--accent)}.contact-links__sep{color:var(--muted)}.contact-mail{display:inline-block;font-family:var(--serif);font-size:clamp(2rem,8vw,6rem);color:var(--fg);text-decoration:none;letter-spacing:-.02em;margin:1.5rem 0 3rem;transition:color .4s var(--ease),letter-spacing .6s var(--ease)}.contact-mail:hover{color:var(--accent);letter-spacing:0;font-style:italic}.contact-foot{font-size:.85rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);display:inline-block}.hud{position:fixed;top:0;left:0;height:100vh;width:var(--pad);z-index:5;display:flex;flex-direction:column;justify-content:center;align-items:center;pointer-events:none;mix-blend-mode:difference}.hud__index{list-style:none;display:flex;flex-direction:column;gap:.9rem}.hud__index li{position:relative;width:8px;height:8px;border-radius:50%;border:1px solid var(--fg);cursor:pointer;pointer-events:auto;transition:transform .5s var(--ease),background .5s var(--ease),box-shadow .5s var(--ease)}.hud__index li:before{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px}.hud__index li:hover{transform:scale(1.5);background:var(--fg)}.hud__index li.is-active{background:var(--fg);transform:scale(1.7);box-shadow:0 0 8px 1px #ffffff80}@media (max-width: 720px){.hud{display:none}}.cursor{position:fixed;top:0;left:0;z-index:50;pointer-events:none;mix-blend-mode:difference}.cursor__dot,.cursor__ring{position:absolute;top:0;left:0;border-radius:50%;transform:translate(-50%,-50%)}.cursor__dot{width:6px;height:6px;background:#fff}.cursor__ring{width:38px;height:38px;border:1px solid rgba(255,255,255,.6);transition:width .3s var(--ease),height .3s var(--ease)}.cursor.is-hover .cursor__ring{width:64px;height:64px}@media (hover: none){.cursor{display:none}}[data-split]{will-change:transform}.split-line{display:block;overflow:hidden}.split-word{display:inline-block;will-change:transform}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}
