:root{--bg: #09090b;--card-bg: #18181b;--text: #ffffff;--text-muted: #a1a1a6;--border: rgba(255, 255, 255, .08);--border-hover: rgba(100, 200, 255, .4);--accent: #00d9ff;--accent-alt: #ffa500;--container: 1000px}*{margin:0;padding:0;box-sizing:border-box}html,body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:700;letter-spacing:-.02em}code,.tech{font-family:Fira Code,Monaco,Courier New,monospace;font-size:.9em}.navbar{padding:1.25rem 2rem;position:sticky;top:0;z-index:1000;background:#0a0a0ab3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.05)}.nav-container{max-width:var(--container);margin:0 auto;display:flex;justify-content:space-between;align-items:center}.logo{font-size:1.15rem;font-weight:700;color:var(--text);text-decoration:none;letter-spacing:-.02em}.logo .terminal{color:#666;font-family:Fira Code,Monaco,Courier New,monospace}.logo .accent{color:var(--accent)}.nav-links{display:flex;gap:2rem}.nav-links a{position:relative;color:#ffffffbf;text-decoration:none;font-size:.95rem;font-weight:500;padding-bottom:4px;transition:color .2s ease}.nav-links a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--accent);border-radius:2px;transition:width .25s ease}.nav-links a:hover{color:#fff}.nav-links a:hover:after{width:100%}h2.section-heading{display:flex!important;align-items:center!important;white-space:nowrap!important;font-size:clamp(1.8rem,5vw,2.5rem)!important;font-weight:800!important;margin-bottom:3rem!important;color:var(--text)!important}.section-num{color:var(--accent);font-family:Fira Code,Monaco,Courier New,monospace;font-size:clamp(1rem,3.5vw,1.5rem);margin-right:.6rem;flex-shrink:0}@media(max-width:640px){h2.section-heading{white-space:normal!important;flex-wrap:wrap!important}.heading-line{display:none!important}}.heading-line{flex-grow:1;height:1px;background:#ffffff1a;margin-left:20px}.reveal{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.reveal.active{opacity:1;transform:translateY(0)}.footer{max-width:var(--container);margin:4rem auto 2rem;padding:2rem;text-align:center;color:#ffffff59;font-size:.9rem;border-top:1px solid var(--border)}.footer-link{color:#ffffff59;text-decoration:underline;text-decoration-color:#ffffff26;transition:color .2s ease,text-decoration-color .2s ease}.footer-link:hover{color:var(--accent);text-decoration-color:var(--accent)}.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px;z-index:1100}.hamburger span{display:block;width:24px;height:2px;background:var(--text);border-radius:2px;transition:transform .25s ease,opacity .25s ease}.mobile-menu{position:fixed;top:0;right:0;width:min(320px,85vw);height:100dvh;background:#0a0a0af2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-left:1px solid rgba(255,255,255,.08);z-index:1050;display:flex;flex-direction:column;padding:5rem 2.5rem 2.5rem;gap:0;transform:translate(100%);transition:transform .35s cubic-bezier(.23,1,.32,1)}.mobile-menu.open{transform:translate(0)}.mobile-close{position:absolute;top:1.25rem;right:1.5rem;background:none;border:none;color:var(--text);font-size:2rem;line-height:1;cursor:pointer;opacity:.7;transition:opacity .2s ease}.mobile-close:hover{opacity:1}.mobile-nav{display:flex;flex-direction:column;gap:.25rem}.mobile-link{color:var(--text);text-decoration:none;font-size:1.6rem;font-weight:700;letter-spacing:-.02em;padding:.6rem 0;border-bottom:1px solid rgba(255,255,255,.06);transition:color .2s ease}.mobile-link:last-child{border-bottom:none}.mobile-link:hover{color:var(--accent)}.mobile-backdrop{position:fixed;inset:0;background:#0009;z-index:1040;opacity:0;pointer-events:none;transition:opacity .35s ease}.mobile-backdrop.open{opacity:1;pointer-events:auto}@media(max-width:768px){.nav-links{display:none}.hamburger{display:flex}}
