@font-face{font-family:InterVariable;src:url(/fonts/InterVariable.woff2)format("woff2");font-weight:100 900;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#090a0f;--panel:#11131a;--panel-strong:#181b24;--text:#f4f7fb;--muted:#c3cad6;--soft:#aab4c4;--line:#ffffff1f;--accent:#37ffb3;--accent-2:#ff4d8d;--accent-3:#73a7ff;--section-rgb:55, 255, 179;--shadow:0 22px 80px #0006;--radius:8px;--shell:min(1120px, calc(100vw - 32px));--header-height:72px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.js-ready .glyph,.js-ready .eyebrow-char,.js-ready .reveal-line,.js-ready .reveal-card,.js-ready .hero__signal,.js-ready .grid-field,.js-ready .headshot-frame{opacity:1!important;will-change:auto!important;transform:none!important}.project-carousel__viewport{scroll-behavior:auto}.project-card,.project-card__media,.project-card__media img,.homeos-visual,.offgrid-visual{filter:none!important;transform:none!important}}body{min-width:320px;color:var(--text);letter-spacing:0;background:linear-gradient(#090a0f 0%,#0e1017 48%,#090a0f 100%);margin:0;font-family:InterVariable,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-x:hidden}body:before{z-index:-2;pointer-events:none;content:"";background-image:linear-gradient(#ffffff0e 1px,#0000 1px),linear-gradient(90deg,#ffffff0e 1px,#0000 1px);background-size:44px 44px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000 0%,#0000 78%);mask-image:linear-gradient(#000 0%,#0000 78%)}body:after{z-index:-1;pointer-events:none;content:"";opacity:.16;background-image:radial-gradient(#ffffff24 1px,#0000 1px);background-size:18px 18px;position:fixed;inset:0}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button{font:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.skip-link{z-index:30;color:#07100c;background:var(--accent);border-radius:var(--radius);padding:.75rem 1rem;transition:transform .18s;position:fixed;top:12px;left:12px;transform:translateY(-140%)}.skip-link:focus{transform:translateY(0)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.scroll-progress{z-index:40;pointer-events:none;background:linear-gradient(90deg, var(--accent), var(--accent-3), var(--accent-2));transform-origin:0;height:3px;position:fixed;top:0;left:0;right:0;transform:scaleX(0)}.section-index{z-index:18;pointer-events:none;border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#090a0fdb;align-items:center;gap:.7rem;min-height:36px;padding:.45rem .65rem;display:flex;position:fixed;bottom:18px;right:18px;box-shadow:0 10px 34px #00000047}.section-index__count,.section-index__label{text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Roboto Mono,Consolas,monospace;font-size:.7rem;line-height:1}.section-index__count{color:var(--accent);gap:.24rem;display:inline-flex}.section-index__label{max-width:12ch;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.shell{width:var(--shell);margin-inline:auto}.site-header{z-index:20;height:var(--header-height);border-bottom:1px solid #0000;transition:transform .24s,background .24s,border-color .24s;position:fixed;top:0;left:0;right:0}.site-header.is-scrolled,.nav-open .site-header{border-color:var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#090a0fd1}.site-header.is-hidden{transform:translateY(-100%)}.nav{justify-content:space-between;align-items:center;gap:1rem;height:100%;display:flex;position:relative}.nav__brand{min-width:0;color:var(--text);align-items:center;gap:.7rem;font-size:.85rem;font-weight:760;display:inline-flex}.nav__brand span:first-child{color:#06100c;background:var(--accent);border-radius:var(--radius);touch-action:none;will-change:transform;flex:none;place-items:center;width:36px;height:36px;font-size:.78rem;font-weight:850;display:grid;pointer-events:auto!important}.nav__brand span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.nav__links{border:1px solid var(--line);border-radius:var(--radius);background:#ffffff0a;align-items:center;gap:.25rem;padding:.25rem;display:flex;position:relative}.nav__links a{z-index:1;min-width:0;color:var(--muted);border-radius:calc(var(--radius) - 2px);text-align:center;white-space:nowrap;padding:.65rem .82rem;font-size:.78rem;font-weight:700;transition:color .16s;position:relative}.nav__links a:hover,.nav__links a[aria-current]{color:var(--text)}.nav__indicator{border-radius:calc(var(--radius) - 2px);opacity:0;background:#37ffb314;border:1px solid #37ffb352;width:74px;height:calc(100% - .44rem);transition:opacity .16s,transform .22s,width .22s;position:absolute;bottom:.22rem;left:.25rem}.nav__toggle{border:1px solid var(--line);border-radius:var(--radius);width:42px;height:42px;color:var(--text);background:#ffffff0a;padding:0;display:none}.nav__toggle span[aria-hidden=true]{background:currentColor;width:18px;height:2px;margin:4px auto;transition:transform .18s;display:block}.nav__toggle[aria-expanded=true] span[aria-hidden=true]:first-child{transform:translateY(3px)rotate(45deg)}.nav__toggle[aria-expanded=true] span[aria-hidden=true]:last-child{transform:translateY(-3px)rotate(-45deg)}.section{scroll-margin-top:var(--header-height);padding:30px 0;position:relative}.section:before{content:"";pointer-events:none;background:linear-gradient(108deg, rgba(var(--section-rgb), .055), transparent 38%, transparent 72%, rgba(var(--section-rgb), .02));opacity:.12;transition:opacity .7s;position:absolute;inset:0}.section.is-active-section:before{opacity:1}.section>.shell{z-index:1;position:relative}#hero,#work,#contact{--section-rgb:55, 255, 179}#impact{--section-rgb:255, 199, 94}#about,#projects{--section-rgb:115, 167, 255}#skills{--section-rgb:255, 77, 141}.hero{min-height:74vh;padding-top:calc(var(--header-height) + 18px);align-items:center;padding-bottom:18px;display:grid;overflow:hidden}.hero__inner{grid-template-columns:minmax(0,1.05fr) minmax(280px,.58fr);align-items:center;gap:clamp(1.5rem,4.8vw,4rem);display:grid}.hero__copy{min-width:0}.eyebrow{color:var(--accent);text-transform:uppercase;margin:0 0 1rem;font-family:ui-monospace,SFMono-Regular,Roboto Mono,Consolas,monospace;font-size:.75rem;font-weight:720}.hero__title,.section-title{letter-spacing:0;max-width:13ch;margin:0;font-weight:880;line-height:.92}.hero__title{text-shadow:0 16px 52px #73a7ff1a;font-size:clamp(4rem,9.4vw,6.8rem)}.section-title{font-size:clamp(2.35rem,4.8vw,4.15rem)}.section-title--compact{font-size:clamp(2.2rem,4.2vw,3.8rem)}.glyph-title{overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none}.glyph,.glyph-word,.eyebrow-word{white-space:nowrap;display:inline-block}.glyph-word,.eyebrow-word{vertical-align:baseline}.glyph{transform-origin:50% 75%}.eyebrow-char{display:inline-block}.hero__tagline,.hero__role,.proof-line,.lead{max-width:65ch;color:var(--muted);font-size:clamp(1rem,1.6vw,1.16rem);line-height:1.58}.hero__role{color:var(--text);margin:.95rem 0 0;font-size:clamp(1rem,1.7vw,1.2rem);font-weight:720}.hero__tagline{margin-top:1rem}.proof-line{color:#dce4ef;max-width:58ch;margin:1rem 0 0;font-size:1rem;font-weight:720}.hero__actions{flex-wrap:wrap;gap:.85rem;margin-top:1.65rem;display:flex}.button{border:1px solid var(--line);border-radius:var(--radius);justify-content:center;align-items:center;min-height:46px;padding:.82rem 1.1rem;font-weight:780;transition:background .16s,border-color .16s,color .16s;display:inline-flex}.button--primary{color:#06100c;background:var(--accent);border-color:var(--accent)}.button--primary:hover{background:#7affcf;border-color:#7affcf}.button--ghost:hover{background:#ffffff14;border-color:#ffffff3d}.button--quiet{color:var(--muted);background:#ffffff05}.button--quiet:hover{color:var(--text);background:#ffffff12}.todo-note{color:#f7d98f;max-width:64ch;margin:.95rem 0 0;font-size:.86rem;line-height:1.5}.todo-note code{color:#fff2bc;font-family:ui-monospace,SFMono-Regular,Roboto Mono,Consolas,monospace}.grid-field{aspect-ratio:1;opacity:.75;pointer-events:none;grid-template-columns:repeat(4,1fr);gap:14px;width:min(54vw,620px);display:grid;position:absolute;inset:12% 6% auto auto}.grid-field span{border-radius:var(--radius);background:linear-gradient(135deg,#37ffb32e,#0000 55%),#ffffff05;border:1px solid #ffffff1a;min-width:0}.hero__signal{justify-self:end;gap:.65rem;min-width:0;max-width:360px;display:grid;position:relative}.headshot-frame{border:1px solid var(--line);border-radius:var(--radius);min-width:0;box-shadow:var(--shadow);background:linear-gradient(135deg,#37ffb31a,#0000 44%),#ffffff0a;padding:.45rem}.headshot-image{aspect-ratio:4/5;border-radius:calc(var(--radius) - 2px);object-fit:cover;background:var(--panel);border:1px solid #ffffff1f;width:100%}.signal-card{border:1px solid var(--line);border-radius:var(--radius);width:100%;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0c0e15cc;padding:.78rem}.signal-card--tools{box-shadow:none}.signal-card p{color:var(--muted);margin:0;font-size:.94rem;line-height:1.42}.signal-card__label{text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Roboto Mono,Consolas,monospace;font-size:.75rem;color:var(--accent)!important}.section-grid{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);align-items:start;gap:clamp(1.5rem,5vw,4rem);display:grid}.section-heading{max-width:760px;margin-bottom:1.35rem}.section-copy{min-width:0}.metric-strip{grid-template-columns:1fr;gap:.75rem;margin-top:1.4rem;display:grid}.about-focus{grid-template-columns:repeat(2,minmax(0,1fr))}.section--impact{padding:10px 0 24px}.impact-panel{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);align-items:end;gap:clamp(1.5rem,4vw,3rem);padding:1rem 0 0;display:grid}.impact-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.impact-chip{border-radius:var(--radius);background:linear-gradient(135deg,#37ffb31f,#0000 58%),#ffffff0a;border:1px solid #37ffb338;min-width:0;min-height:86px;padding:.8rem}.impact-chip--add{background:#ffffff06;border-style:dashed;border-color:#ffffff42}.impact-chip strong,.impact-chip span{display:block}.impact-chip strong{color:var(--text);overflow-wrap:normal;text-wrap:balance;white-space:nowrap;font-size:clamp(1.22rem,1.8vw,1.62rem);line-height:1}.impact-chip span{color:var(--muted);margin-top:.5rem;font-size:.82rem;line-height:1.28}.metric-card,.work-card,.project-card,.quote-card,.contact-link{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(#ffffff0f,#ffffff06)}.metric-card{min-width:0;padding:.85rem}.metric-card span,.contact-link span{color:var(--soft);text-transform:uppercase;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Roboto Mono,Consolas,monospace;font-size:.72rem;display:block}.metric-card strong{margin-top:.7rem;font-size:.9rem;line-height:1.38;display:block}.card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;display:grid}.work-card,.project-card,.quote-card{padding:.9rem;position:relative;overflow:hidden}.work-card{min-height:178px;transition:border-color .18s,background .18s}.work-card:after{content:"";background:radial-gradient(circle,#37ffb333,#0000 62%);border:1px solid #37ffb338;border-radius:50%;width:52px;height:52px;position:absolute;inset:auto 1rem 1rem auto}.work-card:hover{background:linear-gradient(#37ffb31a,#ffffff08);border-color:#37ffb375}.work-card__index{color:var(--accent);font-family:ui-monospace,SFMono-Regular,Roboto Mono,Consolas,monospace;font-size:.74rem}.work-card h3{min-height:2.5rem;margin:1.7rem 0 .6rem;font-size:1.24rem;line-height:1.18}.work-card p{color:var(--muted);margin:0;font-size:.94rem;line-height:1.48}.section--projects{background:#ffffff05}.quote-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;display:grid}.project-carousel{min-width:0;position:relative}.project-carousel__viewport{cursor:grab;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;touch-action:pan-x pan-y;width:100%;padding:.35rem .2rem .65rem;overflow:auto hidden}.project-carousel__viewport::-webkit-scrollbar{display:none}.project-carousel__viewport:focus-visible{border-radius:var(--radius);outline:2px solid var(--accent-3);outline-offset:4px}.project-carousel__viewport.is-dragging{cursor:grabbing;scroll-behavior:auto;scroll-snap-type:none;-webkit-user-select:none;user-select:none}.project-grid{gap:1rem;width:100%;display:flex}.project-grid:after{content:"";flex:0 0 calc(50% - .5rem)}.project-card{--pointer-x:50%;scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 calc(50% - .5rem);min-height:0;transition:border-color .42s,background .42s,box-shadow .42s}.project-card:before{z-index:3;content:"";pointer-events:none;background:linear-gradient(112deg, transparent calc(var(--pointer-x) - 24%), #ffffff13 var(--pointer-x), transparent calc(var(--pointer-x) + 24%));opacity:0;transition:opacity .26s;position:absolute;inset:0}.project-card:after{z-index:0;content:attr(data-project-index);color:#ffffff09;pointer-events:none;font-family:ui-monospace,SFMono-Regular,Roboto Mono,Consolas,monospace;font-size:clamp(3.8rem,7vw,5.8rem);font-weight:800;line-height:1;position:absolute;bottom:-.58rem;right:.7rem}.project-card>*{z-index:1;position:relative}.project-card:hover:before,.project-card[aria-current]:before{opacity:1}.project-card:hover,.project-card[aria-current]{background:linear-gradient(#73a7ff1a,#ffffff08);border-color:#73a7ff75;box-shadow:0 20px 54px #00000038,inset 0 1px #ffffff0b}.project-card:not([aria-current]) .project-card__media{filter:saturate(.72)brightness(.8)}.project-card:not([aria-current]) h3{color:var(--soft)}.project-card h3,.quote-card blockquote{margin:0}.project-card h3{font-size:1.28rem;line-height:1.2;transition:color .36s}.project-card p{color:var(--muted);margin:.68rem 0 0;font-size:.92rem;line-height:1.4}.project-card__media{aspect-ratio:16/9;border-radius:calc(var(--radius) - 2px);background:#0c0e14;border:1px solid #ffffff24;place-items:center;margin-bottom:.9rem;transition:border-color .42s,filter .42s;display:grid;position:relative;overflow:hidden}.project-card[aria-current] .project-card__media{border-color:#73a7ff52}.project-card__media--image img{object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%}.project-card__media--bench-path{isolation:isolate;background:#061a38}.project-card__media--bench-path:after{z-index:1;content:"";pointer-events:none;background:linear-gradient(#0000,#020812e0);height:42%;position:absolute;inset:auto 0 0}.project-card__media--bench-path img{object-fit:cover;object-position:center 61%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%}.bench-path-visual__label{z-index:2;color:#ffffffd1;text-align:right;font-family:ui-monospace,SFMono-Regular,Roboto Mono,Consolas,monospace;font-size:.58rem;font-weight:700;position:absolute;bottom:.65rem;left:.75rem;right:.75rem}.project-card__media--homeos{background:linear-gradient(135deg,#73a7ff4d,#0000 56%),linear-gradient(315deg,#37ffb32e,#0000 50%),#10141e;padding:clamp(.8rem,2vw,1.35rem)}.homeos-visual{border-radius:var(--radius);background:#070a10e0;border:1px solid #ffffff38;width:min(100%,460px);padding:clamp(.72rem,1.6vw,1.05rem);box-shadow:0 20px 44px #00000047}.homeos-visual__topline{color:var(--soft);text-transform:uppercase;border-bottom:1px solid #ffffff1f;justify-content:space-between;align-items:center;padding-bottom:.7rem;font-family:ui-monospace,SFMono-Regular,Roboto Mono,Consolas,monospace;font-size:.65rem;display:flex}.homeos-visual__topline strong{color:var(--text);font-size:1rem}.homeos-visual__grid{grid-template-columns:1.08fr .92fr;gap:.55rem;margin-top:.65rem;display:grid}.homeos-visual__weather,.homeos-visual__camera,.homeos-visual__scenes{border-radius:calc(var(--radius) - 2px);background:#ffffff0b;border:1px solid #ffffff1c;min-width:0;padding:.65rem}.homeos-visual__weather{grid-row:span 2}.homeos-visual__weather span,.homeos-visual__camera span,.homeos-visual__scenes span{color:var(--soft);text-transform:uppercase;font-size:.62rem;display:block}.homeos-visual__weather strong{color:#8fc1ff;margin-top:.25rem;font-size:clamp(1.7rem,4vw,2.8rem);line-height:1;display:block}.homeos-visual__weather small{color:var(--muted);margin-top:.35rem;font-size:.62rem;display:block}.homeos-visual__camera strong{color:var(--accent);margin-top:.35rem;font-size:.82rem;display:block}.homeos-visual__scenes i{aspect-ratio:1;background:var(--accent-3);border-radius:50%;width:19%;min-width:15px;margin:.45rem .22rem 0 0;display:inline-block}.homeos-visual__scenes i:nth-of-type(2){background:var(--accent)}.homeos-visual__scenes i:nth-of-type(3){background:#ffc75e}.project-card__media--offgrid{background:linear-gradient(135deg,#37ffb333,#0000 48%),linear-gradient(315deg,#ffc75e2e,#0000 52%),#0d1314;padding:clamp(.8rem,2vw,1.35rem)}.offgrid-visual{justify-content:center;align-items:center;width:min(100%,430px);display:flex;position:relative}.offgrid-device{z-index:1;border-radius:var(--radius);background:#11181a;border:1px solid #ffffff3d;width:min(76%,285px);padding:clamp(.8rem,2vw,1.25rem);position:relative;box-shadow:0 22px 46px #00000057}.offgrid-device__brand{color:var(--soft);letter-spacing:.08em;font-family:ui-monospace,SFMono-Regular,Roboto Mono,Consolas,monospace;font-size:.62rem;display:block}.offgrid-device__reading{align-items:end;gap:.6rem;margin-top:.55rem;display:flex}.offgrid-device__reading strong{color:var(--accent);font-size:clamp(2.2rem,5vw,3.6rem);line-height:.9}.offgrid-device__reading span{color:#a9f4d6;padding-bottom:.2rem;font-size:.65rem;font-weight:760}.offgrid-device__stats{border-top:1px solid #ffffff1f;grid-template-columns:repeat(3,1fr);gap:.35rem;margin-top:.8rem;padding-top:.65rem;display:grid}.offgrid-device__stats span{color:var(--soft);font-size:.56rem}.offgrid-device__stats strong{color:var(--text);margin-top:.14rem;font-size:.72rem;display:block}.offgrid-visual__signal{gap:.4rem;display:grid;position:absolute;right:2%}.offgrid-visual__signal i{background:#37ffb39e;border-radius:999px;width:32px;height:5px;display:block}.offgrid-visual__signal i:nth-child(2){opacity:.62;width:48px}.offgrid-visual__signal i:nth-child(3){opacity:.34;width:64px}.project-carousel__controls{justify-content:space-between;align-items:center;gap:1rem;margin-top:.75rem;display:flex}.project-carousel__status{color:var(--muted);gap:.3rem;margin:0;font-family:ui-monospace,SFMono-Regular,Roboto Mono,Consolas,monospace;font-size:.76rem;display:inline-flex}.project-carousel__status [data-project-current]{color:var(--accent-3);will-change:transform, opacity}.project-carousel__scrubber{flex:1;justify-content:center;align-items:center;gap:.2rem;min-width:0;display:flex}.project-carousel__scrubber-button{cursor:pointer;background:0 0;border:0;width:30px;height:36px;padding:0;position:relative}.project-carousel__scrubber-button:before{content:"";background:#fff3;border-radius:999px;height:3px;transition:background .22s,transform .22s;position:absolute;top:50%;left:3px;right:3px;transform:translateY(-50%)}.project-carousel__scrubber-button:hover:before{background:#73a7ff9e}.project-carousel__scrubber-button[aria-current]:before{background:var(--accent-3);transform:translateY(-50%)scaleY(1.8)}.project-carousel__buttons{gap:.55rem;display:flex}.project-carousel__button{border:1px solid var(--line);border-radius:var(--radius);width:42px;height:42px;color:var(--text);cursor:pointer;background:#ffffff0b;place-items:center;padding:0;font-size:1.2rem;transition:border-color .16s,background .16s,color .16s;display:grid}.project-carousel__button:hover:not(:disabled){color:var(--accent-3);background:#73a7ff1a;border-color:#73a7ff85}.project-carousel__button:disabled{cursor:default;opacity:.3}.project-card__why{font-weight:720;color:#dce4ef!important;font-size:.94rem!important}.quote-card{min-height:210px}.quote-card blockquote{color:var(--text);font-size:1rem;line-height:1.65}.quote-card figcaption{color:var(--soft);text-transform:uppercase;margin-top:1.5rem;font-family:ui-monospace,SFMono-Regular,Roboto Mono,Consolas,monospace;font-size:.75rem}.section--skills{background:#ffffff05}.skill-board{grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;display:grid}.skill-chip{overflow-wrap:normal;border:1px solid var(--line);border-radius:var(--radius);min-width:0;min-height:50px;color:var(--text);text-align:center;background:linear-gradient(135deg,#73a7ff24,#0000 48%),#ffffff0a;justify-content:center;align-items:center;padding:.72rem;font-weight:760;display:inline-flex}.contact-panel{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(1.5rem,4vw,3.2rem);padding-block:.5rem;display:grid}.contact-close{max-width:48ch;color:var(--muted);margin:.85rem 0 0;font-size:clamp(.98rem,1.45vw,1.08rem);line-height:1.5}.contact-actions{gap:.75rem;display:grid}.contact-link{gap:.45rem;min-width:0;padding:.85rem;transition:border-color .16s,background .16s;display:grid}.contact-link:hover{background:#37ffb314;border-color:#37ffb370}.contact-link strong,.contact-link__main strong{overflow-wrap:anywhere;font-size:.98rem}.contact-link__main{gap:.45rem;display:grid}.contact-link--email{grid-template-columns:minmax(0,1fr) auto;align-items:center}.copy-button{border-radius:var(--radius);min-height:40px;color:var(--text);cursor:pointer;background:#37ffb31a;border:1px solid #37ffb35c;padding:.68rem .82rem;font-weight:760}.copy-button:hover{background:#37ffb32e}.copy-status{min-height:1.2rem;color:var(--accent);font-size:.82rem;font-weight:720}.footer{border-top:1px solid var(--line)}.footer__inner{min-height:48px;color:var(--muted);justify-content:space-between;align-items:center;gap:1rem;font-size:.92rem;display:flex}.footer p{margin:0}.footer a{color:var(--text);font-weight:760}.js-ready .glyph,.js-ready .eyebrow-char,.js-ready .reveal-line,.js-ready .reveal-card,.js-ready .hero__signal,.js-ready .grid-field,.js-ready .headshot-frame{will-change:transform, opacity}@media (width<=1020px){.hero__inner,.section-grid,.contact-panel,.impact-panel{grid-template-columns:1fr}.hero{min-height:auto}.hero__signal{max-width:620px}.impact-list,.card-grid,.quote-grid,.skill-board{grid-template-columns:repeat(2,minmax(0,1fr))}.project-grid:after{flex-basis:24%}.project-card{flex-basis:76%}}@media (width<=719px){:root{--header-height:64px;--shell:min(100vw - 24px, 1120px)}.nav__toggle{display:block}.nav__links{z-index:4;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);opacity:0;pointer-events:none;background:#090a0ff5;border-color:#ffffff2e;gap:.2rem;padding:.45rem;transition:opacity .18s,transform .18s;display:grid;position:absolute;top:calc(100% + .6rem);left:0;right:0;transform:translateY(-8px)}.nav__links.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.nav__links a{text-align:left;width:100%;min-width:0}.nav__indicator,.section-index{display:none}.section{padding:44px 0}.hero{padding-top:calc(var(--header-height) + 28px)}.hero__title{white-space:nowrap;max-width:none;font-size:clamp(3rem,14.5vw,3.7rem)}.section-title{max-width:none;font-size:clamp(2.5rem,15vw,4.4rem)}.hero__actions{display:grid}.button{width:100%}.grid-field{width:86vw;inset:8% -34% auto auto}.impact-list,.card-grid,.quote-grid,.skill-board{grid-template-columns:1fr}.project-grid{gap:.75rem}.project-grid:after{flex-basis:8%}.project-card{flex-basis:92%}.project-card__media{aspect-ratio:4/3}.work-card{min-height:188px}.about-focus,.contact-link--email{grid-template-columns:1fr}.copy-button{width:100%}.footer__inner{flex-direction:column;justify-content:center;align-items:flex-start;padding-block:1rem}}
