/*
Theme Name: Neo Brutalist
Version: 2.1.0
Requires at least: 6.6
Requires PHP: 8.2
Text Domain: neo-brutalist
License: GPL-2.0-or-later
*/
:root { --paper: #fff7d6; --ink: #111; --signal: #e43d30; --shadow: .45rem .45rem 0 var(--ink); --wide: 74rem; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: "Courier New", monospace; line-height: 1.55; }
a { color: inherit; font-weight: 800; text-decoration-thickness: .18em; }
a:focus-visible { outline: .3rem solid var(--signal); outline-offset: .25rem; }
img { max-width: 100%; height: auto; }
.skip-link { position: fixed; top: -7rem; left: 1rem; z-index: 8; padding: 1rem; border: 3px solid var(--ink); background: white; }
.skip-link:focus { top: 1rem; }
.site-header, .site-footer { border-block: 4px solid var(--ink); background: white; }
.header-inner, .site-footer { max-width: var(--wide); margin: auto; padding: 1rem; display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.site-name { padding: .35rem .6rem; background: var(--ink); color: white; text-decoration: none; text-transform: uppercase; }
.menu { display: flex; flex-wrap: wrap; gap: 1rem; margin: 0; padding: 0; list-style: square inside; }
.site-main { max-width: var(--wide); margin: auto; padding: clamp(2rem, 5vw, 5rem) 1rem; }
.record-stack { display: grid; gap: 2rem; }
.record { border: 4px solid var(--ink); background: white; box-shadow: var(--shadow); }
.record--lead { padding: clamp(1.5rem, 5vw, 5rem); background: var(--signal); color: white; }
.record-tag, .section-label { display: inline-block; margin: 0; padding: .25rem .5rem; background: var(--ink); color: white; font-weight: 900; text-transform: uppercase; }
h1 { max-width: 13ch; margin: .25em 0; font-size: clamp(3rem, 9vw, 7.5rem); line-height: .9; text-transform: uppercase; }
h2 { font-size: clamp(1.8rem, 4vw, 3rem); line-height: 1; text-transform: uppercase; }
.record-heading { display: flex; align-items: stretch; border-bottom: 4px solid var(--ink); }
.record-heading span { display: grid; min-width: 5rem; place-items: center; border-right: 4px solid var(--ink); background: var(--paper); font-size: 2rem; font-weight: 900; }
.record-heading h2 { padding: 0 1rem; }
.record-rows { display: grid; grid-template-columns: 1fr 1fr; }
.record-rows article { padding: 1.5rem; }
.record-rows article + article { border-left: 4px solid var(--ink); }
.record > .entry-content { padding: clamp(1.5rem, 4vw, 4rem); }
.record-faq { margin: 0; }
.record-faq div { display: grid; grid-template-columns: 1fr 2fr; border-top: 3px solid var(--ink); }
.record-faq dt, .record-faq dd { margin: 0; padding: 1rem; }
.record-faq dt { font-weight: 900; }
.view-heading { padding: 2rem; border: 4px solid var(--ink); background: var(--signal); color: white; box-shadow: var(--shadow); }
.entry-list, .listing-records { margin-top: 2rem; }
.entry-summary, .listing-record { margin-bottom: 1.5rem; padding: 1.5rem; border: 4px solid var(--ink); background: white; box-shadow: var(--shadow); }
.entry-summary h2, .listing-record h2 { margin-top: 0; }
.verified-label { width: fit-content; padding: .35rem .6rem; background: var(--signal); color: white; font-weight: 900; text-transform: uppercase; }
.featured-media { padding: .5rem; border: 4px solid var(--ink); background: white; }
.entry-content > * { max-width: 66ch; }
.site-footer { margin-top: 4rem; }
@media (max-width: 44rem) { .header-inner, .site-footer, .record-heading { align-items: flex-start; flex-direction: column; } .record-heading span { min-height: 4rem; width: 100%; border-right: 0; border-bottom: 4px solid var(--ink); } .record-rows, .record-faq div { grid-template-columns: 1fr; } .record-rows article + article { border-top: 4px solid var(--ink); border-left: 0; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }
@media (forced-colors: active) { .record, .entry-summary, .listing-record, .view-heading { box-shadow: none; border-color: CanvasText; } }
