@font-face { font-family: Inter; src: url('../fonts/inter-latin.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }
:root {
    --color-black: #111111; --color-ink: #111111; --color-red: #b5121b;
    --color-white: #ffffff; --color-green: #b7ff2a; --color-stone: #f4f4f5; --color-line: #d0d0d0; --color-muted: #bdbdbd;
    --content: 1536px; --container: 1536px; --content-narrow: 900px;
    --space-lg: 56px; --space-xl: 84px; --space-md: 32px; --radius: 0px;
    --font-heading: Inter, sans-serif; --font-body: Inter, system-ui, sans-serif;
}
* { box-sizing: border-box; letter-spacing: 0; }
html { scroll-behavior: smooth; }
body { margin: 0; padding: 0 32px 32px; background: var(--color-black); color: white; font: 16px/1.5 var(--font-body); }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-underline-offset: 4px; }
.wp-block-paragraph a:hover { color:var(--color-red)}
.brand-panel .wp-block-paragraph a:hover { color:rgba(255,255,255,.5)}
a:focus-visible, button:focus-visible, [tabindex]:focus-visible { outline: 2px solid white; outline-offset: 5px; }
h1, h2, h3, p, figure { margin: 0; hyphens: auto; text-wrap: balance; }
h1, h2, h3 { font-family: var(--font-heading); font-weight: 900; line-height: 1.15; overflow-wrap: anywhere; }
h1 { font-size: 52px;overflow-wrap: break-word; } h2 { font-size: 42px; } h3 { font-size: 24px; }
.has-text-align-left { text-align: left; }
.has-text-align-center { text-align: center; }
.has-text-align-right { text-align: right; }
.container { width: min(100%, var(--content)); margin-inline: auto; }
.home-page-content > * { margin-block: 0; }
.home-page-content > :where(h1, h2, h3, p, .wp-block-buttons, .wp-block-shortcode) { width: min(100%, var(--content)); margin-inline: auto; }
.home-page-content > h1 { padding: 42px 0 21px; color: #fff; text-align: center; text-transform: uppercase; }
.home-page-content > p:first-child { max-width: 760px; text-align: center; }
.home-page-content > .wp-block-group { margin-block: 54px; }
.home-page-content > .wp-block-group:first-child { margin-top: 0; }
.home-page-content > .wp-block-group:last-child { margin-bottom: 0; }
.content-narrow { max-width: var(--content-narrow); }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.eyebrow { font-size: 16px; font-weight: 900; text-transform: uppercase; color:var(--color-red) }
.button,
.wp-block-button__link,
.wp-element-button,
.frm-fluent-form .ff-btn-submit { display: inline-flex; justify-content: center; align-items: center; min-height: 44px; padding: 12px 24px; border: 0; border-radius:0; background: var(--color-red); color: white; text-decoration: none; font: 900 14px/1.4 Inter, sans-serif; text-transform: uppercase; text-align: center; cursor: pointer; }
.button--primary { background: var(--color-red); color: white; }
.button:hover,
.wp-block-button__link:hover,
.wp-element-button:hover,
.frm-fluent-form .ff-btn-submit:hover { background: #951018; color: white; }
.text-link { display: inline-flex; align-items: center; gap: 10px; font-weight: 900; text-decoration: none; }
.link-arrow { width: 24px; height: 24px; object-fit: contain; transform: rotate(90deg); }
.text-link:hover .link-arrow { transform: translateX(4px) rotate(90deg); }
.brand-mark { width: 49px; height: 30px; object-fit: contain; }
.page-content, .content-list { padding: 0 0 84px; }
.page-content .container > * + * { margin-top: 24px; }
.page-head, .archive-head { display: grid; justify-items: center; gap: 2px; padding: 42px 0 21px; text-align: center; }
.page-head h1, .archive-head h1 { max-width: 960px; color: #fff; text-align: center; text-transform: uppercase; }
.single-post { position: relative; background: #111; }
.single-post::before,
.single-post::after { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 50vh; pointer-events: none; }
.single-post::before { z-index: 0; background: var(--story-background) center top / cover no-repeat; }
.single-post::after { z-index: 1; background: linear-gradient(0deg, #111 0%, rgba(17,17,17,.5) 100%); }
.single-post .site-main,
.single-post .site-footer { position: relative; z-index: 2; }
.single-post .site-header { position: relative; z-index: 3; }
.single-post .page-head { margin-top: 120px; }
.section-head { margin-bottom: 32px; }
.archive-head__description { max-width: 700px; }
.site-main { min-height: 60vh; }
