:root{--font-sans:"Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:"Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--paper:#f7f6f3;--paper-dim:#eceae6;--ink:#111;--ink-soft:#666;--indigo:#4f46e5;--film-green:#7af5c8;--crimson:#d94a64;--line:#1111111a;--line-soft:#1111110f;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--nav-h:5.5rem;--bg-primary:var(--paper);--bg-secondary:var(--paper-dim);--bg-tertiary:#eae8e3;--bg-card:#fff;--bg-card-grey:var(--paper-dim);--text-primary:var(--ink);--text-secondary:var(--ink-soft);--text-muted:#888;--text-light:#a1a1aa;--border-light:var(--line);--border-medium:#1111112e;--border-dark:#18181b;--accent-black:var(--ink);--accent-indigo:var(--indigo);--accent-green:var(--film-green);--accent-green-dark:#047857;--accent-crimson:var(--crimson);--shadow-sm:0 1px 2px #1111110a;--shadow-md:0 4px 14px #1111110f;--shadow-lg:0 12px 32px #11111117;--shadow-xl:0 20px 48px #11111121;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--radius-full:9999px;--transition-fast:.15s var(--ease-out);--transition-normal:.25s var(--ease-out);--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px);--sar:env(safe-area-inset-right,0px)}*,:before,:after{box-sizing:border-box;margin:0;padding:0;font-family:inherit}html{scroll-behavior:smooth;font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;width:100%;overflow-x:hidden}body{font-family:var(--font-sans);background-color:var(--bg-primary);width:100%;min-height:100dvh;color:var(--text-primary);-webkit-tap-highlight-color:transparent;line-height:1.5;overflow-x:hidden}#root{flex-direction:column;width:100%;min-height:100dvh;display:flex;overflow-x:hidden}img,video,canvas,svg{max-width:100%;height:auto;display:block}button,input,select,textarea{font-family:var(--font-sans);color:inherit;appearance:none;touch-action:manipulation;background:0 0;border:none;font-size:1rem}button{cursor:pointer}::selection{background-color:var(--film-green);color:var(--ink)}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);letter-spacing:-.04em;color:var(--ink);overflow-wrap:break-word;font-weight:300}p{color:var(--ink-soft);overflow-wrap:break-word;font-weight:300}.header-text,.section-header,.main-title{color:var(--ink)!important}.sub-header,.section-tag,.category-label{letter-spacing:.06em;font-weight:500;color:var(--indigo)!important}.sub-text,.lead-text,.body-text{color:var(--ink-soft)!important}.highlight-indigo{font-weight:400;color:var(--indigo)!important}.highlight-green{border-radius:4px;padding:.15rem .45rem;font-weight:400;color:#055e44!important;background-color:#7af5c833!important}.highlight-crimson{font-weight:400;color:var(--crimson)!important}.font-mono{font-family:var(--font-mono)}.container-custom{width:100%;max-width:1200px;padding:0 1.5rem;padding-left:max(1.5rem, var(--sal));padding-right:max(1.5rem, var(--sar));margin:0 auto}.container-narrow{width:100%;max-width:900px;padding:0 1.5rem;padding-left:max(1.5rem, var(--sal));padding-right:max(1.5rem, var(--sar));margin:0 auto}.badge-pill{background-color:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-full);letter-spacing:.06em;text-transform:uppercase;color:var(--text-primary);box-shadow:var(--shadow-sm);transition:border-color var(--transition-fast), background-color var(--transition-fast);align-items:center;gap:.375rem;padding:.35rem .85rem;font-size:.75rem;font-weight:400;display:inline-flex}@media (hover:hover) and (pointer:fine){.badge-pill:hover{border-color:var(--border-medium);background-color:var(--bg-tertiary)}}.bg-paper{background-color:var(--paper)!important}.bg-paper-dim{background-color:var(--paper-dim)!important}.text-ink{color:var(--ink)!important}.text-ink-soft{color:var(--ink-soft)!important}.text-indigo{color:var(--indigo)!important}.text-film-green{color:var(--film-green)!important}.text-crimson{color:var(--crimson)!important}.pill-indigo{color:var(--indigo);border-radius:var(--radius-full);background-color:#4f46e514;border:1px solid #4f46e540;align-items:center;gap:.35rem;padding:.35rem .85rem;font-size:.75rem;font-weight:500;display:inline-flex}.pill-film-green{color:#055e44;border-radius:var(--radius-full);background-color:#7af5c82e;border:1px solid #7af5c873;align-items:center;gap:.35rem;padding:.35rem .85rem;font-size:.75rem;font-weight:500;display:inline-flex}.pill-crimson{color:var(--crimson);border-radius:var(--radius-full);background-color:#d94a6414;border:1px solid #d94a6440;align-items:center;gap:.35rem;padding:.35rem .85rem;font-size:.75rem;font-weight:500;display:inline-flex}.btn-primary{background-color:var(--accent-black);color:#fff;border-radius:var(--radius-full);border:1px solid var(--accent-black);cursor:pointer;transition:transform var(--transition-fast), background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);touch-action:manipulation;will-change:transform;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:500;text-decoration:none;display:inline-flex;box-shadow:0 2px 8px #00000026}@media (hover:hover) and (pointer:fine){.btn-primary:hover{background-color:#27272a;border-color:#27272a;transform:translateY(-1px);box-shadow:0 4px 16px #0003}}.btn-primary:active{transform:translateY(0)scale(.98)}.btn-secondary{color:var(--text-primary);border-radius:var(--radius-full);border:1px solid var(--border-light);cursor:pointer;transition:transform var(--transition-fast), background-color var(--transition-fast), border-color var(--transition-fast);touch-action:manipulation;will-change:transform;background-color:#fff;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:500;text-decoration:none;display:inline-flex}@media (hover:hover) and (pointer:fine){.btn-secondary:hover{background-color:var(--bg-secondary);border-color:var(--border-medium);transform:translateY(-1px)}}.btn-secondary:active{transform:translateY(0)scale(.98)}.card-grey{background-color:var(--bg-card-grey);border:1px solid var(--border-light);border-radius:var(--radius-lg);transition:border-color var(--transition-normal), box-shadow var(--transition-normal), transform var(--transition-normal);min-width:0;min-height:0;padding:2rem}@media (hover:hover) and (pointer:fine){.card-grey:hover{border-color:var(--border-medium);box-shadow:var(--shadow-md)}}.card-white{border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:border-color var(--transition-normal), box-shadow var(--transition-normal), transform var(--transition-normal);background-color:#fff;min-width:0;min-height:0;padding:2rem}@media (hover:hover) and (pointer:fine){.card-white:hover{border-color:var(--border-medium);box-shadow:var(--shadow-md)}}.nav-floating{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-light);width:min(100%,960px);box-shadow:var(--shadow-md);transition:background-color var(--transition-normal), box-shadow var(--transition-normal), transform var(--transition-normal);background:#ffffffe0;border-radius:12px;justify-content:space-between;align-items:center;padding:.6rem 1rem;display:flex;transform:translateZ(0)}.nav-floating.scrolled{box-shadow:var(--shadow-lg);background:#fffffff5}.nav-link{color:var(--text-secondary);border-radius:var(--radius-full);transition:color var(--transition-fast), background-color var(--transition-fast);touch-action:manipulation;padding:.4rem .8rem;font-size:.875rem;font-weight:500;text-decoration:none}@media (hover:hover) and (pointer:fine){.nav-link:hover{color:var(--text-primary);background-color:var(--bg-tertiary)}}.ascii-box{color:#a1a1aa;font-family:var(--font-mono);letter-spacing:.05em;border-radius:var(--radius-lg);-webkit-user-select:none;user-select:none;min-width:0;min-height:330px;transition:border-color .3s ease, box-shadow .3s ease, transform .3s var(--ease-out);background-color:#0a0a0c;border:1px solid #18181b;justify-content:center;align-items:center;padding:2.25rem 2rem;font-size:.7rem;line-height:1.15;display:flex;position:relative;overflow:hidden}@media (hover:hover) and (pointer:fine){.ascii-box:hover{border-color:#3f3f46;transform:translateY(-2px);box-shadow:0 20px 40px #0006}}.ascii-art{white-space:pre;color:#71717a;text-shadow:0 0 2px #ffffff26;transition:color .3s}@media (hover:hover) and (pointer:fine){.ascii-box:hover .ascii-art{color:#a1a1aa}}.ascii-art span.bright{color:#fff;font-weight:700}@keyframes marquee{0%{transform:translate(0%,0)}to{transform:translate(-50%)}}.marquee-track{will-change:transform;width:max-content;animation:30s linear infinite marquee;display:flex}@media (hover:hover) and (pointer:fine){.marquee-track:hover{animation-play-state:paused}.logo-ticker-item:hover{opacity:1!important}}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translate(0,0)}}.animate-fade-in{animation:fadeIn .6s var(--ease-out) forwards}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#fff}::-webkit-scrollbar-thumb{background:#d4d4d8;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a1a1aa}.hero-gradient-dots{background-image:radial-gradient(#11111114 1px,#0000 1px);background-position:50%;background-size:24px 24px;position:relative}.hero-gradient-dots:before{content:"";background:radial-gradient(circle at center, transparent 0%, var(--paper) 75%);pointer-events:none;position:absolute;inset:0}:focus{outline:none}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--indigo);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.marquee-track{animation:none!important}}@media (width<=840px){.container-custom,.container-narrow{padding-left:max(1.25rem, var(--sal));padding-right:max(1.25rem, var(--sar))}section{padding-top:clamp(3.5rem,8vw,5rem)!important;padding-bottom:clamp(3.5rem,8vw,5rem)!important}}@media (width<=640px){.btn-primary,.btn-secondary{justify-content:center;width:100%}}
