*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}@media (pointer: fine){*,*:before,*:after,button,button *,a,a *,[role=button],[role=button] *,button:disabled,button:disabled *{cursor:none!important}}:root{--bg: #0d1520;--bg-card: #111e2e;--bg-card-hover: #162538;--border: #1c3050;--accent: #4aafd4;--accent-dim: #255e80;--accent-glow: rgba(74, 175, 212, .15);--text: #ddeaf5;--text-muted: #7a9dba;--text-faint: #3a5872;--green: #78d4f0;--font-mono: "Monocraft", "JetBrains Mono", monospace;--font-sans: "Inter", sans-serif}html{scroll-behavior:smooth;background-color:var(--bg)}body{background-color:var(--bg);color:var(--text);font-family:var(--font-sans);line-height:1.6;-webkit-font-smoothing:antialiased;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}#root{background-color:var(--bg)}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9999;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.025) 2px,rgba(0,0,0,.025) 4px)}a{color:var(--accent);text-decoration:none;transition:color .2s}a:hover{color:#7ecce8}::selection{background:var(--accent-dim);color:#fff}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.nf{font-family:MonocraftNF,monospace;font-style:normal;line-height:1}.navbar{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:calc(1.25rem + env(safe-area-inset-top)) 2.5rem 1.25rem;transition:background .3s,border-color .3s,backdrop-filter .3s;border-bottom:1px solid transparent}.navbar.scrolled{background:#0d1520bf;-webkit-backdrop-filter:blur(24px) saturate(140%);backdrop-filter:blur(24px) saturate(140%);border-color:var(--border)}.navbar.scrolled.menu-open{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border-color:transparent}.navbar-logo{font-size:1.2rem;font-weight:700;color:var(--text);z-index:101}.navbar-logo .mono{font-family:var(--font-mono)}.navbar-logo .accent{color:var(--accent);font-size:1.4rem}.navbar-links{list-style:none;display:flex;align-items:center;gap:2rem}.navbar-links a{color:var(--text-muted);font-size:.9rem;font-weight:500;transition:color .2s}.navbar-links a:hover{color:var(--text)}.navbar-links a.active{color:var(--accent)}.nav-resume{border:1px solid var(--border);border-radius:5px;padding:.3rem .75rem;color:var(--text-muted)!important;transition:border-color .2s,color .2s!important}.nav-resume:hover{border-color:var(--accent)!important;color:var(--accent)!important}.hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;background:none;border:none;cursor:pointer;padding:.25rem;z-index:101}.hamburger span{display:block;width:22px;height:2px;background:var(--text-muted);border-radius:2px;transition:transform .25s,opacity .25s}.navbar.menu-open .hamburger span:nth-child(1){transform:translateY(7px) rotate(45deg)}.navbar.menu-open .hamburger span:nth-child(2){opacity:0}.navbar.menu-open .hamburger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.back-to-top{display:none}@media (max-width: 640px){.navbar,.navbar.scrolled{position:static;padding:0;background:transparent;border:none;-webkit-backdrop-filter:none;backdrop-filter:none}.navbar-logo{display:none}.navbar.menu-open .navbar-logo{display:block;position:fixed;top:calc(env(safe-area-inset-top) + 1.25rem);left:1.5rem;font-size:1.6rem;z-index:9001}.navbar.menu-open .navbar-logo .accent{font-size:1.9rem}.hamburger{display:flex;position:fixed;top:calc(env(safe-area-inset-top) + 1rem);right:1rem;width:44px;height:44px;align-items:center;justify-content:center;gap:5px;background:#0d1520d9;border:1px solid var(--border);border-radius:8px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:9001;transition:opacity .3s}.navbar.scrolling .hamburger{opacity:0;pointer-events:none}.navbar.menu-open .hamburger{opacity:1!important;pointer-events:all!important}.navbar-links{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;z-index:9000;background-color:#0d1520eb;-webkit-backdrop-filter:blur(20px) saturate(140%);backdrop-filter:blur(20px) saturate(140%);flex-direction:column;justify-content:center;padding-bottom:6rem;gap:2rem;opacity:0;pointer-events:none;transition:opacity .25s}.navbar-links.open{opacity:1;pointer-events:all}.navbar-links a{font-size:1.2rem}.nav-resume{font-size:1.2rem!important}.back-to-top{display:block;width:fit-content;margin:2rem auto calc(env(safe-area-inset-bottom) + 2rem);padding:.6rem 1.2rem;font-size:.95rem;color:var(--text-muted);border:1px solid var(--border);border-radius:8px;background:#0d152080;text-align:center;font-family:var(--font-mono)}}.hero{min-height:100vh;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:2rem;padding-top:5rem}.hero-content{display:flex;flex-direction:column;gap:.6rem;flex:1;min-width:0}.hero-ascii{flex-shrink:0;flex-basis:auto;max-width:46%;overflow:hidden;font-family:"Noto Sans Symbols 2",DejaVu Sans Mono,FreeMono,monospace;font-size:.75rem;line-height:1.2;color:var(--accent);pointer-events:none;-webkit-user-select:none;user-select:none;white-space:pre;animation:ascii-breathe 4s ease-in-out infinite alternate}@keyframes ascii-breathe{0%{opacity:.25;text-shadow:0 0 4px var(--accent)}to{opacity:.75;text-shadow:0 0 2px #ffffff,0 0 8px var(--accent),0 0 20px var(--accent),0 0 40px var(--accent-glow)}}@media (max-width: 780px){.hero{flex-direction:column;align-items:flex-start;min-height:auto;padding-top:6rem;padding-bottom:2rem}.hero-ascii{display:none}}@media (max-width: 480px){.hero-avatar{width:90px;height:90px}.hero-role{font-size:.95rem}.hero-cta{flex-direction:column;align-items:stretch;align-self:center;gap:.6rem;width:100%;max-width:320px}.btn{padding:.75rem 1.1rem;font-size:.9rem;justify-content:center;width:100%}.status-badge{font-size:.72rem}}.hero-avatar-wrap{position:relative;width:120px;height:120px;margin-bottom:1rem}.hero-avatar{width:120px;height:120px;border-radius:50%;object-fit:cover;border:2px solid var(--border);box-shadow:0 0 30px var(--accent-glow)}.hero-avatar-wrap .hero-avatar{position:absolute;top:0;right:0;bottom:0;left:0;margin-bottom:0;transition:opacity .35s ease}.hero-avatar-hover,.hero-avatar-wrap:hover .hero-avatar-default{opacity:0}.hero-avatar-wrap:hover .hero-avatar-hover{opacity:1}.status-badge{display:inline-flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border);border-radius:999px;padding:.3rem .75rem;margin-bottom:.5rem}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 6px var(--green);animation:pulse 2.5s ease-in-out infinite;flex-shrink:0}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.hero-greeting{font-family:var(--font-mono);font-size:.9rem;color:var(--accent)}.hero-name{font-size:clamp(2.4rem,6vw,3.8rem);font-weight:700;line-height:1.1;letter-spacing:-.02em;color:var(--text)}.hero-role{font-size:1.1rem;color:var(--text-muted);margin-top:.25rem}.hero-role .mono{font-family:var(--font-mono)}.hero-role .accent{color:var(--accent)}.cursor{display:inline;color:var(--accent);font-family:var(--font-mono);font-size:.9em;margin-left:1px;line-height:1}.cursor-blink{animation:blink 1s step-end infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.hero-working{font-family:var(--font-mono);font-size:.82rem;color:var(--text-muted)}.hero-working a{color:var(--accent)}.hero-bio{max-width:520px;color:var(--text-muted);font-size:1rem;margin-top:.5rem;line-height:1.7}.hero-cta{display:flex;gap:1rem;margin-top:1.5rem;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;padding:.65rem 1.4rem;border-radius:6px;font-size:.9rem;font-weight:500;transition:all .2s;cursor:pointer}.btn-primary{background:var(--accent);color:#fff;border:1px solid var(--accent)}.btn-primary:hover{background:#5dc0e0;color:#fff;box-shadow:0 0 20px var(--accent-glow)}.btn-ghost{background:transparent;color:var(--text-muted);border:1px solid var(--border)}.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.about-text p{color:var(--text-muted);line-height:1.8;margin-bottom:1rem}.about-text strong{color:var(--text);font-weight:600}.edu-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:1.5rem;position:relative}.edu-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.25rem}.edu-school{font-weight:700;font-size:1rem;color:var(--text);display:inline-flex;align-items:center;gap:.5rem}.edu-logo{height:1.6em;width:auto;max-width:12em;object-fit:contain;display:block}.edu-date{font-family:var(--font-mono);font-size:.75rem;color:var(--accent)}.edu-degree{color:var(--text-muted);font-size:.9rem;margin-bottom:1.25rem}.edu-label{font-size:.7rem;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--text-faint);margin-bottom:.75rem}.coursework-list{list-style:none;display:flex;flex-direction:column;gap:.4rem}.coursework-list li{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-muted)}.dot{width:5px;height:5px;border-radius:50%;background:var(--accent);flex-shrink:0}@media (max-width: 640px){.about-grid{grid-template-columns:1fr;gap:1.5rem}.edu-header{flex-direction:column;align-items:flex-start;gap:.2rem}.edu-date{position:absolute;top:1.5rem;right:1.5rem}}.fade-in{opacity:0;transform:translateY(18px);transition:opacity .5s ease,transform .5s ease}.fade-in.visible{opacity:1;transform:translateY(0)}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;margin-top:1.25rem}.project-card--featured{margin-bottom:3.5rem}.featured-main{display:grid;grid-template-columns:3fr 2fr;gap:2rem;align-items:start;margin-top:1rem}.featured-left{display:flex;flex-direction:column;gap:.75rem}.featured-right{display:flex;flex-direction:column;gap:.75rem;position:sticky;top:6rem}.featured-right .project-img{width:100%}.project-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:1.75rem;transition:border-color .2s,background .2s,transform .2s;position:relative;overflow:hidden}.card-chrome{display:flex;align-items:center;gap:.5rem;margin-bottom:1.25rem}.badge-featured{font-family:var(--font-mono);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);border:1px solid var(--accent-dim);border-radius:4px;padding:.15rem .45rem}.project-number{position:absolute;top:.5rem;right:1.25rem;font-family:var(--font-mono);font-size:5.5rem;font-weight:700;color:var(--text);opacity:.04;pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1}.project-card:hover{border-color:var(--accent-dim);background:var(--bg-card-hover);transform:translateY(-2px)}.project-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem}.project-header-left{display:flex;align-items:center;gap:.75rem}.project-logo{height:40px;width:auto;border-radius:6px;flex-shrink:0}.project-title{font-size:1.05rem;font-weight:700;color:var(--text)}.project-title-logo{height:1.6rem;width:auto;display:block;object-fit:contain}.project-title-gif{height:56px;width:auto;border-radius:6px;border:1px solid var(--border);flex-shrink:0;object-fit:contain;background:#0003}.project-subtitle{font-size:.85rem;color:var(--text-muted);margin-top:.1rem}.project-meta{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.project-date{font-family:var(--font-mono);font-size:.75rem;color:var(--accent);white-space:nowrap}.github-link{color:var(--text-faint);display:flex;align-items:center;transition:color .2s}.github-link:hover{color:var(--text)}.project-bullets{list-style:none;display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem}.project-bullets li{position:relative;padding-left:1.1rem;font-size:.88rem;color:var(--text-muted);line-height:1.65}.project-bullets li:before{content:"•";position:absolute;left:0;color:var(--accent)}.project-collaborators{font-size:.82rem;color:var(--text-muted);margin-top:-.5rem;margin-bottom:1rem}.project-collaborators a{color:var(--accent);text-decoration:none}.project-collaborators a:hover{text-decoration:underline}.project-tech{display:flex;flex-wrap:wrap;gap:.5rem}.tech-tag{font-family:var(--font-mono);font-size:.72rem;background:#4aafd414;color:var(--accent);border:1px solid rgba(74,175,212,.2);border-radius:4px;padding:.2rem .55rem}.project-images{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1.25rem}.project-images:has(.project-img:only-child){grid-template-columns:1fr}.project-img{width:100%;border-radius:6px;border:1px solid var(--border);object-fit:cover;transition:border-color .2s}.project-img:hover{border-color:var(--accent-dim)}.demo-link{font-family:var(--font-mono);font-size:.75rem;color:var(--accent);border:1px solid var(--accent-dim);border-radius:4px;padding:.2rem .55rem;transition:background .2s,color .2s;white-space:nowrap}.demo-link:hover{background:var(--accent-glow);color:var(--accent)}.project-features{margin-bottom:1.25rem}.features-label{font-family:var(--font-mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-faint);margin-bottom:.6rem}.features-list{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:.3rem 1.5rem}.features-list li{position:relative;padding-left:1rem;font-size:.82rem;color:var(--text-muted);line-height:1.5}.features-list li:before{content:"▸";position:absolute;left:0;color:var(--accent);font-size:.65rem;top:.15rem}@media (max-width: 640px){.projects-grid,.featured-main{grid-template-columns:1fr}.featured-right{position:static}.project-card{padding:1.25rem}.project-header{flex-direction:column;gap:.6rem}.project-meta{flex-direction:row;flex-wrap:wrap;gap:.5rem}.project-images{grid-template-columns:1fr}.project-number{font-size:4rem;top:.25rem;right:.75rem}.badge-featured{font-size:.6rem;padding:.1rem .35rem}}@media (min-width: 641px) and (max-width: 900px){.featured-main{grid-template-columns:1fr}.featured-right{position:static}}.lightbox-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:4vh 4vw;background:#0d1520c7;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);animation:lightbox-fade .18s ease-out;cursor:pointer}.lightbox-img{max-width:100%;max-height:100%;width:auto;height:auto;border-radius:8px;border:1px solid var(--border);box-shadow:0 20px 60px #00000080;cursor:default;animation:lightbox-pop .2s ease-out}.lightbox-close{position:absolute;top:1.25rem;right:1.5rem;width:2.5rem;height:2.5rem;border-radius:50%;border:1px solid var(--border);background:var(--bg-card);color:var(--text);font-size:1.5rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .15s ease,border-color .15s ease,color .15s ease}.lightbox-close:hover{background:var(--bg-card-hover);border-color:var(--accent-dim);color:var(--accent)}.project-img-trigger{display:contents;padding:0;background:none;border:none}body.lightbox-open .hamburger{opacity:0!important;pointer-events:none!important}@keyframes lightbox-fade{0%{opacity:0}to{opacity:1}}@keyframes lightbox-pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion: reduce){.lightbox-backdrop,.lightbox-img{animation:none}}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.skill-group{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:1.75rem 1.5rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:1rem;transition:border-color .25s,box-shadow .25s,background .25s;position:relative;overflow:hidden}.skill-group:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:0;transition:opacity .25s}.skill-group:hover{border-color:var(--accent-dim);background:var(--bg-card-hover);box-shadow:0 0 30px var(--accent-glow)}.skill-group:hover:before{opacity:1}.skill-icon-wrap{width:52px;height:52px;border-radius:12px;background:#4aafd41a;border:1px solid rgba(74,175,212,.2);display:flex;align-items:center;justify-content:center;transition:background .25s,box-shadow .25s}.skill-group:hover .skill-icon-wrap{background:#4aafd42e;box-shadow:0 0 16px var(--accent-glow)}.skill-icon{font-family:MonocraftNF,monospace;font-size:1.4rem;color:var(--accent);line-height:1}.skill-category{font-family:var(--font-mono);font-size:.72rem;font-weight:600;color:var(--text);letter-spacing:.08em;text-transform:uppercase}.skill-tags{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center}.skill-tag{font-size:.75rem;font-family:var(--font-mono);color:var(--text-muted);background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:.2rem .5rem;transition:border-color .2s,color .2s}.skill-group:hover .skill-tag{border-color:#4aafd44d;color:var(--text)}@media (max-width: 900px){.skills-grid{grid-template-columns:1fr}}.other-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:1.75rem}.other-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.other-header-left{display:flex;align-items:center;gap:1rem}.garage-logo{height:48px;width:auto;border-radius:6px}.other-title{font-size:1.05rem;font-weight:700;color:var(--text)}.other-title a{color:var(--text)}.other-title a:hover{color:var(--accent)}.other-subtitle{font-size:.85rem;color:var(--text-muted);margin-top:.1rem}.other-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.3rem;flex-shrink:0}.other-role{font-family:var(--font-mono);font-size:.75rem;color:var(--accent)}.other-stat{font-family:var(--font-mono);font-size:.72rem;color:var(--text-faint)}.other-links{display:flex;align-items:center;gap:.5rem}.github-link{color:var(--text-faint);display:flex;align-items:center;transition:color .2s;animation:icon-breathe 4s ease-in-out infinite alternate}.github-link:hover{color:var(--text);animation:none;opacity:1;filter:none}@keyframes icon-breathe{0%{opacity:.55;filter:drop-shadow(0 0 2px var(--accent))}to{opacity:1;filter:drop-shadow(0 0 6px var(--accent))}}.other-desc{font-size:.88rem;color:var(--text-muted);line-height:1.65;margin-bottom:1.5rem}.media-grid{display:grid;grid-template-columns:2fr 1fr;gap:.75rem;margin-bottom:1.5rem}.media-gif{width:100%;height:100%;border-radius:6px;border:1px solid var(--border);object-fit:cover;transition:border-color .2s}.media-gif:hover{border-color:var(--accent-dim)}.media-screenshots{display:flex;flex-direction:column;gap:.75rem}.screenshot-img{width:100%;border-radius:6px;border:1px solid var(--border);object-fit:cover;aspect-ratio:16/9;transition:border-color .2s}.screenshot-img:hover{border-color:var(--accent-dim)}.other-tags{display:flex;flex-wrap:wrap;gap:.5rem}@media (max-width: 640px){.other-card{padding:1.25rem}.other-header{flex-direction:column;gap:.75rem}.other-meta{align-items:flex-start;flex-direction:row;gap:1rem}.media-grid{grid-template-columns:1fr;gap:.5rem}.media-gif{width:100%;height:auto;aspect-ratio:16 / 9}.media-screenshots{flex-direction:row;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:.5rem;padding-bottom:2px}.media-screenshots::-webkit-scrollbar{display:none}.screenshot-img{min-width:200px;flex-shrink:0;height:auto;aspect-ratio:16 / 9}}.contact-wrapper{max-width:560px}.contact-intro{color:var(--text-muted);line-height:1.7;margin-bottom:2rem}.contact-links{display:flex;flex-direction:column;gap:1rem}.contact-item{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;color:var(--text);transition:border-color .2s,background .2s}.contact-item:hover{border-color:var(--accent-dim);background:var(--bg-card-hover);color:var(--text)}.contact-icon{color:var(--accent);display:flex;align-items:center;flex-shrink:0;font-size:1.2rem}.contact-item>div{display:flex;flex-direction:column;gap:.1rem}.contact-label{font-size:.7rem;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint)}.contact-value{font-size:.9rem;color:var(--text-muted)}.contact-item:hover .contact-value{color:var(--text)}.footer{margin-top:5rem;padding-bottom:2rem;color:var(--text-faint);font-size:.8rem;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}@media (max-width: 640px){.contact-wrapper{max-width:100%}.contact-item{padding:.85rem 1rem}.contact-value{font-size:.8rem;word-break:break-all}.footer{flex-direction:column;align-items:flex-start;gap:.25rem;margin-top:3rem}.footer-sep{display:none}}.footer-sep{color:var(--border)}.footer-built .nf{color:#e07070;font-size:.75rem}.mono{font-family:var(--font-mono)}.cursor-glow{position:fixed;top:0;left:0;width:28px;height:28px;border-radius:50%;pointer-events:none;z-index:9999;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 70%,transparent) 0%,color-mix(in srgb,var(--accent) 25%,transparent) 45%,transparent 75%);will-change:transform,opacity;transition:width .18s ease,height .18s ease,background .18s ease,opacity .18s ease}.cursor-glow.hidden{opacity:0}.cursor-glow.over-link{width:44px;height:44px;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 90%,transparent) 0%,color-mix(in srgb,var(--accent) 45%,transparent) 50%,transparent 80%)}.cursor-glow:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px solid color-mix(in srgb,var(--accent) 60%,transparent);opacity:0;pointer-events:none;will-change:transform,opacity}.cursor-glow.expanding:after{animation:cursor-expand .42s ease-out forwards}@keyframes cursor-expand{0%{transform:scale(1);opacity:.7}to{transform:scale(2.6);opacity:0}}@media (prefers-reduced-motion: reduce){.cursor-glow.expanding:after{animation:none}}main{max-width:900px;margin:0 auto;padding:0 1.5rem;position:relative;z-index:1}section{padding:5rem 0}@media (max-width: 640px){section{padding:3rem 0}}.section-label{font-family:var(--font-mono);font-size:.75rem;color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.5rem}.section-title{font-size:1.75rem;font-weight:700;color:var(--text);margin-bottom:2.5rem;padding-left:0;border-left:2px solid transparent;transition:padding-left .3s ease,border-color .3s ease,text-shadow .3s ease}section.is-active .section-title{padding-left:.65rem;border-color:var(--accent);text-shadow:0 0 40px var(--accent-glow)}.section-title span{color:var(--accent)}
