@import url("https://fonts.googleapis.com/css2?family=Noto+Sans:wght@400;600;700;800;900&family=Radley:ital@0;1&display=swap"); :root { color-scheme: light; --color-brand-cream: #e3cfb4; --color-brand-white: #e3cfb4; --color-brand-black: #213753; --color-brand-coral: #a73543; --color-brand-yellow: #d6bd63; --color-brand-teal: #365f50; --color-brand-mint: #637979; --color-brand-purple: #c77349; --surface: color-mix(in srgb, var(--color-brand-cream) 88%, white); --surface-strong: var(--color-brand-cream); --surface-border: var(--color-brand-black); --text-primary: var(--color-brand-black); --text-secondary: color-mix(in srgb, var(--color-brand-teal) 58%, var(--color-brand-black)); --text-muted: color-mix(in srgb, var(--color-brand-purple) 70%, var(--color-brand-black)); --accent: var(--color-brand-coral); --accent-cool: var(--color-brand-teal); --accent-yellow: var(--color-brand-yellow); --status-teal: var(--color-brand-mint); --good: #365f50; --warn: #a66b1f; --bad: #a73543; --shadow-hard: 6px 6px 0 0 var(--surface-border); --shadow-hard-small: 3px 3px 0 0 var(--surface-border); --radius: 0.45rem; --font-display: "Noto Sans", "Avenir Next", "Segoe UI", sans-serif; --font-editorial: "Radley", Georgia, "Times New Roman", serif; --font-body: "Noto Sans", "Avenir Next", "Helvetica Neue", "Segoe UI", sans-serif; --paper-texture-image: radial-gradient(color-mix(in srgb, #624c3c 10%, transparent) 0.7px, transparent 0.7px), linear-gradient(95deg, color-mix(in srgb, #624c3c 5%, transparent) 0 1px, transparent 1px 13px), radial-gradient(color-mix(in srgb, var(--color-brand-mint) 30%, transparent) 1px, transparent 1px); --paper-texture-size: 19px 23px, 53px 100%, 32px 32px; --paper-texture-position: 0 0, -17px 0, -16px -16px; font-family: var(--font-body); } * { box-sizing: border-box; } body { margin: 0; background-color: var(--color-brand-cream); background-image: var(--paper-texture-image); background-size: var(--paper-texture-size); background-position: var(--paper-texture-position); color: var(--text-primary); font-size: 15px; line-height: 1.6; } a { color: inherit; text-decoration-color: var(--accent); text-underline-offset: 0.22rem; } .page { width: min(1180px, calc(100% - 32px)); margin: 0 auto; padding: 32px 0 56px; } .hero, .metric, .card, .option, .overflow, .callout { border: 3px solid var(--surface-border); border-radius: var(--radius); background: var(--surface); box-shadow: var(--shadow-hard); } .hero { display: grid; gap: 20px; padding: clamp(22px, 4vw, 38px); } .eyebrow, .metric-label, th, .badge, button, .button { font-family: var(--font-display); font-weight: 800; letter-spacing: 0.09em; text-transform: uppercase; } .eyebrow { display: inline-flex; width: fit-content; align-items: center; gap: 0.55rem; margin: 0; color: var(--color-brand-purple); font-size: 12px; } .eyebrow::before { content: ""; width: 0.86rem; height: 0.86rem; border: 2px solid currentColor; background: linear-gradient(45deg, transparent 42%, currentColor 42% 58%, transparent 58%), linear-gradient(-45deg, transparent 42%, currentColor 42% 58%, transparent 58%); transform: rotate(-4deg); } h1, h2, h3 { margin: 0; font-family: var(--font-display); font-weight: 800; line-height: 1.05; text-transform: uppercase; } h1 { max-width: 920px; font-size: clamp(34px, 6vw, 72px); } h2 { margin-top: 36px; font-size: clamp(26px, 3.6vw, 44px); } h3 { font-size: 18px; } p { margin: 0; } .lede, .card p, .callout p { color: var(--text-secondary); font-family: var(--font-editorial); font-size: 1.13rem; line-height: 1.48; } .lede { max-width: 820px; } .section { margin-top: 30px; } .metric-grid, .option-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; } .metric, .card, .option, .callout { padding: 18px; } .metric-value { display: block; margin-top: 10px; font-size: clamp(34px, 5vw, 52px); font-weight: 900; line-height: 0.95; } .metric-label, .small { color: var(--text-muted); font-size: 13px; } .badge { display: inline-flex; align-items: center; min-height: 25px; padding: 0.28rem 0.64rem; border: 2px solid var(--surface-border); border-radius: 999px; background: color-mix(in srgb, var(--surface) 82%, transparent); color: var(--text-secondary); font-size: 11px; line-height: 1; } .badge.good { background: var(--status-teal); color: var(--text-primary); } .badge.warn { background: var(--accent-yellow); color: var(--text-primary); } .badge.bad { background: var(--accent); color: var(--surface); } .overflow { overflow-x: auto; } table { width: 100%; border-collapse: collapse; } th, td { padding: 13px 14px; border-bottom: 2px solid color-mix(in srgb, var(--surface-border) 45%, transparent); text-align: left; vertical-align: top; } th { background: var(--accent-yellow); color: var(--text-primary); font-size: 12px; } tr:last-child td { border-bottom: 0; } .callout { background: color-mix(in srgb, var(--surface) 88%, var(--accent-yellow)); } .split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 0.45fr); gap: 18px; } .toolbar { display: flex; flex-wrap: wrap; gap: 9px; align-items: center; } button, .button { position: relative; border: 3px solid var(--surface-border); border-radius: var(--radius); background: var(--accent); box-shadow: 4px 4px 0 0 var(--surface-border); color: var(--surface); padding: 0.72rem 1rem; font-size: 0.92rem; cursor: pointer; transition: transform 150ms ease-out, box-shadow 150ms ease-out; } button:hover, .button:hover { transform: translate(2px, 2px); box-shadow: 2px 2px 0 0 var(--surface-border); } input, textarea, select { width: 100%; border: 3px solid var(--surface-border); border-radius: var(--radius); background: var(--surface); color: var(--text-primary); padding: 0.65rem 0.75rem; font: inherit; } textarea { min-height: 160px; resize: vertical; } @media (max-width: 760px) { .page { width: min(100% - 20px, 1180px); padding-top: 12px; } .hero { padding: 20px; } .split { grid-template-columns: 1fr; } }