:root{--color-paper:#faf8f2;--color-paper-deep:#f1ede1;--color-ink:#1b1a17;--color-ink-soft:#5a5548;--color-red:#c8102e;--color-red-deep:#9a0c23;--color-yellow:#f2a007;--color-yellow-soft:#fbd38d;--color-blue:#4a90c2;--color-navy:#17233b;--color-navy-deep:#101a2e;--color-line:#e2dccc;--color-focus:var(--color-red);--text-xs:.75rem;--text-sm:.875rem;--text-base:1.125rem;--text-lg:1.25rem;--text-xl:1.375rem;--text-2xl:1.75rem;--text-3xl:clamp(1.75rem, 3vw + .5rem, 2.5rem);--text-4xl:clamp(2rem, 4vw + 1rem, 3.5rem);--text-5xl:clamp(2.25rem, 5vw + 1rem, 4.5rem);--text-6xl:clamp(2.75rem, 7vw + 1rem, 7rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--space-24:6rem;--space-32:8rem;--space-48:12rem;--container:82rem;--gutter:var(--space-8);--radius-sm:2px;--radius-md:6px;--shadow-card:0 1px 2px #1b1a1714, 0 10px 26px #1b1a171a;--shadow-lift:0 2px 4px #1b1a171a, 0 18px 44px #1b1a1729;--z-header:50;--z-overlay:100;--ease-editorial:cubic-bezier(.16, 1, .3, 1);--ease-pop:cubic-bezier(.34, 1.56, .64, 1);--duration-fast:.2s;--duration-slow:.8s}@media (min-width:1024px){:root{--gutter:var(--space-16)}}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}html,body{background-color:var(--color-paper);max-width:100vw;color:var(--color-ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;overflow-x:hidden}::selection{background-color:var(--color-red);color:var(--color-paper)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--color-paper-deep)}::-webkit-scrollbar-thumb{background:var(--color-red);border:2px solid var(--color-paper-deep)}::-webkit-scrollbar-thumb:hover{background:var(--color-yellow)}a{color:inherit;text-decoration:none}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.05}img{max-width:100%;display:block}button{cursor:pointer;font-family:inherit}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);margin-inline:auto}[id]{scroll-margin-top:6rem}
