:root{--color-bg:#0a0c10;--color-bg-elevated:#12151c;--color-surface:#191d27;--color-border:#252a36;--color-text:#e8eaed;--color-text-muted:#7a8194;--color-accent:#7eb8da;--color-accent-glow:#7eb8da26;--font-display:"Instrument Serif", Georgia, serif;--font-body:"DM Sans", system-ui, sans-serif;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:2px}.skip-link{z-index:200;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-accent);letter-spacing:.05em;transition:transform .2s var(--ease-out);border-radius:6px;padding:.6rem 1rem;font-size:.8rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}#snow-canvas{z-index:0;pointer-events:none;opacity:.4;width:100%;height:100%;position:fixed;inset:0}.nav{z-index:100;background:linear-gradient(to bottom, var(--color-bg), transparent);animation:fadeDown 1s var(--ease-out) both;justify-content:space-between;align-items:center;padding:1.5rem 3rem;animation-delay:.5s;display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{font-family:var(--font-display);letter-spacing:-.02em;font-size:1.25rem}.nav-links{gap:2.5rem;display:flex}.nav-links a{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;font-weight:400;transition:color .3s}.nav-links a:hover{color:var(--color-text)}.hero{flex-direction:column;justify-content:center;min-height:100vh;padding:8rem 3rem 4rem;display:flex;position:relative;overflow:hidden}.hero:before{content:"";background:radial-gradient(circle, var(--color-accent-glow) 0%, transparent 70%);pointer-events:none;border-radius:50%;width:60vw;height:60vw;animation:8s ease-in-out infinite pulseGlow;position:absolute;top:-20%;right:-10%}.hero-content{z-index:1;max-width:900px;position:relative}.hero-eyebrow{text-transform:uppercase;letter-spacing:.2em;color:var(--color-accent);animation:fadeUp .8s var(--ease-out) both;margin-bottom:2rem;font-size:.75rem;font-weight:500;animation-delay:.8s}.hero-title{font-family:var(--font-display);letter-spacing:-.03em;font-weight:400;line-height:.9}.hero-title .line{display:block}.hero-title .line-1{animation:fadeUp .8s var(--ease-out) both;font-size:clamp(4rem,12vw,10rem);animation-delay:1s}.hero-title .line-2{animation:fadeUp .8s var(--ease-out) both;font-size:clamp(4rem,12vw,10rem);animation-delay:1.15s}.hero-sub{color:var(--color-text-muted);max-width:420px;animation:fadeUp .8s var(--ease-out) both;margin-top:2.5rem;font-size:1.1rem;line-height:1.7;animation-delay:1.4s}.hero-scroll{text-transform:uppercase;letter-spacing:.2em;color:var(--color-text-muted);animation:fadeUp .8s var(--ease-out) both;flex-direction:column;align-items:center;gap:.75rem;font-size:.65rem;animation-delay:2s;display:flex;position:absolute;bottom:3rem;right:3rem}.scroll-line{background:linear-gradient(to bottom, var(--color-text-muted), transparent);width:1px;height:48px;animation:2s ease-in-out infinite scrollPulse}.mountain-silhouette{z-index:1;line-height:0;position:absolute;bottom:-1px;left:0;right:0}.mountain-silhouette svg{width:100%;height:180px;fill:var(--color-bg-elevated)}.container{max-width:1100px;margin:0 auto;padding:0 3rem}.section-grid{grid-template-columns:200px 1fr;gap:3rem;display:grid}.section-label{flex-direction:column;gap:.5rem;padding-top:.25rem;display:flex}.label-number{color:var(--color-accent);letter-spacing:.15em;font-size:.7rem;font-weight:500}.label-text{font-family:var(--font-display);font-size:1.5rem}.about{z-index:2;background:var(--color-bg-elevated);padding:8rem 0;position:relative}.about-lead{margin-bottom:1.5rem;font-size:1.35rem;font-weight:300;line-height:1.6}.about-body{color:var(--color-text-muted);max-width:540px;margin-bottom:3rem;font-size:1rem}.about-stats{gap:4rem;display:flex}.stat{flex-direction:column;gap:.25rem;display:flex}.stat-value{font-family:var(--font-display);color:var(--color-accent);font-size:2.5rem;line-height:1}.stat-label{text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);font-size:.75rem}.projects{z-index:2;background:var(--color-bg);padding:8rem 0;position:relative}.project-list{flex-direction:column;gap:1px;display:flex}.project-card{border:1px solid var(--color-border);transition:background .35s, border-color .35s, transform .35s var(--ease-out);border-radius:8px;margin-bottom:1rem;padding:2rem;display:block}.project-card:hover{background:var(--color-surface);border-color:var(--color-accent);transform:translateY(-2px)}.project-meta{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.project-tag{text-transform:uppercase;letter-spacing:.15em;color:var(--color-accent);background:var(--color-accent-glow);border-radius:100px;padding:.25rem .75rem;font-size:.65rem;font-weight:500}.project-arrow{color:var(--color-text-muted);transition:color .3s, transform .3s var(--ease-out);font-size:1.25rem}.project-card:hover .project-arrow{color:var(--color-accent);transform:translate(2px,-2px)}.project-name{font-family:var(--font-display);margin-bottom:.5rem;font-size:1.5rem;font-weight:400}.project-desc{color:var(--color-text-muted);font-size:.9rem;line-height:1.6}.connect{z-index:2;background:var(--color-bg-elevated);padding:8rem 0;position:relative}.connect-text{color:var(--color-text-muted);margin-bottom:2.5rem;font-size:1.05rem}.social-links{flex-direction:column;display:flex}.social-link{border-top:1px solid var(--color-border);transition:padding-left .35s var(--ease-out);justify-content:space-between;align-items:center;padding:1.25rem 0;display:flex}.social-link:last-child{border-bottom:1px solid var(--color-border)}.social-link:hover{padding-left:1rem}.social-name{font-family:var(--font-display);font-size:1.5rem}.social-arrow{color:var(--color-text-muted);transition:color .3s, transform .3s var(--ease-out);font-size:1.25rem}.social-link:hover .social-arrow{color:var(--color-accent);transform:translate(2px,-2px)}.footer{z-index:2;background:var(--color-bg);border-top:1px solid var(--color-border);padding:3rem 0;position:relative}.footer-inner{justify-content:space-between;align-items:center;display:flex}.footer-logo{font-family:var(--font-display);color:var(--color-text-muted);font-size:1rem}.footer-note{color:var(--color-text-muted);font-size:.75rem}.accent{color:var(--color-accent)}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}@keyframes scrollPulse{0%,to{opacity:1}50%{opacity:.3}}.section-grid{opacity:0;transition:opacity .8s var(--ease-out), transform .8s var(--ease-out);transform:translateY(32px)}.section-grid.visible{opacity:1;transform:translateY(0)}@media (width<=768px){.nav{padding:1.25rem 1.5rem}.nav-links{gap:1.5rem}.hero{padding:7rem 1.5rem 4rem}.hero-scroll{display:none}.mountain-silhouette svg{height:100px}.container{padding:0 1.5rem}.section-grid{grid-template-columns:1fr;gap:1.5rem}.about,.projects,.connect{padding:5rem 0}.about-stats{gap:2.5rem}.project-card{padding:1.5rem}}@media (width<=480px){.nav-links a{font-size:.7rem}.hero-title .line-1,.hero-title .line-2{font-size:clamp(3rem,15vw,5rem)}.about-lead{font-size:1.15rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.section-grid{opacity:1;transform:none}}
