:root{color-scheme:dark;--color-bg:#07090e;--color-bg-deep:#04060a;--color-surface:#10131a;--color-surface-raised:#151924;--color-surface-soft:#0c0f15;--color-surface-hover:#1a1f2a;--color-surface-accent:#15162a;--color-border:#ffffff12;--color-border-strong:#ffffff1f;--color-border-subtle:#ffffff0b;--color-text:#f1f3f7;--color-text-secondary:#c2c7d2;--color-text-muted:#8d95a4;--color-text-faint:#68707e;--color-accent:#6257e8;--color-accent-bright:#786ef1;--color-accent-soft:#6257e824;--color-accent-border:#786ef133;--shadow-panel:0 18px 48px #00000042;--shadow-raised:0 12px 30px #0003;--shadow-hover:0 16px 36px #0000003d;--radius-lg:28px;--radius-md:20px;--radius-sm:14px;--radius-pill:999px;--layout-max:1120px;--reading-max:72ch;--page-gutter:clamp(.625rem, 2.8vw, 2rem);--section-gap:clamp(1rem, 2.4vw, 1.75rem);--panel-padding:clamp(1.25rem, 3.6vw, 2rem);--hero-padding:clamp(1.5rem, 5vw, 3.5rem);--header-offset:clamp(.5rem, 1.2vw, .75rem);--font-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--pointer-shift-x:0px;--pointer-shift-y:0px;--orbit-shift-x:0px;--orbit-shift-y:0px}@page{size:A4;margin:8mm}@media print{html{color-scheme:light!important;background:#fff!important}body.page--hello{--color-text:#111;--color-text-secondary:#2b2b2b;--color-text-muted:#4a4a4a;--color-text-faint:#666;--color-border:#00000029;--color-border-strong:#00000038;--color-border-subtle:#0000001c;--color-surface:#fff;--color-surface-raised:#fff;--color-surface-soft:#f7f7f7;--color-surface-hover:#fff;--color-surface-accent:#f7f7f7;--shadow-panel:none;--shadow-raised:none;--shadow-hover:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;font-size:8.5pt;color:#111!important;background:#fff!important}body.page--hello .orbital-bg,body.page--hello .site-header,body.page--hello .skip-link,body.page--hello .hello-actions,body.page--hello .hello-contact,body.page--hello .section__kicker{display:none!important}body.page--hello .page-shell,body.page--hello .hello-shell{width:100%;max-width:none;margin:0;padding:0}body.page--hello .surface,body.page--hello .hello-project,body.page--hello .stack-group,body.page--hello .stack-item{box-shadow:none!important}body.page--hello .hello-hero,body.page--hello .hello-section,body.page--hello .hello-contact{border:0;border-radius:0;padding:0;background:0 0!important}body.page--hello .hello-hero{border-bottom:1px solid var(--color-border);gap:2.5mm;padding-bottom:4mm}body.page--hello .hello-hero__identity{gap:1mm}body.page--hello .hero__eyebrow{color:#555;font-size:7pt}body.page--hello h1{font-size:23pt}body.page--hello h2{font-size:13pt}body.page--hello h3{font-size:9.5pt}body.page--hello p,body.page--hello dd,body.page--hello strong{line-height:1.45}body.page--hello .hello-hero__role{font-size:14pt}body.page--hello .hello-hero__intro,body.page--hello .hello-hero__availability{font-size:8.5pt}body.page--hello .hello-hero__availability:before{width:4px;height:4px;box-shadow:none;background:#555}body.page--hello .hello-print-contacts{color:#333;flex-wrap:wrap;gap:1.5mm 5mm;margin:0;font-size:7.2pt;font-style:normal;display:flex}body.page--hello .hello-print-contacts span:not(:last-child):after{color:#aaa;content:"·";margin-left:5mm}body.page--hello .hello-section,body.page--hello .hello-contact,body.page--hello .hello-two-column{margin-top:4mm}body.page--hello .hello-section__header{gap:1.5mm;margin-bottom:2mm}body.page--hello .hello-section__header .section-copy,body.page--hello .hello-project__status{display:none!important}body.page--hello .hello-projects{grid-template-columns:repeat(3,minmax(0,1fr));gap:2mm}body.page--hello .hello-project{border:1px solid var(--color-border-subtle);break-inside:avoid;gap:1.5mm;padding:2.3mm}body.page--hello .hello-project__meta{gap:.8mm}body.page--hello .stack-groups,body.page--hello .stack-groups--compact{grid-template-columns:repeat(3,minmax(0,1fr));gap:2mm}body.page--hello .stack-group{border:1px solid var(--color-border-subtle);break-inside:avoid;background:0 0;padding:2mm}body.page--hello .stack-group__title{margin-bottom:1.5mm;font-size:6.7pt}body.page--hello .stack-list{gap:1.2mm}body.page--hello .stack-item{background:0 0;border:0;min-height:0;padding:0;font-size:7.8pt}body.page--hello .stack-icon{color:#555;width:3mm;height:3mm}body.page--hello .hello-two-column{grid-template-columns:repeat(2,minmax(0,1fr));gap:6mm}body.page--hello .hello-timeline__item,body.page--hello .hello-education{break-inside:avoid}body.page--hello a[href^=http]:after,body.page--hello a[href^=mailto]:after{content:none}body.page--hello .reveal-section,body.page--hello .hello-project,body.page--hello .stack-group{opacity:1!important;animation:none!important;transform:none!important}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--color-bg-deep);scrollbar-width:thin;scrollbar-color:#786ef152 #ffffff06;scroll-padding-top:7.5rem}body{overscroll-behavior-y:none;min-height:100vh;color:var(--color-text);background:radial-gradient(circle at 50% -12%, #6257e814, transparent 32rem), linear-gradient(180deg, var(--color-bg) 0%, var(--color-bg-deep) 100%);font-family:var(--font-sans);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}body[data-active-section=hero]{--orbit-shift-x:0px;--orbit-shift-y:0px}body[data-active-section=currently]{--orbit-shift-x:18px;--orbit-shift-y:-10px}body[data-active-section=about]{--orbit-shift-x:-24px;--orbit-shift-y:-22px}body[data-active-section=stack]{--orbit-shift-x:20px;--orbit-shift-y:-34px}body[data-active-section=projects]{--orbit-shift-x:-18px;--orbit-shift-y:-48px}body[data-active-section=path]{--orbit-shift-x:30px;--orbit-shift-y:-62px}body[data-active-section=moments]{--orbit-shift-x:28px;--orbit-shift-y:-78px}body[data-active-section=contact]{--orbit-shift-x:-10px;--orbit-shift-y:-92px}html::-webkit-scrollbar,body::-webkit-scrollbar{width:12px;height:12px}html::-webkit-scrollbar-track,body::-webkit-scrollbar-track{background:#ffffff05}html::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb{border-radius:var(--radius-pill);background:#786ef152 padding-box padding-box;border:3px solid #0000}html::-webkit-scrollbar-thumb:hover,body::-webkit-scrollbar-thumb:hover{background:#786ef175 padding-box padding-box}main,header,section,div,article{position:relative}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{color:inherit}.skip-link{z-index:100;border:1px solid var(--color-accent-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);color:var(--color-text);box-shadow:var(--shadow-raised);padding:.7rem .9rem;transition:transform .16s;position:fixed;top:.75rem;left:.75rem;transform:translateY(calc(-100% - 1.5rem))}.skip-link:focus-visible{transform:translateY(0)}:focus-visible{outline:2px solid var(--color-accent-bright);outline-offset:3px}p{color:var(--color-text-muted);text-wrap:pretty;margin:0;line-height:1.7}h1,h2,h3{color:var(--color-text);letter-spacing:-.03em;text-wrap:balance;margin:0;line-height:1.06}h1{font-size:clamp(2.75rem,8vw,5.4rem)}h2{font-size:clamp(1.75rem,4vw,2.5rem)}h3{font-size:clamp(1.02rem,1.8vw,1.12rem)}.surface{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-panel)}.site-header{top:var(--header-offset);z-index:24;width:min(calc(100% - var(--page-gutter) - var(--page-gutter)), var(--layout-max));border-radius:var(--radius-pill);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(.75rem,2vw,1.25rem);margin:0 auto;padding:.75rem clamp(.85rem,2vw,1.1rem);display:grid;position:sticky}.site-header--glass{border:1px solid var(--color-border);-webkit-backdrop-filter:blur(16px)saturate(120%);background:#0a0c12db;box-shadow:0 10px 34px #0000003d}.site-header__brand{min-width:0;color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.site-header__nav{justify-content:center;align-items:center;gap:clamp(.75rem,1.8vw,1.15rem);min-width:0;display:flex}.site-header__nav a,.site-header__locale{color:var(--color-text-muted);font-size:.92rem;transition:color .16s,background-color .16s,border-color .16s}.site-header__nav a{white-space:nowrap}.site-header__nav a:hover,.site-header__locale:hover{color:var(--color-text)}.site-header__locale{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-raised);justify-content:center;align-items:center;min-height:2.5rem;padding:0 .8rem;display:inline-flex}.hello-header{grid-template-columns:minmax(0,1fr) auto}.hello-header__actions{justify-content:flex-end;align-items:center;gap:.6rem;display:flex}.hello-header__personal{min-height:2.5rem;color:var(--color-text-muted);align-items:center;padding:0 .75rem;font-size:.9rem;transition:color .16s;display:inline-flex}.hello-header__personal:hover{color:var(--color-text)}.page-shell{z-index:2;width:min(calc(100% - var(--page-gutter) - var(--page-gutter)), var(--layout-max));margin:clamp(1rem,3vw,2rem) auto 0;padding-bottom:clamp(3.5rem,8vw,5rem)}.hero,.currently,.section{scroll-margin-top:7.5rem}.hero{min-height:clamp(30rem,100svh - 9rem,40rem);padding:var(--hero-padding);border-radius:clamp(var(--radius-md), 3vw, 2rem);flex-direction:column;justify-content:flex-start;gap:clamp(1.5rem,4vw,2rem);display:flex}.surface--hero{background:linear-gradient(145deg, #6257e809, transparent 38%), var(--color-surface)}.hero__intro{gap:clamp(.9rem,2.2vw,1.15rem);max-width:min(100%,54rem);display:grid}.hero__eyebrow,.section__kicker{color:var(--color-text-faint);letter-spacing:.2em;text-transform:uppercase;font-size:.72rem}.hero__subtitle,.section-copy{max-width:var(--reading-max);color:var(--color-text-muted);font-size:clamp(.98rem,1.6vw,1.05rem)}.hero__actions{flex-wrap:wrap;gap:.7rem;margin-top:auto;display:flex}.button{border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface-raised);min-height:2.8rem;color:var(--color-text-secondary);cursor:pointer;justify-content:center;align-items:center;padding:0 1rem;transition:transform .16s,color .16s,background-color .16s,border-color .16s,box-shadow .16s;display:inline-flex}.button:hover{border-color:var(--color-border-strong);background:var(--color-surface-hover);color:var(--color-text);box-shadow:var(--shadow-raised);transform:translateY(-1px)}.button--primary{background:var(--color-accent);color:#fff;border-color:#0000;box-shadow:0 8px 24px #352d963d}.button--primary:hover{background:var(--color-accent-bright);border-color:#0000}.button--ghost{box-shadow:none;background:0 0}.currently,.section{margin-top:var(--section-gap)}.currently,.section__inner{padding:var(--panel-padding);border-radius:var(--radius-lg)}.section__header-row{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:clamp(1.15rem,2.6vw,1.5rem);display:flex}.section__header{flex-direction:column;gap:.5rem;min-width:0;display:flex}.section__actions{flex-shrink:0;justify-content:flex-end;align-items:center;display:flex}.section__header--compact{margin-bottom:1.25rem}.currently__grid,.cards-grid{gap:clamp(.75rem,2vw,1rem);display:grid}.currently__grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,15.5rem),1fr))}.cards-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr))}.currently__card{border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:var(--color-surface-raised);padding:clamp(1rem,2.4vw,1.15rem)}.currently__card span{color:var(--color-text-faint);text-transform:lowercase;margin-bottom:.5rem;font-size:.86rem;display:block}.currently__card strong{color:var(--color-text-secondary);font-size:1rem;line-height:1.55}.stack-section__intro{margin-bottom:clamp(1rem,2.4vw,1.25rem)}.stack-groups{grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:.85rem;display:grid}.stack-group{border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:var(--color-surface-raised);padding:clamp(.9rem,2.2vw,1.05rem);transition:transform .22s cubic-bezier(.22,1,.36,1),border-color .18s,background-color .18s}.stack-group__title{color:var(--color-text-faint);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.8rem;font-size:.76rem;font-weight:700}.stack-list{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.stack-item{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-soft);min-height:2.2rem;color:var(--color-text-secondary);align-items:center;gap:.5rem;padding:0 .7rem;font-size:.88rem;transition:transform .16s,color .16s,border-color .16s,background-color .16s;display:inline-flex}.stack-icon{width:1rem;height:1rem;color:var(--color-text-muted);flex:none;justify-content:center;align-items:center;display:inline-flex}.stack-icon svg{width:100%;height:100%;display:block}.stack-groups--compact{grid-template-columns:repeat(auto-fit,minmax(min(100%,14.5rem),1fr))}.stack-groups--compact .stack-group{background:var(--color-surface-soft)}.path-journey{padding-top:.25rem}.path-journey__list{gap:.85rem;margin:0;padding:0;list-style:none;display:grid}.path-step{grid-template-columns:clamp(2.1rem,5vw,2.75rem) minmax(0,1fr);align-items:stretch;gap:clamp(.7rem,2vw,1rem);display:grid}.path-step__orbit{justify-content:center;align-items:center;display:flex}.path-step__orbit:before{content:"";background:linear-gradient(#ffffff06 0%,#786ef152 20%,#6257e85c 50%,#ffffff06 100%);width:1px;position:absolute;top:-1.1rem;bottom:-1.1rem;left:50%;transform:translate(-50%)}.path-step:first-child .path-step__orbit:before{top:50%}.path-step:last-child .path-step__orbit:before{bottom:50%}.path-step.is-future .path-step__orbit:before{background:repeating-linear-gradient(#786ef16b 0 7px,#0000 7px 14px)}.path-step__dot{z-index:1;border-radius:var(--radius-pill);background:var(--color-accent);border:2px solid #ffffff6b;width:.75rem;height:.75rem;box-shadow:0 0 0 4px #6257e814}.path-step__card{border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:var(--color-surface-raised);padding:clamp(1rem,2.4vw,1.25rem)}.path-step.is-future .path-step__card{border-style:dashed;border-color:var(--color-accent-border);background:var(--color-surface-accent)}.path-step__label{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-soft);min-height:1.6rem;color:var(--color-text-faint);letter-spacing:.11em;align-items:center;margin-bottom:.75rem;padding:0 .55rem;font-size:.74rem;display:inline-flex}.path-step__card h3{margin-bottom:.6rem}.path-step__card p{max-width:58ch}.path-step.is-future .path-step__dot{opacity:.9}.projects-showcase{gap:clamp(1rem,2.4vw,1.25rem);display:grid}.projects-showcase__intro{max-width:var(--reading-max)}.project-detail-shell{min-height:0}.project-detail{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-surface-raised);gap:clamp(.9rem,2.2vw,1.15rem);padding:clamp(1rem,3vw,1.5rem);display:grid}.project-detail[hidden]{display:none!important}.project-detail__top,.project-detail__heading{display:grid}.project-detail__top{gap:.85rem}.project-detail__heading{gap:.7rem}.project-detail__eyebrow-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.project-detail__eyebrow,.project-preview__eyebrow{color:var(--color-text-faint);letter-spacing:.15em;text-transform:uppercase;font-size:.7rem}.project-detail__status,.project-detail__label,.project-preview__status{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-soft);width:fit-content;min-height:1.8rem;color:var(--color-text-muted);align-items:center;padding:0 .6rem;font-size:.78rem;display:inline-flex}.project-detail__summary{max-width:var(--reading-max)}.project-detail__metrics{grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));gap:.75rem;display:grid}.project-metric{border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:var(--color-surface-soft);gap:.3rem;padding:.85rem;display:grid}.project-metric__value{color:var(--color-text);font-size:1.35rem;line-height:1}.project-metric__label{color:var(--color-text-faint);font-size:.8rem}.project-detail__expanded-copy{opacity:0;max-height:0;margin-top:0;transition:max-height .42s cubic-bezier(.22,1,.36,1),opacity .22s,margin-top .42s cubic-bezier(.22,1,.36,1),transform .42s cubic-bezier(.22,1,.36,1);display:block;overflow:hidden;transform:translateY(-8px)}.projects-showcase[data-expanded=true] .project-detail.is-active .project-detail__expanded-copy{opacity:1;max-height:24rem;margin-top:.1rem;transform:translate(0,0)}.project-detail__meta-grid{gap:.75rem;display:grid}.project-detail__meta-row{color:var(--color-text-muted);grid-template-columns:minmax(5.25rem,.18fr) minmax(0,1fr);align-items:start;gap:.75rem;display:grid}.project-detail__actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.project-detail__links{flex-wrap:wrap;gap:.7rem;display:flex}.project-detail__link,.project-detail__toggle{min-height:2.5rem;padding:0 .85rem}.projects-rail{opacity:1;scrollbar-width:thin;grid-auto-columns:clamp(14rem,28vw,17.5rem);grid-auto-flow:column;gap:.85rem;max-height:20rem;margin-top:-.5rem;padding-top:.5rem;padding-bottom:.5rem;transition:max-height .42s cubic-bezier(.22,1,.36,1),opacity .22s,padding .42s cubic-bezier(.22,1,.36,1),margin .42s cubic-bezier(.22,1,.36,1),transform .42s cubic-bezier(.22,1,.36,1);display:grid;overflow:auto hidden;transform:translate(0,0)}.projects-rail::-webkit-scrollbar{height:8px}.projects-rail::-webkit-scrollbar-thumb,.moments-rail::-webkit-scrollbar-thumb{border-radius:var(--radius-pill);background:#ffffff1f}.project-preview{border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:var(--color-surface-raised);color:inherit;text-align:left;cursor:pointer;gap:.65rem;padding:1rem;transition:transform .16s,border-color .16s,background-color .16s,box-shadow .16s;display:grid}.project-preview:hover{border-color:var(--color-border-strong);background:var(--color-surface-hover);transform:translateY(-2px)}.project-preview.is-active{border-color:var(--color-accent-border);box-shadow:0 0 0 1px #6257e80d}.project-preview.is-featured{background:var(--color-surface-accent)}.project-preview__title{color:var(--color-text);font-size:1rem;line-height:1.28}.project-preview__summary{color:var(--color-text-muted);font-size:.93rem;line-height:1.58}.projects-showcase[data-expanded=true] .projects-rail{opacity:0;pointer-events:none;max-height:0;margin-top:0;padding-top:0;padding-bottom:0;transform:translateY(-10px)}.contact-panel{gap:clamp(1rem,2.5vw,1.4rem);display:grid}.contact-panel__intro{max-width:var(--reading-max);gap:.6rem;display:grid}.contact-panel__note{color:var(--color-text-faint)}.contact-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,15.5rem),1fr));gap:.85rem;display:grid}.contact-card{border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:var(--color-surface-raised);gap:.75rem;min-height:11rem;padding:1rem;transition:transform .16s,border-color .16s,background-color .16s,box-shadow .16s;display:grid}.contact-card:hover{border-color:var(--color-border-strong);background:var(--color-surface-hover);box-shadow:var(--shadow-raised);transform:translateY(-1px)}.contact-card--static:hover{border-color:var(--color-border-subtle);background:var(--color-surface-raised);box-shadow:none;transform:none}.contact-card--preferred{border-color:var(--color-accent-border)}.contact-card--primary{background:var(--color-surface-accent)}.contact-card__top{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.contact-card__identity{align-items:center;gap:.65rem;min-width:0;display:inline-flex}.contact-card__icon{border:1px solid var(--color-border);background:var(--color-surface-soft);width:2.1rem;height:2.1rem;color:var(--color-text-secondary);border-radius:.7rem;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.contact-card__label{color:var(--color-text-faint);letter-spacing:.1em;text-transform:uppercase;font-size:.8rem}.contact-card__badge{border:1px solid var(--color-accent-border);border-radius:var(--radius-pill);background:var(--color-accent-soft);min-height:1.5rem;color:var(--color-text-secondary);letter-spacing:.07em;text-transform:uppercase;align-items:center;padding:0 .5rem;font-size:.7rem;display:inline-flex}.contact-card__value{color:var(--color-text-secondary);word-break:break-word;font-size:1.05rem;line-height:1.35}.contact-card__meta{max-width:32ch;color:var(--color-text-muted)}.contact-card__action{color:var(--color-text-faint);margin-top:auto;font-size:.9rem}.contact-panel__actions{flex-wrap:wrap;gap:.7rem;display:flex}.social-icon{justify-content:center;align-items:center;width:1.1rem;height:1.1rem;display:inline-flex}.social-icon svg{width:100%;height:100%;display:block}.moments-carousel{gap:0;display:grid}.moments-carousel__controls,.moments-header-actions{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;display:flex}.moments-carousel__button{min-height:2.5rem}.moments-carousel__mobile-controls{display:none}.moments-rail{scrollbar-width:thin;align-items:flex-start;gap:clamp(.8rem,2vw,1.1rem);padding-bottom:.5rem;display:flex;overflow:auto hidden}.moment-card{border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:var(--color-surface-raised);opacity:0;transition:opacity .42s,transform .72s cubic-bezier(.22,1,.36,1);transition-delay:calc(var(--moment-index,0) * 45ms);flex:none;padding:.55rem;transform:translateY(18px)scale(.985)}.moment-card[data-in-view=true]{opacity:1;transform:translate(0,0)scale(1)}.moment-card__visual{border:1px solid var(--color-border-subtle);border-radius:calc(var(--radius-sm) - .2rem);background:var(--color-surface-soft);overflow:hidden}.moment-card__visual picture{display:block}.moment-card__image{z-index:1;opacity:0;width:auto;max-width:min(72vw,61rem);height:clamp(20rem,46vw,32.5rem);transition:opacity .32s,transform .56s;display:block;transform:scale(1.015)}.moment-card__placeholder{z-index:0;background:linear-gradient(90deg, #ffffff06 0%, #ffffff0e 20%, #ffffff05 40%, #ffffff06 100%), var(--color-surface-soft);pointer-events:none;background-size:220% 100%,100% 100%;transition:opacity .24s;animation:1.4s linear infinite moments-shimmer;position:absolute;inset:0}.moment-card[data-loaded=true][data-in-view=true] .moment-card__image{opacity:1;transform:none}.moment-card[data-loaded=true] .moment-card__placeholder{opacity:0}@keyframes moments-shimmer{0%{background-position:200% 0,0 0}to{background-position:-20% 0,0 0}}.moments-empty-state{color:var(--color-text-secondary)}.site-footer{width:min(100%,57.5rem);margin:var(--section-gap) auto 0;border-radius:var(--radius-md);box-shadow:var(--shadow-raised);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.85rem;padding:.9rem 1rem;display:flex}.site-footer__meta{gap:.25rem;display:grid}.site-footer__copy{color:var(--color-text-faint);font-size:.82rem}.site-footer__actions{flex-wrap:wrap;gap:.6rem;display:flex}.site-footer__link{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-raised);min-height:2.2rem;color:var(--color-text-muted);align-items:center;padding:0 .7rem;transition:color .16s,border-color .16s,background-color .16s;display:inline-flex}.site-footer__link:hover{border-color:var(--color-border-strong);background:var(--color-surface-hover);color:var(--color-text)}.hello-shell{width:min(calc(100% - var(--page-gutter) - var(--page-gutter)), 1040px)}.hello-hero,.hello-section,.hello-contact{border-radius:var(--radius-lg);padding:var(--panel-padding)}.hello-hero{background:linear-gradient(145deg, #6257e80b, transparent 42%), var(--color-surface);gap:clamp(1.5rem,4vw,2.5rem);display:grid}.hello-hero__identity{gap:.85rem;max-width:50rem;display:grid}.hello-hero__role{color:var(--color-text);letter-spacing:-.035em;font-size:clamp(1.55rem,4vw,2.75rem);font-weight:760;line-height:1.05}.hello-hero__intro{max-width:68ch;color:var(--color-text-secondary);font-size:clamp(1rem,1.8vw,1.08rem)}.hello-hero__availability{color:var(--color-text-muted);align-items:flex-start;gap:.65rem;font-size:.95rem;display:flex}.hello-hero__availability:before{border-radius:var(--radius-pill);background:var(--color-accent-bright);width:.48rem;height:.48rem;box-shadow:0 0 0 4px var(--color-accent-soft);content:"";flex:none;margin-top:.52em}.hello-actions{flex-wrap:wrap;gap:.7rem;display:flex}.hello-print-contacts{display:none}.hello-section,.hello-contact,.hello-two-column{margin-top:var(--section-gap)}.hello-section__header{gap:.55rem;margin-bottom:clamp(1rem,2.6vw,1.35rem);display:grid}.hello-projects{grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:.85rem;display:grid}.hello-project{border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:var(--color-surface-raised);align-content:start;gap:.75rem;padding:1rem;transition:transform .22s cubic-bezier(.22,1,.36,1),border-color .18s,background-color .18s,box-shadow .22s;display:grid}.hello-project__topline{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;display:flex}.hello-project__category{color:var(--color-text-faint);letter-spacing:.12em;text-transform:uppercase;font-size:.68rem}.hello-project__status{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-soft);min-height:1.75rem;color:var(--color-text-muted);align-items:center;padding:0 .55rem;font-size:.74rem;display:inline-flex}.hello-project__meta{gap:.7rem;margin:.2rem 0 0;display:grid}.hello-project__meta div{gap:.25rem;display:grid}.hello-project__meta dt{color:var(--color-text-faint);letter-spacing:.11em;text-transform:uppercase;font-size:.68rem}.hello-project__meta dd{color:var(--color-text-secondary);margin:0;font-size:.9rem;line-height:1.5}.hello-two-column{gap:var(--section-gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.hello-two-column .hello-section{margin-top:0}.hello-timeline,.hello-education{gap:.6rem;display:grid}.hello-timeline__item{gap:.55rem;display:grid}.hello-timeline__period{color:var(--color-text-faint);font-size:.78rem}.hello-timeline__item strong,.hello-education strong{color:var(--color-text-secondary);font-size:.95rem;line-height:1.45}.hello-contact{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:clamp(1.25rem,4vw,2rem);display:grid}.hello-contact>div:first-child{gap:.55rem;max-width:44rem;display:grid}.hello-actions--closing{justify-content:flex-end}.page--hello .orbital-bg__nebula{opacity:.2}.orbital-bg{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.orbital-bg__layer--drift{transform:translate3d(calc(var(--orbit-shift-x) + var(--pointer-shift-x)), calc(var(--orbit-shift-y) + var(--pointer-shift-y)), 0) scale(1.04);will-change:transform;transition:transform 1.05s cubic-bezier(.22,1,.36,1);position:absolute;inset:-10%}.orbital-bg__nebula,.orbital-bg__node,.orbital-bg__line{position:absolute}.orbital-bg__nebula{border-radius:var(--radius-pill);opacity:.28;filter:blur(58px)}.orbital-bg__nebula--1{background:#6257e81c;width:34rem;height:34rem;top:-8%;left:-4%}.orbital-bg__nebula--2{background:#435baf17;width:30rem;height:30rem;top:24%;right:-8%}.orbital-bg__nebula--3{background:#5444a614;width:28rem;height:28rem;bottom:-10%;left:30%}.orbital-bg__stars{position:absolute;inset:0}.orbital-bg__stars span{border-radius:var(--radius-pill);opacity:.48;background:#ffffffb8;width:2px;height:2px;position:absolute;box-shadow:0 0 12px #ffffff1a}.orbital-bg__stars span:first-child{top:12%;left:18%}.orbital-bg__stars span:nth-child(2){top:18%;left:78%}.orbital-bg__stars span:nth-child(3){top:32%;left:42%}.orbital-bg__stars span:nth-child(4){top:46%;left:84%}.orbital-bg__stars span:nth-child(5){top:58%;left:14%}.orbital-bg__stars span:nth-child(6){top:66%;left:62%}.orbital-bg__stars span:nth-child(7){top:78%;left:28%}.orbital-bg__stars span:nth-child(8){top:86%;left:74%}.orbital-bg__node{border-radius:var(--radius-pill);background:radial-gradient(circle, #fff 0%, var(--color-accent) 42%, transparent 70%);opacity:.2;width:.8rem;height:.8rem;transition:opacity .48s,transform .7s cubic-bezier(.22,1,.36,1),box-shadow .7s;transform:scale(.9);box-shadow:0 0 16px #6257e824}.orbital-bg__node--hero{top:14%;left:69%}.orbital-bg__node--currently{top:24%;left:34%}.orbital-bg__node--about{top:36%;left:18%}.orbital-bg__node--stack{top:48%;left:68%}.orbital-bg__node--projects{top:60%;left:32%}.orbital-bg__node--path{top:70%;left:72%}.orbital-bg__node--moments{top:81%;left:76%}.orbital-bg__node--contact{top:90%;left:24%}.orbital-bg__line{opacity:.32;transform-origin:0;border-top:1px solid #ffffff0b}.orbital-bg__line--1{width:46%;top:28%;left:22%;transform:rotate(-10deg)}.orbital-bg__line--2{width:38%;top:54%;left:30%;transform:rotate(20deg)}.orbital-bg__line--3{width:44%;top:79%;left:27%;transform:rotate(-14deg)}.reveal-section{opacity:0;will-change:opacity, transform;transition:opacity .56s,transform .76s cubic-bezier(.22,1,.36,1),border-color .26s;transform:translateY(24px)}.reveal-section.is-visible{opacity:1;transform:translate(0,0)}body[data-active-section=hero] .orbital-bg__node--hero,body[data-active-section=currently] .orbital-bg__node--currently,body[data-active-section=about] .orbital-bg__node--about,body[data-active-section=stack] .orbital-bg__node--stack,body[data-active-section=projects] .orbital-bg__node--projects,body[data-active-section=path] .orbital-bg__node--path,body[data-active-section=moments] .orbital-bg__node--moments,body[data-active-section=contact] .orbital-bg__node--contact{opacity:.9;transform:scale(1.16);box-shadow:0 0 10px #786ef13d,0 0 28px #6257e81c}body[data-active-section=hero] .hero,body[data-active-section=currently] .currently,body[data-active-section=about] #about .section__inner,body[data-active-section=about] .hello-section[data-orbit-section=about],body[data-active-section=currently] .hello-section[data-orbit-section=currently],body[data-active-section=stack] #stack .section__inner,body[data-active-section=stack] .hello-section[data-orbit-section=stack],body[data-active-section=projects] #projects .section__inner,body[data-active-section=projects] .hello-section[data-orbit-section=projects],body[data-active-section=path] #path .section__inner,body[data-active-section=moments] #moments .section__inner,body[data-active-section=contact] #contact .section__inner,body[data-active-section=contact] .hello-contact[data-orbit-section=contact]{border-color:#786ef126}@keyframes availability-breathe{0%,to{box-shadow:0 0 0 4px var(--color-accent-soft)}50%{box-shadow:0 0 0 7px #6257e80e}}@keyframes hello-card-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translate(0,0)}}.page--hello .hello-hero__availability:before{animation:3.8s ease-in-out infinite availability-breathe}.page--hello .reveal-section.is-visible .hello-project,.page--hello .reveal-section.is-visible .stack-group{animation:.46s cubic-bezier(.22,1,.36,1) backwards hello-card-in}.page--hello .reveal-section.is-visible .hello-project:nth-child(2),.page--hello .reveal-section.is-visible .stack-group:nth-child(2){animation-delay:55ms}.page--hello .reveal-section.is-visible .hello-project:nth-child(3),.page--hello .reveal-section.is-visible .stack-group:nth-child(3){animation-delay:.11s}.page--hello .reveal-section.is-visible .stack-group:nth-child(4){animation-delay:.165s}.page--hello .reveal-section.is-visible .stack-group:nth-child(5){animation-delay:.22s}.page--hello .reveal-section.is-visible .stack-group:nth-child(6){animation-delay:.275s}.button:active{transform:translateY(0)scale(.985)}@media (hover:hover) and (pointer:fine){.hello-project:hover,.stack-group:hover{border-color:var(--color-accent-border);transform:translateY(-2px)}.hello-project:hover{background:var(--color-surface-hover);box-shadow:var(--shadow-raised)}.stack-item:hover{border-color:var(--color-accent-border);background:var(--color-surface-accent);color:var(--color-text);transform:translateY(-1px)}.stack-item:hover .stack-icon{color:var(--color-accent-bright)}}@media (width<=720px){html{scroll-padding-top:9.5rem}.site-header{border-radius:var(--radius-md);grid-template-columns:minmax(0,1fr) auto;gap:.65rem .75rem;padding:.7rem}.site-header__nav{scrollbar-width:none;order:3;grid-column:1/-1;justify-content:flex-start;gap:.45rem;margin:0 -.1rem;padding:.05rem .1rem .1rem;overflow-x:auto}.site-header__nav::-webkit-scrollbar{display:none}.site-header__nav a{border:1px solid var(--color-border-subtle);border-radius:var(--radius-pill);background:#ffffff06;flex:none;align-items:center;min-height:2rem;padding:0 .65rem;font-size:.86rem;display:inline-flex}.hello-header{grid-template-columns:minmax(0,1fr) auto}.hello-header__actions{gap:.35rem}.hello-header__personal{padding-inline:.45rem;font-size:.82rem}.hello-two-column,.hello-contact{grid-template-columns:1fr}.hello-actions--closing{justify-content:flex-start}.page-shell{margin-top:1rem;padding-bottom:3.5rem}.hero,.currently,.section__inner{border-radius:var(--radius-md)}.hero{min-height:auto}.moments-header-actions,.moments-carousel__controls{display:none}.moments-carousel{gap:.8rem}.moments-rail{width:100%;height:auto;max-height:calc(76svh + 1.25rem);aspect-ratio:var(--moments-initial-aspect,4 / 3);scrollbar-width:none;touch-action:pan-y;overscroll-behavior-x:contain;padding:0;display:block;position:relative;overflow:hidden}.moments-rail[data-mobile-ready=true]{transition:height .42s cubic-bezier(.22,1,.36,1)}.moments-rail::-webkit-scrollbar{display:none}.moment-card{box-sizing:border-box;opacity:0;pointer-events:none;width:100%;height:100%;transition:opacity .24s,transform .3s cubic-bezier(.22,1,.36,1);position:absolute;inset:0;transform:translate(1rem)scale(.992)}.moment-card[data-moment-state=before]{transform:translate(-1rem)scale(.992)}.moment-card[data-moment-state=after]{transform:translate(1rem)scale(.992)}.moment-card[data-moment-state=active]{z-index:2;opacity:1;pointer-events:auto;transform:translate(0,0)scale(1)}.moment-card__visual,.moment-card__visual picture{width:100%;height:100%}.moment-card__visual{cursor:pointer;-webkit-user-select:none;user-select:none;place-items:center;display:grid}.moment-card__image{object-fit:contain;-webkit-user-drag:none;width:100%;max-width:100%;height:100%}.moments-carousel__mobile-controls{grid-template-columns:2.75rem auto 2.75rem;justify-content:center;align-items:center;gap:.9rem;display:grid}.moments-carousel__mobile-button{border-radius:var(--radius-pill);place-items:center;width:2.75rem;min-width:2.75rem;min-height:2.75rem;padding:0;font-size:1.45rem;line-height:1;display:inline-grid}.moments-carousel__mobile-button:disabled{opacity:.34;cursor:default}.moments-carousel__counter{min-width:4.8rem;color:var(--color-text-secondary);font-variant-numeric:tabular-nums;letter-spacing:.12em;text-align:center;font-size:.82rem;font-weight:650}.site-footer{align-items:flex-start}.site-footer__actions{width:100%}}@media (width<=560px){.hero__actions .button,.contact-panel__actions .button,.hello-actions .button{flex:10rem}.section__header-row{flex-direction:column;align-items:stretch}.section__actions,.moments-carousel__controls,.moments-header-actions{justify-content:flex-start}.project-detail__meta-row{grid-template-columns:1fr;gap:.45rem}.projects-rail{grid-auto-columns:minmax(13.5rem,82vw)}.contact-card{min-height:0}.contact-card__top{flex-wrap:wrap}.contact-card__meta{max-width:none}.site-footer{flex-direction:column}}@media (width<=400px){.hello-header__personal{display:none}.hello-actions .button{flex-basis:100%}.hello-hero,.hello-section,.hello-contact{border-radius:var(--radius-md)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal-section,.orbital-bg__layer--drift,.orbital-bg__node,.button,.site-header__nav a,.site-header__locale,.hello-header__personal,.skip-link,.moment-card,.moment-card__image,.moment-card__placeholder,.project-preview,.project-detail__expanded-copy,.projects-rail,.hello-project,.stack-group,.stack-item,.hello-hero__availability:before{transition:none!important;animation:none!important;transform:none!important}.reveal-section{opacity:1}}
