@charset "UTF-8";:root{--brand: #081f5d;--brand-ink: #314478;--brand-soft: #eaeef5;--brand-softer: #f5f6f9;--accent: #b6203f;--accent-ink: #8f172f;--like: #081f5d;--dislike: #b6203f;--link: #2c78f6;--cat-ruby: #b6203f;--cat-blue: #00819f;--cat-orange: #da7d30;--cat-purple: #4f549f;--cat-teal: #4b9799;--cat-green: #657f00;--cat-red: #d83e27;--cat-navy: #314478;--bg: #ffffff;--surface: #ffffff;--surface-2: #f5f6f9;--text: #12182a;--text-muted: #566e7d;--text-faint: #7c8994;--border: #e4e8ee;--border-strong:#c3d2dd;--font-serif: "Source Serif 4", Georgia, "Times New Roman", "Times", serif;--font-sans: "Source Sans 3", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--display: clamp(2rem, 1.35rem + 2.9vw, 3.25rem);--lead: clamp(1.16rem, 1.06rem + .5vw, 1.3125rem);--h1: clamp(1.75rem, 1.3rem + 2vw, 3rem);--h2: clamp(1.5rem, 1.25rem + 1.1vw, 2.125rem);--h3: clamp(1.3rem, 1.15rem + .6vw, 1.5rem);--radius-sm: 4px;--radius: 6px;--radius-lg: 10px;--shadow-sm: 0 1px 2px rgba(8, 31, 93, .05);--shadow-md: 0 6px 22px rgba(8, 31, 93, .08);--shadow-lg: 0 20px 50px rgba(3, 11, 33, .14);--container: 1200px;--container-narrow: 714px;--header-h: 112px;--masthead-h: 63px}@media(max-width:760px){:root{--header-h: 63px}}:root[data-theme=dark]{--brand: #6f8bd6;--brand-ink: #a9bdec;--brand-soft: #16213b;--brand-softer: #10192e;--accent: #e5637a;--accent-ink: #f08ea0;--like: #6f8bd6;--dislike: #e5637a;--link: #7db1ff;--bg: #030b21;--surface: #0b1631;--surface-2: #131f3b;--text: #eef1f8;--text-muted: #9fb0c8;--text-faint: #74849c;--border: #22304f;--border-strong:#3a4a6e;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 6px 22px rgba(0, 0, 0, .45);--shadow-lg: 0 20px 50px rgba(0, 0, 0, .55)}:root[data-contrast=high]{--text: #000000;--text-muted: #1c1c1c;--text-faint: #333333;--border: #767676;--border-strong:#000000;--brand-ink: #071543}:root[data-theme=dark][data-contrast=high]{--text: #ffffff;--text-muted: #eaeaea;--text-faint: #cccccc;--border: #9aa8c4;--border-strong:#ffffff;--brand-ink: #c9d8ff}*{box-sizing:border-box}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}html,body{margin:0;padding:0;min-height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:18px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{font-family:var(--font-serif);color:var(--text);line-height:1.14;letter-spacing:-.005em;margin:0;font-weight:700}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font-family:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:2px}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:24px}.eyebrow{font-family:var(--font-sans);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.chip{display:inline-flex;align-items:center;font-family:var(--font-sans);font-size:.82rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--chip-colour, var(--accent));background:none;padding:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-sans);font-size:.95rem;font-weight:700;line-height:1;padding:.85rem 1.6rem;border:none;border-radius:999px;background:var(--accent);color:#fff;transition:background-color .15s ease,transform .15s ease}.btn:hover{background:var(--accent-ink)}.btn--secondary{background:var(--brand)}.btn--secondary:hover{background:var(--brand-ink)}.btn--ghost{background:transparent;color:var(--brand);border:1.5px solid var(--border-strong)}.btn--ghost:hover{background:var(--surface-2)}@media(max-width:640px){body{font-size:17px}.container{padding-inline:18px}}body,.site-header,.masthead,.topnav,.site-footer{transition:background-color .3s ease,border-color .3s ease,color .3s ease}.reveal-init{opacity:0;transform:translateY(18px);will-change:opacity,transform}.reveal-in{opacity:1;transform:none;transition:opacity .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1)}:root[data-motion=reduced] *,:root[data-motion=reduced] *:before,:root[data-motion=reduced] *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}:root[data-motion=reduced] .reveal-init{opacity:1!important;transform:none!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
