.light-rays-container{width:100%;height:100%;position:fixed;pointer-events:none;z-index:3;overflow:hidden;touch-action:none}.light-rays-container canvas{mix-blend-mode:screen;opacity:.9;backface-visibility:hidden;transform:translateZ(0)}@media(max-width:768px){.light-rays-container{height:100vh;height:100dvh}.light-rays-container canvas{will-change:transform}}@media(max-width:768px)and (orientation:portrait){.light-rays-container{min-height:100vh}}@media(max-width:768px)and (orientation:landscape){.light-rays-container{height:100vh}}@media(prefers-reduced-motion:reduce){.light-rays-container canvas{animation:none!important;transition:none!important}}.projects-page{position:relative;z-index:20;max-width:48rem;margin:0 auto;padding:12rem 1.5rem 3rem;color:#e5edf5}.projects-inner{display:flex;flex-direction:column;gap:14px}.projects-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.3em;color:#e5edf5d1;margin:0}.projects-intro{margin:.25rem 0 .75rem;line-height:1.7;font-size:1rem;color:#e5edf5db}.projects-list{display:flex;flex-direction:column;gap:8px}.project-row{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:8px 14px;padding:6px 4px;text-decoration:none;color:#dfe6eceb;transition:color var(--nav-speed, .26s) var(--nav-ease, cubic-bezier(.22,.61,.36,1)),opacity var(--nav-speed, .26s) var(--nav-ease, cubic-bezier(.22,.61,.36,1))}.project-name{font-family:Inter Tight,system-ui,sans-serif;font-weight:300;font-size:.95rem;letter-spacing:.005em}.project-desc{font-size:.92rem;color:#cbd5e1c7}.project-arrow{color:#cbd5e199;font-size:.9rem}.project-row:hover .project-name,.project-row:focus-visible .project-name{color:#fffffffa}.project-row:hover .project-desc,.project-row:focus-visible .project-desc{color:#dfe6ece6}.project-row:hover .project-arrow,.project-row:focus-visible .project-arrow{color:#ffffffe6}@media(max-width:640px){.projects-page{padding-top:10rem}.project-row{grid-template-columns:1fr auto;grid-template-areas:"name arrow" "desc desc"}.project-name{grid-area:name}.project-desc{grid-area:desc}.project-arrow{grid-area:arrow}}:root{--nav-speed: .26s;--nav-ease: cubic-bezier(.22,.61,.36,1)}.nav-shell{position:fixed;left:0;right:0;z-index:30;display:flex;justify-content:center;pointer-events:none;transition:top var(--nav-speed) var(--nav-ease),padding var(--nav-speed) var(--nav-ease)}.nav-shell-inner{pointer-events:auto}.nav-shell--hero{top:45vh;padding-top:0}.nav-shell--top{top:0;padding-top:16px;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.page{position:relative;z-index:20;max-width:48rem;margin:0 auto;padding:12rem 1.5rem 3rem;color:#e5edf5;opacity:1;transform:translateZ(0)}.page--home{padding-top:60vh;text-align:center}.page p{margin-bottom:1.2rem;line-height:1.7;font-size:1rem;color:#e5edf5db}.page-subtitle{font-size:.75rem;text-transform:uppercase;letter-spacing:.35em;color:#cbd5e1c7}.mobile-break{display:none}.page-subtitle .subline-1,.page-subtitle .subline-2{display:block}.page-tag{font-size:.7rem;text-transform:uppercase;letter-spacing:.3em;color:#e5edf5d1;margin-bottom:1.5rem;font-weight:600}.home-social{display:inline-flex;align-items:center;gap:12px;margin-top:1rem;opacity:.7}.home-social-link{font-family:Inter Tight,system-ui,sans-serif;font-weight:300;font-size:.82rem;letter-spacing:.01em;color:#dfe6ece6;text-decoration:none;transition:opacity var(--nav-speed, .26s) var(--nav-ease, cubic-bezier(.22,.61,.36,1))}.home-social-link:hover,.home-social-link:focus-visible{opacity:1}.home-social-sep{color:#cbd5e180;-webkit-user-select:none;-moz-user-select:none;user-select:none}.home-email{display:block;margin-top:10px;font-family:Inter Tight,system-ui,sans-serif;font-weight:300;font-size:.82rem;letter-spacing:.01em;color:#dfe6eccc;text-decoration:none;transition:opacity var(--nav-speed, .26s) var(--nav-ease, cubic-bezier(.22,.61,.36,1));opacity:.7}.home-email:hover,.home-email:focus-visible{opacity:1}.projects-list{display:flex;flex-direction:column;gap:10px;margin-top:.75rem}.project-item{display:flex;align-items:baseline;gap:8px}.project-note{font-size:.85rem;color:#cbd5e1b8}.page--contact{padding-top:8rem}.contact-wrapper{position:relative;z-index:25}.contact-card{background:#02061773;border:1px solid rgba(255,255,255,.06);border-radius:18px;padding:1.25rem;box-shadow:0 10px 30px #00000040}.contact-card .form-row{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.contact-card label{font-size:.8rem;letter-spacing:.08em;color:#cbd5e1f2}.contact-card input,.contact-card textarea{background:#ffffff05;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:.8rem .9rem;color:#e5edf5;font-size:1rem;outline:none;transition:border-color var(--nav-speed) var(--nav-ease),background var(--nav-speed) var(--nav-ease)}.contact-card input::-moz-placeholder,.contact-card textarea::-moz-placeholder{color:#cbd5e18c}.contact-card input::placeholder,.contact-card textarea::placeholder{color:#cbd5e18c}.contact-card input:focus,.contact-card textarea:focus{border-color:var(--nav-accent);background:#ffffff0d}.form-actions{display:flex;align-items:center;gap:.75rem;margin-top:.5rem}.btn-primary{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(181,227,255,.38);background:linear-gradient(180deg,#b5e3ff1f,#b5e3ff0f);color:#dfe6eceb;padding:.7rem 1rem;border-radius:12px;cursor:pointer;transition:transform .16s var(--nav-ease),border-color .16s var(--nav-ease),background .16s var(--nav-ease)}.btn-primary:hover{transform:translateY(-1px);border-color:#b5e3ffe6;background:linear-gradient(180deg,#b5e3ff47,#b5e3ff1f)}.form-note{font-size:.8rem;color:#cbd5e1cc}@media(prefers-reduced-motion:reduce){.nav-shell{transition:none}}@media(max-width:640px){.page-subtitle{font-size:.32rem!important;letter-spacing:.2em!important}.mobile-break{display:inline}.page--home{padding-top:56vh}.desktop-sep{display:none}}:root{--nav-fg: #dfe6ec;--nav-fg-muted: #9fb0c0;--nav-accent: #b5e3ff;--nav-underline: #ffffff;--nav-glow: rgba(181, 227, 255, .18);--nav-speed: .26s;--nav-ease: cubic-bezier(.22, .61, .36, 1)}@media(prefers-reduced-motion:reduce){:root{--nav-speed: 0ms}}html,body,#root{min-height:100vh;width:100%;margin:0;padding:0}html,body{background:#020617;color:#e5edf5;font-family:system-ui,-apple-system,BlinkMacSystemFont,Inter,sans-serif}body{overflow-x:hidden;overflow-y:auto}#root{position:relative;background:transparent;min-height:100vh}
