@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&family=IBM+Plex+Mono:wght@400;500;600&family=Playfair+Display:ital,wght@0,700;0,800;1,700;1,800&display=swap";:root{--ink: #1a1a1a;--ink-secondary:#3d3d3d;--paper: #ffffff;--surface: #ffffff;--surface-2: #f5f5f5;--surface-3: #ebebeb;--blue: #0059b3;--blue-dark: #003d80;--blue-light: #e8f0fb;--blue-mid: rgba(0,89,179,.12);--blue-border: rgba(0,89,179,.22);--charcoal: #1a1a1a;--muted: #6b6b6b;--subtle: #9a9a9a;--border: #e0e0e0;--border-strong:#c0c0c0;--red: #cc2200;--green: #007a33;--shadow-sm: 0 1px 3px rgba(0,0,0,.06);--shadow: 0 4px 16px rgba(0,0,0,.07);--shadow-lg: 0 12px 40px rgba(0,0,0,.1);--radius: 3px;--radius-lg: 4px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:IBM Plex Sans,sans-serif;background:var(--paper);color:var(--ink);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.no-select{user-select:none;-webkit-user-select:none}h1,h2,h3,h4{font-family:IBM Plex Sans,sans-serif;font-weight:700}a{color:inherit;text-decoration:none}button{font-family:IBM Plex Sans,sans-serif;cursor:pointer;border:none;outline:none}button:focus-visible{outline:2px solid var(--blue);outline-offset:2px}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--surface-2)}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:0}@keyframes ticker{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.fade-up{animation:fadeUp .35s ease both}.fade-in{animation:fadeIn .25s ease both}.text-blue{color:var(--blue)}.text-muted{color:var(--muted)}.font-mono{font-family:IBM Plex Mono,monospace}.section-rule{border:none;border-top:3px solid var(--ink);margin-bottom:20px}:root{--navy: #0a1f35;--cream: #f5f5f5}@media (max-width: 767px){html{font-size:15px}body{overflow-x:hidden}.scroll-x{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.scroll-x::-webkit-scrollbar{display:none}input[type=email],input[type=text]{width:100%}button,a{min-height:44px}nav button,nav a{min-height:unset}}@media (hover: none){button:active,a:active{opacity:.75}}
