:root{--bg: #0B0E14;--bg-panel: #0F1626;--navy: #0F1C3D;--blue-deep: #1B4F9C;--blue-bright: #4C9BEA;--rock: #A34A28;--rock-soft: #C97148;--amber: #F2A93B;--paper: #EDEFF3;--paper-dim: #97A0B3;--line: rgba(237, 239, 243, .12);--font-display: "Space Grotesk", sans-serif;--font-body: "Inter", sans-serif;--font-mono: "IBM Plex Mono", monospace;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 10px;--radius-full: 50%;--shadow-sm: 0 2px 8px rgba(4, 6, 10, .24);--shadow-md: 0 8px 24px rgba(4, 6, 10, .32);--shadow-lg: 0 16px 48px rgba(4, 6, 10, .4);--ease-standard: ease;--ease-expressive: cubic-bezier(.65, 0, .35, 1);--duration-micro: .18s;--duration-moderate: .3s;--duration-macro: .4s;--text-h1: clamp(30px, 5vw, 50px);--text-h2: clamp(24px, 4vw, 36px)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--paper);font-family:var(--font-body);-webkit-font-smoothing:antialiased}html{scrollbar-width:thin;scrollbar-color:var(--navy) var(--bg)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--blue-deep),var(--navy));border-radius:6px;border:2px solid var(--bg);background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--blue-bright),var(--blue-deep));background-clip:padding-box}::-webkit-scrollbar-corner{background:var(--bg)}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.01em;margin:0}p{margin:0}a{color:inherit;text-decoration:none}ul{list-style:none;margin:0;padding:0}.eyebrow{font-family:var(--font-mono);font-weight:400;font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:var(--blue-bright);margin-bottom:16px;display:flex;align-items:center;gap:10px}.eyebrow:before{content:"";width:24px;height:1px;background:var(--blue-bright);display:inline-block}.mono{font-family:var(--font-mono)}.page-section{padding:96px 8vw}@media(max-width:860px){.page-section{padding:64px 6vw}}.btn{display:inline-flex;align-items:center;gap:10px;padding:16px 28px;background:var(--blue-bright);color:#081020;font-weight:600;border-radius:4px;border:none;cursor:pointer;font-size:14px;font-family:var(--font-body);transition:filter var(--duration-micro) var(--ease-standard),box-shadow var(--duration-micro) var(--ease-standard),transform var(--duration-micro) var(--ease-standard)}.btn:hover{filter:brightness(1.15);box-shadow:0 0 16px #4c9bea8c;transform:translateY(-1px)}.btn.ghost{background:transparent;color:var(--paper);border:1px solid var(--line)}.btn.ghost:hover{border-color:var(--blue-bright);color:var(--blue-bright);filter:none;box-shadow:none}@media(prefers-reduced-motion:reduce){.btn:hover{transform:none}}.icon-arrow{width:14px;height:14px;flex:none}.icon-arrow--back{transform:scaleX(-1)}.link-arrow{display:inline-flex;align-items:center;gap:6px}.card{border:1px solid var(--line);border-radius:var(--radius-md);background:transparent;transition:background var(--duration-micro) var(--ease-standard),border-color var(--duration-micro) var(--ease-standard),box-shadow var(--duration-micro) var(--ease-standard),transform var(--duration-micro) var(--ease-standard)}.card:hover{background:var(--bg-panel);border-color:var(--blue-bright);box-shadow:var(--shadow-md);transform:translateY(-2px)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-full);border:1px solid var(--line);background:#0f162699;color:var(--paper);cursor:pointer;transition:background var(--duration-micro) var(--ease-standard),border-color var(--duration-micro) var(--ease-standard),color var(--duration-micro) var(--ease-standard)}.icon-btn:hover{background:var(--bg-panel);border-color:var(--blue-bright);color:var(--blue-bright)}.overlay-backdrop{position:fixed;inset:0;background:#04060acc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:overlay-backdrop-fade-in var(--duration-micro) var(--ease-standard) both}@keyframes overlay-backdrop-fade-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.card,.icon-btn{transition:none}.card:hover{transform:none}.overlay-backdrop{animation:none}}router-outlet+*{animation:route-fade-in .35s ease both}@keyframes route-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){router-outlet+*{animation:none}}
