:root{color-scheme:dark;--background:#17121f;--surface:#211a2d;--text:#fff8ff;--muted:#c0b5cc;--accent:#c7ff83;--accent-purple:#d3a9ff;--border:#3a2d4b;--font-body:"Nunito", sans-serif;--font-heading:"Fredoka", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0;background:var(--background);color:var(--text);font-family:var(--font-body);font-size:1rem;line-height:1.7;-webkit-font-smoothing:antialiased}.background-effects{position:fixed;z-index:0;display:block;overflow:hidden;pointer-events:none;inset:0}.background-effects::after{position:absolute;background:linear-gradient(180deg,rgb(23 18 31/38%),rgb(23 18 31/64%));content:"";inset:0}.background-video{position:absolute;top:-40px;left:-40px;display:block;width:calc(100% + 80px);height:calc(100% + 80px);object-fit:cover;opacity:.46;filter:blur(14px)saturate(.85);transform:translate3d(var(--pointer-x,0),var(--pointer-y,0),0);transition:transform 1400ms cubic-bezier(.2,.7,.2,1);will-change:transform}.background-toggle{position:fixed;z-index:2;right:max(1rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));min-height:48px;padding:.7rem 1rem;border:1px solid var(--accent-purple);border-radius:999px;background:rgb(33 26 45/96%);box-shadow:0 4px 18px rgb(0 0 0/28%);color:var(--text);font:inherit;font-weight:700;cursor:pointer}.background-toggle:hover:not(:disabled){background:#352846}.background-toggle:disabled{cursor:default}.site-header,main,.site-footer{position:relative;z-index:1}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.container{width:min(100% - 3rem,1100px);margin-inline:auto}.skip-link{position:absolute;top:-4rem;left:1rem;z-index:1;padding:.5rem 1rem;background:var(--accent);color:var(--background)}.skip-link:focus{top:1rem}.site-header{border-bottom:1px solid rgb(255 255 255/5%)}.nav,.nav-links,.footer-inner,.hero-actions,.section-heading-row,.project-links{display:flex;align-items:center;justify-content:space-between}.nav{min-height:76px}.brand{font-family:var(--font-heading);font-weight:800;letter-spacing:.01em}.nav-links{gap:clamp(1rem,3vw,2rem);color:var(--muted);font-size:.9rem}.twitch-link,.twitch-cta,.twitter-link,.twitter-cta{display:inline-flex;align-items:center;gap:.45rem}.twitch-icon{display:inline-flex;width:1.15em;height:1.15em;flex:none;color:#9146ff}.twitter-icon{display:inline-flex;width:1.15em;height:1.15em;flex:none;color:#1d9bf0}.twitch-icon svg,.twitter-icon svg{width:100%;height:100%;fill:currentColor}.nav-links a:hover,.footer-inner a:hover,.text-link:hover{color:var(--accent)}.nav-links .twitch-link:hover{color:var(--accent-purple)}.nav-links .twitter-link:hover{color:var(--accent-purple)}.hero{max-width:780px;padding-block:clamp(6rem,16vw,11rem)clamp(5rem,11vw,8rem)}.eyebrow{margin:0 0 1rem;color:var(--accent);font-size:.75rem;font-weight:700;letter-spacing:.12em}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-heading);line-height:1.15}.hero h1{margin-bottom:.4rem;font-size:clamp(2.8rem,8vw,5.6rem);letter-spacing:-.035em}.hero h1 span{color:var(--accent-purple)}.hero-role{margin-bottom:1.5rem;color:var(--muted);font-size:clamp(1.15rem,3vw,1.6rem)}.hero-copy,.section-copy,.page-description{max-width:650px;color:var(--muted);font-size:1.1rem}.hero-actions{justify-content:flex-start;flex-wrap:wrap;gap:.85rem;margin-top:2rem}.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:.75rem;padding:.65rem 1.1rem;border:1px solid var(--border);border-radius:999px;font-weight:600;transition:background 160ms ease,color 160ms ease,border-color 160ms ease}.button-primary{border-color:var(--accent);background:var(--accent);color:var(--background)}.button-primary:hover{border-color:#d6ff94;background:#d6ff94}.button-secondary:hover{border-color:var(--accent-purple);background:rgb(211 169 255/9%)}.section{padding-block:clamp(3.5rem,8vw,6rem);border-top:1px solid var(--border)}.section-heading{margin-bottom:1.5rem}.section-heading h2,.page-heading h1{margin-bottom:0;font-size:clamp(2rem,5vw,3.3rem);letter-spacing:-.025em}.section-heading-row{align-items:flex-end;gap:2rem;margin-bottom:2rem}.section-heading-row .section-heading{margin-bottom:0}.section-copy{margin-bottom:1.25rem}.text-link{display:inline-flex;align-items:center;gap:.55rem;font-weight:600;transition:color 160ms ease}.project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:1rem}.project-card{position:relative;min-height:210px;padding:1.5rem;border:1px solid var(--border);border-radius:22px;background:linear-gradient(145deg,rgb(211 169 255/8%),rgb(199 255 131/3%) 70%);transition:transform 160ms ease,border-color 160ms ease,background 160ms ease}.project-card:hover{transform:translateY(-3px);border-color:var(--accent-purple);background-color:var(--surface)}.project-date{display:block;margin-bottom:1.2rem;color:var(--muted);font-size:.85rem}.project-card h2,.project-card h3{margin-bottom:.7rem;font-size:1.35rem;letter-spacing:-.035em}.project-card p{max-width:36rem;margin-bottom:1.2rem;color:var(--muted);font-size:.95rem}.card-arrow{position:absolute;top:1.3rem;right:1.5rem;color:var(--accent-purple)}.empty-state{padding:1.25rem 1.5rem;border-left:3px solid var(--accent-purple);border-radius:0 16px 16px 0;background:var(--surface);color:var(--muted)}code{color:var(--accent);font-size:.9em;overflow-wrap:anywhere}.page-content{max-width:760px}.page-content,.project-list-page{min-height:65vh;padding-block:clamp(4rem,10vw,7rem)}.page-heading{margin-bottom:2.5rem}.page-heading h1{margin-bottom:1rem}.page-description{margin-bottom:0}.page-heading .project-date{margin-top:1rem}.prose{color:#c7d0c8}.prose h2,.prose h3{margin-top:2.2rem;color:var(--text);letter-spacing:-.02em}.prose a:not(.back-link){color:var(--accent);text-decoration:underline;text-decoration-color:rgb(199 255 131/55%);text-underline-offset:.2em}.prose ul,.prose ol{padding-left:1.3rem}.list-intro{max-width:650px;margin-bottom:2rem}.project-list{margin-top:2rem}.back-link{color:var(--muted);letter-spacing:0}.back-link:hover{color:var(--accent-purple)}.project-links{justify-content:flex-start;flex-wrap:wrap;gap:1.5rem;margin-top:2rem}.site-footer{border-top:1px solid var(--border);color:var(--muted);font-size:.9rem}.footer-inner{min-height:80px;gap:1rem}@media(max-width:540px){.container{width:min(100% - 2rem,1100px)}.nav{min-height:68px;flex-wrap:wrap;row-gap:.5rem}.brand{font-size:.9rem}.nav-links{flex:1 1 100%;flex-wrap:wrap;justify-content:flex-start;gap:.5rem .75rem;font-size:.8rem}.section-heading-row{align-items:flex-start;flex-direction:column;gap:.8rem}.footer-inner{align-items:flex-start;flex-direction:column;justify-content:center;padding-block:1rem}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important}.background-video{transform:none!important;transition:none!important;will-change:auto}}