@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;700&family=IBM+Plex+Mono:wght@400;500&display=swap";.scroll-progress{z-index:60;transform-origin:0;background:linear-gradient(90deg,#8fdcffeb,#5eead4db);width:100%;height:2px;position:fixed;top:0;left:0}.site-shell{isolation:isolate;width:100%;max-width:1480px;margin:0 auto;padding:24px clamp(16px,2.4vw,28px) 56px;position:relative;overflow-x:clip}.site-shell:before{content:"";z-index:-3;pointer-events:none;background-image:linear-gradient(#94a3b807 1px,#0000 1px),linear-gradient(90deg,#94a3b807 1px,#0000 1px);background-size:112px 112px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 18% 82%,#0000);mask-image:linear-gradient(#0000,#000 18% 82%,#0000)}.site-shell__glow{z-index:-2;filter:blur(110px);pointer-events:none;opacity:.34;border-radius:999px;animation:18s ease-in-out infinite float-glow;position:fixed}.site-shell__glow--primary{background:#8db8d61f;width:360px;height:360px;top:6%;right:6%}.site-shell__glow--secondary{background:#627a981f;width:320px;height:320px;animation-delay:-6s;top:38%;left:2%}.main-content{flex-direction:column;gap:0;display:flex}.main-content>section{isolation:isolate}.site-header{z-index:40;margin-bottom:24px;padding-top:14px;position:sticky;top:0}.site-header__inner{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(#070b12e6,#070b12b8 70%,#0000);border-bottom:1px solid #94a3b824;justify-content:space-between;align-items:flex-start;gap:24px;min-height:72px;padding:0 0 18px;display:flex}.brand{align-items:flex-start;gap:18px;min-width:0;display:flex}.brand__mark{color:#bfcedcb8;font-family:var(--mono-font);letter-spacing:.16em;text-transform:uppercase;align-items:center;padding-top:2px;font-size:.72rem;display:inline-flex}.brand__text{gap:2px;min-width:0;display:grid}.brand__name{font-family:var(--heading-font);letter-spacing:-.02em;font-size:1rem;font-weight:700}.brand__headline{color:var(--color-text-muted);max-width:28ch;font-size:.8rem}.site-header__right{justify-items:end;gap:14px;display:grid}.site-nav{align-items:center;gap:22px;min-width:0;display:flex}.site-nav__link{color:#bfcedcb8;font-family:var(--mono-font);letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;transition:color .2s,transform .2s}.site-nav__link:hover,.site-nav__link:focus-visible{color:var(--color-text);transform:translateY(-1px)}.site-socials{align-items:center;gap:10px;display:flex}.site-socials__link{color:#bfcedcb8;align-items:center;gap:8px;transition:color .2s,transform .2s;display:inline-flex}.site-socials__link:hover,.site-socials__link:focus-visible{color:var(--color-text);transform:translateY(-1px)}.site-socials__label{font-family:var(--mono-font);letter-spacing:.14em;text-transform:uppercase;font-size:.76rem}.site-socials__icon{width:14px;height:14px}.hero-section,.about-section,.projects-section,.skills-section,.contact-section{padding-block:clamp(3.8rem,8vw,6.6rem);position:relative}.hero-section{min-height:calc(82svh - 72px);padding-top:clamp(3.6rem,8vw,6rem);padding-bottom:clamp(2.8rem,6vw,4.8rem)}.hero-section__mesh{pointer-events:none;background:linear-gradient(#ffffff05,#0000 18%),linear-gradient(90deg,#0000 0,#ffffff04 52%,#0000 100%);height:100%;position:absolute;inset:0 0 auto;-webkit-mask-image:radial-gradient(circle at 70% 30%,#000 0%,#0000 56%);mask-image:radial-gradient(circle at 70% 30%,#000 0%,#0000 56%)}.hero-section__beam{z-index:-1;pointer-events:none;background:linear-gradient(#0000,#e2ecf51f,#0000);width:1px;position:absolute}.hero-section__beam--left{height:56%;top:2%;left:10%;transform:rotate(12deg)}.hero-section__beam--right{height:42%;bottom:14%;right:8%;transform:rotate(-14deg)}.hero-section__grid{grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);align-items:start;gap:clamp(2.4rem,5vw,6rem);display:grid}.hero-copy{z-index:1;min-width:0;max-width:820px;padding-top:.5rem;position:relative}.hero-copy:before{content:"";background:linear-gradient(90deg,#dfeaf452,#0000);width:120px;height:1px;position:absolute;top:-22px;left:0}.hero-copy__body{gap:24px;display:grid;position:relative}.hero-copy__eyebrow,.section-kicker,.projects-rail__label,.skill-lane__label,.about-section__signals-label,.project-showcase__category,.project-showcase__stage-topline,.project-showcase__narrative-label,.hero-artifact__label,.hero-artifact__topline,.hero-artifact__lane-label{color:#c1d6e5db;font-family:var(--mono-font);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:.76rem}.hero-copy__title,.section-heading,.project-showcase__name,.contact-section__email,.hero-artifact__title,.project-showcase__artifact-title{font-family:var(--heading-font);letter-spacing:-.05em;margin:0}.hero-copy__eyebrow{border-bottom:1px solid #94a3b824;align-items:center;width:fit-content;min-height:28px;padding:0 0 14px;display:inline-flex}.hero-copy__masthead{gap:16px;display:grid}.hero-copy__body-grid{grid-template-columns:minmax(0,1.08fr) minmax(260px,.72fr);align-items:start;gap:clamp(1.8rem,4vw,3.8rem);display:grid}.hero-copy__narrative{gap:24px;min-width:0;display:grid}.hero-copy__title{overflow-wrap:normal;gap:4px;max-width:8ch;margin-top:0;font-size:clamp(4.8rem,10vw,8.4rem);line-height:.9;display:grid}.hero-copy__title span{white-space:nowrap;display:block}.hero-copy__title span:last-child{margin-left:14%}.hero-copy__headline{color:#eef5fd;max-width:16ch;font-family:var(--heading-font);letter-spacing:-.04em;margin:0;font-size:clamp(1.28rem,2vw,1.8rem);font-weight:600;line-height:1.08}.hero-copy__summary,.section-copy,.project-showcase__summary,.project-showcase__detail,.projects-rail__copy,.skill-lane__summary,.contact-section__lead-copy,.about-section__statement p,.about-section__paragraph p{color:var(--color-text-muted);margin:0;font-size:1rem;line-height:1.8}.hero-copy__summary{color:#d6e1ecd1;max-width:40ch;font-size:clamp(1rem,1.28vw,1.12rem)}.hero-copy__focus-listing{border-top:1px solid #94a3b81f;gap:14px;margin:0;padding:22px 0 0;list-style:none;display:grid}.hero-copy__focus-listing li{color:#c5d2e0d6;padding-left:18px;line-height:1.75;position:relative}.hero-copy__focus-listing li:before{content:"";background:#dde6f0bd;border-radius:50%;width:6px;height:6px;position:absolute;top:.78em;left:0}.hero-copy__ledger{border-top:1px solid #94a3b81f;grid-template-columns:auto 1fr;align-items:start;gap:24px;margin-top:42px;padding-top:24px;display:grid}.hero-copy__ledger-label{color:#b4c4d6b8;font-family:var(--mono-font);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:.74rem}.hero-copy__ledger-items{flex-wrap:wrap;gap:10px 20px;display:flex}.hero-copy__ledger-items span{color:#e7eef5cc;font-family:var(--mono-font);letter-spacing:.1em;text-transform:uppercase;font-size:.84rem;position:relative}.hero-copy__ledger-items span:not(:last-child):after{content:"";background:#dfeaf447;border-radius:50%;width:4px;height:4px;position:absolute;top:50%;right:-12px;transform:translateY(-50%)}.hero-copy__actions{flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:4px;display:flex}.button-link{text-align:left;letter-spacing:-.03em;border-radius:14px;justify-content:flex-start;align-items:center;gap:10px;min-height:46px;padding:0 18px;font-size:.96rem;font-weight:600;transition:transform .22s,border-color .22s,background-color .22s,color .22s;display:inline-flex}.button-link:hover,.button-link:focus-visible{transform:translateY(-2px)}.button-link--primary{color:#081019;background:#dfeaf4;border:1px solid #dfeaf4b3}.button-link--secondary{color:var(--color-text);background:#0b101aad;border:1px solid #94a3b824}.button-link--secondary:hover,.button-link--secondary:focus-visible{border-color:#94a3b847}.button-link--text{color:#e4ecf4cc;background:0 0;border:0;border-radius:0;min-height:auto;padding:0}.button-link--text:hover,.button-link--text:focus-visible{color:var(--color-text);transform:translate(4px)}.button-link__icon{width:16px;height:16px}.hero-copy__proof{align-items:start;gap:16px;min-width:0;padding-top:10px;display:grid;position:relative}.hero-copy__proof-item{border-top:1px solid #94a3b81f;padding-top:14px}.hero-copy__proof-item dt,.project-showcase__metric dt,.project-showcase__artifact-lane-label{color:#b4c4d6b8;font-family:var(--mono-font);letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:.72rem}.hero-copy__proof-item dd,.project-showcase__metric dd{color:var(--color-text);font-family:var(--heading-font);letter-spacing:-.04em;margin:0;font-size:1rem;line-height:1.4}.hero-artifact{min-width:0;padding-top:12px;position:relative}.hero-artifact__frame{background:linear-gradient(#ffffff05,#0000 24%),#070c14d6;border:1px solid #94a3b81f;border-radius:30px;gap:22px;padding:30px;display:grid;position:relative;overflow:hidden;box-shadow:0 34px 80px #02060c47}.hero-artifact__frame:before{content:"";pointer-events:none;background:linear-gradient(135deg,#ffffff05,#0000 32%),radial-gradient(circle at 84% 18%,#b8cce114,#0000 20%);position:absolute;inset:0}.hero-artifact__topline{z-index:1;flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex;position:relative}.hero-artifact__header{z-index:1;gap:14px;display:grid;position:relative}.hero-artifact__label{color:#d1deeab8}.hero-artifact__title{max-width:11ch;font-size:clamp(2rem,4vw,3.4rem);line-height:.94}.hero-artifact__summary{color:#cdd8e4cc;max-width:46ch;margin:0;line-height:1.75}.hero-artifact__lanes{z-index:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;display:grid;position:relative}.hero-artifact__lane{border-top:1px solid #94a3b81f;gap:14px;min-width:0;padding:18px 0 0;display:grid}.hero-artifact__lane-top{align-items:start;gap:18px;display:flex}.hero-artifact__lane-index{color:#dfeaf438;font-family:var(--heading-font);letter-spacing:-.08em;font-size:1.8rem;line-height:1}.hero-artifact__lane-summary{color:#cdd8e4bd;margin:8px 0 0;line-height:1.65}.hero-artifact__lane-list{gap:14px;margin:0;padding:0;list-style:none;display:grid}.hero-artifact__lane-list li{color:#d7e0eadb;padding-left:16px;line-height:1.7;position:relative}.hero-artifact__lane-list li:before{content:"";background:#dfeaf49e;border-radius:50%;width:5px;height:5px;position:absolute;top:.72em;left:0}.hero-artifact__foot{color:#becddcb8;font-family:var(--mono-font);letter-spacing:.12em;text-transform:uppercase;border-top:1px solid #94a3b81f;flex-wrap:wrap;align-items:center;gap:16px 22px;padding-top:6px;font-size:.74rem;display:flex}.hero-strip{margin-top:46px;padding-top:28px;position:relative;overflow:hidden}.hero-strip:before,.hero-strip:after{content:"";z-index:1;pointer-events:none;width:96px;position:absolute;top:0;bottom:0}.hero-strip:before{background:linear-gradient(90deg,#070b12,#0000);left:0}.hero-strip:after{background:linear-gradient(270deg,#070b12,#0000);right:0}.hero-strip__track{gap:12px;width:max-content;display:flex}.hero-strip__item{color:#dde6f0e0;min-height:auto;font-family:var(--mono-font);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;align-items:center;padding-right:18px;font-size:.82rem;display:inline-flex;position:relative}.hero-strip__item:after{content:"/";color:#bfcedc57;position:absolute;right:0}.hero-strip__item:last-child:after{display:none}.hero-meta{border-top:1px solid #94a3b81a;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:20px;margin-top:28px;padding-top:24px;display:grid}.hero-meta__lead{max-width:58ch}.hero-meta__facts{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.hero-meta__facts span{color:var(--color-text-muted);font-family:var(--mono-font);letter-spacing:.08em;text-transform:uppercase;text-align:center;align-items:center;padding-right:18px;font-size:.88rem;display:inline-flex;position:relative}.hero-meta__facts span:not(:last-child):after{content:"";background:#dfeaf447;border-radius:50%;width:4px;height:4px;position:absolute;right:6px}.about-section,.projects-section,.skills-section,.contact-section{border-top:1px solid #94a3b81f;margin-top:-1px}.about-section:before,.projects-section:before,.skills-section:before,.contact-section:before{content:"";z-index:-1;pointer-events:none;position:absolute;inset:0}.section-heading{max-width:16ch;font-size:clamp(2.2rem,4.4vw,4rem);line-height:1.02}.section-copy{max-width:54ch;margin-top:18px}.about-section__intro-grid,.skills-section__intro-grid,.contact-section__intro-grid{grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr);align-items:end;gap:clamp(1.8rem,4vw,4rem);margin-top:14px;display:grid}.about-section__intro-note,.skills-section__intro-note,.contact-section__intro-note{color:#b4c4d6ad;max-width:34ch;font-family:var(--mono-font);letter-spacing:.12em;text-transform:uppercase;border-left:1px solid #94a3b81f;margin:0;padding-left:min(4vw,28px);font-size:.76rem;line-height:1.9}.about-section__layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,5vw,5rem);margin-top:48px;display:grid}.about-section:before{background:linear-gradient(#ffffff05,#0000 22%),radial-gradient(circle at 16% 34%,#a6bcce14,#0000 22%)}.about-section__statement{max-width:16ch}.about-section__statement p{color:var(--color-text);font-family:var(--heading-font);letter-spacing:-.05em;font-size:clamp(1.35rem,2.4vw,2.1rem);line-height:1.18}.about-section__body{gap:28px;display:grid}.about-section__paragraph{border-top:1px solid #94a3b81f;grid-template-columns:auto 1fr;align-items:start;gap:16px;padding-top:18px;display:grid}.about-section__paragraph:first-child{border-top:0;padding-top:0}.about-section__paragraph-index{color:#cbd8e6bd;font-family:var(--mono-font);letter-spacing:.08em;font-size:.82rem}.about-section__signals{border-top:1px solid #94a3b81f;grid-template-columns:minmax(220px,.6fr) minmax(0,1.4fr);gap:26px;margin-top:54px;padding-top:28px;display:grid}.about-section__signals-label{position:relative}.about-section__signals-label:before{content:"";background:linear-gradient(90deg,#dfeaf452,#0000);width:72px;height:1px;position:absolute;bottom:-18px;left:0}.about-section__signals-list{gap:14px;margin:0;padding:0;list-style:none;display:grid}.about-section__signals-list li{color:var(--color-text-muted);line-height:1.7}.projects-section__intro{max-width:none}.projects-section__intro .section-heading{max-width:14ch}.projects-section__intro-grid{grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr);align-items:end;gap:clamp(1.8rem,4vw,4rem);margin-top:14px;display:grid}.projects-section__intro-copy{border-left:1px solid #94a3b81f;gap:16px;min-width:0;padding-left:min(4vw,28px);display:grid}.projects-section__intro-note{color:#b4c4d6ad;max-width:34ch;font-family:var(--mono-font);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.76rem;line-height:1.9}.projects-section:before{background:radial-gradient(circle at 84% 20%,#adbed514,#0000 18%),linear-gradient(#ffffff05,#0000 24%)}.projects-section__list{gap:clamp(5.6rem,10vw,9rem);margin-top:72px;display:grid}.project-showcase{border-top:1px solid #94a3b81f;grid-template-columns:minmax(64px,.18fr) minmax(0,1.82fr);align-items:start;gap:clamp(1.8rem,4vw,4.2rem);padding-top:72px;display:grid}.project-showcase--flagship{border-top:0;padding-top:0}.project-showcase__rail{align-self:start;gap:14px;min-width:0;padding-top:8px;display:grid;position:sticky;top:116px}.project-showcase__rail:after{content:"";background:linear-gradient(#dfeaf452,#0000);width:1px;height:120px}.project-showcase__rail-index{color:#dfeaf429;font-family:var(--heading-font);letter-spacing:-.08em;margin:0;font-size:clamp(2.6rem,5vw,4.4rem);line-height:.9}.project-showcase__rail-copy{gap:10px;display:grid}.project-showcase__rail-copy span{color:#c1d6e5bd;font-family:var(--mono-font);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;line-height:1.7}.project-showcase__body{grid-template-columns:minmax(0,.96fr) minmax(340px,1.04fr);align-items:start;gap:clamp(1.8rem,4vw,4.4rem);display:grid}.project-showcase--flagship .project-showcase__body{grid-template-columns:minmax(0,.88fr) minmax(360px,1.12fr)}.project-showcase__content-wrap{min-width:0;position:relative}.project-showcase__content{gap:0;min-width:0;padding-top:18px;display:grid;position:relative}.project-showcase__artifact{min-width:0;padding-top:18px}.project-showcase--reverse .project-showcase__content-wrap{order:2}.project-showcase--reverse .project-showcase__artifact{order:1}.project-showcase__meta{flex-wrap:wrap;align-items:center;gap:10px 22px;display:flex}.project-showcase__heading-backdrop{color:#e2ebf40a;font-family:var(--heading-font);letter-spacing:-.08em;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:clamp(4.2rem,11vw,8rem);line-height:.88;position:absolute;top:-22px;left:0}.project-showcase__status{color:#b4c4d6bd;margin:0;font-size:.84rem}.project-showcase__name{max-width:11ch;margin-top:22px;font-size:clamp(2.4rem,4.8vw,4.2rem);line-height:.94}.project-showcase__headline{max-width:24ch;color:var(--color-text);font-family:var(--heading-font);letter-spacing:-.03em;margin:18px 0 0;font-size:clamp(1.08rem,1.7vw,1.28rem);line-height:1.36}.project-showcase__context{color:#cdd8e4c2;max-width:48ch;margin:18px 0 0;font-size:1rem;line-height:1.75}.project-showcase__narrative{border-top:1px solid #94a3b81f;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 30px;margin-top:34px;padding-top:24px;display:grid}.project-showcase__narrative-block{gap:12px;display:grid}.project-showcase__overview{grid-template-columns:minmax(220px,.46fr) minmax(0,1fr);align-items:start;gap:28px 32px;margin-top:34px;display:grid}.project-showcase__summary{max-width:none;margin-top:0}.project-showcase__metrics{grid-template-columns:1fr;gap:18px;margin:0;padding:0;display:grid}.project-showcase__metric{border-left:1px solid #94a3b81f;min-width:0;padding-left:18px}.project-showcase__details{gap:18px;margin:0;padding:0;list-style:none;display:grid}.project-showcase__detail{border-top:1px solid #94a3b81f;grid-template-columns:auto 1fr;align-items:start;gap:14px;padding:16px 0 0;display:grid}.project-showcase__detail-mark{background:#dfeaf4db;border-radius:50%;width:8px;height:8px;margin-top:.72em}.project-showcase__footer{border-top:1px solid #94a3b81f;grid-template-columns:minmax(0,1fr) minmax(240px,.74fr);align-items:start;gap:24px 30px;margin-top:32px;padding-top:24px;display:grid}.project-showcase__link-group{gap:10px;display:grid}.project-showcase__link{width:fit-content;color:var(--color-text);font-family:var(--mono-font);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:8px;font-size:.78rem;font-weight:600;line-height:1.5;transition:transform .22s,opacity .22s;display:inline-flex}.project-showcase__link:hover,.project-showcase__link:focus-visible{transform:translate(4px)}.project-showcase__link-icon{width:16px;height:16px}.project-showcase__note{color:#b4c4d6ad;margin:0;font-size:.92rem;line-height:1.7}.project-showcase__artifact-frame{isolation:isolate;background:linear-gradient(#ffffff06,#0000 20%),#080c14d6;border:1px solid #94a3b81a;border-radius:26px;gap:24px;min-width:0;padding:30px;display:grid;position:sticky;top:112px;overflow:hidden;box-shadow:0 38px 96px #02060c47}.project-showcase__artifact-frame:before{content:"";background:linear-gradient(180deg, #ffffff0a, transparent 28%), linear-gradient(135deg, var(--project-accent), transparent 54%), radial-gradient(circle at 82% 18%, #ffffff14, transparent 18%);opacity:.38;pointer-events:none;position:absolute;inset:0}.project-showcase__artifact-frame:after{content:"";pointer-events:none;border:1px solid #ffffff0b;border-radius:18px;position:absolute;inset:18px}.project-showcase--steel{--project-accent:#ceddeb1f}.project-showcase--signal{--project-accent:#b2d1eb21}.project-showcase--vision{--project-accent:#9ec2d621}.project-showcase--track{--project-accent:#b9b7d91f}.project-showcase__stage-topline{z-index:1;justify-content:space-between;gap:12px;display:flex;position:relative}.project-showcase__artifact-header{z-index:1;gap:12px;display:grid;position:relative}.project-showcase__artifact-label{color:#d1deeab8;font-family:var(--mono-font);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.72rem}.project-showcase__artifact-title{max-width:13ch;font-size:clamp(1.8rem,3vw,2.9rem);line-height:.96}.project-showcase__artifact-summary{color:#cdd8e4c7;max-width:42ch;margin:0;line-height:1.72}.project-showcase__artifact-lanes{z-index:1;gap:18px;display:grid;position:relative}.project-showcase__artifact-lane{border-top:1px solid #94a3b81f;gap:14px;padding-top:16px;display:grid}.project-showcase__artifact-lane-head{align-items:start;gap:16px;display:flex}.project-showcase__artifact-lane-index{color:#dfeaf438;font-family:var(--heading-font);letter-spacing:-.08em;font-size:1.65rem;line-height:1}.project-showcase__artifact-lane-summary{color:#cdd8e4b8;margin:8px 0 0;line-height:1.65}.project-showcase__artifact-lane-list,.tag-list{flex-wrap:wrap;gap:10px 18px;margin:0;padding:0;list-style:none;display:flex}.project-showcase__artifact-lane-list li,.tag-list__item{color:#e0e8f1d6;min-height:auto;font-family:var(--mono-font);letter-spacing:.12em;text-transform:uppercase;align-items:center;font-size:.76rem;display:inline-flex}.project-showcase__artifact-lane-list li:not(:last-child):after,.tag-list__item:not(:last-child):after{content:"/";color:#bfcedc57;margin-left:14px}.project-showcase__artifact-outcome{z-index:1;color:#d6e1ecd6;border-top:1px solid #94a3b81f;margin:0;padding-top:18px;line-height:1.75;position:relative}.projects-rail{border-top:1px solid #94a3b81f;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:36px;margin-top:88px;padding-top:40px;display:grid}.projects-rail__intro{position:relative}.projects-rail__items{gap:0;display:grid}.projects-rail__item{border-bottom:1px solid #94a3b81a;grid-template-columns:auto 1fr;align-items:start;gap:18px;padding:18px 0 20px;transition:transform .22s,border-color .22s;display:grid}.projects-rail__item:hover,.projects-rail__item:focus-visible{border-color:#94a3b83d;transform:translate(6px)}.projects-rail__item-index{color:#bfcedc6b;font-family:var(--mono-font);letter-spacing:.12em;text-transform:uppercase;padding-top:2px;font-size:.76rem}.projects-rail__item-body{gap:6px;display:grid}.projects-rail__item-name{color:var(--color-text);font-family:var(--heading-font);letter-spacing:-.04em;font-size:1.08rem}.projects-rail__item-description{color:var(--color-text-muted);line-height:1.7}.skills-section__lanes{gap:0;margin-top:48px;display:grid}.skills-section:before{background:linear-gradient(#ffffff03,#0000 18%),radial-gradient(circle at 72% 68%,#a0b3c412,#0000 24%)}.skills-section:after{content:"STACK";z-index:-1;color:#dfeaf40a;font-family:var(--heading-font);letter-spacing:-.08em;pointer-events:none;font-size:clamp(4rem,14vw,12rem);line-height:.9;position:absolute;top:36px;right:0}.skill-lane{border-top:1px solid #94a3b81f;grid-template-columns:minmax(220px,.58fr) minmax(0,1.42fr);gap:24px;padding:32px 0;display:grid}.skill-lane:last-child{border-bottom:1px solid #94a3b81f}.skill-lane__summary{max-width:34ch;margin-top:10px}.skill-lane__label{font-size:.82rem}.skill-lane__items{flex-wrap:wrap;align-content:start;gap:10px 18px;display:flex}.skill-lane__item{color:#e8f0f8e0;min-height:auto;font-family:var(--mono-font);letter-spacing:.12em;text-transform:uppercase;align-items:center;font-size:.8rem;display:inline-flex}.skill-lane__item:not(:last-child):after{content:"/";color:#bfcedc57;margin-left:14px}.contact-section__layout{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:clamp(2rem,4vw,4rem);margin-top:44px;display:grid}.contact-section{padding-bottom:clamp(5rem,10vw,8rem)}.contact-section:before{background:radial-gradient(circle at 74% 30%,#b2c6d91a,#0000 22%),linear-gradient(#ffffff04,#0000 20%)}.contact-section:after{content:"";pointer-events:none;border:1px solid #94a3b814;border-radius:48px;width:min(320px,38vw);height:min(320px,38vw);position:absolute;top:16%;right:8%;transform:rotate(18deg)}.contact-section__lead-copy{max-width:40ch}.contact-section__email{color:var(--color-text);max-width:12ch;margin-top:30px;font-size:clamp(2.4rem,6vw,4.8rem);line-height:1;transition:color .22s,transform .22s;display:inline-block}.contact-section__email:hover,.contact-section__email:focus-visible{color:#dfeaf4e6;transform:translate(4px)}.contact-section__links{gap:0;padding-top:12px;display:grid}.contact-section__link-wrap{border-top:1px solid #94a3b81f}.contact-section__link-wrap:last-child{border-bottom:1px solid #94a3b81f}.contact-section__link{justify-content:space-between;align-items:center;gap:18px;padding:18px 0;transition:transform .22s;display:flex}.contact-section__link:hover,.contact-section__link:focus-visible{transform:translate(8px)}.contact-section__link-meta{gap:4px;min-width:0;margin-right:auto;display:grid}.contact-section__link-index{color:#bfcedc6b;font-family:var(--mono-font);letter-spacing:.12em;text-transform:uppercase;font-size:.74rem}.contact-section__link-label{color:#b4c4d6b8;font-family:var(--mono-font);letter-spacing:.12em;text-transform:uppercase;font-size:.74rem}.contact-section__link-value{color:var(--color-text);font-family:var(--heading-font);letter-spacing:-.04em;font-size:1.08rem;line-height:1.45}.contact-section__link-icon{color:#bfcedc94;justify-content:center;align-items:center;display:inline-flex}.contact-section__link:hover .contact-section__link-icon,.contact-section__link:focus-visible .contact-section__link-icon{color:var(--color-text-muted)}.contact-section__icon-svg{width:18px;height:18px}.site-footer{color:#b4c4d6b8;border-top:1px solid #94a3b81f;justify-content:space-between;gap:16px;padding-top:32px;font-size:.9rem;display:flex}.site-footer p{margin:0}@media (width<=1180px){.hero-section__grid,.about-section__layout,.contact-section__layout,.projects-rail,.about-section__intro-grid,.skills-section__intro-grid,.contact-section__intro-grid,.projects-section__intro-grid,.project-showcase__body{grid-template-columns:1fr}.about-section__intro-note,.skills-section__intro-note,.contact-section__intro-note,.projects-section__intro-copy{border-top:1px solid #94a3b81f;border-left:0;padding-top:18px;padding-left:0}.project-showcase__artifact-frame{position:relative;top:auto}.project-showcase__rail{grid-template-columns:auto auto;align-items:end;gap:18px 28px;position:relative;top:auto}.project-showcase__rail:after{grid-column:1/-1;width:100%;height:1px}.hero-section__beam,.contact-section:after,.skills-section:after{display:none}}@media (width<=980px){.site-header__inner{flex-wrap:wrap}.site-header__right{justify-items:start;width:100%}.site-nav{flex-wrap:wrap;justify-content:flex-start;width:100%}.hero-meta,.skill-lane,.project-showcase,.hero-copy__proof,.project-showcase__narrative,.project-showcase__overview,.project-showcase__footer{grid-template-columns:1fr}.project-showcase__metric{border-top:1px solid #94a3b81f;border-left:0;padding-top:14px;padding-left:0}.hero-copy__body-grid{grid-template-columns:1fr}.hero-artifact{padding-top:10px}.hero-copy__title span:last-child{margin-left:0}.project-showcase__heading-backdrop{display:none}.hero-meta{grid-template-columns:1fr;align-items:start}.hero-meta__facts{justify-content:flex-start}}@media (width<=720px){.site-shell{padding:16px 16px 40px}.site-header{top:10px}.site-header__inner{gap:14px;padding:0 0 14px}.brand__headline{display:none}.site-header__right{gap:12px}.site-nav{gap:12px;overflow-x:auto}.site-nav__link{white-space:nowrap}.site-socials{justify-content:space-between;width:100%}.site-socials__label{font-size:.72rem}.hero-copy__actions{display:grid}.hero-copy__proof{display:none}.button-link{width:100%}.hero-artifact__lanes,.about-section__signals,.skill-lane,.contact-section__layout{grid-template-columns:1fr}.project-showcase__artifact,.project-showcase--reverse .project-showcase__artifact{padding-top:12px}.project-showcase__artifact-frame{border-radius:24px;padding:22px}.project-showcase__rail{gap:12px 22px}.projects-rail__items,.contact-section__links{gap:12px}.contact-section__email{font-size:clamp(2rem,11vw,3.6rem)}.contact-section__link{align-items:flex-start}.site-footer{flex-direction:column}}@media (width<=560px){.site-socials{flex-wrap:wrap;justify-content:flex-start;width:100%}.hero-copy__title{font-size:clamp(3.7rem,17vw,5.2rem)}.hero-copy__ledger{grid-template-columns:1fr;gap:10px}.section-heading,.project-showcase__name,.contact-section__email{overflow-wrap:break-word}.hero-copy__summary,.project-showcase__summary,.about-section__paragraph p,.projects-rail__item-description,.contact-section__lead-copy{line-height:1.7}.hero-artifact__frame{border-radius:22px;padding:20px}.hero-artifact__title,.project-showcase__artifact-title{max-width:none}.contact-section__link-value{word-break:break-word;font-size:1.02rem;line-height:1.5}}@media (prefers-reduced-motion:reduce){.site-shell__glow{animation:none}}@keyframes float-glow{0%,to{transform:translate(0,0)scale(1)}50%{transform:translateY(18px)scale(1.03)}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--color-bg:#070b12;--color-surface:#0a101bd1;--color-border:#96abcf29;--color-border-strong:#96abcf4d;--color-text:#f4f7fb;--color-text-muted:#94a3bd;--color-accent:#8fdcff;--color-success:#5eead4;--color-shadow:0 24px 80px #01050c6b;--heading-font:"Space Grotesk", "Manrope", system-ui, sans-serif;--mono-font:"IBM Plex Mono", "SFMono-Regular", monospace;font-family:Manrope,system-ui,sans-serif;font-weight:500;line-height:1.5}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;text-wrap:pretty;overflow-x:clip}body{min-width:320px;min-height:100vh;color:var(--color-text);background:radial-gradient(circle at 14% 0,#7694b81f,#0000 28%),radial-gradient(circle at 86% 12%,#5770901a,#0000 22%),linear-gradient(#06080d 0%,#09121d 42%,#06090f 100%);margin:0;overflow-x:clip}a{color:inherit;text-decoration:none}:where(a,button):focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}button,a{-webkit-tap-highlight-color:transparent}img,svg{display:block}::selection{color:#041019;background:#8fdcffe0}#root{width:100%;min-height:100vh;overflow-x:clip}p,h1,h2,h3,dd,dt{overflow-wrap:break-word}h1,h2,h3,a,span{overflow-wrap:normal;word-break:normal}.skip-link{z-index:100;color:#041019;background:var(--color-accent);border-radius:.9rem;padding:.8rem 1rem;transition:top .16s;position:absolute;top:-4rem;left:1rem}.skip-link:focus{top:1rem}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
