/* ==========================================================================
   STORMMOUNT — Go where the storm is.
   Brutalist and monumental. Raw concrete and black slabs, one signal red,
   heavy condensed headlines, exposed grid lines, square corners, hard
   shadows, and the mono bulletin details of an official record (file
   numbers, timestamps, coordinates) turned round to face the people in
   charge. Concrete for reading; the black storm slab for watching.

   1. Tokens (day / night)        11. Power Register
   2. Base and type               12. Map
   3. Brand pieces                13. Live coverage
   4. Controls                    14. Film
   5. Header                      15. Watch, network, listings
   6. Headings                    16. Pages, forms, panels
   7. Cards                       17. Players and dialogs
   8. Homepage bands              18. Ads
   9. Story                       19. Sign-up and footer
   10. Evidence, reply, fronts    20. The bulletin and The Buried File
                                  21. Low-data, responsive, motion, print
   ========================================================================== */

/* 1. Tokens ---------------------------------------------------------------- */
:root {
	--sm-concrete: #E3E0D9;
	--sm-concrete-2: #D6D2C9;
	--sm-slab: #F4F2ED;
	--sm-ink: #0B0B0B;
	--sm-ink-2: #2A2A28;
	--sm-muted: #5A5853;
	--sm-rule: #B9B4AA;
	--sm-red: #D7261E;
	--sm-red-ink: #A8170F;
	--sm-red-btn: #C81F17;
	--sm-warn: #F2B705;
	--sm-night: #0A0A0A;
	--sm-night-2: #141413;
	--sm-night-3: #1E1E1D;
	--sm-on-night: #F1EFEA;
	--sm-on-night-2: #A8A59F;
	--sm-night-rule: #2F2F2D;
	--sm-shadow: #0B0B0B;

	/* Kept for the shared template parts. */
	--sm-paper: var(--sm-concrete);
	--sm-paper-2: var(--sm-concrete-2);
	--sm-card: var(--sm-slab);
	--sm-rust: var(--sm-red);
	--sm-rust-ink: var(--sm-red-ink);
	--sm-rust-btn: var(--sm-red-btn);
	--sm-proof: var(--sm-red);

	/* Surface tokens: components read these; dark bands redefine them. */
	--s-bg: var(--sm-concrete);
	--s-bg-2: var(--sm-concrete-2);
	--s-card: var(--sm-slab);
	--s-fg: var(--sm-ink);
	--s-fg-2: var(--sm-ink-2);
	--s-muted: var(--sm-muted);
	--s-rule: var(--sm-rule);
	--s-accent: var(--sm-red-ink);
	--s-shadow: var(--sm-shadow);

	--f-display: "Big Shoulders Display", Impact, "Arial Narrow Bold", "Arial Narrow", sans-serif;
	--f-ui: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	--f-read: "Newsreader", Georgia, "Times New Roman", serif;
	--f-mono: "Storm Mono", "DejaVu Sans Mono", ui-monospace, Menlo, Consolas, monospace;
	--f-type: var(--f-mono);

	--signal: linear-gradient(90deg, var(--sm-red) 0 88px, var(--s-fg) 88px);
	--hazard: var(--signal);
	--hatch: repeating-linear-gradient(-45deg, currentColor 0 2px, transparent 2px 7px);
	--wrap: 1360px;
	--gutter: clamp(16px, 3.2vw, 36px);
	--radius: 0;
	--bw: 3px;
	--band: clamp(52px, 7.4vw, 104px);
	--ease: cubic-bezier(.2, .7, .2, 1);
	color-scheme: light;
}
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) {
		--sm-concrete: #0F0F0E;
		--sm-concrete-2: #171716;
		--sm-slab: #1B1B1A;
		--sm-ink: #EFECE6;
		--sm-ink-2: #D2CFC8;
		--sm-muted: #A3A09A;
		--sm-rule: #383733;
		--sm-red-ink: #FF5D50;
		--sm-shadow: #000;
		color-scheme: dark;
	}
}
:root[data-theme="dark"] {
	--sm-concrete: #0F0F0E;
	--sm-concrete-2: #171716;
	--sm-slab: #1B1B1A;
	--sm-ink: #EFECE6;
	--sm-ink-2: #D2CFC8;
	--sm-muted: #A3A09A;
	--sm-rule: #383733;
	--sm-red-ink: #FF5D50;
	--sm-shadow: #000;
	color-scheme: dark;
}
/* The black storm slab: dark bands with grain and faint exposed grid lines. */
.sm-dark {
	--s-bg: var(--sm-night);
	--s-bg-2: var(--sm-night-2);
	--s-card: var(--sm-night-2);
	--s-fg: var(--sm-on-night);
	--s-fg-2: #DAD7D0;
	--s-muted: var(--sm-on-night-2);
	--s-rule: var(--sm-night-rule);
	--s-accent: #FF5D50;
	--s-shadow: #000;
	position: relative;
	isolation: isolate;
	background-color: var(--s-bg);
	background-image:
		var(--sm-img-grain),
		repeating-linear-gradient(90deg, rgba(255, 255, 255, .035) 0 1px, transparent 1px calc(100% / 12));
	background-size: 240px 240px, auto;
	color: var(--s-fg);
	color-scheme: dark;
}

/* 2. Base and type --------------------------------------------------------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; scroll-padding-top: 84px; }
body {
	margin: 0;
	background: var(--sm-concrete) var(--sm-img-concrete);
	background-size: 480px 480px;
	color: var(--sm-ink);
	font: 400 1rem/1.55 var(--f-ui);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	overflow-x: hidden;
}
img, svg, video, iframe { max-width: 100%; }
img, video { height: auto; display: block; }
a { color: inherit; text-decoration-thickness: 2px; text-underline-offset: .18em; }
a:hover { color: var(--s-accent); }
:focus-visible { outline: 3px solid var(--sm-red); outline-offset: 2px; }
h1, h2, h3, h4, h5, h6 { margin: 0; font-family: var(--f-display); font-weight: 800; line-height: 1; letter-spacing: 0; text-wrap: balance; }
p { margin: 0; }
ul, ol { margin: 0; padding: 0; }
button { font: inherit; color: inherit; }
[hidden] { display: none !important; }
::selection { background: var(--sm-red); color: #fff; }
.sm-main { display: block; outline: none; }
.sm-wrap { width: 100%; max-width: var(--wrap); margin-inline: auto; padding-inline: var(--gutter); }
.sm-wrap--read { max-width: calc(760px + 2 * var(--gutter)); }
.sm-grid { display: grid; gap: clamp(30px, 3.2vw, 44px) clamp(20px, 2.4vw, 30px); }
.sm-grid--3 { grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); }
.sm-grid--4 { grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr)); }
.sm-span-all { grid-column: 1 / -1; }
.sm-paper { background: transparent; }
.sm-label {
	display: inline-flex; align-items: center; gap: .55em;
	margin: 0 0 .9rem;
	font: 700 .74rem/1.2 var(--f-mono); letter-spacing: .08em; text-transform: uppercase;
	color: var(--s-accent);
}
.sm-label::before { content: ""; width: .7em; height: .7em; background: currentColor; flex: none; }
.sm-label .sm-icon { width: 1.1em; height: 1.1em; }
.sm-label:has(.sm-icon)::before { display: none; }
.sm-sep { display: inline-block; width: 5px; height: 5px; margin: 0 .6em; background: currentColor; opacity: .55; vertical-align: middle; }
.sm-icon { width: 1.2em; height: 1.2em; fill: currentColor; flex: none; vertical-align: -.2em; }

/* 3. Brand pieces ---------------------------------------------------------- */
.sm-logo { display: block; width: 100%; height: auto; }
.sm-wm { display: inline-flex; align-items: center; line-height: 0; color: currentColor; }
.sm-wm__img { display: block; width: auto; height: 1em; }
.sm-wm--text { font: 900 1em/1 var(--f-display); letter-spacing: .02em; text-transform: uppercase; line-height: 1; }
.sm-peak { display: block; width: 1em; height: 1em; overflow: visible; }
.sm-peak__bolt { fill: var(--sm-bolt, var(--sm-red)); }
.sm-tick { width: 1em; height: 1em; flex: none; color: var(--sm-red); }

/* The signal bar: a red head on a black rule. */
.sm-hazard { display: block; width: 100%; height: 8px; background: var(--signal); }
.sm-hazard--top { height: 6px; }
.sm-hazard--thin { height: 4px; }
.sm-hazard--short { width: 120px; }

/* Notice blocks: solid, square, stencilled. */
.sm-stamp {
	--st: var(--sm-red); --st-fg: #fff;
	display: inline-block;
	padding: .3em .6em .26em;
	background: var(--st); color: var(--st-fg);
	font: 800 1rem/1 var(--f-display); letter-spacing: .08em; text-transform: uppercase; white-space: nowrap;
	box-shadow: .22em .22em 0 var(--s-shadow);
}
.sm-stamp--ink { --st: var(--s-fg); --st-fg: var(--s-bg); box-shadow: .22em .22em 0 var(--sm-red); }
.sm-stamp--rust { --st: transparent; --st-fg: var(--s-fg); box-shadow: inset 0 0 0 .14em var(--sm-red), .22em .22em 0 var(--sm-red); }
.sm-stamp--red { --st: var(--sm-red); --st-fg: #fff; }
.sm-stamp--warn { --st: var(--sm-warn); --st-fg: #0B0B0B; }

/* Signal lamp: a red square that blinks like a warning light. */
.sm-rec { display: inline-flex; align-items: center; gap: .55em; font: 700 .68rem/1 var(--f-mono); letter-spacing: .1em; text-transform: uppercase; color: var(--s-fg); white-space: nowrap; }
.sm-rec__dot { width: .62em; height: .62em; background: var(--sm-red); animation: sm-blink 1.6s steps(1, end) infinite; }
.sm-rec--live { padding: .45em .7em .42em .6em; background: var(--sm-red); color: #fff; }
.sm-rec--live .sm-rec__dot { background: #fff; }
.sm-rec--sm { font-size: .62rem; }
@keyframes sm-blink { 0%, 62%, 100% { opacity: 1; } 63%, 82% { opacity: .2; } }

/* Counters, coordinates, filed-from, kicker, front tag, evidence counter. */
.sm-counter, .sm-fileno, .sm-tc, .sm-slate span {
	font: 700 .7rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase;
	font-variant-numeric: tabular-nums slashed-zero;
}
.sm-counter { display: inline-flex; align-items: center; gap: .45em; padding: .5em .65em; border: 2px solid var(--s-fg); text-decoration: none; }
.sm-counter .sm-icon { width: 1.05em; height: 1.05em; }
.sm-counter--link:hover { background: var(--s-fg); color: var(--s-bg); }
.sm-coords { font: 400 .74rem/1.3 var(--f-mono); font-variant-numeric: tabular-nums slashed-zero; color: var(--s-muted); text-decoration: underline dotted; text-underline-offset: .25em; }
a.sm-coords:hover { color: var(--s-accent); }
.sm-filed { display: inline-flex; flex-wrap: wrap; align-items: center; gap: .15em .5em; font: 500 .84rem/1.3 var(--f-ui); color: var(--s-fg-2); }
.sm-filed .sm-icon { width: 1em; height: 1em; color: var(--sm-red); }
.sm-filed__label { font: 700 .7rem/1 var(--f-mono); text-transform: uppercase; letter-spacing: .06em; color: var(--s-muted); }
.sm-filed__place { font-weight: 700; color: var(--s-fg); }
.sm-kicker { display: inline-block; padding: .34em .5em .3em; background: var(--s-fg); color: var(--s-bg); font: 700 .66rem/1.1 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; text-decoration: none; }
a.sm-kicker:hover { background: var(--sm-red); color: #fff; }
.sm-casetag { display: inline-flex; align-items: center; gap: .4em; padding: .32em .5em .28em; border: 2px solid var(--sm-red); color: var(--s-fg); font: 700 .66rem/1 var(--f-mono); letter-spacing: .04em; text-transform: uppercase; text-decoration: none; }
.sm-casetag .sm-icon { width: 1em; height: 1em; color: var(--sm-red); }
.sm-casetag__part::before { content: "/"; margin: 0 .45em; color: var(--sm-red); }
a.sm-casetag:hover { background: var(--sm-red); color: #fff; }
a.sm-casetag:hover .sm-icon { color: #fff; }
.sm-proof { display: inline-flex; align-items: center; gap: .35em; color: var(--s-fg); text-decoration: none; font: 700 .7rem/1.2 var(--f-mono); text-transform: uppercase; letter-spacing: .04em; }
.sm-proof .sm-icon { width: 1em; height: 1em; color: var(--sm-red); }
a.sm-proof:hover { color: var(--s-accent); text-decoration: underline; }
.sm-pillars { display: flex; flex-wrap: wrap; align-items: center; gap: .4em .9em; font: 700 .78rem/1.3 var(--f-mono); letter-spacing: .12em; text-transform: uppercase; }
.sm-pillars__sep { width: 8px; height: 8px; background: var(--sm-red); }

/* 4. Controls -------------------------------------------------------------- */
.sm-btn {
	--b-bg: var(--s-fg); --b-fg: var(--s-bg); --b-bd: var(--s-fg); --b-sh: var(--sm-red);
	display: inline-flex; align-items: center; justify-content: center; gap: .55em;
	min-height: 48px; padding: .66em 1.25em .6em;
	border: var(--bw) solid var(--b-bd); border-radius: 0;
	background: var(--b-bg); color: var(--b-fg);
	font: 800 1rem/1 var(--f-display); letter-spacing: .08em; text-transform: uppercase; text-decoration: none;
	box-shadow: 5px 5px 0 var(--b-sh);
	cursor: pointer; transition: transform .1s var(--ease), box-shadow .1s var(--ease), background-color .12s;
	white-space: nowrap;
}
.sm-btn:hover { color: var(--b-fg); transform: translate(-2px, -2px); box-shadow: 7px 7px 0 var(--b-sh); }
.sm-btn:active { transform: translate(4px, 4px); box-shadow: 1px 1px 0 var(--b-sh); }
.sm-btn .sm-icon { width: 1.05em; height: 1.05em; }
.sm-btn--rust { --b-bg: var(--sm-red-btn); --b-fg: #fff; --b-bd: var(--sm-red-btn); --b-sh: var(--s-shadow); }
.sm-dark .sm-btn--rust { --b-sh: #000; }
.sm-btn--ink { --b-bg: var(--s-fg); --b-fg: var(--s-bg); --b-bd: var(--s-fg); --b-sh: var(--sm-red); }
.sm-btn--ghost { --b-bg: transparent; --b-fg: var(--s-fg); --b-bd: currentColor; --b-sh: transparent; box-shadow: none; }
.sm-btn--ghost:hover { --b-bg: var(--s-fg); --b-fg: var(--s-bg); box-shadow: none; }
.sm-btn--yt { --b-bg: #FF0033; --b-fg: #fff; --b-bd: #FF0033; --b-sh: var(--s-shadow); }
.sm-dark .sm-btn--yt { --b-bg: #fff; --b-fg: #0F0F0F; --b-bd: #fff; --b-sh: #FF0033; }
.sm-dark .sm-btn--yt .sm-icon { fill: #FF0033; }
.sm-btn--sm { min-height: 40px; padding: .5em .9em .45em; font-size: .9rem; box-shadow: 4px 4px 0 var(--b-sh); }
.sm-btn--lg { min-height: 58px; padding: .8em 1.6em .74em; font-size: 1.15rem; }
.sm-btn[disabled], .sm-btn[aria-disabled="true"] { opacity: .65; cursor: progress; }
.sm-textlink { display: inline-flex; align-items: center; gap: .5em; font: 700 .74rem/1 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; text-decoration: none; color: var(--s-fg); }
.sm-textlink .sm-icon { width: 1.1em; transition: transform .15s var(--ease); color: var(--sm-red); }
.sm-textlink:hover .sm-icon { transform: translateX(4px); }
.sm-chip {
	display: inline-flex; align-items: center; gap: .45em; min-height: 38px; padding: .5em .85em .45em;
	border: 2px solid var(--s-fg); border-radius: 0; background: transparent; color: var(--s-fg);
	font: 700 .7rem/1 var(--f-mono); letter-spacing: .05em; text-transform: uppercase; text-decoration: none; cursor: pointer;
	transition: background-color .12s, color .12s;
}
.sm-chip:hover { background: var(--s-fg); color: var(--s-bg); }
.sm-chip.is-current, .sm-chip[aria-pressed="true"] { background: var(--sm-red); border-color: var(--sm-red); color: #fff; box-shadow: 3px 3px 0 var(--s-fg); }
.sm-chip .sm-icon { width: 1em; height: 1em; }
.sm-chip__n { font-variant-numeric: tabular-nums; opacity: .75; }
.sm-chips { margin-top: 1.6rem; }
.sm-chips ul, .sm-filters { display: flex; flex-wrap: wrap; gap: .5rem; list-style: none; }
.sm-filters { margin: 0 0 1.3rem; }
.sm-filters--quiet .sm-chip { min-height: 34px; font-size: .66rem; border-width: 1.5px; }
.sm-input {
	width: 100%; min-height: 50px; padding: .7em .9em;
	border: var(--bw) solid var(--s-fg); border-radius: 0;
	background: var(--s-card); color: var(--s-fg);
	font: 400 1rem/1.4 var(--f-ui);
}
.sm-input::placeholder { color: var(--s-muted); opacity: 1; }
textarea.sm-input { min-height: 130px; resize: vertical; }
.sm-input:focus { outline: 3px solid var(--sm-red); outline-offset: 0; }

/* 5. Header ---------------------------------------------------------------- */
.sm-progress { position: fixed; inset: 0 0 auto; z-index: 60; height: 6px; pointer-events: none; }
.sm-progress__bar { position: absolute; inset: 0; background: var(--sm-red); transform-origin: 0 50%; transform: scaleX(var(--p, 0)); }

.sm-netbar { position: relative; background: #000; color: #A8A59F; font: 400 .7rem/1 var(--f-mono); border-top: 6px solid var(--sm-red); }
.sm-netbar__inner { display: flex; align-items: center; gap: 1.4rem; min-height: 36px; }
.sm-netbar__lead { display: flex; align-items: center; gap: .6em; white-space: nowrap; letter-spacing: .04em; text-transform: uppercase; }
.sm-netbar__dot { width: 8px; height: 8px; background: var(--sm-red); animation: sm-blink 1.6s steps(1, end) infinite; }
.sm-netbar__list { display: flex; gap: 0; list-style: none; overflow-x: auto; scrollbar-width: none; }
.sm-netbar__list::-webkit-scrollbar { display: none; }
.sm-netbar__list li + li { border-left: 1px solid #333; }
.sm-netbar a { display: block; padding: 0 .9rem; color: #F1EFEA; text-decoration: none; white-space: nowrap; letter-spacing: .06em; text-transform: uppercase; font-weight: 700; }
.sm-netbar a:hover { color: #fff; background: var(--sm-red); }
.sm-netbar__list a { line-height: 36px; }
.sm-netbar__all { margin-left: auto; display: inline-flex !important; gap: .45em; align-items: center; padding: 0 !important; }
.sm-netbar__all .sm-icon { width: 1em; color: var(--sm-red); }
.sm-netbar__all:hover { background: none !important; color: #fff; text-decoration: underline; }

/* The masthead: a black slab over the storm, the logo in white, the grid exposed. */
.sm-masthead {
	--s-fg: #F1EFEA; --s-bg: #0A0A0A; --s-muted: #A8A59F; --s-accent: #FF5D50; --s-bg-2: #1E1E1D; --s-rule: #2F2F2D;
	position: relative; isolation: isolate; overflow: hidden;
	background: #050505; color: #F1EFEA;
}
.sm-masthead__plate {
	position: absolute; inset: 0; z-index: -1;
	background: var(--sm-img-storm) 50% 62% / cover no-repeat;
	filter: grayscale(1) contrast(1.25) brightness(.62);
	opacity: .62;
}
.sm-masthead__plate::after {
	content: ""; position: absolute; inset: 0;
	background:
		linear-gradient(180deg, rgba(5, 5, 5, .55) 0%, rgba(5, 5, 5, .1) 38%, rgba(5, 5, 5, .2) 64%, #050505 100%),
		repeating-linear-gradient(90deg, rgba(255, 255, 255, .06) 0 1px, transparent 1px calc(100% / 12));
}
.sm-masthead__wrap { position: relative; }
.sm-masthead__wrap::before, .sm-masthead__wrap::after {
	content: ""; position: absolute; top: 62px; width: 26px; height: 26px; pointer-events: none;
	border: 0 solid rgba(241, 239, 234, .7);
}
.sm-masthead__wrap::before { left: var(--gutter); border-width: 2px 0 0 2px; }
.sm-masthead__wrap::after { right: var(--gutter); border-width: 2px 2px 0 0; }
.sm-masthead__top { display: flex; align-items: center; gap: 1.4rem; min-height: 46px; border-bottom: 1px solid rgba(241, 239, 234, .22); font: 400 .72rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; }
.sm-masthead__date { white-space: nowrap; }
.sm-masthead__day { color: #FF5D50; font-weight: 700; }
.sm-masthead__edition { padding-left: 1.4rem; border-left: 1px solid rgba(241, 239, 234, .22); white-space: nowrap; color: #CFCCC5; font-variant-numeric: tabular-nums slashed-zero; }
.sm-masthead__links { margin-left: auto; }
.sm-masthead__menu { display: flex; gap: 0; list-style: none; }
.sm-masthead__menu li + li { border-left: 1px solid rgba(241, 239, 234, .22); }
.sm-masthead__menu a { display: block; padding: 0 .9rem; line-height: 46px; text-decoration: none; font-weight: 700; color: #F1EFEA; }
.sm-masthead__menu a:hover { background: #F1EFEA; color: #0A0A0A; }
.sm-masthead__menu li:first-child a { background: var(--sm-red); color: #fff; }
.sm-masthead__menu li:first-child a:hover { background: #fff; color: var(--sm-red); }
.sm-masthead .sm-social { margin-left: .4rem; }
.sm-masthead__top > .sm-social:first-child, .sm-masthead__edition + .sm-social { margin-left: auto; }
.sm-masthead__brand { width: min(100%, 1020px); margin: 0 auto; padding: clamp(34px, 5.4vw, 74px) 0 clamp(14px, 2vw, 22px); }
.sm-masthead__logo { margin: 0; line-height: 0; }
.sm-masthead__logo a { display: block; }
.sm-masthead__logo img { filter: drop-shadow(0 6px 0 rgba(0, 0, 0, .55)); }
.sm-masthead__under { display: flex; flex-direction: column; align-items: center; gap: 14px; padding: 0 0 clamp(26px, 3.4vw, 44px); }
.sm-masthead__tagline {
	display: inline-block; padding: .26em .7em .2em;
	background: var(--sm-red); color: #fff;
	font: 900 clamp(1.2rem, .7rem + 1.8vw, 2.3rem)/1 var(--f-display); letter-spacing: .12em; text-transform: uppercase;
	box-shadow: 8px 8px 0 #000;
}
.sm-masthead__pillars { justify-content: center; color: #E6E3DC; font-size: clamp(.66rem, .6rem + .2vw, .8rem); }

/* The navigation: a concrete slab ruled off in black. */
.sm-nav { position: sticky; top: 0; z-index: 50; background: var(--sm-slab); color: var(--sm-ink); border-block: var(--bw) solid var(--sm-ink); --s-fg: var(--sm-ink); --s-bg: var(--sm-slab); --s-bg-2: var(--sm-concrete-2); }
.admin-bar .sm-nav { top: 32px; }
@media (max-width: 782px) { .admin-bar .sm-nav { top: 0; } }
.sm-nav__inner { display: flex; align-items: stretch; gap: 0; min-height: 58px; }
.sm-nav__mark { display: none; flex: none; align-items: center; padding-right: 1rem; margin-right: .2rem; border-right: var(--bw) solid var(--sm-ink); color: var(--sm-ink); text-decoration: none; font-size: 26px; }
.sm-nav.is-stuck .sm-nav__mark { display: flex; }
.sm-nav__primary { flex: 1; min-width: 0; display: flex; }
.sm-menu { display: flex; gap: 0; list-style: none; }
.sm-menu li { display: flex; border-right: 2px solid var(--sm-ink); }
.sm-menu li:first-child { border-left: 2px solid var(--sm-ink); }
.sm-nav.is-stuck .sm-menu li:first-child { border-left: 0; }
.sm-menu a { display: flex; align-items: center; padding: 0 clamp(.7rem, 1.1vw, 1.15rem); font: 800 1.06rem/1 var(--f-display); letter-spacing: .07em; text-transform: uppercase; text-decoration: none; white-space: nowrap; color: var(--sm-ink); transition: background-color .1s, color .1s; }
.sm-menu a:hover { background: var(--sm-ink); color: var(--sm-slab); }
.sm-menu .current-menu-item > a, .sm-menu .current_page_parent > a, .sm-menu a[aria-current="page"] { background: var(--sm-red); color: #fff; }
.sm-nav__tools { display: flex; align-items: center; gap: .2rem; margin-left: auto; padding-left: .6rem; }
.sm-nav__icon { display: inline-grid; place-items: center; width: 44px; height: 44px; border: 0; border-radius: 0; background: transparent; color: var(--sm-ink); cursor: pointer; }
.sm-nav__icon:hover, .sm-nav__icon[aria-expanded="true"] { background: var(--sm-ink); color: var(--sm-slab); }
.sm-nav__icon[aria-pressed="true"].sm-nav__lowdata { background: var(--sm-warn); color: #0B0B0B; }
.sm-nav__icon .sm-icon { width: 21px; height: 21px; }
.sm-nav__toggle { display: none; width: auto; padding: 0 .75rem; gap: .45em; font: 800 1rem/1 var(--f-display); letter-spacing: .08em; text-transform: uppercase; }
.sm-nav__mode .sm-icon--sun { display: none; }
:root[data-theme="dark"] .sm-nav__mode .sm-icon--sun { display: block; }
:root[data-theme="dark"] .sm-nav__mode .sm-icon--moon { display: none; }
:root[data-theme="dark"] .sm-nav__wordmark .sm-wm__img { filter: invert(1); }
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) .sm-nav__mode .sm-icon--sun { display: block; }
	:root:not([data-theme="light"]) .sm-nav__mode .sm-icon--moon { display: none; }
	:root:not([data-theme="light"]) .sm-nav__wordmark .sm-wm__img { filter: invert(1); }
}
.sm-nav__watch { min-height: 42px; padding: .5em 1em .45em; margin-left: .4rem; font-size: 1rem; --b-sh: var(--sm-ink); box-shadow: 4px 4px 0 var(--b-sh); }
.sm-livepill { display: inline-flex; align-items: center; gap: .6rem; max-width: 300px; padding: 3px 12px 3px 3px; border: 2px solid var(--sm-ink); text-decoration: none; color: var(--sm-ink); font: 700 .74rem/1.2 var(--f-ui); }
.sm-livepill .sm-rec:not(.sm-rec--live) { padding: .42em .7em; background: var(--sm-red); color: #fff; }
.sm-livepill .sm-rec:not(.sm-rec--live) .sm-rec__dot { background: #fff; }
.sm-livepill__title { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.sm-livepill--block { display: flex; max-width: none; margin: 0 0 1.4rem; padding: 8px 12px 8px 8px; border-color: #F1EFEA; color: #F1EFEA; }
.sm-livepill--block .sm-livepill__title { white-space: normal; }
.sm-search { border-top: var(--bw) solid var(--sm-ink); padding: 14px 0; background: var(--sm-ink); }
.sm-searchform { display: flex; gap: .6rem; }
.sm-searchform .sm-btn span { display: inline; }
.sm-search .sm-input { background: var(--sm-slab); color: var(--sm-ink); border-color: var(--sm-slab); }
.sm-search .sm-btn { --b-bg: var(--sm-red); --b-bd: var(--sm-red); --b-fg: #fff; --b-sh: #000; }

/* "The storm now" strip. */
.sm-oncase { background: #0A0A0A; color: #F1EFEA; border-bottom: var(--bw) solid #0A0A0A; }
.sm-oncase__inner { display: flex; align-items: stretch; padding-inline: 0; }
.sm-oncase__label { display: flex; align-items: center; flex: none; padding: 0 1.1rem 0 var(--gutter); background: var(--sm-red); }
.sm-oncase__label .sm-rec { color: #fff; font-size: .72rem; }
.sm-oncase__label .sm-rec__dot { background: #fff; }
.sm-oncase__list { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(250px, 1fr); flex: 1; list-style: none; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.sm-oncase__list::-webkit-scrollbar { display: none; }
.sm-oncase__list li { scroll-snap-align: start; border-right: 1px solid #2F2F2D; }
.sm-oncase__list li:last-child { border-right: 0; }
.sm-oncase__list a { display: block; height: 100%; padding: 12px 18px 13px; text-decoration: none; color: #F1EFEA; }
.sm-oncase__list a:hover { background: #1A1A19; color: #fff; }
.sm-oncase__meta { display: flex; align-items: center; gap: .6rem; margin-bottom: .35rem; font: 400 .64rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; color: #A8A59F; }
.sm-oncase__n { color: var(--sm-red); font-weight: 700; }
.sm-oncase__place { color: #F1EFEA; font-weight: 700; }
.sm-oncase__title { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font: 700 1.08rem/1.08 var(--f-display); letter-spacing: .01em; }
.sm-oncase__list a:hover .sm-oncase__title { text-decoration: underline; text-decoration-color: var(--sm-red); text-decoration-thickness: 3px; }

/* Drawer: a black slab. */
.sm-drawer { position: fixed; inset: 0; z-index: 100; }
.sm-drawer__backdrop { position: absolute; inset: 0; background: rgba(0, 0, 0, .72); }
.sm-drawer__panel { position: absolute; inset: 0 0 0 auto; width: min(440px, 94vw); padding: 18px 24px 40px; overflow-y: auto; background: #0A0A0A; color: #F1EFEA; border-left: 8px solid var(--sm-red); animation: sm-slide .2s var(--ease); --s-fg: #F1EFEA; --s-bg: #0A0A0A; --s-bg-2: #1E1E1D; --s-muted: #A8A59F; --s-rule: #2F2F2D; }
@keyframes sm-slide { from { transform: translateX(40px); opacity: 0; } }
.sm-drawer__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1.6rem; }
.sm-drawer__wordmark { font-size: 34px; }
.sm-drawer__close { display: grid; place-items: center; width: 46px; height: 46px; border: 2px solid #F1EFEA; background: transparent; cursor: pointer; }
.sm-drawer__close:hover { background: #F1EFEA; color: #0A0A0A; }
.sm-drawer__menu { list-style: none; border-top: var(--bw) solid #F1EFEA; }
.sm-drawer__menu a { display: flex; align-items: center; justify-content: space-between; padding: 12px 0 10px; border-bottom: 1px solid #2F2F2D; font: 900 2.1rem/1 var(--f-display); text-transform: uppercase; text-decoration: none; }
.sm-drawer__menu a::after { content: ""; width: 12px; height: 12px; background: var(--sm-red); opacity: 0; }
.sm-drawer__menu a:hover { color: #fff; }
.sm-drawer__menu a:hover::after, .sm-drawer__menu a[aria-current="page"]::after { opacity: 1; }
.sm-drawer__label { margin: 1.8rem 0 .7rem; font: 700 .72rem/1 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; color: #A8A59F; }
.sm-drawer__topics { display: flex; flex-wrap: wrap; gap: .45rem; list-style: none; }
.sm-drawer__topics a { display: inline-block; padding: .5em .8em .45em; border: 2px solid #F1EFEA; font: 700 .72rem/1 var(--f-mono); text-transform: uppercase; text-decoration: none; }
.sm-drawer__topics a:hover { background: #F1EFEA; color: #0A0A0A; }
.sm-drawer__small { display: flex; flex-wrap: wrap; gap: .4rem 1.2rem; margin-top: 1.8rem; list-style: none; font: 700 .76rem/1.4 var(--f-mono); text-transform: uppercase; }
.sm-drawer .sm-social { margin-top: 1.4rem; }
.sm-drawer__motto { margin-top: 2rem; display: inline-block; padding: .3em .6em .26em; background: var(--sm-red); color: #fff; font: 900 1.3rem/1 var(--f-display); letter-spacing: .08em; text-transform: uppercase; }
body.has-drawer { overflow: hidden; }

.sm-social { display: flex; gap: .2rem; }
.sm-social__link { display: grid; place-items: center; width: 34px; height: 34px; }
.sm-social__link:hover { background: var(--s-fg); color: var(--s-bg); }
.sm-social__link .sm-icon { width: 18px; height: 18px; }

/* 6. Headings -------------------------------------------------------------- */
.sm-sh { margin-bottom: clamp(24px, 3vw, 38px); }
.sm-sh__tab { display: inline-flex; align-items: center; gap: .6em; margin-bottom: .7rem; padding: .42em .7em .38em .55em; background: var(--s-fg); color: var(--s-bg); font: 700 .7rem/1 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; }
.sm-sh__tab::before { content: ""; width: .75em; height: .75em; background: var(--sm-red); }
.sm-sh__tab:has(.sm-rec)::before { display: none; }
.sm-sh__tab .sm-rec { color: inherit; font: inherit; letter-spacing: inherit; }
.sm-sh__row { display: flex; align-items: flex-end; gap: 1rem; }
.sm-sh__title { flex: none; max-width: 76%; font: 900 clamp(2.2rem, 1.3rem + 3vw, 4rem)/.86 var(--f-display); letter-spacing: -.002em; text-transform: uppercase; }
.sm-sh__rule { flex: 1; min-width: 40px; height: 12px; margin-bottom: .3em; background: var(--s-fg); box-shadow: inset 52px 0 0 var(--sm-red); }
.sm-sh__more { flex: none; display: inline-flex; align-items: center; gap: .5em; margin-bottom: .1em; padding: .55em .7em .5em; border: 2px solid var(--s-fg); font: 700 .68rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; text-decoration: none; white-space: nowrap; }
.sm-sh__more .sm-icon { width: 1.1em; color: var(--sm-red); transition: transform .15s var(--ease); }
.sm-sh__more:hover { background: var(--s-fg); color: var(--s-bg); }
.sm-sh__more:hover .sm-icon { transform: translateX(3px); }
.sm-sh__note { max-width: 64ch; margin-top: 1rem; font: 400 1.08rem/1.5 var(--f-read); color: var(--s-fg-2); }
.sm-dark .sm-sh__note { color: var(--s-muted); }

.sm-pagehead { position: relative; padding: clamp(40px, 6vw, 84px) 0 clamp(26px, 3.8vw, 48px); }
.sm-pagehead__hazard { position: absolute; inset: 0 0 auto; height: 10px; }
.sm-pagehead__note { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 1rem; margin-bottom: 1.1rem; font: 700 .76rem/1 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--s-accent); }
.sm-pagehead__note > span:first-child::before { content: ""; display: inline-block; width: .75em; height: .75em; margin-right: .6em; background: currentColor; vertical-align: -.05em; }
.sm-pagehead__count { padding: .5em .65em; background: var(--s-fg); color: var(--s-bg); font: 700 .68rem/1 var(--f-mono); letter-spacing: .06em; font-variant-numeric: tabular-nums slashed-zero; }
.sm-pagehead__count::before { display: none !important; }
.sm-pagehead__titlerow { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 2rem; }
.sm-pagehead__title { max-width: 15ch; font: 900 clamp(3.2rem, 1.6rem + 6.6vw, 8.4rem)/.8 var(--f-display); letter-spacing: -.01em; text-transform: uppercase; }
.sm-pagehead__stamp { font-size: clamp(1.1rem, .8rem + 1vw, 1.7rem); }
.sm-pagehead__intro { max-width: 64ch; margin-top: 1.5rem; padding-left: 1.1rem; border-left: 6px solid var(--sm-red); font: 400 clamp(1.08rem, 1rem + .35vw, 1.3rem)/1.5 var(--f-read); color: var(--s-fg-2); }
.sm-pagehead__intro p + p { margin-top: .8em; }
.sm-pagehead__actions { display: flex; flex-wrap: wrap; gap: .9rem; margin-top: 1.4rem !important; }
.sm-pagehead__search { max-width: 640px; }
.sm-pagehead--dark { color: var(--s-fg); }
.sm-pagehead--about .sm-pagehead__title { max-width: 18ch; font-size: clamp(2.8rem, 1.4rem + 5.4vw, 6.6rem); }
.sm-pagehead--about .sm-pagehead__title span { display: block; color: var(--sm-red); }

/* 7. Cards ----------------------------------------------------------------- */
.sm-card { position: relative; display: flex; flex-direction: column; gap: 14px; }
.sm-card__media, .sm-fcard__media { position: relative; display: block; overflow: hidden; aspect-ratio: 16 / 9; background: var(--s-bg-2); outline: 2px solid var(--s-fg); outline-offset: -2px; }
.sm-card__img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s var(--ease), filter .35s var(--ease); }
.has-noir .sm-card__img { filter: grayscale(1) contrast(1.22) brightness(.94); }
.sm-card:hover .sm-card__img, .sm-fcard:hover .sm-card__img, .sm-casecard:hover .sm-card__img, .sm-card:focus-within .sm-card__img, .sm-fcard:focus-within .sm-card__img { transform: scale(1.03); filter: none; }
.sm-card__blank { display: block; width: 100%; height: 100%; background: #0A0A0A var(--sm-img-storm-sm) 50% 60% / cover; filter: grayscale(1) contrast(1.2) brightness(.7); }
.sm-card__kicker { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem .5rem; }
.sm-card__title { font: 800 clamp(1.5rem, 1.3rem + .45vw, 1.78rem)/1 var(--f-display); letter-spacing: .003em; }
.sm-card__title a { text-decoration: none; background: linear-gradient(var(--sm-red), var(--sm-red)) 0 100% / 0 4px no-repeat; transition: background-size .25s var(--ease); }
.sm-card__title a:hover { color: inherit; background-size: 100% 4px; }
.sm-card__title a::after { content: ""; position: absolute; inset: 0; }
.sm-card__dek { font: 400 1.06rem/1.5 var(--f-read); color: var(--s-fg-2); }
.sm-card__meta, .sm-fcard__meta { display: flex; flex-wrap: wrap; align-items: center; gap: .1rem; font: 400 .7rem/1.5 var(--f-mono); letter-spacing: .02em; text-transform: uppercase; color: var(--s-muted); font-variant-numeric: tabular-nums; }
.sm-card__loc { display: inline-flex; align-items: center; gap: .25em; }
.sm-card__loc .sm-icon { width: .95em; height: .95em; color: var(--sm-red); }
.sm-card__body { display: flex; flex-direction: column; gap: 9px; }
.sm-card__flag { position: absolute; left: 0; top: 0; z-index: 2; }
.sm-card__flag .sm-rec { padding: .55em .75em; background: var(--sm-red); color: #fff; }
.sm-card__flag .sm-rec__dot { background: #fff; }
.sm-card__stamp { position: absolute; right: 16px; top: 16px; z-index: 2; font-size: 1.1rem; }
.sm-card__kicker, .sm-card__meta, .sm-card__foot, .sm-card__kicker a, .sm-card__meta a { position: relative; z-index: 1; }

.sm-card--lead { gap: 22px; }
.sm-card--lead .sm-card__media { aspect-ratio: 3 / 2; outline-width: var(--bw); outline-offset: calc(-1 * var(--bw)); box-shadow: 12px 12px 0 var(--s-fg); }
.sm-card--lead .sm-card__media::after { content: ""; position: absolute; left: 0; bottom: 0; z-index: 2; width: 34%; height: 12px; background: var(--sm-red); pointer-events: none; }
.sm-card--lead .sm-card__title { font: 900 clamp(2.6rem, 1.3rem + 4.2vw, 5.4rem)/.84 var(--f-display); letter-spacing: -.008em; text-transform: uppercase; }
.sm-card--lead .sm-card__title a { background-size: 0 6px; }
.sm-card--lead .sm-card__title a:hover { background-size: 100% 6px; }
.sm-card--lead .sm-card__dek { font-size: clamp(1.1rem, 1rem + .3vw, 1.32rem); max-width: 60ch; }
.sm-card__foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .8rem 1.4rem; padding-top: 14px; border-top: var(--bw) solid var(--s-fg); }

.sm-card--wide .sm-card__media { aspect-ratio: 3 / 2; }
.sm-card--wide .sm-card__title { font: 900 clamp(2rem, 1.2rem + 2.2vw, 3.1rem)/.88 var(--f-display); text-transform: uppercase; }

.sm-card--compact { display: grid; grid-template-columns: 96px 1fr; gap: 14px; align-items: start; padding-bottom: 18px; border-bottom: 2px solid var(--s-fg); }
.sm-card--compact .sm-card__media { aspect-ratio: 1; }
.sm-card--compact .sm-card__title { font-size: 1.32rem; line-height: 1.02; }
.sm-card--text { padding-top: 16px; border-top: 6px solid var(--s-fg); }

.sm-playmark { position: absolute; left: 0; bottom: 0; z-index: 2; display: grid; place-items: center; width: 46px; height: 46px; background: var(--sm-red); color: #fff; transition: background-color .15s; }
.sm-playmark .sm-icon { width: 18px; height: 18px; margin-left: 2px; }
.sm-card:hover .sm-playmark, .sm-fcard:hover .sm-playmark { background: #0A0A0A; }

/* Film cards. */
.sm-fcard { position: relative; display: flex; flex-direction: column; gap: 12px; }
.sm-fcard__media::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(0, 0, 0, .3), transparent 32%, transparent 64%, rgba(0, 0, 0, .5)); pointer-events: none; }
.sm-fcard__media > span { z-index: 2; }
.sm-tc { position: absolute; right: 0; bottom: 0; padding: .55em .6em; background: #0A0A0A; color: #fff; }
.sm-fileno { position: absolute; left: 0; top: 0; padding: .5em .6em .45em; background: #F1EFEA; color: #0A0A0A; }
.sm-flagnew { position: absolute; right: 0; top: 0; padding: .48em .6em; background: #0A0A0A; color: #fff; font: 700 .62rem/1 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; }
.sm-flagnew .sm-rec { color: #fff; }
.sm-flagnew--ex { background: var(--sm-red); }
.sm-fcard__body { display: flex; flex-direction: column; gap: 8px; }
.sm-fcard__title { font: 800 1.46rem/1 var(--f-display); }
.sm-fcard__title a { text-decoration: none; }
.sm-fcard__title a::after { content: ""; position: absolute; inset: 0; }
.sm-fcard__title a:hover { color: inherit; text-decoration: underline; text-decoration-color: var(--sm-red); text-decoration-thickness: 4px; }
.sm-fcard__chan { font: 700 .68rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--s-accent); }
.sm-fcard__dek { font: 400 1.04rem/1.5 var(--f-read); color: var(--s-fg-2); }
.sm-fcard__meta { position: relative; z-index: 1; }
.sm-fcard--feature .sm-fcard__media { aspect-ratio: 3 / 2; }
.sm-fcard--feature .sm-fcard__title { font: 900 clamp(2rem, 1.2rem + 2.2vw, 3.1rem)/.88 var(--f-display); text-transform: uppercase; }
.sm-fcard--row { display: grid; grid-template-columns: 136px 1fr; gap: 14px; align-items: center; }
.sm-fcard--row .sm-playmark { width: 32px; height: 32px; }
.sm-fcard--row .sm-playmark .sm-icon { width: 13px; height: 13px; }
.sm-fcard--row .sm-fcard__title { font-size: 1.22rem; line-height: 1.02; }
.sm-fcard__rt { color: var(--s-fg); font-weight: 700; }
.sm-fcard--short .sm-fcard__media { aspect-ratio: 9 / 16; }
.sm-fcard--short .sm-fcard__title { font-size: 1.12rem; line-height: 1.04; }
.sm-fcard--short .sm-fcard__media::before { background: linear-gradient(180deg, transparent 55%, rgba(0, 0, 0, .6)); }

/* Front cards: a black header bar with the number and storm gauge. */
.sm-casecard { position: relative; display: flex; flex-direction: column; background: var(--s-card); border: var(--bw) solid var(--s-fg); box-shadow: 8px 8px 0 var(--s-fg); transition: transform .12s var(--ease), box-shadow .12s var(--ease); }
.sm-casecard:hover { transform: translate(-3px, -3px); box-shadow: 11px 11px 0 var(--sm-red); }
.sm-casecard.is-breaking { box-shadow: 8px 8px 0 var(--sm-red); }
.sm-casecard__media { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; background: #000; order: 2; border-bottom: var(--bw) solid var(--s-fg); }
.sm-casecard__stamp { position: absolute; left: 12px; bottom: 12px; z-index: 2; font-size: 1.05rem; }
.sm-casecard__body { display: contents; }
.sm-casecard__tab { order: 1; display: flex; align-items: center; justify-content: space-between; gap: .8rem; padding: .7em .9em; background: var(--s-fg); color: var(--s-bg); font: 700 .74rem/1 var(--f-mono); letter-spacing: .04em; text-transform: uppercase; }
.sm-casecard__no { display: inline-flex; align-items: center; gap: .4em; }
.sm-casecard__no .sm-icon { width: 1.1em; height: 1.1em; color: var(--sm-red); }
.sm-casecard__tab .sm-gauge { --g-off: color-mix(in srgb, var(--s-bg) 22%, transparent); --g-on: var(--s-bg); }
.sm-casecard__title, .sm-casecard__q, .sm-casecard__meta, .sm-casecard__latest { order: 3; margin-inline: 16px; }
.sm-casecard__title { margin-top: 16px; font: 900 clamp(1.7rem, 1.3rem + 1vw, 2.3rem)/.9 var(--f-display); text-transform: uppercase; }
.sm-casecard__title a { text-decoration: none; }
.sm-casecard__title a::after { content: ""; position: absolute; inset: 0; }
.sm-casecard__title a:hover { color: inherit; text-decoration: underline; text-decoration-color: var(--sm-red); text-decoration-thickness: 4px; }
.sm-casecard__q { margin-top: 8px; font: italic 400 1.06rem/1.4 var(--f-read); color: var(--s-fg-2); }
.sm-casecard__meta { display: flex; flex-wrap: wrap; align-items: center; margin-top: 10px; font: 400 .7rem/1.4 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-casecard__latest { position: relative; z-index: 1; margin-top: 12px; margin-bottom: 16px; padding-top: 10px; border-top: 2px solid var(--s-fg); font: 500 .86rem/1.35 var(--f-ui); }
.sm-casecard__latest span { font: 700 .66rem/1 var(--f-mono); text-transform: uppercase; color: var(--s-accent); }
.sm-casecard__latest a { font-weight: 700; }
.sm-casecard__latest time { display: block; margin-top: .25em; font: 400 .7rem/1 var(--f-mono); color: var(--s-muted); }
.sm-casestatus { display: inline-flex; align-items: center; gap: .45em; font: 700 .7rem/1 var(--f-mono); letter-spacing: .04em; text-transform: uppercase; color: var(--s-fg); }
.sm-casestatus__dot { width: .7em; height: .7em; background: currentColor; }
.sm-casestatus.is-breaking .sm-casestatus__dot, .sm-casestatus.is-result .sm-casestatus__dot { background: var(--sm-red); }
.sm-casestatus.is-building .sm-casestatus__dot { background: transparent; box-shadow: inset 0 0 0 2px var(--sm-red); }
.sm-casestatus.is-brewing .sm-casestatus__dot { background: var(--sm-warn); }
.sm-casestatus.is-quiet .sm-casestatus__dot, .sm-casestatus.is-closed .sm-casestatus__dot { background: transparent; box-shadow: inset 0 0 0 2px currentColor; }

/* The storm gauge: five blocks. */
.sm-gauge { --g-on: var(--s-fg); --g-off: color-mix(in srgb, var(--s-fg) 18%, transparent); display: inline-flex; align-items: flex-end; gap: 3px; height: 16px; vertical-align: middle; }
.sm-gauge__bar { width: 7px; background: var(--g-off); }
.sm-gauge__bar:nth-child(1) { height: 40%; }
.sm-gauge__bar:nth-child(2) { height: 55%; }
.sm-gauge__bar:nth-child(3) { height: 70%; }
.sm-gauge__bar:nth-child(4) { height: 85%; }
.sm-gauge__bar:nth-child(5) { height: 100%; }
.sm-gauge__bar.is-on { background: var(--g-on); }
.sm-gauge.is-breaking .sm-gauge__bar.is-on, .sm-gauge .sm-gauge__bar.is-on:nth-child(n+4) { background: var(--sm-red); }
.sm-gauge.is-brewing .sm-gauge__bar.is-on { background: var(--sm-warn); }
.sm-gauge--lg { height: 30px; gap: 5px; }
.sm-gauge--lg .sm-gauge__bar { width: 14px; }

/* 8. Homepage bands -------------------------------------------------------- */
.sm-front { padding: clamp(30px, 4.4vw, 58px) 0 var(--band); }
.sm-lead { display: grid; grid-template-columns: minmax(0, 8fr) minmax(0, 4fr); gap: clamp(30px, 4vw, 58px); }
.sm-lead--solo { grid-template-columns: 1fr; }
.sm-lead__side { padding-left: clamp(20px, 2.6vw, 36px); border-left: var(--bw) solid var(--sm-ink); }
.sm-fresh__title { display: flex; flex-direction: column; align-items: flex-start; gap: .7rem; padding-bottom: 14px; border-bottom: 8px solid var(--sm-ink); font: 900 2rem/.9 var(--f-display); text-transform: uppercase; }
.sm-fresh { list-style: none; }
.sm-fresh__item { display: grid; grid-template-columns: 48px 1fr; gap: 12px; padding: 16px 0; border-bottom: 2px solid var(--sm-ink); }
.sm-fresh__n { font: 900 2rem/.8 var(--f-display); color: transparent; -webkit-text-stroke: 1.5px var(--sm-ink); font-variant-numeric: tabular-nums; }
.sm-fresh__item:first-child .sm-fresh__n { color: var(--sm-red); -webkit-text-stroke: 0; }
.sm-fresh__kicker { margin-bottom: .45rem; }
.sm-fresh__head { font: 800 1.4rem/1 var(--f-display); }
.sm-fresh__head a { text-decoration: none; }
.sm-fresh__head a:hover { text-decoration: underline; text-decoration-color: var(--sm-red); text-decoration-thickness: 3px; }
.sm-fresh__meta { display: flex; flex-wrap: wrap; align-items: center; margin-top: .5rem; font: 400 .68rem/1.3 var(--f-mono); text-transform: uppercase; color: var(--sm-muted); }
.sm-lead__side .sm-textlink { margin-top: 18px; }
.sm-front__grid { margin-top: clamp(40px, 4.6vw, 64px); padding-top: clamp(30px, 3.2vw, 44px); border-top: 8px solid var(--sm-ink); }

.sm-screenband { padding: var(--band) 0; }
.sm-screen { display: grid; grid-template-columns: minmax(0, 8fr) minmax(0, 4fr); gap: clamp(20px, 3vw, 40px); align-items: start; }
.sm-screen--wide { grid-template-columns: minmax(0, 8.4fr) minmax(0, 3.6fr); align-items: center; }
.sm-frame { position: relative; overflow: hidden; background: #000; border: var(--bw) solid #F1EFEA; box-shadow: 12px 12px 0 var(--sm-red); }
.sm-screen__caption { padding-top: 24px; }
.sm-slate { display: flex; flex-wrap: wrap; gap: 0; margin-bottom: .9rem; }
.sm-slate span { padding: .5em .65em; border: 1px solid var(--s-rule); margin: 0 -1px -1px 0; color: var(--s-muted); }
.sm-slate .sm-slate__no { border-color: var(--sm-red); background: var(--sm-red); color: #fff; }
.sm-screen__title { font: 900 clamp(2.1rem, 1.2rem + 2.4vw, 3.4rem)/.88 var(--f-display); text-transform: uppercase; }
.sm-screen__title a { text-decoration: none; }
.sm-screen__title a:hover { text-decoration: underline; text-decoration-color: var(--sm-red); text-decoration-thickness: 5px; }
.sm-screen__dek { max-width: 60ch; margin-top: .8rem; font: 400 1.08rem/1.5 var(--f-read); color: var(--s-muted); }
.sm-screen__next { display: flex; flex-direction: column; gap: 16px; }
.sm-screen__label { padding-bottom: 12px; border-bottom: var(--bw) solid var(--s-fg); font: 700 .72rem/1 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--s-fg); }
.sm-screen__sub { align-self: flex-start; margin-top: 6px; }
.sm-screen__sub span { text-transform: none; letter-spacing: .02em; opacity: .75; }

.sm-rail { margin-top: clamp(40px, 4.6vw, 60px); }
.sm-rail__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; padding-bottom: 12px; border-bottom: var(--bw) solid var(--s-fg); }
.sm-rail__title { display: flex; align-items: center; gap: .7rem; font: 900 1.8rem/1 var(--f-display); text-transform: uppercase; }
.sm-rail__title::before { content: ""; width: 14px; height: 14px; background: var(--sm-red); }
.sm-rail__btns { display: flex; gap: 0; }
.sm-rail__btn { display: grid; place-items: center; width: 44px; height: 44px; border: 2px solid var(--s-fg); background: transparent; cursor: pointer; }
.sm-rail__btn + .sm-rail__btn { border-left: 0; }
.sm-rail__btn:hover { background: var(--s-fg); color: var(--s-bg); }
.sm-rail__btn:first-child .sm-icon { transform: rotate(180deg); }
.sm-rail__list { display: grid; grid-auto-flow: column; grid-auto-columns: clamp(150px, 15vw, 190px); gap: 14px; list-style: none; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 8px; scrollbar-width: thin; }
.sm-rail__list > li { scroll-snap-align: start; }

.sm-adrow { padding: 8px 0; }
.sm-adrow:empty { display: none; }

.sm-casesband { padding: var(--band) 0; background: var(--sm-concrete-2); border-block: var(--bw) solid var(--sm-ink); --s-bg-2: var(--sm-concrete); }
.sm-mapband { padding: var(--band) 0; }
.sm-mapband__grid { display: grid; grid-template-columns: minmax(0, 8.4fr) minmax(0, 3.6fr); gap: clamp(20px, 3vw, 40px); align-items: start; }

.sm-desk { padding: var(--band) 0 0; }
.sm-desk + .sm-desk { padding-top: clamp(44px, 5.4vw, 80px); }
.sm-desk:last-of-type { padding-bottom: var(--band); }
.sm-desk__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(26px, 3.2vw, 48px); }
.sm-desk--flip .sm-desk__main { order: 2; }
.sm-desk__grid--solo { grid-template-columns: minmax(0, 1fr); }
.sm-desk__grid--solo .sm-card--wide, .sm-desk__grid--solo .sm-fcard--feature { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(20px, 3vw, 40px); align-items: center; }
.sm-desk__list { display: flex; flex-direction: column; gap: 18px; }
.sm-desk__list .sm-fcard--row { padding-bottom: 18px; border-bottom: 2px solid var(--s-fg); }

.sm-sisterband { padding: var(--band) 0; }
.sm-evband { padding: var(--band) 0; background: var(--sm-concrete-2); border-top: var(--bw) solid var(--sm-ink); }

/* They moved on. We didn't. */
.sm-followband { padding: var(--band) 0; background: var(--sm-slab); border-block: var(--bw) solid var(--sm-ink); --s-bg-2: var(--sm-concrete); }
.sm-follow { list-style: none; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 0; border-left: var(--bw) solid var(--s-fg); }
.sm-follow__item { position: relative; display: flex; flex-direction: column; gap: 12px; padding: 4px clamp(18px, 2vw, 28px) 4px; border-right: var(--bw) solid var(--s-fg); }
.sm-follow__then { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; font: 400 .68rem/1.3 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-follow__label { font: 700 .66rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; }
.sm-follow__title { font: 900 clamp(1.6rem, 1.3rem + .8vw, 2.1rem)/.9 var(--f-display); text-transform: uppercase; }
.sm-follow__title a { text-decoration: none; }
.sm-follow__title a::after { content: ""; position: absolute; inset: 0; }
.sm-follow__title a:hover { text-decoration: underline; text-decoration-color: var(--sm-red); text-decoration-thickness: 4px; }
.sm-follow__now { padding: 12px 14px 14px; background: var(--s-fg); color: var(--s-bg); font: 400 1rem/1.45 var(--f-read); }
.sm-follow__label--now { display: flex; align-items: center; gap: .45em; margin-bottom: .55em; color: #FF5D50; }
.sm-follow__label--now .sm-icon { width: 1.15em; height: 1.15em; }
.sm-follow__count { font: 700 .66rem/1 var(--f-mono); text-transform: uppercase; color: var(--s-accent); }

/* The manifesto: a public notice over the storm. */
.sm-manifesto { padding: var(--band) 0; overflow: hidden; }
.sm-manifesto__plate { position: absolute; inset: 0; z-index: -1; background: var(--sm-img-storm) 50% 70% / cover no-repeat; filter: grayscale(1) contrast(1.3) brightness(.5); opacity: .32; }
.sm-manifesto__plate::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, #0A0A0A 0%, rgba(10, 10, 10, .55) 40%, #0A0A0A 100%); }
.sm-manifesto__tab { display: inline-flex; align-items: center; gap: .7em; margin-bottom: 1.4rem; padding: .5em .8em .45em .6em; border: 2px solid var(--s-fg); font: 700 .74rem/1 var(--f-mono); letter-spacing: .1em; text-transform: uppercase; }
.sm-manifesto__peak { width: 1.6em; height: 1.6em; color: var(--s-fg); }
.sm-manifesto__title { max-width: 22ch; font: 900 clamp(2.6rem, 1.2rem + 5.2vw, 6.6rem)/.84 var(--f-display); letter-spacing: -.008em; text-transform: uppercase; }
.sm-manifesto__title span { display: block; }
.sm-manifesto__title span + span { margin-top: .12em; }
.sm-manifesto__title span:nth-child(2) { max-width: 26ch; font-size: .5em; line-height: .96; color: var(--s-fg-2); }
.sm-manifesto__title .is-red { color: var(--sm-red); }
.sm-manifesto__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(28px, 4.4vw, 72px); margin-top: clamp(36px, 4.6vw, 64px); padding-top: clamp(28px, 3vw, 40px); border-top: 8px solid var(--s-fg); }
.sm-manifesto__creed { list-style: none; counter-reset: creed; display: grid; gap: 22px; }
.sm-manifesto__creed li { counter-increment: creed; display: grid; grid-template-columns: 64px 1fr; gap: 18px; font: 400 clamp(1.12rem, 1rem + .4vw, 1.35rem)/1.5 var(--f-read); color: var(--s-fg-2); }
.sm-manifesto__creed li::before { content: counter(creed, decimal-leading-zero); font: 900 2.6rem/.8 var(--f-display); color: transparent; -webkit-text-stroke: 1.5px var(--s-fg); }
.sm-manifesto__nos { display: grid; list-style: none; border-top: var(--bw) solid var(--s-fg); }
.sm-manifesto__nos li { display: flex; align-items: center; gap: 1rem; padding: .8rem 0 .7rem; border-bottom: var(--bw) solid var(--s-fg); font: 900 clamp(1.5rem, 1.2rem + .9vw, 2.1rem)/1 var(--f-display); text-transform: uppercase; }
.sm-manifesto__nos li::before { content: ""; flex: none; width: 1em; height: 1em; background: var(--sm-red) linear-gradient(45deg, transparent 42%, #0A0A0A 42% 58%, transparent 58%), var(--sm-red) linear-gradient(-45deg, transparent 42%, #0A0A0A 42% 58%, transparent 58%); background-blend-mode: normal; background-color: var(--sm-red); }
.sm-manifesto__body { margin-top: 1.4rem; font: 400 1.12rem/1.55 var(--f-read); color: var(--s-fg-2); }
.sm-manifesto__show { margin-top: clamp(40px, 5vw, 70px); font: italic 400 clamp(1.6rem, 1.1rem + 1.8vw, 2.9rem)/1.18 var(--f-read); }
.sm-manifesto__show span:last-child { display: block; font-style: normal; font-weight: 600; color: #fff; }
.sm-manifesto__foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.4rem 2rem; margin-top: clamp(32px, 4vw, 56px); padding-top: 22px; border-top: 1px solid var(--s-rule); }
.sm-manifesto__sign { font: 900 clamp(1.4rem, 1rem + 1.4vw, 2.4rem)/1 var(--f-display); letter-spacing: .04em; text-transform: uppercase; }
.sm-manifesto__actions { display: flex; flex-wrap: wrap; gap: 1rem; }

.sm-network { padding: var(--band) 0; }
.sm-network--full { padding: 0; background: none; }
.sm-network__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 290px), 1fr)); gap: clamp(22px, 2.8vw, 32px); list-style: none; }
.sm-sister { position: relative; display: flex; flex-direction: column; overflow: hidden; border: var(--bw) solid var(--s-fg); background: var(--s-card); box-shadow: 8px 8px 0 var(--s-fg); transition: transform .12s var(--ease), box-shadow .12s var(--ease); }
.sm-dark .sm-sister { box-shadow: 8px 8px 0 #000; }
.sm-sister:hover { transform: translate(-3px, -3px); box-shadow: 11px 11px 0 var(--sm-red); }
.sm-sister__media { position: relative; aspect-ratio: 16 / 9; background: #111; border-bottom: var(--bw) solid var(--s-fg); }
.sm-sister__play { position: absolute; inset: 0; display: block; color: #fff; text-decoration: none; }
.sm-sister__play img { width: 100%; height: 100%; object-fit: cover; }
.has-noir .sm-sister__play img { filter: grayscale(1) contrast(1.15); transition: filter .35s; }
.has-noir .sm-sister:hover .sm-sister__play img { filter: none; }
.sm-sister__play::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 40%, rgba(0, 0, 0, .85)); }
.sm-sister__play .sm-playmark { top: 0; bottom: auto; z-index: 1; }
.sm-sister__latest { position: absolute; left: 14px; right: 14px; bottom: 12px; z-index: 1; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font: 600 .86rem/1.3 var(--f-ui); color: #fff; }
.sm-sister__label { color: #FF5D50; font: 700 .64rem/1 var(--f-mono); text-transform: uppercase; }
.sm-sister__blank { display: grid; place-items: center; height: 100%; font: 900 2.2rem/1 var(--f-display); text-transform: uppercase; color: #F1EFEA; background: #0A0A0A; box-shadow: inset 0 -12px 0 var(--sm-red); }
.sm-sister__body { display: flex; flex-direction: column; gap: .7rem; padding: 18px 18px 20px; flex: 1; }
.sm-sister__id { display: flex; align-items: center; gap: .8rem; }
.sm-sister__logo { width: 46px; height: 46px; object-fit: cover; border: 2px solid var(--s-fg); }
.sm-sister__name { font: 900 2rem/.88 var(--f-display); text-transform: uppercase; }
.sm-sister__name a { text-decoration: none; }
.sm-sister__tag { font: italic 400 1.04rem/1.35 var(--f-read); color: var(--s-fg-2); }
.sm-sister__bio { font: 400 .98rem/1.5 var(--f-read); color: var(--s-fg-2); }
.sm-sister__links { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: auto; padding-top: .4rem; }
.sm-sister__links .sm-chip { position: relative; z-index: 1; min-height: 34px; font-size: .66rem; }

/* 9. Story ----------------------------------------------------------------- */
.sm-story__head, .sm-story__media { max-width: calc(1180px + 2 * var(--gutter)); }
.sm-story__head { padding-top: clamp(30px, 5vw, 68px); padding-bottom: clamp(22px, 3vw, 34px); }
.sm-story__kicker { display: flex; flex-wrap: wrap; align-items: center; gap: .55rem .6rem; margin-bottom: 1.2rem; }
.sm-story__titlerow { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 1rem 2rem; }
.sm-story__title { max-width: 19ch; font: 900 clamp(2.9rem, 1.4rem + 5.4vw, 6.6rem)/.84 var(--f-display); letter-spacing: -.01em; text-transform: uppercase; }
.sm-story__stamp { margin-top: .6rem; font-size: clamp(1rem, .8rem + .6vw, 1.35rem); }
.sm-story__dek { max-width: 46ch; margin-top: 1.4rem; font: 400 clamp(1.2rem, 1.02rem + .6vw, 1.58rem)/1.4 var(--f-read); color: var(--s-fg-2); }
.sm-story__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 26px; margin-top: 1.9rem; padding-top: 1.1rem; border-top: 8px solid var(--s-fg); }
.sm-story__counters { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; }
.sm-story__counters .sm-proof { padding: .5em .65em; border: 2px solid var(--s-fg); font-size: .68rem; }
.sm-story__counters a.sm-proof:hover { background: var(--s-fg); color: var(--s-bg); text-decoration: none; }
.sm-updated { font: 700 .68rem/1 var(--f-mono); letter-spacing: .04em; text-transform: uppercase; color: var(--s-accent); }
.sm-byline { display: flex; align-items: center; gap: 12px; }
.sm-avatar { width: var(--s, 44px); height: var(--s, 44px); object-fit: cover; filter: grayscale(1) contrast(1.12); border: 2px solid var(--s-fg); }
.sm-avatar--initials { display: grid; place-items: center; background: var(--s-fg); color: var(--s-bg); font: 900 calc(var(--s) * .42)/1 var(--f-display); }
.sm-byline__text { display: flex; flex-direction: column; gap: 3px; font: 500 .86rem/1.25 var(--f-ui); }
.sm-byline__by { font: 700 .66rem/1 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-byline__name { font-weight: 800; text-decoration: none; }
.sm-byline__name:hover { text-decoration: underline; }
.sm-byline__meta { display: flex; flex-wrap: wrap; align-items: center; color: var(--s-muted); font: 400 .68rem/1.3 var(--f-mono); text-transform: uppercase; font-variant-numeric: tabular-nums; }
.sm-sinceflag { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: stretch; max-width: 900px; margin-top: 1.4rem; background: var(--s-fg); color: var(--s-bg); text-decoration: none; border: var(--bw) solid var(--s-fg); }
.sm-sinceflag__label { display: flex; align-items: center; gap: .5em; padding: .7em .9em; background: var(--sm-red); color: #fff; font: 700 .68rem/1.1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; }
.sm-sinceflag__label .sm-icon { width: 1.2em; height: 1.2em; }
.sm-sinceflag__text { padding: .7em 1em; font: 500 .94rem/1.4 var(--f-ui); }
.sm-sinceflag__text time { margin-right: .4em; font: 700 .72rem/1 var(--f-mono); text-transform: uppercase; color: #FF5D50; }
.sm-sinceflag__go { display: grid; place-items: center; width: 48px; border-left: 1px solid color-mix(in srgb, var(--s-bg) 25%, transparent); }
.sm-sinceflag:hover { color: var(--s-bg); }
.sm-sinceflag:hover .sm-sinceflag__go { background: var(--sm-red); color: #fff; }
.sm-story__media { margin: 0 auto clamp(28px, 3.6vw, 48px); }
.sm-story__imgwrap { overflow: hidden; border: var(--bw) solid var(--s-fg); }
.sm-story__img { width: 100%; }
.sm-caption { display: flex; gap: .8rem; max-width: 820px; margin-top: 12px; font: 400 .9rem/1.45 var(--f-ui); color: var(--s-muted); }
.sm-caption__fig { flex: none; padding: .3em .45em; background: var(--s-fg); color: var(--s-bg); font: 700 .64rem/1.2 var(--f-mono); text-transform: uppercase; align-self: flex-start; }
.sm-cnote { display: flex; gap: .7rem; align-items: flex-start; max-width: 760px; margin-top: 1.4rem; padding: 12px 14px; border: var(--bw) solid var(--s-fg); border-left: 12px solid var(--sm-warn); background: var(--s-card); font: 400 .94rem/1.45 var(--f-ui); }
.sm-cnote .sm-icon { color: var(--s-fg); margin-top: 1px; }
.sm-story__layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(28px, 4vw, 64px); max-width: calc(1180px + 2 * var(--gutter)); padding-bottom: var(--band); }
.sm-story__body { display: grid; grid-template-columns: minmax(0, 1fr); align-content: start; min-width: 0; }
.sm-story__share { margin-bottom: 1.4rem; }
.sm-story__aside { min-width: 0; }
.sm-share { display: flex; flex-wrap: wrap; align-items: center; gap: 0; }
.sm-share__label { margin-right: .6rem; font: 700 .66rem/1 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-share__btn { display: grid; place-items: center; width: 42px; height: 42px; padding: 0; margin: 0 -2px -2px 0; border: 2px solid var(--s-fg); background: var(--s-card); color: var(--s-fg); cursor: pointer; transition: background-color .1s, color .1s; }
.sm-share__btn:hover { background: var(--s-fg); color: var(--s-bg); position: relative; z-index: 1; }
.sm-share__btn .sm-icon { width: 17px; height: 17px; }
.sm-share__status { margin-left: .6rem; font: 700 .68rem/1 var(--f-mono); text-transform: uppercase; color: var(--s-accent); }

/* Reading. */
.sm-prose { max-width: 700px; font: 400 1.1875rem/1.66 var(--f-read); color: var(--s-fg); font-optical-sizing: auto; }
.sm-prose > * + * { margin-top: 1.15em; }
.sm-prose a { color: inherit; text-decoration-color: var(--sm-red); text-decoration-thickness: 2px; }
.sm-prose a:hover { color: var(--s-accent); }
.sm-story .sm-prose > p:first-of-type { font-size: 1.12em; line-height: 1.56; }
.sm-story .sm-prose > p:first-of-type::first-letter { float: left; margin: .08em .14em 0 0; padding: .1em .12em .02em; background: var(--s-fg); color: var(--s-bg); font: 900 3.4em/.8 var(--f-display); box-shadow: .08em .08em 0 var(--sm-red); }
.sm-prose h2 { margin-top: 2.1em; padding-top: .5em; border-top: 6px solid var(--s-fg); font: 900 clamp(2rem, 1.4rem + 1.6vw, 2.9rem)/.9 var(--f-display); text-transform: uppercase; }
.sm-prose h3 { margin-top: 1.8em; font: 800 1.78rem/1 var(--f-display); text-transform: uppercase; }
.sm-prose h4 { margin-top: 1.6em; font: 700 .76rem/1.2 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--s-accent); }
.sm-prose h2 + *, .sm-prose h3 + *, .sm-prose h4 + * { margin-top: .6em; }
.sm-prose ul, .sm-prose ol { padding-left: 1.3em; }
.sm-prose li + li { margin-top: .4em; }
.sm-prose ul li::marker { content: "■  "; color: var(--sm-red); font-size: .8em; }
.sm-prose ol li::marker { font: 700 .85em var(--f-mono); color: var(--sm-red); }
.sm-prose strong { font-weight: 650; }
.sm-prose blockquote { margin-inline: 0; padding: .2em 0 .2em 1.2em; border-left: 8px solid var(--sm-red); font-style: italic; }
.sm-prose figure { margin-inline: 0; }
.sm-prose figure img { border: 2px solid var(--s-fg); }
.sm-prose figcaption, .sm-prose .wp-element-caption { margin-top: .6em; font: 400 .88rem/1.45 var(--f-ui); color: var(--s-muted); }
.sm-prose .alignwide { margin-inline: calc(-1 * min(120px, 6vw)); max-width: none; }
.sm-prose .alignfull { margin-inline: calc(50% - 50vw); max-width: 100vw; }
.sm-prose .alignfull img { width: 100%; border-inline: 0; }
.sm-prose hr, .sm-prose .wp-block-separator { height: 0; border: 0; border-top: var(--bw) solid var(--s-fg); margin-block: 2.2em; }
.sm-prose .wp-block-pullquote { padding: 1.4em 0; border-block: 8px solid var(--s-fg); text-align: left; }
.sm-prose .wp-block-pullquote blockquote { border: 0; padding: 0; font: 900 clamp(2.1rem, 1.4rem + 2vw, 3.2rem)/.92 var(--f-display); font-style: normal; text-transform: uppercase; }
.sm-prose .wp-block-pullquote cite { display: block; margin-top: .8rem; font: 700 .72rem/1.3 var(--f-mono); text-transform: uppercase; color: var(--s-accent); font-style: normal; }
.sm-prose .wp-block-table table { width: 100%; border-collapse: collapse; font: 400 .92rem/1.4 var(--f-ui); border: 2px solid var(--s-fg); }
.sm-prose .wp-block-table th, .sm-prose .wp-block-table td { padding: .6em .7em; border-bottom: 1px solid var(--s-rule); text-align: left; }
.sm-prose .wp-block-table th { background: var(--s-fg); color: var(--s-bg); font: 700 .7rem/1.2 var(--f-mono); text-transform: uppercase; letter-spacing: .04em; }
.sm-prose .wp-block-embed, .sm-prose .wp-block-video { margin-block: 1.8em; }
.sm-prose .wp-block-embed iframe { width: 100%; }
.sm-prose--tight { font-size: 1.08rem; }
.sm-prose--tight > * + * { margin-top: .9em; }
.sm-prose--plain > p:first-of-type { font-size: 1em !important; }
.sm-prose--manifesto { max-width: 760px; }
.sm-prose--manifesto > p { font-size: clamp(1.2rem, 1.05rem + .5vw, 1.5rem); line-height: 1.5; }
.sm-prose .is-style-lead { font-size: clamp(1.6rem, 1.15rem + 1.4vw, 2.4rem) !important; line-height: 1.2 !important; font-weight: 500; }
.sm-prose .is-style-sm-signoff { padding: .7em 0 .6em; border-block: 8px solid var(--s-fg); font: 900 clamp(1.9rem, 1.3rem + 1.8vw, 3rem)/.92 var(--f-display) !important; text-transform: uppercase; text-wrap: balance; }
.sm-prose .is-style-sm-typewriter { font: 700 .92rem/1.55 var(--f-mono) !important; letter-spacing: .02em; text-transform: uppercase; color: var(--s-accent); }
.sm-prose .is-style-sm-notice { position: relative; padding: 2.2em 1.2em 1.1em; border: 6px solid var(--s-fg); background: var(--s-card); font: 900 clamp(1.5rem, 1.2rem + 1vw, 2.1rem)/1 var(--f-display) !important; text-transform: uppercase; text-align: center; text-wrap: balance; }
.sm-prose .is-style-sm-notice::before { content: "Notice"; position: absolute; left: 50%; top: 0; transform: translateX(-50%); padding: .4em .8em; background: var(--s-fg); color: var(--s-bg); font: 700 .68rem/1 var(--f-mono); letter-spacing: .14em; }

/* Redaction: the words are removed on the server; this is the bar. */
.sm-redacted { display: inline-block; height: .95em; margin: 0 .1em; vertical-align: -.1em; background: var(--s-fg); }
.sm-redacted--s { width: 3.2em; }
.sm-redacted--m { width: 6.4em; }
.sm-redacted--l { width: 10.5em; max-width: 100%; }
.sm-exref { padding: .05em .3em; background: var(--s-fg); color: var(--s-bg) !important; font: 700 .78em/1 var(--f-mono); text-transform: uppercase; text-decoration: none !important; white-space: nowrap; }
.sm-exref:hover { background: var(--sm-red); color: #fff !important; }

/* Block styles from the editor. */
.sm-prose .is-style-sm-hazard { padding-bottom: 18px; background: linear-gradient(90deg, var(--sm-red) 0 44px, var(--s-fg) 44px 140px, transparent 140px) 0 100% / 100% 8px no-repeat; }
.sm-prose .is-style-sm-factbox { padding: 1.3em 1.4em 1.4em; border: var(--bw) solid var(--s-fg); background: var(--s-card); box-shadow: 8px 8px 0 var(--s-fg); font-family: var(--f-ui); font-size: .98rem; }
.sm-prose .is-style-sm-factbox > :first-child { margin-top: 0; }
.sm-prose .is-style-sm-factbox h2, .sm-prose .is-style-sm-factbox h3 { margin: -1.3em -1.4em 1em; padding: .7em 1.4em; border: 0; background: var(--s-fg); color: var(--s-bg); font: 700 .78rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; }
.sm-prose .is-style-sm-factbox li + li { margin-top: .55em; }
.sm-prose .is-style-sm-notebook { position: relative; padding: 2.6em 1.4em 1.2em 1.4em; background: var(--s-card) repeating-linear-gradient(transparent 0 31px, var(--s-rule) 31px 32px); border: 2px solid var(--s-fg); border-left: 10px solid var(--sm-red); font: italic 400 1.1rem/32px var(--f-read); }
.sm-prose .is-style-sm-notebook::before { content: "Field notebook"; position: absolute; left: 1.4em; top: .9em; font: 700 .68rem/1 var(--f-mono); font-style: normal; letter-spacing: .08em; text-transform: uppercase; color: var(--s-accent); }
.sm-prose .is-style-sm-notebook > :first-child { margin-top: 0; }
.sm-prose .is-style-sm-notebook p + p { margin-top: 0; }
.sm-prose .is-style-sm-logsheet { padding: 1.3em 1.4em; border: var(--bw) solid var(--s-fg); background: repeating-linear-gradient(var(--s-card) 0 31px, var(--s-rule) 31px 32px); font-family: var(--f-ui); font-size: .98rem; }
.sm-prose .is-style-sm-logsheet h3 { margin: 0 0 .8em; font: 700 .78rem/1 var(--f-mono); text-transform: uppercase; }
.sm-prose .is-style-sm-warning { position: relative; padding: 3em 1.4em 1.3em; background: #0A0A0A; color: #F1EFEA; border-top: 10px solid var(--sm-red); font-family: var(--f-ui); font-size: 1rem; --s-fg: #F1EFEA; --s-bg: #0A0A0A; --s-muted: #A8A59F; --s-accent: #FF5D50; }
.sm-prose .is-style-sm-warning::before { content: "\25B2  Storm warning"; position: absolute; left: 1.4em; top: 1em; font: 700 .72rem/1 var(--f-mono); letter-spacing: .12em; text-transform: uppercase; color: #FF5D50; }
.sm-prose .is-style-sm-warning > :first-child { margin-top: 0; }
.sm-prose .is-style-sm-warning h2, .sm-prose .is-style-sm-warning h3 { border: 0; padding: 0; color: #fff; }
.sm-prose .is-style-sm-log { padding: 0; list-style: none; font-family: var(--f-ui); font-size: .98rem; border-top: var(--bw) solid var(--s-fg); }
.sm-prose .is-style-sm-log li { display: grid; grid-template-columns: 72px 1fr; gap: .8em; padding: .55em 0; border-bottom: 1px solid var(--s-rule); }
.sm-prose .is-style-sm-log li::marker { content: none; }
.sm-prose .is-style-sm-log li + li { margin-top: 0; }
.sm-prose .is-style-sm-log strong { color: var(--s-accent); font: 700 .86rem/1.5 var(--f-mono); }
.sm-prose .is-style-sm-checks { padding-left: 0; list-style: none; }
.sm-prose .is-style-sm-checks li { position: relative; padding-left: 1.9em; }
.sm-prose .is-style-sm-checks li::marker { content: none; }
.sm-prose .is-style-sm-checks li::before { content: ""; position: absolute; left: 0; top: .32em; width: 1.15em; height: 1.15em; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2.5 13.2 9 19.4 21.6 4.4' fill='none' stroke='%23D7261E' stroke-width='4.2'/%3E%3C/svg%3E") 0 0 / contain no-repeat; }
.sm-prose .is-style-sm-timeline { position: relative; padding-left: 1.9em; list-style: none; }
.sm-prose .is-style-sm-timeline::before { content: ""; position: absolute; left: 5px; top: .4em; bottom: .4em; width: 4px; background: var(--s-fg); }
.sm-prose .is-style-sm-timeline li { position: relative; }
.sm-prose .is-style-sm-timeline li::marker { content: none; }
.sm-prose .is-style-sm-timeline li::before { content: ""; position: absolute; left: -1.9em; top: .38em; width: 14px; height: 14px; background: var(--sm-red); box-shadow: 0 0 0 3px var(--s-bg); }
.sm-prose .is-style-sm-timeline strong { font: 700 .8em/1 var(--f-mono); color: var(--s-accent); margin-right: .3em; text-transform: uppercase; }
.sm-prose .is-style-sm-testimony { position: relative; padding: 2.8rem 0 0 0; border: 0; font: 900 clamp(1.8rem, 1.3rem + 1.4vw, 2.6rem)/.98 var(--f-display); font-style: normal; text-transform: uppercase; }
.sm-prose .is-style-sm-testimony::before { content: "\201C"; position: absolute; top: -.25em; left: -.04em; font: 900 6.4rem/1 var(--f-display); color: var(--sm-red); }
.sm-prose .is-style-sm-testimony cite { display: block; margin-top: .9rem; font: 700 .72rem/1.3 var(--f-mono); text-transform: uppercase; color: var(--s-muted); font-style: normal; }
.sm-prose .is-style-sm-statement { padding: 1.1em 1.3em; border: 2px dashed var(--s-muted); border-left: 0; background: var(--s-bg-2); font: 400 1rem/1.55 var(--f-mono); font-style: normal; }
.sm-prose .is-style-sm-statement::before { content: "Official statement"; display: block; margin-bottom: .6em; font: 700 .66rem/1 var(--f-mono); letter-spacing: .12em; text-transform: uppercase; color: var(--s-muted); }
.sm-prose .is-style-sm-statement cite { display: block; margin-top: .7em; font: 700 .72rem/1.3 var(--f-mono); font-style: normal; color: var(--s-muted); }
.sm-prose .is-style-sm-official { height: 100%; padding: 1.2em 1.3em; border: 2px dashed var(--s-muted); background: var(--s-bg-2); }
.sm-prose .is-style-sm-found { height: 100%; padding: 1.2em 1.3em; border: var(--bw) solid var(--s-fg); background: var(--s-card); box-shadow: inset 0 10px 0 var(--sm-red), 8px 8px 0 var(--s-fg); }
.sm-prose .is-style-sm-official > :first-child, .sm-prose .is-style-sm-found > :first-child { margin-top: 0; }
.sm-prose .is-style-sm-official h3, .sm-prose .is-style-sm-found h3 { margin: 0 0 .6em; font: 700 .78rem/1 var(--f-mono); text-transform: uppercase; }
.sm-prose .is-style-sm-official h3 { color: var(--s-muted); }
.sm-prose .is-style-sm-found h3 { color: var(--s-accent); }
.sm-prose .wp-block-columns.is-style-sm-versus { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 clamp(16px, 2vw, 26px); position: relative; }
.sm-prose .wp-block-columns.is-style-sm-versus > .wp-block-column { margin: 0; }
.sm-prose .wp-block-columns.is-style-sm-versus::after { content: "vs"; position: absolute; left: 50%; top: 50%; display: grid; place-items: center; width: 46px; height: 46px; margin: -23px 0 0 -23px; background: var(--sm-red); color: #fff; font: 900 1.25rem/1 var(--f-display); text-transform: uppercase; box-shadow: 0 0 0 4px var(--s-bg); }
.sm-prose .is-style-sm-document { position: relative; padding: 2.2em 1.6em 1.5em; background: #FBFAF7; color: #111; border: 2px solid #111; box-shadow: 8px 8px 0 rgba(11, 11, 11, .9); font: 400 .98rem/1.6 var(--f-mono); }
.sm-prose .is-style-sm-document::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 8px; background: repeating-linear-gradient(90deg, #111 0 14px, transparent 14px 22px); }
.sm-prose .is-style-sm-document .is-style-sm-typewriter { color: var(--sm-red-btn); font-size: .82rem !important; }
.sm-prose .is-style-sm-document .sm-redacted { background: #111; }
.sm-prose .is-style-sm-evidence { position: relative; }
.sm-prose .is-style-sm-evidence img { outline: var(--bw) solid var(--s-fg); outline-offset: 6px; cursor: zoom-in; border: 0; }
.sm-prose .is-style-sm-evidence::after { content: "Look closer"; position: absolute; right: 0; top: 0; padding: .5em .65em; background: var(--sm-red); color: #fff; font: 700 .66rem/1 var(--f-mono); text-transform: uppercase; pointer-events: none; }
.sm-prose .is-style-sm-print { position: relative; width: fit-content; max-width: 100%; margin-inline: auto; padding: 12px 12px 14px; background: #FBFAF7; border: 2px solid #111; box-shadow: 10px 10px 0 var(--sm-red); }
.sm-prose .is-style-sm-print::before { content: ""; position: absolute; top: -9px; left: 50%; width: 18px; height: 18px; margin-left: -9px; background: var(--sm-red); border: 2px solid #111; }
.sm-prose .is-style-sm-print img { border: 0; }
.sm-prose .is-style-sm-print figcaption { color: #333; font-family: var(--f-mono); font-size: .76rem; text-align: center; text-transform: uppercase; }
.sm-prose .wp-block-separator.is-style-sm-hazard { height: 12px; border: 0; background: var(--signal); }
.sm-prose .is-style-sm-ledger table { font: 400 .92rem/1.4 var(--f-mono); background: repeating-linear-gradient(var(--s-card) 0 2.6em, var(--s-bg-2) 2.6em 5.2em); }
.sm-prose .is-style-sm-ledger th { font: 700 .66rem/1 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; }
.sm-prose .is-style-sm-ledger td:last-child, .sm-prose .is-style-sm-ledger th:last-child { text-align: right; font-variant-numeric: tabular-nums; }
.sm-prose .is-style-sm-recorder { padding: 18px 18px 14px; background: #0A0A0A; color: #F1EFEA; border: var(--bw) solid #0A0A0A; box-shadow: 8px 8px 0 var(--sm-red); }
.sm-prose .is-style-sm-recorder::before { content: "\25CF  REC"; display: block; margin-bottom: 12px; padding-bottom: 10px; border-bottom: 1px solid #2F2F2D; font: 700 .72rem/1 var(--f-mono); letter-spacing: .14em; color: #FF5D50; }
.sm-prose .is-style-sm-recorder audio { width: 100%; }
.sm-prose .is-style-sm-recorder figcaption { color: #A8A59F; }

/* After the story. */
.sm-story__foot { display: flex; flex-direction: column; gap: 24px; max-width: 700px; margin-top: 2.8rem; }
.sm-trust { overflow: hidden; border: var(--bw) solid var(--s-fg); background: var(--s-card); font: 400 .98rem/1.55 var(--f-ui); }
.sm-trust > section { padding: 1.1em 1.3em; }
.sm-trust > section + section { border-top: var(--bw) solid var(--s-fg); }
.sm-trust__title { display: flex; align-items: center; gap: .6em; margin-bottom: .6em; font: 700 .76rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--s-accent); }
.sm-trust p + p { margin-top: .7em; }
.sm-trust ul { list-style: none; }
.sm-trust li { padding: .45em 0; border-top: 1px solid var(--s-rule); }
.sm-trust li:first-child { border-top: 0; }
.sm-trust time { margin-right: .5em; font: 700 .76rem/1 var(--f-mono); text-transform: uppercase; font-variant-numeric: tabular-nums; }
.sm-tags { display: flex; flex-wrap: wrap; gap: .4rem; }
.sm-tags a { display: inline-block; padding: .5em .8em .45em; border: 2px solid var(--s-fg); font: 700 .68rem/1 var(--f-mono); text-transform: uppercase; text-decoration: none; }
.sm-tags a:hover { background: var(--s-fg); color: var(--s-bg); }
.sm-correction { display: flex; gap: .6em; align-items: flex-start; font: 400 .92rem/1.45 var(--f-ui); color: var(--s-fg-2); }
.sm-correction .sm-icon { color: var(--sm-red); margin-top: 2px; }
.sm-keep { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem 1.4rem; padding: 16px 18px; border: 2px dashed var(--s-fg); }
.sm-keep__text { flex: 1 1 260px; font: 400 .94rem/1.45 var(--f-ui); color: var(--s-fg-2); }
.sm-keep__text strong { display: block; margin-bottom: .2em; font: 900 1.3rem/1 var(--f-display); text-transform: uppercase; color: var(--s-fg); }
.sm-keep__btns { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem; }
.sm-keep__status { font: 700 .68rem/1 var(--f-mono); text-transform: uppercase; color: var(--s-accent); }
.sm-authorbox { display: grid; grid-template-columns: 80px 1fr; gap: 18px; align-items: start; padding-top: 22px; border-top: 8px solid var(--s-fg); }
.sm-authorbox__label { font: 700 .68rem/1 var(--f-mono); text-transform: uppercase; color: var(--s-accent); margin-bottom: .5em; }
.sm-authorbox__name { font: 900 1.8rem/1 var(--f-display); text-transform: uppercase; }
.sm-authorbox__name a { text-decoration: none; }
.sm-authorbox__role { display: block; margin-top: .35em; font: 400 .74rem/1.3 var(--f-mono); color: var(--s-muted); text-transform: uppercase; }
.sm-authorbox__bio { margin-top: .6em; font: 400 1rem/1.5 var(--f-read); color: var(--s-fg-2); }
.sm-side-list { margin-top: 28px; }
.sm-side-list__title { display: flex; flex-direction: column; align-items: flex-start; gap: .55rem; padding-bottom: 12px; border-bottom: 8px solid var(--s-fg); font: 900 1.5rem/1 var(--f-display); text-transform: uppercase; }
.sm-side-list ol { list-style: none; }
.sm-side-list li { display: grid; grid-template-columns: 38px 1fr; gap: 8px; padding: 14px 0; border-bottom: 2px solid var(--s-fg); }
.sm-side-list__n { font: 900 1.5rem/.9 var(--f-display); color: transparent; -webkit-text-stroke: 1.2px var(--s-fg); }
.sm-side-list a { display: block; font: 800 1.22rem/1.02 var(--f-display); text-decoration: none; }
.sm-side-list a:hover { text-decoration: underline; text-decoration-color: var(--sm-red); text-decoration-thickness: 3px; }
.sm-side-list span time { display: block; margin-top: .4em; font: 400 .66rem/1 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-related { padding: var(--band) 0; background: var(--sm-concrete-2); border-top: var(--bw) solid var(--sm-ink); --s-bg-2: var(--sm-concrete); }
.sm-comments-wrap { padding: var(--band) 0; }
.sm-comments__title { margin-bottom: 1rem; font: 900 2.2rem/1 var(--f-display); text-transform: uppercase; }
.sm-comments__list { list-style: none; }
.sm-comments__list .comment-body { padding: 18px 0; border-bottom: 2px solid var(--s-fg); }
.sm-comments__list .children { list-style: none; margin-left: 1.6rem; }
.sm-comments .comment-meta { font: 400 .74rem/1.3 var(--f-mono); text-transform: uppercase; }
.sm-comments .comment-content { margin-top: .5rem; font: 400 1.05rem/1.55 var(--f-read); }
.sm-comments .comment-form p { margin-top: 1rem; }
.sm-comments .comment-form label { display: block; margin-bottom: .35rem; font: 700 .72rem/1.2 var(--f-mono); text-transform: uppercase; }
.sm-comments .comment-form input:not([type="checkbox"]):not([type="submit"]), .sm-comments .comment-form textarea { width: 100%; padding: .7em .9em; border: var(--bw) solid var(--s-fg); background: var(--s-card); color: var(--s-fg); font: inherit; }
.sm-comments .form-submit input { padding: .8em 1.3em; border: 0; background: var(--s-fg); color: var(--s-bg); font: 800 1rem/1 var(--f-display); letter-spacing: .08em; text-transform: uppercase; cursor: pointer; box-shadow: 5px 5px 0 var(--sm-red); }

/* 10. Evidence, reply, fronts --------------------------------------------- */
/* The official line against what we found. */
.sm-versus { position: relative; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; max-width: 700px; margin: 0 0 2.4rem; border: var(--bw) solid var(--s-fg); box-shadow: 10px 10px 0 var(--s-fg); background: var(--s-card); }
.sm-versus--found, .sm-versus--official { grid-template-columns: minmax(0, 1fr); }
.sm-versus__vs { position: absolute; left: 50%; top: 22px; z-index: 2; display: grid; place-items: center; width: 44px; height: 44px; margin-left: -22px; background: var(--sm-red); color: #fff; font: 900 1.2rem/1 var(--f-display); text-transform: uppercase; box-shadow: 0 0 0 4px var(--s-card); }
.sm-official { padding: 0 0 1.3em; background: repeating-linear-gradient(-45deg, transparent 0 10px, color-mix(in srgb, var(--s-fg) 5%, transparent) 10px 11px), var(--s-bg-2); border-right: var(--bw) solid var(--s-fg); }
.sm-versus--official .sm-official { border-right: 0; }
.sm-official__title, .sm-found__title { display: flex; align-items: center; gap: .6em; padding: .8em 1.2em .75em; font: 700 .76rem/1 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; }
.sm-official__title { color: var(--s-muted); border-bottom: 2px dashed var(--s-muted); }
.sm-found__title { background: var(--s-fg); color: var(--s-bg); }
.sm-found__title::before { content: ""; width: .8em; height: .8em; background: var(--sm-red); }
.sm-official__quote { margin: 0; padding: 1em 1.2em 0; font: italic 400 1.1rem/1.5 var(--f-read); color: var(--s-fg-2); }
.sm-official__quote p::before { content: "\201C"; }
.sm-official__quote p::after { content: "\201D"; }
.sm-official__src { display: block; margin-top: .9em; font: 700 .68rem/1.3 var(--f-mono); font-style: normal; text-transform: uppercase; color: var(--s-muted); }
.sm-official__src::before { content: "\2014  "; }
.sm-found { padding: 0 0 1.3em; }
.sm-found__list { list-style: none; display: grid; gap: .8em; padding: 1em 1.2em 0; font: 500 1.04rem/1.42 var(--f-ui); }
.sm-found__list li { display: grid; grid-template-columns: 1.4em 1fr; gap: .55em; align-items: start; }
.sm-found__check { width: 1.25em; height: 1.25em; margin-top: .05em; }
.sm-found__more { display: inline-flex; align-items: center; gap: .45em; margin: 1.1em 1.2em 0; font: 700 .68rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; text-decoration: none; }
.sm-found__more .sm-icon { width: 1.1em; color: var(--sm-red); }

/* The evidence board: a ruled grid, numbered slips. */
.sm-board { max-width: 1000px; margin-top: 3rem; padding: clamp(18px, 2.6vw, 32px); background: var(--sm-concrete-2) linear-gradient(color-mix(in srgb, var(--s-fg) 9%, transparent) 1px, transparent 1px) 0 0 / 24px 24px, linear-gradient(90deg, color-mix(in srgb, var(--s-fg) 9%, transparent) 1px, transparent 1px) 0 0 / 24px 24px; background-color: var(--sm-concrete-2); border: var(--bw) solid var(--s-fg); border-top: 12px solid var(--s-fg); box-shadow: inset 0 0 0 0 transparent; position: relative; }
.sm-board::before { content: ""; position: absolute; left: -3px; top: -12px; width: 88px; height: 12px; background: var(--sm-red); }
.sm-story__body > .sm-board { max-width: none; }
.sm-board__head { display: flex; flex-wrap: wrap; align-items: baseline; gap: .4rem 1rem; margin-bottom: 1.4rem; }
.sm-board__tab { width: 100%; font: 700 .72rem/1 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--s-accent); }
.sm-board__title { font: 900 clamp(2.2rem, 1.5rem + 1.8vw, 3.4rem)/.86 var(--f-display); text-transform: uppercase; }
.sm-board__count { font: 400 .72rem/1.3 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-board__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr)); gap: 22px; align-items: start; }
.sm-board__grid--band { grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr)); }
.sm-board--case { max-width: var(--wrap); margin-top: 0; margin-bottom: var(--band); }

/* An exhibit: a numbered evidence slip. */
.sm-exhibit { position: relative; display: flex; flex-direction: column; background: var(--s-card); border: 2px solid var(--s-fg); box-shadow: 6px 6px 0 var(--s-fg); scroll-margin-top: 100px; }
.sm-exhibit:target { outline: 4px solid var(--sm-red); outline-offset: 4px; }
.sm-exhibit[hidden] { display: none; }
.sm-exhibit__tag { display: flex; align-items: center; gap: .6em; padding: .6em .8em .55em; background: var(--s-fg); color: var(--s-bg); }
.sm-exhibit__hole { flex: none; width: 10px; height: 10px; background: var(--sm-red); }
.sm-exhibit.is-unverified .sm-exhibit__hole { background: transparent; box-shadow: inset 0 0 0 2px var(--s-bg); }
.sm-exhibit__label { font: 700 .82rem/1 var(--f-mono); letter-spacing: .04em; text-transform: uppercase; }
.sm-exhibit__type { display: inline-flex; align-items: center; gap: .35em; margin-left: auto; font: 400 .62rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; opacity: .85; }
.sm-exhibit__type .sm-icon { width: 1.1em; height: 1.1em; }
.sm-exhibit__media { position: relative; display: block; width: 100%; aspect-ratio: 16 / 10; padding: 0; overflow: hidden; border: 0; border-bottom: 2px solid var(--s-fg); background: #000; cursor: zoom-in; }
.sm-exhibit__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s var(--ease); }
.sm-exhibit__media:hover img { transform: scale(1.04); }
.sm-exhibit__zoom { position: absolute; right: 0; bottom: 0; display: inline-flex; align-items: center; gap: .35em; padding: .5em .6em; background: var(--sm-red); color: #fff; font: 700 .62rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; }
.sm-exhibit__zoom .sm-icon { width: 1.1em; height: 1.1em; }
.sm-exhibit__body { display: flex; flex-direction: column; gap: .55rem; padding: 14px 14px 10px; flex: 1; }
.sm-exhibit__title { font: 800 1.34rem/1.02 var(--f-display); }
.sm-exhibit__meta { display: grid; gap: .25rem; margin: 0; font: 500 .8rem/1.35 var(--f-ui); }
.sm-exhibit__meta div { display: grid; grid-template-columns: 4.6em 1fr; gap: .4em; }
.sm-exhibit__meta dt { font: 700 .64rem/1.6 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-exhibit__meta dd { margin: 0; }
.sm-exhibit__note { font: 400 .95rem/1.45 var(--f-read); color: var(--s-fg-2); }
.sm-exhibit__from { margin-top: auto; padding-top: .4rem; font: 500 .8rem/1.35 var(--f-ui); color: var(--s-muted); }
.sm-exhibit__from a { color: var(--s-fg); font-weight: 700; }
.sm-exhibit__foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .5rem; padding: 10px 14px 14px; border-top: 1px solid var(--s-rule); }
.sm-exhibit__open { display: inline-flex; align-items: center; gap: .35em; font: 700 .64rem/1 var(--f-mono); letter-spacing: .04em; text-transform: uppercase; text-decoration: none; }
.sm-exhibit__open .sm-icon { width: 1.1em; height: 1.1em; color: var(--sm-red); }

/* Verification grades. */
.sm-grade { display: inline-flex; align-items: center; gap: .35em; padding: .45em .55em .4em; border: 2px solid currentColor; font: 700 .62rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; }
.sm-grade__check { width: 1.1em; height: 1.1em; color: inherit; }
.sm-grade--proof { border-color: var(--sm-red-btn); background: var(--sm-red-btn); color: #fff; }
.sm-grade--ink { color: var(--s-fg); }
.sm-grade--muted { color: var(--s-muted); border-style: dashed; }
.sm-grade--red { color: var(--s-accent); }
.sm-grade--rust { color: var(--s-accent); border-style: dotted; }
.sm-legend { margin-top: 1.4rem; font: 400 .9rem/1.45 var(--f-ui); }
.sm-legend summary { display: inline-flex; align-items: center; gap: .45em; cursor: pointer; font: 700 .7rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; }
.sm-legend summary .sm-icon { color: var(--sm-red); }
.sm-legend dl { display: grid; gap: .5rem; margin: .9rem 0 .6rem; }
.sm-legend dl div { display: grid; grid-template-columns: 9.5em 1fr; gap: .8em; align-items: center; }
.sm-legend dd { margin: 0; color: var(--s-fg-2); }
.sm-legend p a { font-weight: 700; }
.sm-legend__body { max-width: 70ch; margin-top: .9rem; display: grid; gap: .6em; color: var(--s-fg-2); }

/* Right of reply. */
.sm-reply { padding: 1.3em 1.4em 1.1em; border: var(--bw) solid var(--s-fg); background: var(--s-card); }
.sm-reply__title { display: flex; align-items: center; gap: .5em; font: 900 1.9rem/1 var(--f-display); text-transform: uppercase; }
.sm-reply__title .sm-icon { color: var(--sm-red); }
.sm-reply__intro { margin: .5rem 0 .9rem; font: 400 .98rem/1.5 var(--f-read); color: var(--s-fg-2); }
.sm-reply__list { list-style: none; }
.sm-reply__item { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .5rem 1rem; padding: .9rem 0; border-top: 2px solid var(--s-fg); }
.sm-reply__who strong { display: block; font: 800 1.26rem/1.05 var(--f-display); text-transform: uppercase; }
.sm-reply__who span { font: 500 .84rem/1.3 var(--f-ui); color: var(--s-muted); }
.sm-reply__when { display: flex; flex-direction: column; align-items: flex-end; gap: .4rem; font: 400 .66rem/1 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-reply__said { grid-column: 1 / -1; margin: 0; padding: .6em 0 .1em 1em; border-left: 4px solid var(--s-fg); font: italic 400 1.02rem/1.5 var(--f-read); }
.sm-reply__item.is-none .sm-reply__said, .sm-reply__item.is-declined .sm-reply__said { border-left-style: dashed; }
.sm-reply__item.is-none .sm-reply__who strong::after { content: ""; display: inline-block; width: .5em; height: .5em; margin-left: .4em; background: var(--sm-red); vertical-align: .15em; }

/* Named in this report (the Power Register on a story). */
.sm-named { padding: 1.1em 1.2em 1.2em; background: var(--s-fg); color: var(--s-bg); }
.sm-named__title { display: flex; align-items: center; gap: .55em; margin-bottom: .9rem; font: 700 .74rem/1 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; }
.sm-named__title .sm-icon { color: var(--sm-red); }
.sm-named__list { list-style: none; display: flex; flex-wrap: wrap; gap: .5rem; }
.sm-named__item a { display: inline-flex; align-items: stretch; border: 2px solid var(--s-bg); text-decoration: none; color: var(--s-bg); }
.sm-named__name { padding: .5em .7em .45em; font: 800 1.02rem/1 var(--f-display); letter-spacing: .03em; text-transform: uppercase; }
.sm-named__status { display: flex; align-items: center; padding: .4em .6em; background: var(--s-bg); color: var(--s-fg); font: 700 .6rem/1 var(--f-mono); text-transform: uppercase; }
.sm-named__item.is-none .sm-named__status, .sm-named__item.is-declined .sm-named__status { background: var(--sm-red); color: #fff; }
.sm-named__item a:hover { background: var(--s-bg); color: var(--s-fg); }
.sm-named__more { display: inline-flex; align-items: center; gap: .45em; margin-top: 1rem; font: 700 .66rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; text-decoration: none; color: var(--s-bg); }
.sm-named__more .sm-icon { width: 1.1em; color: var(--sm-red); }

/* Since we reported. */
.sm-since { padding: 0; border: var(--bw) solid var(--s-fg); background: var(--s-card); }
.sm-since__head { padding: 1.1em 1.3em 1em; border-bottom: var(--bw) solid var(--s-fg); }
.sm-since__tab { display: inline-flex; align-items: center; gap: .5em; margin-bottom: .6rem; font: 700 .68rem/1 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--s-accent); }
.sm-since__tab::before { content: ""; width: .7em; height: .7em; background: currentColor; animation: sm-blink 1.6s steps(1, end) infinite; }
.sm-since__title { font: 900 2rem/.9 var(--f-display); text-transform: uppercase; }
.sm-since__intro { margin-top: .5rem; font: 400 .96rem/1.45 var(--f-read); color: var(--s-fg-2); }
.sm-since__list { list-style: none; }
.sm-since__item { display: grid; grid-template-columns: 110px 1fr; gap: 1rem; padding: .9em 1.3em; border-top: 1px solid var(--s-rule); }
.sm-since__item:first-child { border-top: 0; background: color-mix(in srgb, var(--sm-red) 7%, transparent); }
.sm-since__when { font: 700 .74rem/1.4 var(--f-mono); text-transform: uppercase; color: var(--s-accent); }
.sm-since__text { font: 400 1.02rem/1.5 var(--f-read); }

/* The front box at the end of a story: a black slab. */
.sm-casebox { position: relative; padding: 1.3em 1.3em 1.2em; background: #0A0A0A; color: #F1EFEA; border-top: 10px solid var(--sm-red); box-shadow: 10px 10px 0 var(--s-fg); --s-fg: #F1EFEA; --s-bg: #0A0A0A; --s-rule: #2F2F2D; --s-muted: #A8A59F; --s-accent: #FF5D50; --s-shadow: #000; }
.sm-casebox__head { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem 1rem; }
.sm-casebox__no { display: inline-flex; align-items: center; gap: .4em; font: 700 .76rem/1 var(--f-mono); text-transform: uppercase; }
.sm-casebox__no .sm-icon { color: var(--sm-red); }
.sm-casebox__gauge { margin-left: auto; }
.sm-casebox__stamp { font-size: .95rem; }
.sm-casebox__title { margin: .55em 0 .3em; font: 900 2.1rem/.9 var(--f-display); text-transform: uppercase; }
.sm-casebox__title a { text-decoration: none; }
.sm-casebox__title a:hover { text-decoration: underline; text-decoration-color: var(--sm-red); }
.sm-casebox__q { margin-bottom: .9em; font: italic 400 1.06rem/1.4 var(--f-read); color: #D7D4CD; }
.sm-casebox__list { list-style: none; margin-bottom: 1em; }
.sm-casebox__item { display: grid; grid-template-columns: 82px 1fr; gap: .6em; padding: .6em 0; border-top: 1px solid #2F2F2D; font: 500 .95rem/1.3 var(--f-ui); }
.sm-casebox__part { font: 700 .66rem/1.6 var(--f-mono); text-transform: uppercase; color: #A8A59F; }
.sm-casebox__film { color: #FF5D50; }
.sm-casebox__item.is-current { font-weight: 800; box-shadow: inset 6px 0 0 var(--sm-red); padding-left: .8em; }
.sm-casebox .sm-textlink { color: #F1EFEA; }

/* Front page. */
.sm-casepage__top { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 380px); gap: clamp(24px, 4vw, 64px); align-items: start; padding-bottom: clamp(32px, 4vw, 56px); }
.sm-casepage__q { margin-bottom: 1.2rem; font: italic 400 clamp(1.5rem, 1.1rem + 1.2vw, 2.2rem)/1.25 var(--f-read); }
.sm-casepage__q .sm-label { display: flex; margin-bottom: .6rem; font-style: normal; }
.sm-dossier { margin: 0; padding: 0; background: var(--s-card); border: var(--bw) solid var(--s-fg); box-shadow: 8px 8px 0 var(--s-fg); }
.sm-dossier div { display: grid; grid-template-columns: 9em 1fr; gap: .6em; padding: .65em 1em; border-top: 1px solid var(--s-rule); }
.sm-dossier div:first-child { border-top: 0; }
.sm-dossier dt { font: 700 .66rem/1.6 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-dossier dd { margin: 0; font: 700 .94rem/1.35 var(--f-ui); font-variant-numeric: tabular-nums; }
.sm-dossier div.is-hot dd { color: var(--s-accent); }
.sm-dossier__level { grid-template-columns: 1fr !important; background: var(--s-fg); color: var(--s-bg); }
.sm-dossier__level dt { color: inherit; opacity: .7; }
.sm-dossier__level .sm-gauge { --g-on: var(--s-bg); --g-off: color-mix(in srgb, var(--s-bg) 20%, transparent); }
.sm-dossier__means { display: block; margin-top: .5em; font: 500 .84rem/1.35 var(--f-ui); opacity: .85; }
.sm-caseparts { padding-bottom: var(--band); }
.sm-partlist { list-style: none; display: grid; gap: clamp(30px, 3.6vw, 48px); }
.sm-partlist__item { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: clamp(14px, 2vw, 28px); padding-top: clamp(20px, 2.4vw, 30px); border-top: 8px solid var(--s-fg); }
.sm-partlist__no { font: 900 4rem/.8 var(--f-display); color: var(--sm-red); }
.sm-partlist__no span { display: block; margin-bottom: .4rem; font: 700 .68rem/1 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-partlist .sm-card--wide, .sm-partlist .sm-fcard--feature { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(16px, 2.4vw, 32px); align-items: center; }
.sm-casespage { padding-bottom: var(--band); }
.sm-casespage__closed { margin-top: var(--band); }

/* The Record page. */
.sm-lockerpage { padding-bottom: var(--band); }
.sm-lockerfilters .sm-filters + .sm-filters { margin-top: -.4rem; }
.sm-board__grid--locker { margin-top: 1.6rem; }
.sm-lockerfilters__none { margin-top: 1.6rem; text-align: center; }

/* The loupe ("Look closer"). */
.sm-loupe { position: fixed; z-index: 300; width: 200px; height: 200px; margin: -100px 0 0 -100px; border: 4px solid #0A0A0A; background-repeat: no-repeat; background-color: #000; box-shadow: 0 0 0 4px var(--sm-red), 12px 12px 0 rgba(0, 0, 0, .6); pointer-events: none; }
.sm-loupe::after { content: ""; position: absolute; left: 50%; top: 50%; width: 22px; height: 22px; margin: -11px 0 0 -11px; border: 0 solid rgba(255, 255, 255, .7); background: linear-gradient(rgba(255,255,255,.7), rgba(255,255,255,.7)) 50% 0 / 2px 100% no-repeat, linear-gradient(rgba(255,255,255,.7), rgba(255,255,255,.7)) 0 50% / 100% 2px no-repeat; }

/* 11. Power Register ------------------------------------------------------- */
.sm-powerband { padding: var(--band) 0; }
.sm-powerlist { display: grid; border-top: var(--bw) solid var(--s-fg); }
.sm-powerrow { display: grid; grid-template-columns: 74px minmax(0, 4fr) minmax(0, 5fr) 150px; gap: clamp(14px, 2vw, 30px); align-items: center; padding: 20px 0; border-bottom: var(--bw) solid var(--s-fg); position: relative; }
.sm-powerrow[hidden] { display: none; }
.sm-powerrow__rank { font: 900 3.6rem/.8 var(--f-display); color: transparent; -webkit-text-stroke: 1.5px var(--s-fg); font-variant-numeric: tabular-nums; }
.sm-powerrow:first-child .sm-powerrow__rank { color: var(--sm-red); -webkit-text-stroke: 0; }
.sm-powerrow__type { display: inline-flex; align-items: center; gap: .4em; margin-bottom: .45rem; font: 700 .64rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--s-muted); }
.sm-powerrow__type .sm-icon { width: 1.15em; height: 1.15em; color: var(--sm-red); }
.sm-powerrow__name { font: 900 clamp(1.7rem, 1.3rem + 1vw, 2.4rem)/.88 var(--f-display); text-transform: uppercase; }
.sm-powerrow__name a { text-decoration: none; }
.sm-powerrow__name a::after { content: ""; position: absolute; inset: 0; }
.sm-powerrow__name a:hover { text-decoration: underline; text-decoration-color: var(--sm-red); text-decoration-thickness: 4px; }
.sm-powerrow__reports { margin-top: .45rem; font: 400 .66rem/1.3 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-powerrow__record { display: grid; gap: 10px; }
.sm-powerrow__nums { display: flex; gap: 0; margin: 0; }
.sm-powerrow__nums div { flex: 1; padding: .3em .7em; border-left: 2px solid var(--s-fg); }
.sm-powerrow__nums div:first-child { border-left: 0; padding-left: 0; }
.sm-powerrow__nums dt { font: 700 .58rem/1.4 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-powerrow__nums dd { margin: 0; font: 900 1.7rem/1 var(--f-display); font-variant-numeric: tabular-nums; }
.sm-powerrow__nums .is-hot dd { color: var(--s-accent); }
.sm-powerrow__silence { display: flex; flex-direction: column; align-items: flex-end; text-align: right; }
.sm-powerrow__pct { font: 900 3.4rem/.8 var(--f-display); font-variant-numeric: tabular-nums; }
.sm-powerrow__pct small { font-size: .5em; margin-left: .04em; }
.sm-powerrow__silence.is-high .sm-powerrow__pct { color: var(--s-accent); }
.sm-powerrow__pctlabel { margin-top: .4rem; font: 700 .6rem/1.2 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }

.sm-pbar { display: flex; width: 100%; height: 20px; border: 2px solid var(--s-fg); background: var(--s-bg); overflow: hidden; }
.sm-pbar--lg { height: 34px; border-width: var(--bw); }
.sm-pbar--empty { align-items: center; padding: 0 .5em; height: auto; min-height: 20px; border-style: dashed; }
.sm-pbar__none { font: 400 .62rem/1.6 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-pbar__seg { flex: 0 0 var(--w); height: 100%; }
.sm-pbar__seg + .sm-pbar__seg { box-shadow: inset 2px 0 0 var(--s-bg); }
.sm-pbar__seg.is-responded, .sm-pkey__sw.is-responded { background: var(--s-fg); }
.sm-pbar__seg.is-late, .sm-pkey__sw.is-late { background: color-mix(in srgb, var(--s-fg) 45%, transparent); }
.sm-pbar__seg.is-declined, .sm-pkey__sw.is-declined { color: var(--sm-red); background: var(--hatch); }
.sm-pbar__seg.is-none, .sm-pkey__sw.is-none { background: var(--sm-red); }
.sm-pbar__seg.is-pending, .sm-pkey__sw.is-pending { background: transparent; background-image: radial-gradient(circle, var(--s-muted) 1px, transparent 1.5px); background-size: 6px 6px; }
.sm-pkey { display: flex; flex-wrap: wrap; gap: .5rem 1.2rem; margin-top: 1.2rem; list-style: none; font: 400 .64rem/1.3 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-pkey li { display: inline-flex; align-items: center; gap: .45em; }
.sm-pkey__sw { width: 16px; height: 12px; border: 1.5px solid var(--s-fg); }

.sm-powerpage { padding-bottom: var(--band); }
.sm-powerstats { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); margin: 0 0 clamp(28px, 3.4vw, 44px); border: var(--bw) solid var(--s-fg); background: var(--s-card); box-shadow: 10px 10px 0 var(--s-fg); }
.sm-powerstats div { padding: 16px 18px; border-left: 2px solid var(--s-fg); }
.sm-powerstats div:first-child { border-left: 0; }
.sm-powerstats dt { font: 700 .62rem/1.3 var(--f-mono); letter-spacing: .04em; text-transform: uppercase; color: var(--s-muted); }
.sm-powerstats dd { margin: .3rem 0 0; font: 900 clamp(2.4rem, 1.8rem + 1.6vw, 3.6rem)/.86 var(--f-display); font-variant-numeric: tabular-nums; }
.sm-powerstats dd small { font-size: .5em; }
.sm-powerstats .is-hot dd { color: var(--s-accent); }
.sm-powerstats .is-rate { background: var(--s-fg); color: var(--s-bg); }
.sm-powerstats .is-rate dt { color: inherit; opacity: .7; }
.sm-powerfilters { margin-top: .4rem; }
.sm-legend--power { margin-top: 1.6rem; }

.sm-powerterm { padding-bottom: 0; }
.sm-powerterm__top { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 380px); gap: clamp(24px, 4vw, 64px); align-items: start; padding-bottom: clamp(36px, 4.4vw, 60px); }
.sm-powerterm__rate { display: flex; flex-wrap: wrap; align-items: flex-end; gap: .4rem 1.2rem; margin-bottom: 1.2rem; }
.sm-powerterm__pct { font: 900 clamp(5rem, 3rem + 7vw, 10rem)/.76 var(--f-display); font-variant-numeric: tabular-nums; letter-spacing: -.02em; }
.sm-powerterm__pct small { font-size: .45em; }
.sm-powerterm__rate.is-high .sm-powerterm__pct { color: var(--sm-red); }
.sm-powerterm__label { max-width: 18ch; padding-bottom: .4rem; font: 900 clamp(1.3rem, 1rem + .9vw, 1.9rem)/.95 var(--f-display); text-transform: uppercase; }
.sm-powerterm__log { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)); gap: clamp(28px, 4vw, 64px); padding-bottom: var(--band); }
.sm-powersaid__list, .sm-powerquiet__list { list-style: none; border-top: var(--bw) solid var(--s-fg); }
.sm-powersaid__item { padding: 16px 0; border-bottom: 2px solid var(--s-fg); }
.sm-powersaid__quote { margin: 0 0 .7rem; padding-left: 1em; border-left: 6px solid var(--s-fg); font: italic 400 1.08rem/1.5 var(--f-read); }
.sm-powersaid__item.is-late .sm-powersaid__quote { border-left-style: dashed; }
.sm-powersaid__meta { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem .9rem; font: 400 .66rem/1.3 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-powersaid__meta a { font: 700 .8rem/1.3 var(--f-ui); text-transform: none; color: var(--s-fg); }
.sm-powerquiet__item { display: grid; grid-template-columns: auto 1fr; gap: .3rem 1rem; align-items: baseline; padding: 14px 0; border-bottom: 2px solid var(--s-fg); }
.sm-powerquiet__status { display: inline-flex; align-items: center; gap: .4em; padding: .45em .6em; background: var(--sm-red); color: #fff; font: 700 .6rem/1 var(--f-mono); text-transform: uppercase; white-space: nowrap; }
.sm-powerquiet__item.is-declined .sm-powerquiet__status { background: transparent; color: var(--s-accent); box-shadow: inset 0 0 0 2px currentColor; }
.sm-powerquiet__status .sm-icon { width: 1.2em; height: 1.2em; }
.sm-powerquiet__title { font: 800 1.2rem/1.05 var(--f-display); text-decoration: none; }
.sm-powerquiet__title:hover { text-decoration: underline; text-decoration-color: var(--sm-red); }
.sm-powerquiet__when { grid-column: 2; font: 400 .64rem/1 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-powerterm__reports { padding-bottom: var(--band); }

/* 12. Map ------------------------------------------------------------------ */
.sm-map { --map-grid: color-mix(in srgb, var(--s-fg) 16%, transparent); position: relative; padding: 14px; border: var(--bw) solid var(--s-fg); background: var(--s-card); }
.sm-map__canvas { position: relative; aspect-ratio: 360 / 142; }
.sm-map__land { position: absolute; inset: 0; width: 100%; height: 100%; opacity: .85; pointer-events: none; user-select: none; filter: grayscale(1) contrast(1.4); }
.sm-dark .sm-map__land { filter: grayscale(1) invert(.92); opacity: .7; }
:root[data-theme="dark"] .sm-map__land { filter: grayscale(1) invert(.92); opacity: .7; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .sm-map__land { filter: grayscale(1) invert(.92); opacity: .7; } }
.sm-map__grid { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.sm-map__grid line { stroke: var(--map-grid); stroke-width: 1px; vector-effect: non-scaling-stroke; }
.sm-map__grid line.is-eq { stroke: color-mix(in srgb, var(--sm-red) 70%, transparent); stroke-dasharray: 6 4; }
.sm-map__deg { position: absolute; inset: auto 0 100% 0; height: 16px; list-style: none; }
.sm-map__deg li { position: absolute; bottom: 4px; transform: translateX(-50%); font: 400 .56rem/1 var(--f-mono); color: var(--s-muted); font-variant-numeric: tabular-nums; }
.sm-map--band .sm-map__canvas, .sm-map--page .sm-map__canvas { margin-top: 18px; }
.sm-pin { position: absolute; z-index: 2; text-decoration: none; width: 13px; height: 13px; margin: -6.5px 0 0 -6.5px; background: var(--sm-red); box-shadow: 0 0 0 2.5px var(--s-card), 0 0 0 4px var(--s-fg); transition: transform .12s var(--ease); }
.sm-pin::before { content: ""; position: absolute; inset: -9px; }
.sm-pin:hover, .sm-pin[aria-expanded="true"] { z-index: 4; transform: scale(1.35); color: inherit; }
.sm-pin.is-many { width: 22px; height: 22px; margin: -11px 0 0 -11px; display: grid; place-items: center; background: var(--s-fg); }
.sm-pin__n { font: 700 .62rem/1 var(--f-mono); color: var(--s-bg); font-variant-numeric: tabular-nums; }
.sm-pin.is-hot::after { content: ""; position: absolute; inset: -4px; border: 2px solid var(--sm-red); animation: sm-ping 2s var(--ease) infinite; }
.sm-pin[hidden] { display: none; }
@keyframes sm-ping { 0% { transform: scale(1); opacity: .9; } 80%, 100% { transform: scale(2.6); opacity: 0; } }
.sm-map__pop { position: absolute; z-index: 6; left: clamp(140px, calc(var(--x) * 1%), calc(100% - 140px)); top: calc(var(--y) * 1%); width: 280px; max-width: calc(100vw - 32px); padding: 14px 16px 12px; transform: translate(-50%, calc(-100% - 18px)); border: var(--bw) solid var(--s-fg); background: var(--s-card); color: var(--s-fg); box-shadow: 8px 8px 0 var(--s-fg); }
.sm-map__pop.is-below { transform: translate(-50%, 20px); }
.sm-map__popplace { padding-right: 28px; margin-bottom: 8px; font: 900 1.25rem/1 var(--f-display); text-transform: uppercase; }
.sm-map__popplace span { display: block; margin-top: 4px; font: 400 .64rem/1 var(--f-mono); color: var(--s-muted); font-variant-numeric: tabular-nums; text-transform: none; }
.sm-map__pop ul { list-style: none; }
.sm-map__pop li + li { border-top: 1px solid var(--s-rule); }
.sm-map__pop a { display: block; padding: 8px 0; font: 600 .86rem/1.3 var(--f-ui); text-decoration: none; }
.sm-map__pop a:hover { color: var(--s-accent); }
.sm-map__poptype { display: block; margin-bottom: 2px; font: 700 .6rem/1 var(--f-mono); text-transform: uppercase; color: var(--s-accent); }
.sm-map__popclose { position: absolute; top: 6px; right: 6px; display: grid; place-items: center; width: 30px; height: 30px; border: 0; background: transparent; cursor: pointer; }
.sm-map__popclose:hover { background: var(--s-fg); color: var(--s-bg); }
.sm-map__popclose .sm-icon { width: 16px; height: 16px; }
.sm-map--empty .sm-map__land { opacity: .5; }

.sm-fieldlog { list-style: none; border-top: var(--bw) solid var(--s-fg); }
.sm-fieldlog__item { border-bottom: 2px solid var(--s-fg); }
.sm-fieldlog__item[hidden] { display: none; }
.sm-fieldlog__item:target { background: color-mix(in srgb, var(--sm-red) 12%, transparent); }
.sm-fieldlog__item a { display: grid; gap: 4px; padding: 13px 0; text-decoration: none; }
.sm-fieldlog__coords { font: 400 .64rem/1 var(--f-mono); color: var(--s-muted); font-variant-numeric: tabular-nums slashed-zero; }
.sm-fieldlog__place { font: 700 .66rem/1.2 var(--f-mono); text-transform: uppercase; color: var(--s-accent); }
.sm-fieldlog__title { font: 800 1.24rem/1.02 var(--f-display); }
.sm-fieldlog__item a:hover .sm-fieldlog__title { text-decoration: underline; text-decoration-color: var(--sm-red); text-decoration-thickness: 3px; }
.sm-fieldlog__meta { font: 400 .64rem/1.3 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-mappage { padding-bottom: var(--band); }
.sm-mappage .sm-map { margin-bottom: clamp(36px, 5vw, 64px); }
.sm-fieldlog-wrap .sm-fieldlog { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); column-gap: clamp(20px, 3vw, 36px); border-top: 0; }
.sm-fieldlog-wrap .sm-fieldlog__item { border-top: 2px solid var(--s-fg); border-bottom: 0; }

/* 13. Live coverage -------------------------------------------------------- */
.sm-live { max-width: 700px; margin-top: 2.8rem; padding-top: 18px; border-top: 8px solid var(--s-fg); }
.sm-live__head { display: flex; flex-wrap: wrap; align-items: center; gap: .7rem 1rem; margin-bottom: 1.2rem; }
.sm-live__heading { font: 900 2.1rem/1 var(--f-display); text-transform: uppercase; }
.sm-live__stamp { width: 100%; font: 400 .7rem/1 var(--f-mono); text-transform: uppercase; color: var(--s-muted); font-variant-numeric: tabular-nums; }
.sm-live__ended { padding: .5em .65em; border: 2px solid var(--s-fg); font: 700 .62rem/1 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; }
.sm-live__keys { margin-bottom: 1.4rem; padding: 1em 1.2em; background: var(--s-card); border: 2px solid var(--s-fg); border-left: 10px solid var(--sm-red); }
.sm-live__keystitle { margin-bottom: .5em; font: 700 .7rem/1 var(--f-mono); text-transform: uppercase; color: var(--s-accent); }
.sm-live__keys ol { list-style: none; }
.sm-live__keys li { padding: .45em 0; border-top: 1px solid var(--s-rule); font: 600 .92rem/1.35 var(--f-ui); }
.sm-live__keys li:first-child { border-top: 0; }
.sm-live__keys a { text-decoration: none; }
.sm-live__keys a:hover { text-decoration: underline; }
.sm-live__keys time { display: inline-block; min-width: 3.6em; font: 700 .8rem/1 var(--f-mono); color: var(--s-accent); font-variant-numeric: tabular-nums; }
.sm-live__new { position: sticky; top: 84px; z-index: 5; display: flex; margin: 0 auto 1rem; }
.sm-live__list { position: relative; }
.sm-live__list::before { content: ""; position: absolute; left: 86px; top: 6px; bottom: 0; width: 4px; background: var(--s-fg); opacity: .25; }
.sm-live__entry { position: relative; display: grid; grid-template-columns: 84px 1fr; gap: 0 28px; padding: 0 0 2rem; }
.sm-live__entry::before { content: ""; position: absolute; left: 81px; top: 6px; width: 14px; height: 14px; background: var(--s-bg); border: 3px solid var(--s-fg); }
.sm-live__entry.is-key::before { background: var(--sm-red); border-color: var(--sm-red); }
.sm-live__entry.is-new { animation: sm-fresh 2.4s var(--ease); }
@keyframes sm-fresh { from { background: color-mix(in srgb, var(--sm-red) 14%, transparent); } }
.sm-live__when { display: flex; flex-direction: column; gap: 4px; padding-top: 2px; font-variant-numeric: tabular-nums slashed-zero; }
.sm-live__when time { font: 900 1.6rem/1 var(--f-display); }
.sm-live__when span { font: 400 .62rem/1 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-live__keylabel { margin-bottom: .4em; font: 700 .64rem/1 var(--f-mono); text-transform: uppercase; color: var(--s-accent); }
.sm-live__title { margin-bottom: .45em; font: 800 1.66rem/1.02 var(--f-display); }
.sm-live__body .sm-prose { font-size: 1.08rem; }
.sm-live__link { display: inline-flex; align-items: center; gap: .4em; margin-top: .8rem; font: 700 .62rem/1 var(--f-mono); text-transform: uppercase; text-decoration: none; color: var(--s-muted); }
.sm-live__link .sm-icon { width: 1.05em; }
.sm-live__link:hover { color: var(--s-accent); }
.sm-live__empty { padding: 1rem 0 2rem 112px; font: italic 400 1.05rem/1.4 var(--f-read); color: var(--s-muted); }

/* 14. Film ----------------------------------------------------------------- */
.sm-film__stage { padding: clamp(18px, 3vw, 40px) 0 clamp(40px, 5.4vw, 68px); }
.sm-film__screen { display: grid; grid-template-columns: minmax(0, 1fr); gap: 20px; }
.sm-film__screen.has-chapters { grid-template-columns: minmax(0, 1fr) 320px; align-items: start; }
.sm-film__noplayer { position: relative; aspect-ratio: 16 / 9; overflow: hidden; }
.sm-film__noplayer img { width: 100%; height: 100%; object-fit: cover; }
.sm-chapters { max-height: 100%; overflow: auto; padding: 14px; border: 2px solid var(--s-fg); background: var(--s-card); }
.sm-chapters__title { margin-bottom: 8px; font: 700 .7rem/1 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-chapters__list { list-style: none; }
.sm-chapters__btn { display: grid; grid-template-columns: 60px 1fr; gap: 8px; padding: 9px 8px; font: 500 .9rem/1.3 var(--f-ui); text-decoration: none; }
.sm-chapters__btn:hover { background: var(--sm-night-3); color: var(--s-fg); }
.sm-chapters__btn.is-current { background: var(--sm-red-btn); color: #fff; }
.sm-chapters__tc { font: 700 .76rem/1.6 var(--f-mono); font-variant-numeric: tabular-nums slashed-zero; color: var(--s-accent); }
.sm-chapters__btn.is-current .sm-chapters__tc { color: #fff; }
.sm-film__head { padding-top: clamp(24px, 3.2vw, 40px); }
.sm-film__title { max-width: 19ch; font: 900 clamp(2.7rem, 1.4rem + 5vw, 6.2rem)/.84 var(--f-display); letter-spacing: -.01em; text-transform: uppercase; }
.sm-film__dek { max-width: 54ch; margin-top: 1rem; font: 400 clamp(1.12rem, 1rem + .45vw, 1.4rem)/1.45 var(--f-read); color: var(--s-muted); }
.sm-film__slate { display: flex; flex-wrap: wrap; gap: 0; margin: 1.6rem 0 0; border: 2px solid var(--s-fg); overflow: hidden; }
.sm-film__slate > div { padding: 12px 16px; border-right: 2px solid var(--s-fg); }
.sm-film__slate > div:last-child { border-right: 0; }
.sm-film__slate > div.is-wide { flex: 1; min-width: 220px; }
.sm-film__slate dt { margin-bottom: 6px; font: 700 .6rem/1 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-film__slate dd { margin: 0; font: 600 .96rem/1.25 var(--f-ui); font-variant-numeric: tabular-nums slashed-zero; }
.sm-film__slate dd a { color: inherit; }
.sm-film__slate .is-file { background: var(--sm-red); color: #fff; }
.sm-film__slate .is-file dt { color: rgba(255, 255, 255, .8); }
.sm-film__slate .is-file dd { font: 700 1.05rem/1.2 var(--f-mono); }
.sm-film__slate .sm-coords { display: block; margin-top: 3px; font-size: .68rem; }
.sm-film__actions { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem 1.2rem; margin-top: 1.4rem; }
.sm-film__paper { padding: clamp(44px, 5.4vw, 76px) 0 var(--band); }
.sm-film__layout { display: grid; grid-template-columns: minmax(0, 760px) minmax(0, 320px); justify-content: space-between; gap: clamp(28px, 4vw, 64px); }
.sm-film__layout--solo { grid-template-columns: minmax(0, 860px); }
.sm-film__body { display: flex; flex-direction: column; gap: 28px; min-width: 0; }
.sm-film__body > .sm-versus, .sm-film__body > .sm-board { margin: 0; }
.sm-film__label { font: 900 2rem/1 var(--f-display); text-transform: uppercase; margin-bottom: -10px; }
.sm-credits { align-self: start; position: sticky; top: 90px; padding: 18px 20px; border: var(--bw) solid var(--s-fg); background: var(--s-card); box-shadow: 8px 8px 0 var(--s-fg); }
.sm-credits__title { margin-bottom: 10px; font: 700 .72rem/1 var(--f-mono); text-transform: uppercase; color: var(--s-accent); }
.sm-credits dl { margin: 0; }
.sm-credits dl > div { padding: 9px 0; border-top: 1px solid var(--s-rule); }
.sm-credits dt { font: 700 .6rem/1.2 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-credits dd { margin: 2px 0 0; font: 800 1.15rem/1.2 var(--f-display); text-transform: uppercase; }
.sm-transcript { border: var(--bw) solid var(--s-fg); background: var(--s-card); }
.sm-transcript__sum { display: flex; align-items: center; gap: .7em; padding: 14px 16px; cursor: pointer; list-style: none; font: 800 1.1rem/1 var(--f-display); letter-spacing: .06em; text-transform: uppercase; }
.sm-transcript__sum::-webkit-details-marker { display: none; }
.sm-transcript__sum::after { content: "+"; margin-left: auto; display: grid; place-items: center; width: 30px; height: 30px; background: var(--s-fg); color: var(--s-bg); font: 700 1.2rem/1 var(--f-mono); }
.sm-transcript[open] .sm-transcript__sum::after { content: "\2013"; }
.sm-transcript__n { padding: .4em .5em; border: 1px solid var(--s-fg); font: 700 .6rem/1 var(--f-mono); color: var(--s-muted); font-variant-numeric: tabular-nums; }
.sm-transcript__body { max-height: 70vh; overflow: auto; padding: 4px 16px 16px; border-top: 2px solid var(--s-fg); font: 400 1.05rem/1.6 var(--f-read); }
.sm-transcript__body p { padding: .5em 0; }
.sm-transcript__tc { display: inline-block; min-width: 3.8em; margin-right: .3em; font: 700 .76rem/1 var(--f-mono); color: var(--s-accent); text-decoration: none; }
.sm-transcript__tc:hover { text-decoration: underline; }
.sm-morefilms { padding: var(--band) 0; }

/* 15. Watch, network, listings --------------------------------------------- */
.sm-watch { padding-bottom: 0; }
.sm-watchhead { padding-bottom: clamp(40px, 5.4vw, 68px); }
.sm-screen__caption--side { padding-top: 0; }
.sm-watchlib, .sm-wire, .sm-channels { padding: clamp(40px, 5.4vw, 68px) 0; border-top: var(--bw) solid var(--s-fg); }
.sm-section-intro { margin-bottom: 1.4rem; }
.sm-more-link { margin-top: 2rem; text-align: center; }
.sm-joinband { padding: clamp(36px, 5vw, 60px) 0; border-top: var(--bw) solid var(--s-fg); background: var(--sm-night-2); }
.sm-joinband--paper { background: var(--sm-red); color: #fff; border-top: 0; --s-fg: #fff; --s-bg: var(--sm-red); --s-shadow: #0A0A0A; }
.sm-joinband--paper .sm-btn--rust { --b-bg: #0A0A0A; --b-bd: #0A0A0A; --b-fg: #fff; --b-sh: #fff; }
.sm-joinband__inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.2rem; }
.sm-joinband__text { font: 900 clamp(2rem, 1.2rem + 2.2vw, 3.2rem)/.9 var(--f-display); text-transform: uppercase; max-width: 22ch; }
.sm-filmarchive, .sm-networkpage { padding-bottom: var(--band); }
.sm-networkpage .sm-joinband { margin-bottom: calc(-1 * var(--band)); }
.sm-listing { padding-bottom: var(--band); }
.sm-listing__lead { margin-bottom: clamp(36px, 4.4vw, 60px); padding-bottom: clamp(36px, 4.4vw, 60px); border-bottom: 8px solid var(--s-fg); }
.sm-listing__lead .sm-card--lead { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(24px, 3vw, 44px); align-items: center; }
.sm-serieslist { list-style: none; display: grid; gap: 28px; }
.sm-pagination { margin-top: clamp(40px, 4.4vw, 60px); }
.sm-pagination .nav-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 0; }
.sm-pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; gap: .4em; min-width: 48px; height: 48px; padding: 0 .9em; margin: 0 -2px 0 0; border: 2px solid var(--s-fg); font: 800 1rem/1 var(--f-display); text-transform: uppercase; text-decoration: none; font-variant-numeric: tabular-nums; }
.sm-pagination .page-numbers.current { background: var(--sm-red); border-color: var(--s-fg); color: #fff; }
.sm-pagination a.page-numbers:hover { background: var(--s-fg); color: var(--s-bg); }
.sm-empty { padding: clamp(36px, 5.4vw, 70px) 0; text-align: center; }
.sm-empty--wide { padding: clamp(52px, 8vw, 120px) 0; }
.sm-empty__slate { display: flex; justify-content: center; margin-bottom: 1.4rem; font: 900 clamp(1.6rem, 1rem + 2vw, 2.6rem)/1 var(--f-display); text-transform: uppercase; }
.sm-empty__slate .sm-stamp { font-size: clamp(1.4rem, 1rem + 1.4vw, 2.2rem); }
.sm-empty__text { margin: 0 auto 1.2rem; max-width: 48ch; font: 400 1.15rem/1.5 var(--f-read); color: var(--s-fg-2); }
.sm-hint { max-width: 760px; margin: 1rem auto; padding: .8em 1em; border: 2px dashed var(--sm-red); background: color-mix(in srgb, var(--sm-red) 7%, transparent); font: 400 .88rem/1.45 var(--f-ui); color: var(--s-fg); text-align: left; }
.sm-hint a { font-weight: 700; }

/* 16. Pages, forms, panels -------------------------------------------------- */
.sm-page__body, .sm-legal .sm-page__body { padding-bottom: var(--band); }
.sm-legal__org { margin-top: 2rem; font: 400 .72rem/1.5 var(--f-mono); text-transform: uppercase; color: var(--s-muted); }
.sm-abouthero { margin: 0; background: #000; border-bottom: var(--bw) solid var(--sm-ink); }
.sm-abouthero img { width: 100%; height: auto; max-height: 70vh; object-fit: cover; }
.sm-about { display: grid; grid-template-columns: minmax(0, 760px) minmax(0, 340px); justify-content: space-between; gap: clamp(28px, 4vw, 64px); padding-bottom: var(--band); }
.sm-about__card { position: sticky; top: 90px; display: flex; flex-direction: column; gap: 14px; padding: 22px; border: var(--bw) solid var(--s-fg); background: var(--s-card); box-shadow: 10px 10px 0 var(--s-fg); }
.sm-about__card .sm-btn { width: 100%; }
.sm-about__badge { width: 96px; height: 96px; }
.sm-about__line { font: 400 .9rem/1.45 var(--f-ui); color: var(--s-fg-2); }
.sm-about__small { font: 700 .66rem/1.6 var(--f-mono); text-transform: uppercase; }
.sm-cover { padding: var(--band) 0; background: var(--sm-concrete-2); border-top: var(--bw) solid var(--sm-ink); }
.sm-topicgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr)); gap: 0; list-style: none; border-left: var(--bw) solid var(--s-fg); border-top: var(--bw) solid var(--s-fg); }
.sm-topicgrid li { border-right: var(--bw) solid var(--s-fg); border-bottom: var(--bw) solid var(--s-fg); }
.sm-topicgrid__item { display: flex; flex-direction: column; gap: .55rem; height: 100%; padding: 20px; background: var(--s-card); text-decoration: none; transition: background-color .1s, color .1s; }
.sm-topicgrid__item:hover { background: var(--s-fg); color: var(--s-bg); --s-fg-2: var(--s-bg); }
.sm-topicgrid__n { align-self: flex-start; font: 700 .7rem/1 var(--f-mono); color: var(--s-accent); }
.sm-topicgrid__name { font: 900 2rem/.9 var(--f-display); text-transform: uppercase; }
.sm-topicgrid__desc { font: 400 1rem/1.45 var(--f-read); color: var(--s-fg-2); }
.sm-author { display: grid; grid-template-columns: auto 1fr; gap: clamp(18px, 3vw, 36px); align-items: center; }
.sm-author .sm-avatar { --s: 140px; width: 140px; height: 140px; border-width: var(--bw); }
.sm-formpage { display: grid; grid-template-columns: minmax(0, 720px) minmax(0, 360px); justify-content: space-between; gap: clamp(28px, 4vw, 64px); padding-bottom: var(--band); }
.sm-formpage__main > .sm-prose { margin-bottom: 1.8rem; }
.sm-formpage__aside { display: flex; flex-direction: column; gap: 18px; }
.sm-panel { padding: 20px; border: var(--bw) solid var(--s-fg); background: var(--s-card); font: 400 .95rem/1.5 var(--f-ui); }
.sm-panel--log { background: repeating-linear-gradient(var(--s-card) 0 33px, var(--s-rule) 33px 34px); }
.sm-panel--quiet { border-width: 2px; border-style: dashed; background: transparent; }
.sm-panel--secure { background: #0A0A0A; color: #F1EFEA; border-color: #0A0A0A; box-shadow: 10px 10px 0 var(--sm-red); --s-fg: #F1EFEA; --s-muted: #A8A59F; --s-rule: #2F2F2D; --s-accent: #FF5D50; --s-bg: #0A0A0A; }
.sm-panel__title { display: flex; align-items: center; gap: .45em; margin-bottom: .7rem; font: 700 .72rem/1.2 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--s-accent); }
.sm-panel__sub { margin: 1.2rem 0 .3rem; font: 900 1.3rem/1 var(--f-display); text-transform: uppercase; }
.sm-panel p + p { margin-top: .6em; }
.sm-secure { margin: 1rem 0 0; }
.sm-secure > div { padding: .7rem 0; border-top: 1px solid var(--s-rule); }
.sm-secure dt { display: flex; align-items: center; gap: .4em; font: 700 .64rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--s-muted); }
.sm-secure dt .sm-icon { width: 1.1em; height: 1.1em; color: var(--sm-red); }
.sm-secure dd { margin: .35rem 0 0; }
.sm-secure__value { display: block; font: 600 1rem/1.35 var(--f-ui); word-break: break-word; }
.sm-secure__value a { color: #fff; }
.sm-secure__value code, .sm-onion { font: 400 .84rem/1.4 var(--f-mono); word-break: break-all; }
.sm-secure__note { display: block; margin-top: .2rem; font-size: .84rem; color: var(--s-muted); }
.sm-promises { list-style: none; }
.sm-promises li { position: relative; padding: 0 0 0 1.6em; line-height: 34px; }
.sm-panel--secure .sm-promises li { line-height: 1.45; padding-block: .35em; }
.sm-promises li::before { content: ""; position: absolute; left: 0; top: 11px; width: 1em; height: 1em; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2.5 13.2 9 19.4 21.6 4.4' fill='none' stroke='%23D7261E' stroke-width='4.2'/%3E%3C/svg%3E") 0 0 / contain no-repeat; }
.sm-panel--secure .sm-promises li::before { top: .55em; }
.sm-form { display: flex; flex-direction: column; gap: 22px; }
.sm-form__case { display: inline-flex; align-self: flex-start; align-items: center; gap: .45em; padding: .5em .7em; background: var(--s-fg); color: var(--s-bg); font: 700 .76rem/1 var(--f-mono); text-transform: uppercase; }
.sm-form__case .sm-icon { color: var(--sm-red); }
.sm-form__group { margin: 0; padding: 22px; border: var(--bw) solid var(--s-fg); background: var(--s-card); display: flex; flex-direction: column; gap: 18px; }
.sm-form__group legend { padding: .4em .7em; margin-left: -.2em; background: var(--s-fg); color: var(--s-bg); font: 700 .72rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; }
.sm-form__group--plain { border: 0; padding: 0; background: none; }
.sm-form__cols { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 18px; }
.sm-field { display: flex; flex-direction: column; gap: 6px; margin: 0; border: 0; padding: 0; }
.sm-field > label, .sm-field legend { font: 800 .9rem/1.3 var(--f-ui); }
.sm-field__hint { font: 400 .84rem/1.4 var(--f-ui); color: var(--s-muted); }
.sm-field__error { font: 700 .84rem/1.4 var(--f-ui); color: var(--s-accent); }
.sm-input[aria-invalid="true"] { border-color: var(--sm-red); box-shadow: 4px 4px 0 var(--sm-red); }
.sm-radio-inline { display: inline-flex; align-items: center; gap: .4em; margin-right: 1.2rem; font: 500 .95rem/1.3 var(--f-ui); }
.sm-check { display: flex; gap: .7em; align-items: flex-start; font: 400 .9rem/1.45 var(--f-ui); }
.sm-check input { width: 20px; height: 20px; margin-top: 1px; accent-color: var(--sm-red-btn); flex: none; }
.sm-check--flag { padding: 14px; background: var(--s-bg-2); border-left: 8px solid var(--sm-red); }
.sm-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.sm-alert { padding: 16px 18px; border: var(--bw) solid var(--s-fg); border-left-width: 12px; background: var(--s-card); font: 400 .98rem/1.5 var(--f-ui); }
.sm-alert--ok { border-left-color: #1F7A46; }
.sm-alert--error { border-left-color: var(--sm-red); }
.sm-alert--big { padding: 24px; }
.sm-alert__title { font: 900 2rem/1 var(--f-display); text-transform: uppercase; margin-bottom: .4em; }
.sm-alert ul { margin-top: .5em; padding-left: 1.2em; }
.sm-404 { padding: clamp(52px, 8vw, 120px) 0; }
.sm-404__inner { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); gap: clamp(28px, 4vw, 64px); align-items: center; }
.sm-404__code { display: flex; flex-wrap: wrap; align-items: center; gap: 1.4rem; margin-bottom: .6rem; font: 900 clamp(5.4rem, 2.4rem + 10vw, 11rem)/.78 var(--f-display); color: var(--sm-red); }
.sm-404__stamp { font-size: clamp(1.2rem, .9rem + 1vw, 1.8rem); }
.sm-404__title { font: 900 clamp(2.6rem, 1.4rem + 4vw, 5.2rem)/.86 var(--f-display); text-transform: uppercase; }
.sm-404__lede { max-width: 46ch; margin: 1rem 0 1.4rem; font: 400 1.15rem/1.5 var(--f-read); color: var(--s-muted); }
.sm-404__search { max-width: 520px; margin-bottom: 1.2rem; }
.sm-404__media { margin: 0; }
.sm-404__media img { width: 100%; filter: grayscale(1) contrast(1.15); }

/* 17. Players and dialogs -------------------------------------------------- */
.sm-player { position: relative; aspect-ratio: 16 / 9; background: #000; }
.sm-player iframe, .sm-player video, .sm-player__poster { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.sm-player__poster, .sm-player video { object-fit: cover; }
.sm-player--file video { object-fit: contain; background: #000; }
.sm-player.is-portrait { aspect-ratio: var(--ar, 9 / 16); max-height: 80vh; margin-inline: auto; }
.sm-player__btn { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; gap: .8rem; width: 100%; border: 0; background: linear-gradient(180deg, transparent 50%, rgba(0, 0, 0, .55)); color: #fff; cursor: pointer; }
.sm-player__icon { display: grid; place-items: center; width: clamp(68px, 8vw, 96px); height: clamp(68px, 8vw, 96px); background: var(--sm-red-btn); box-shadow: 8px 8px 0 #000; transition: transform .12s var(--ease), box-shadow .12s var(--ease); }
.sm-player__icon .sm-icon { width: 38%; height: 38%; margin-left: 6%; }
.sm-player__btn:hover .sm-player__icon { transform: translate(-3px, -3px); box-shadow: 11px 11px 0 #000; }
.sm-player__cta { position: absolute; left: 0; bottom: 0; display: inline-flex; align-items: center; gap: .55em; padding: .7em .9em; background: #0A0A0A; font: 700 .7rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; }
.sm-player__cta::before { content: ""; width: 9px; height: 9px; background: var(--sm-red); animation: sm-blink 1.6s steps(1, end) infinite; }
.sm-player.is-playing .sm-player__btn { display: none; }
.sm-player--embed iframe { position: absolute; inset: 0; }
.sm-player__noscript { position: absolute; inset: auto 0 0; padding: 1rem; color: #fff; }
.sm-player-missing { padding: 2rem 0; }
.sm-modal { width: min(1120px, 94vw); max-height: 94vh; padding: 0; border: var(--bw) solid #F1EFEA; background: #0A0A0A; color: #F1EFEA; box-shadow: 14px 14px 0 var(--sm-red); }
.sm-modal::backdrop { background: rgba(5, 5, 5, .9); }
.sm-modal__inner { padding: 12px 14px 14px; }
.sm-modal__bar { display: flex; align-items: center; gap: 1rem; padding: 2px 2px 10px; }
.sm-modal__title { flex: 1; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font: 900 1.4rem/1.1 var(--f-display); text-transform: uppercase; }
.sm-modal__label { display: inline-block; margin-right: .4em; padding: .3em .5em .26em; background: var(--sm-red); color: #fff; font: 700 .76rem/1 var(--f-mono); text-transform: uppercase; vertical-align: .15em; }
.sm-modal__close { display: grid; place-items: center; width: 44px; height: 44px; border: 2px solid #F1EFEA; background: transparent; color: #fff; cursor: pointer; }
.sm-modal__close:hover { background: #F1EFEA; color: #0A0A0A; }
.sm-modal__frame { position: relative; aspect-ratio: 16 / 9; overflow: hidden; background: #000; }
.sm-modal__frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.sm-modal.is-short { width: min(420px, 94vw); }
.sm-modal.is-short .sm-modal__frame { aspect-ratio: 9 / 16; max-height: 78vh; margin-inline: auto; }
.sm-modal__links { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem 1.2rem; padding: 12px 2px 0; font: 700 .68rem/1 var(--f-mono); letter-spacing: .04em; text-transform: uppercase; }
.sm-modal__links a { color: #F1EFEA; }
.sm-modal__figure { margin: 0; display: grid; place-items: center; background: #000; }
.sm-modal__img { max-width: 100%; max-height: 76vh; width: auto; height: auto; cursor: crosshair; }
.sm-modal__hint { display: inline-flex; align-items: center; gap: .35em; color: #A8A59F; }
.sm-modal__status:empty { display: none; }
.sm-modal__status { padding: .4em .55em; border: 2px solid #F1EFEA; }

/* 18. Ads ------------------------------------------------------------------ */
.sm-ad { clear: both; margin: clamp(30px, 4.4vw, 48px) auto; max-width: 970px; text-align: center; }
.sm-adrow .sm-ad { margin-block: clamp(22px, 3vw, 34px); }
.sm-ad__label { display: flex; align-items: center; gap: .8rem; margin-bottom: 8px; font: 400 .58rem/1 var(--f-mono); letter-spacing: .16em; text-transform: uppercase; color: var(--s-muted); }
.sm-ad__label::before, .sm-ad__label::after { content: ""; flex: 1; height: 2px; background: var(--s-rule); }
.sm-ad__unit { min-height: 250px; }
.sm-ad--article_inline { max-width: 700px; margin-inline: 0; }
.sm-ad--sidebar .sm-ad__unit { min-height: 600px; }
.sm-ad--banner .sm-ad__unit { min-height: 90px; }
.sm-ad:has(ins[data-ad-status="unfilled"]) { display: none; }
.sm-ad[hidden] { display: none; }
.sm-ad--preview .sm-ad__box { display: flex; flex-direction: column; justify-content: center; gap: .3rem; min-height: 200px; padding: 1rem; border: 2px dashed var(--sm-red); background: color-mix(in srgb, var(--sm-red) 5%, transparent); font: 400 .82rem/1.4 var(--f-ui); color: var(--s-fg-2); }
.sm-ad--preview .sm-ad__box strong { font: 700 .68rem/1 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--s-accent); }
.sm-ad--sidebar.sm-ad--preview .sm-ad__box { min-height: 420px; }
.sm-ad.is-guarded { display: none; }

/* 19. Sign-up and footer --------------------------------------------------- */
.sm-signup { position: relative; padding: clamp(52px, 6.4vw, 88px) 0; background: var(--sm-concrete-2); border-top: var(--bw) solid var(--sm-ink); }
.sm-signup__hazard { position: absolute; inset: -3px 0 auto; height: 12px; }
.sm-signup__inner { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); gap: clamp(28px, 5vw, 80px); align-items: start; }
.sm-signup__title { max-width: 14ch; font: 900 clamp(2.8rem, 1.4rem + 4.6vw, 5.4rem)/.82 var(--f-display); text-transform: uppercase; }
.sm-signup__text { max-width: 52ch; margin: 1rem 0 1.4rem; font: 400 1.12rem/1.5 var(--f-read); color: var(--s-fg-2); }
.sm-signup__tip { padding: 26px; background: #0A0A0A; color: #F1EFEA; box-shadow: 10px 10px 0 var(--sm-red); --s-fg: #F1EFEA; --s-bg: #0A0A0A; --s-fg-2: #D2CFC8; --s-accent: #FF5D50; }
.sm-signup__tiptitle { font: 900 2.2rem/.9 var(--f-display); text-transform: uppercase; }
.sm-signup__tip .sm-signup__text { font-size: 1.02rem; }
.sm-signup__tip .sm-btn { --b-bg: #F1EFEA; --b-fg: #0A0A0A; --b-bd: #F1EFEA; --b-sh: var(--sm-red); }
.sm-nl__row { display: flex; gap: .6rem; max-width: 580px; }
.sm-nl .sm-btn { --b-bg: var(--sm-red-btn); --b-fg: #fff; --b-bd: var(--sm-red-btn); --b-sh: var(--s-fg); }
.sm-nl .sm-check { margin-top: .9rem; max-width: 580px; }
.sm-nl .sm-alert { background: var(--s-card); }

.sm-footer { position: relative; padding: clamp(52px, 6.4vw, 88px) 0 28px; background: #050505 var(--sm-img-grain); background-size: 240px; color: #D2CFC8; font: 400 .92rem/1.5 var(--f-ui); --s-fg: #F1EFEA; --s-bg: #050505; --s-bg-2: #1E1E1D; --s-muted: #A8A59F; --s-rule: #2F2F2D; --s-accent: #FF5D50; }
.sm-footer a { color: #F1EFEA; text-decoration: none; }
.sm-footer a:hover { color: #fff; text-decoration: underline; text-decoration-color: var(--sm-red); text-decoration-thickness: 3px; }
.sm-footer__top { display: grid; grid-template-columns: minmax(0, 4fr) repeat(3, minmax(0, 2fr)); gap: clamp(24px, 4vw, 56px); }
.sm-footer__badge { width: 96px; height: 96px; margin-bottom: 1.1rem; }
.sm-footer__about { max-width: 42ch; margin-bottom: 1.1rem; font: 400 1.05rem/1.5 var(--f-read); color: #DCD9D2; }
.sm-footer__pillars { margin-bottom: 1rem; color: #F1EFEA; }
.sm-footer__head { margin-bottom: .9rem; padding-bottom: .6rem; border-bottom: 2px solid #F1EFEA; font: 700 .7rem/1 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; color: #F1EFEA; }
.sm-footer__menu { list-style: none; display: grid; gap: .55rem; }
.sm-footer__menu a { font: 800 1.1rem/1.1 var(--f-display); letter-spacing: .04em; text-transform: uppercase; }
.sm-footer__sign { margin: clamp(48px, 7vw, 96px) 0 clamp(20px, 3vw, 32px); color: #F1EFEA; }
.sm-footer__go { max-width: 100%; margin: 0; font: 900 clamp(3.4rem, 10.6vw, 12.4rem)/.8 var(--f-display); letter-spacing: -.012em; text-transform: uppercase; text-wrap: balance; overflow-wrap: anywhere; }
.sm-footer__under { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .8rem 1.4rem; margin: clamp(16px, 2vw, 26px) 0; padding-top: clamp(14px, 1.8vw, 22px); border-top: var(--bw) solid #F1EFEA; font: 700 clamp(.66rem, .55rem + .3vw, .82rem)/1.2 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; }
.sm-footer__wordmark { font-size: clamp(30px, 2.6vw, 42px); }
.sm-footer__motto { color: #FF5D50; }
.sm-footer__hazard { height: 14px; --s-fg: #F1EFEA; }
.sm-footer__bottom { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; padding-top: 22px; border-top: 1px solid #2F2F2D; font: 400 .7rem/1.5 var(--f-mono); text-transform: uppercase; color: #A8A59F; }
.sm-footer .sm-btn--ghost { --b-fg: #F1EFEA; }

/* 20. The bulletin and The Buried File ------------------------------------ */
/* The bulletin: an emergency-broadcast bar above everything. */
.sm-bulletin { position: relative; z-index: 2; background: var(--sm-red); color: #fff; border-bottom: var(--bw) solid #000; }
.sm-bulletin.is-notice { background: #0A0A0A; border-bottom-color: var(--sm-red); }
.sm-bulletin.is-emergency { background: var(--sm-warn); color: #0B0B0B; }
.sm-bulletin.is-emergency::before { content: ""; position: absolute; inset: 0 0 auto; height: 8px; background: repeating-linear-gradient(-45deg, #0B0B0B 0 12px, var(--sm-warn) 12px 24px); }
.sm-bulletin-off .sm-bulletin { display: none; }
.sm-bulletin + .sm-netbar { border-top: 0; }
.sm-bulletin__inner { display: flex; align-items: center; gap: clamp(.7rem, 1.6vw, 1.4rem); min-height: 52px; padding-block: 8px; }
.sm-bulletin.is-emergency .sm-bulletin__inner { padding-top: 16px; }
.sm-bulletin__tag { display: inline-flex; align-items: center; gap: .55em; flex: none; margin: 0; padding: .45em .7em .4em; background: #000; color: #fff; font: 700 .7rem/1 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }
.sm-bulletin__lamp { width: 9px; height: 9px; background: var(--sm-red); animation: sm-blink 1.2s steps(1, end) infinite; }
.sm-bulletin.is-alert .sm-bulletin__lamp { background: var(--sm-warn); }
.sm-bulletin__no { color: #A8A59F; font-weight: 400; }
.sm-bulletin__text { flex: 1; min-width: 0; margin: 0; font: 800 clamp(1.02rem, .85rem + .6vw, 1.38rem)/1.1 var(--f-display); letter-spacing: .03em; text-transform: uppercase; }
.sm-bulletin__text a { color: inherit; text-decoration: none; }
.sm-bulletin__text a:hover { text-decoration: underline; text-decoration-thickness: 3px; text-underline-offset: 3px; }
.sm-bulletin__go { display: inline-flex; align-items: center; gap: .45em; flex: none; padding: .5em .8em .45em; border: 2px solid currentColor; color: inherit; font: 800 .9rem/1 var(--f-display); letter-spacing: .08em; text-transform: uppercase; text-decoration: none; }
.sm-bulletin__go:hover { background: #000; border-color: #000; color: #fff; }
.sm-bulletin__go .sm-icon { width: 1em; height: 1em; }
.sm-bulletin__close { display: grid; place-items: center; flex: none; width: 38px; height: 38px; border: 0; background: transparent; color: inherit; cursor: pointer; }
.sm-bulletin__close:hover { background: #000; color: #fff; }
.sm-bulletin__close .sm-icon { width: 18px; height: 18px; }
@media (max-width: 760px) {
	.sm-bulletin__inner { flex-wrap: wrap; gap: .5rem .7rem; }
	.sm-bulletin__text { flex-basis: calc(100% - 50px); order: 3; }
	.sm-bulletin__go { display: none; }
	.sm-bulletin__close { margin-left: auto; order: 2; }
}

/* The Buried File: the ledger of Freedom of Information requests. */
.sm-stamp--muted { --st: transparent; --st-fg: var(--s-muted); box-shadow: inset 0 0 0 .12em var(--s-muted); }
.sm-chip--hot:not(.is-current) { border-color: var(--sm-red); color: var(--s-accent); }
.sm-foistats { margin-top: 4px; }
.sm-foistats dd small { margin-left: .12em; font-size: .4em; letter-spacing: .04em; }
.sm-foifilters .sm-filters { margin-bottom: 18px; }
.sm-foilist { display: grid; gap: 0; border-top: var(--bw) solid var(--s-fg); }
.sm-foirow { display: grid; grid-template-columns: clamp(110px, 13vw, 168px) minmax(0, 1fr); gap: 0 clamp(16px, 2.4vw, 32px); padding: clamp(18px, 2.2vw, 26px) 0; border-bottom: 2px solid var(--s-fg); scroll-margin-top: 90px; }
.sm-foirow[hidden] { display: none; }
.sm-foirow:target { background: var(--s-card); box-shadow: -8px 0 0 var(--sm-red); }
.sm-foirow__clock { display: flex; flex-direction: column; justify-content: flex-start; align-self: start; padding: 12px 12px 14px; border: 2px solid var(--s-fg); background: var(--s-card); text-align: left; }
.sm-foirow__n { font: 900 clamp(2.6rem, 2rem + 2vw, 4.4rem)/.82 var(--f-display); font-variant-numeric: tabular-nums; letter-spacing: -.01em; }
.sm-foirow__unit { margin-top: .5rem; font: 700 .62rem/1.25 var(--f-mono); letter-spacing: .05em; text-transform: uppercase; color: var(--s-muted); }
.sm-foirow.is-overdue .sm-foirow__clock { background: var(--sm-red); border-color: var(--sm-red); color: #fff; box-shadow: 6px 6px 0 var(--s-fg); }
.sm-foirow.is-overdue .sm-foirow__unit { color: #fff; }
.sm-foirow__meta { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem .9rem; margin: 0 0 .55rem; font: 700 .7rem/1.2 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; }
.sm-foirow__no { padding: .3em .5em .25em; background: var(--s-fg); color: var(--s-bg); }
.sm-foirow__to a { color: inherit; text-decoration-thickness: 2px; text-decoration-color: var(--sm-red); }
.sm-foirow__meta .sm-stamp { font-size: .82rem; }
.sm-foirow__title { margin: 0 0 .6rem; font: 900 clamp(1.4rem, 1.1rem + 1vw, 2rem)/.98 var(--f-display); text-transform: uppercase; letter-spacing: .005em; text-wrap: balance; }
.sm-foirow__asked, .sm-foirow__ex { max-width: 70ch; margin: 0 0 .7rem; font: 400 1rem/1.5 var(--f-read); }
.sm-foirow__asked .sm-label, .sm-foirow__ex .sm-label { display: flex; margin: 0 0 .25rem; color: var(--s-muted); }
.sm-foirow__dates { display: flex; flex-wrap: wrap; gap: 0; margin: .2rem 0 .7rem; border: 2px solid var(--s-fg); width: fit-content; max-width: 100%; }
.sm-foirow__dates div { padding: 7px 12px 8px; border-left: 2px solid var(--s-fg); }
.sm-foirow__dates div:first-child { border-left: 0; }
.sm-foirow__dates dt { font: 700 .58rem/1.2 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--s-muted); }
.sm-foirow__dates dd { margin: .2rem 0 0; font: 700 .9rem/1.2 var(--f-ui); font-variant-numeric: tabular-nums; }
.sm-foirow__dates .is-hot { background: var(--s-fg); color: var(--s-bg); }
.sm-foirow__dates .is-hot dt { color: inherit; opacity: .78; }
.sm-foirow__late { padding: .1em .35em; background: var(--sm-red); color: #fff; font: 700 .62rem/1 var(--f-mono); text-transform: uppercase; vertical-align: .1em; }
.sm-foirow__outcome { max-width: 70ch; padding: .7rem 1rem; border-left: 6px solid var(--s-fg); background: var(--s-card); font: 400 1rem/1.5 var(--f-read); }
.sm-foirow__outcome p { margin: 0; }
.sm-foirow__outcome p + p { margin-top: .6em; }
.sm-foirow__links { display: flex; flex-wrap: wrap; gap: .5rem 1.2rem; margin: .8rem 0 0; font: 700 .74rem/1.3 var(--f-mono); letter-spacing: .04em; text-transform: uppercase; }
.sm-foirow__links a { display: inline-flex; align-items: center; gap: .4em; color: var(--s-fg); text-decoration-thickness: 2px; text-decoration-color: var(--sm-red); text-underline-offset: 3px; }
.sm-foirow__links .sm-icon { width: 1.1em; height: 1.1em; color: var(--sm-red); flex: none; }
.sm-foirow--compact { grid-template-columns: clamp(96px, 11vw, 136px) minmax(0, 1fr); }
.sm-foirow--compact .sm-foirow__n { font-size: clamp(2.2rem, 1.8rem + 1.4vw, 3.4rem); }
.sm-foirow--compact .sm-foirow__title { font-size: clamp(1.2rem, 1rem + .7vw, 1.6rem); }
.sm-foileague { margin-top: clamp(40px, 5vw, 64px); }
.sm-tablewrap { overflow-x: auto; border: var(--bw) solid var(--s-fg); background: var(--s-card); box-shadow: 10px 10px 0 var(--s-fg); }
.sm-foitable { width: 100%; border-collapse: collapse; font: 400 .95rem/1.35 var(--f-ui); font-variant-numeric: tabular-nums; }
.sm-foitable th, .sm-foitable td { padding: 11px 14px; border-bottom: 1px solid var(--s-rule); text-align: right; white-space: nowrap; }
.sm-foitable thead th { background: var(--s-fg); color: var(--s-bg); font: 700 .62rem/1.25 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; white-space: normal; vertical-align: bottom; }
.sm-foitable th:first-child, .sm-foitable td:first-child { text-align: left; }
.sm-foitable tbody th { font: 800 1.15rem/1.1 var(--f-display); letter-spacing: .02em; text-transform: uppercase; white-space: normal; }
.sm-foitable tbody th a { color: inherit; text-decoration-thickness: 2px; text-decoration-color: var(--sm-red); }
.sm-foitable td.is-hot { background: var(--sm-red); color: #fff; font-weight: 700; }
.sm-foitable tbody tr:last-child > * { border-bottom: 0; }
.sm-buriedband { padding-block: var(--band); background: var(--sm-concrete-2); border-top: 8px solid var(--sm-ink); }
.sm-buriedband .sm-foilist { border-top-width: var(--bw); }
.sm-foibox { margin: clamp(26px, 3vw, 36px) 0; padding: 20px 22px 18px; border: var(--bw) solid var(--s-fg); background: var(--s-card); box-shadow: 8px 8px 0 var(--sm-red); }
.sm-foibox__tab { display: inline-flex; align-items: center; gap: .45em; margin: 0 0 .5rem; font: 700 .68rem/1 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--s-accent); }
.sm-foibox__tab .sm-icon { width: 1.1em; height: 1.1em; }
.sm-foibox__title { margin: 0 0 .9rem; font: 900 clamp(1.3rem, 1.1rem + .6vw, 1.7rem)/1 var(--f-display); text-transform: uppercase; }
.sm-foibox__list { margin-bottom: 1rem; border-top: 2px solid var(--s-fg); }
.sm-foibox .sm-foirow { grid-template-columns: 96px minmax(0, 1fr); padding: 14px 0; }
.sm-foibox .sm-foirow:last-child { border-bottom: 0; }
.sm-foibox .sm-foirow__n { font-size: 2.3rem; }
.sm-powerrow__foi { display: flex; align-items: center; gap: .4em; margin-top: .35rem; font: 400 .64rem/1.3 var(--f-mono); letter-spacing: .03em; text-transform: uppercase; color: var(--s-muted); }
.sm-powerrow__foi .sm-icon { width: 1.05em; height: 1.05em; flex: none; }
.sm-powerrow__foi strong { padding: .12em .4em; background: var(--sm-red); color: #fff; font-weight: 700; }
.sm-powerfoi { margin-block: clamp(36px, 4.4vw, 56px); }
@media (max-width: 760px) {
	.sm-foirow, .sm-foirow--compact, .sm-foibox .sm-foirow { grid-template-columns: minmax(0, 1fr); gap: 12px; }
	.sm-foirow__clock { flex-direction: row; align-items: baseline; gap: .6rem; width: fit-content; padding: 8px 12px; }
	.sm-foirow__unit { margin: 0; }
	.sm-foirow__n, .sm-foirow--compact .sm-foirow__n, .sm-foibox .sm-foirow__n { font-size: 2.2rem; }
}

/* Inner pages carry a compact masthead so the headline sits above the fold. */
body:not(.home) .sm-masthead__brand { width: min(100%, 560px); padding: clamp(20px, 2.8vw, 34px) 0 clamp(10px, 1.2vw, 14px); }
body:not(.home) .sm-masthead__under { padding-bottom: clamp(16px, 2vw, 24px); }
body:not(.home) .sm-masthead__tagline { font-size: clamp(.98rem, .8rem + .7vw, 1.4rem); box-shadow: 5px 5px 0 #000; }
body:not(.home) .sm-masthead__pillars { display: none; }
body:not(.home) .sm-masthead__wrap::before, body:not(.home) .sm-masthead__wrap::after { top: 58px; width: 18px; height: 18px; }
/* Reading pages drop the concrete grain behind the text. */
body.is-reading { background-image: none; }

/* 21. Low-data, responsive, utilities, motion, print ----------------------- */
:root[data-lowdata="1"] { --sm-img-grain: none; --sm-img-concrete: none; --sm-img-storm: none; --sm-img-storm-sm: none; }
:root[data-lowdata="1"] .sm-card__img, :root[data-lowdata="1"] .sm-fcard__media img, :root[data-lowdata="1"] .sm-story__img, :root[data-lowdata="1"] .sm-player__poster, :root[data-lowdata="1"] .sm-exhibit__media img, :root[data-lowdata="1"] .sm-sister__play img, :root[data-lowdata="1"] .sm-abouthero img, :root[data-lowdata="1"] .sm-prose img, :root[data-lowdata="1"] .sm-avatar:not(.sm-avatar--initials), :root[data-lowdata="1"] .sm-404__media img, :root[data-lowdata="1"] .sm-film__noplayer img { display: none; }
:root[data-lowdata="1"] .sm-card__media, :root[data-lowdata="1"] .sm-fcard__media, :root[data-lowdata="1"] .sm-story__imgwrap, :root[data-lowdata="1"] .sm-exhibit__media, :root[data-lowdata="1"] .sm-sister__media { background: var(--s-bg-2) repeating-linear-gradient(-45deg, transparent 0 9px, color-mix(in srgb, var(--s-fg) 8%, transparent) 9px 10px); }
:root[data-lowdata="1"] .sm-card__media::before, :root[data-lowdata="1"] .sm-story__imgwrap::before { content: "Image withheld \00B7  low-data mode"; position: absolute; left: 10px; bottom: 10px; z-index: 1; padding: .4em .55em; background: var(--s-fg); color: var(--s-bg); font: 700 .58rem/1 var(--f-mono); text-transform: uppercase; }
:root[data-lowdata="1"] .sm-story__imgwrap { position: relative; aspect-ratio: 16 / 7; }
:root[data-lowdata="1"] .sm-card--lead .sm-card__media { aspect-ratio: 16 / 7; }
:root[data-lowdata="1"] .sm-masthead__brand { padding-top: 22px; }
:root[data-lowdata="1"] .sm-masthead__plate { display: none; }

@media (min-width: 1100px) {
	.sm-story__layout { grid-template-columns: minmax(0, 772px) 300px; justify-content: space-between; }
	.sm-story__body { grid-template-columns: 52px minmax(0, 700px); column-gap: 20px; }
	.sm-story__body > * { grid-column: 2; }
	.sm-story__body > .sm-story__share { grid-column: 1; grid-row: 1 / span 4; margin: 0; }
	.sm-story__body > .sm-board { grid-column: 1 / -1; margin-left: 0; }
	.sm-story__share .sm-share { position: sticky; top: 92px; flex-direction: column; }
	.sm-story__share .sm-share__btn { margin: 0 0 -2px 0; }
	.sm-story__share .sm-share__label { margin: 0 0 .6rem; writing-mode: vertical-rl; transform: rotate(180deg); }
	.sm-story__share .sm-share__status { margin: .6rem 0 0; writing-mode: vertical-rl; }
	.sm-story__head > * { margin-left: 72px; }
	.sm-story__sticky { position: sticky; top: 92px; }
}
@media (max-width: 1099px) {
	.sm-story__aside .sm-ad--sidebar { display: none; }
	.sm-story__aside { border-top: 8px solid var(--s-fg); padding-top: 4px; }
}
@media (max-width: 1240px) {
	.sm-nav__primary { display: none; }
	.sm-nav__toggle { display: inline-flex; }
	.sm-nav__mark { display: flex; font-size: 24px; border-right: 0; }
	.sm-powerrow { grid-template-columns: 60px minmax(0, 1fr) 120px; }
	.sm-powerrow__record { grid-column: 2 / -1; }
}
@media (max-width: 1080px) {
	.sm-nav__inner { min-height: 56px; }
	.sm-livepill__title { display: none; }
	.sm-livepill { padding: 3px; }
	.sm-lead, .sm-screen, .sm-screen--wide, .sm-mapband__grid, .sm-signup__inner, .sm-casepage__top, .sm-powerterm__top, .sm-manifesto__grid { grid-template-columns: minmax(0, 1fr); }
	.sm-lead__side { padding-left: 0; border-left: 0; }
	.sm-footer__top { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.sm-footer__brand { grid-column: 1 / -1; }
	.sm-film__screen.has-chapters { grid-template-columns: minmax(0, 1fr); }
	.sm-chapters { max-height: 280px; }
	.sm-film__layout, .sm-about, .sm-formpage, .sm-404__inner { grid-template-columns: minmax(0, 1fr); }
	.sm-credits, .sm-about__card { position: static; }
	.sm-listing__lead .sm-card--lead { grid-template-columns: minmax(0, 1fr); }
	.sm-partlist .sm-card--wide, .sm-partlist .sm-fcard--feature { grid-template-columns: minmax(0, 1fr); }
	.sm-masthead__edition { display: none; }
}
@media (max-width: 760px) {
	:root { --bw: 2px; }
	.sm-masthead__top .sm-masthead__links, .sm-masthead__top .sm-social { display: none; }
	.sm-masthead__top { justify-content: center; min-height: 36px; }
	.sm-masthead__wrap::before, .sm-masthead__wrap::after { top: 48px; width: 16px; height: 16px; }
	.sm-masthead__brand { padding-top: 26px; padding-inline: 8px; }
	.sm-masthead__tagline { letter-spacing: .06em; box-shadow: 5px 5px 0 #000; }
	.sm-masthead__pillars { gap: .3em .6em; letter-spacing: .06em; }
	.sm-netbar__lead { display: none; }
	.sm-netbar__all { display: none !important; }
	.sm-nav__inner { gap: 0; }
	.sm-nav__tools { gap: 0; padding-left: .2rem; }
	.sm-nav__watch { width: 42px; min-height: 42px; padding: 0; margin-left: .25rem; box-shadow: 3px 3px 0 var(--b-sh); }
	.sm-nav__watchtext { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); }
	.sm-nav__toggle-text { display: none; }
	.sm-nav__mark { font-size: 20px; padding-right: .4rem; }
	.sm-nav__icon { width: 40px; height: 40px; }
	.sm-nav__toggle { padding: 0; width: 40px; justify-content: center; }
	.sm-oncase__label { padding-right: .8rem; }
	.sm-oncase__label .sm-rec { font-size: 0; gap: 0; }
	.sm-oncase__label .sm-rec__dot { font-size: .7rem; }
	.sm-oncase__list { grid-auto-columns: minmax(230px, 82vw); }
	.sm-desk__grid { grid-template-columns: minmax(0, 1fr); }
	.sm-desk--flip .sm-desk__main { order: 0; }
	.sm-desk__grid--solo .sm-card--wide, .sm-desk__grid--solo .sm-fcard--feature { grid-template-columns: minmax(0, 1fr); }
	.sm-sh__row { flex-wrap: wrap; row-gap: .7rem; }
	.sm-sh__title { max-width: 100%; }
	.sm-sh__rule { order: 5; flex-basis: 100%; margin: 0; height: 8px; box-shadow: inset 36px 0 0 var(--sm-red); }
	.sm-sh__more { margin-left: 0; }
	.sm-fcard--row { grid-template-columns: 112px 1fr; }
	.sm-card--lead .sm-card__media { box-shadow: 7px 7px 0 var(--s-fg); }
	.sm-story__meta { gap: 12px 18px; }
	.sm-versus { grid-template-columns: minmax(0, 1fr); box-shadow: 6px 6px 0 var(--s-fg); }
	.sm-official { border-right: 0; border-bottom: var(--bw) solid var(--s-fg); }
	.sm-versus__vs { top: auto; bottom: auto; left: auto; right: 14px; margin: 0; transform: translateY(-50%); }
	.sm-versus:not(.sm-versus--found):not(.sm-versus--official) .sm-versus__vs { position: relative; justify-self: end; margin: -22px 14px -22px 0; transform: none; }
	.sm-since__item { grid-template-columns: minmax(0, 1fr); gap: .3rem; }
	.sm-sinceflag { grid-template-columns: minmax(0, 1fr) auto; }
	.sm-sinceflag__label { grid-column: 1 / -1; }
	.sm-live__list::before { left: 64px; }
	.sm-live__entry { grid-template-columns: 62px 1fr; gap: 0 22px; }
	.sm-live__entry::before { left: 59px; }
	.sm-live__empty { padding-left: 84px; }
	.sm-film__slate > div { flex: 1 1 40%; border-bottom: 2px solid var(--s-fg); }
	.sm-footer__top { grid-template-columns: minmax(0, 1fr); }
	.sm-footer__go { white-space: normal; font-size: clamp(3.4rem, 17vw, 6rem); line-height: .82; }
	.sm-nl__row { flex-direction: column; }
	.sm-author { grid-template-columns: minmax(0, 1fr); }
	.sm-map { padding: 8px; }
	.sm-map__deg { display: none; }
	.sm-pin { width: 10px; height: 10px; margin: -5px 0 0 -5px; box-shadow: 0 0 0 2px var(--s-card), 0 0 0 3px var(--s-fg); }
	.sm-pin.is-many { width: 18px; height: 18px; margin: -9px 0 0 -9px; }
	.sm-pin__n { font-size: .55rem; }
	.sm-searchform .sm-btn span { display: none; }
	.sm-prose { font-size: 1.125rem; }
	.sm-prose .alignwide { margin-inline: 0; }
	.sm-prose .wp-block-columns.is-style-sm-versus { grid-template-columns: minmax(0, 1fr); gap: 34px; }
	.sm-fileno { display: none; }
	.sm-reply__item { grid-template-columns: minmax(0, 1fr); }
	.sm-reply__when { align-items: flex-start; flex-direction: row; flex-wrap: wrap; }
	.sm-partlist__item { grid-template-columns: minmax(0, 1fr); }
	.sm-partlist__no { display: flex; align-items: baseline; gap: .4em; font-size: 2.6rem; }
	.sm-partlist__no span { display: inline; }
	.sm-legend dl div { grid-template-columns: minmax(0, 1fr); gap: .3em; }
	.sm-board { padding: 16px; }
	.sm-card__stamp { right: 10px; top: 10px; font-size: .9rem; }
	.sm-powerrow { grid-template-columns: 44px minmax(0, 1fr); gap: 12px 14px; }
	.sm-powerrow__rank { font-size: 2.4rem; }
	.sm-powerrow__record, .sm-powerrow__silence { grid-column: 1 / -1; }
	.sm-powerrow__silence { flex-direction: row; align-items: baseline; gap: .6rem; text-align: left; }
	.sm-powerrow__pct { font-size: 2.4rem; }
	.sm-powerstats div { border-left: 0; border-top: 2px solid var(--s-fg); }
	.sm-powerstats div:first-child { border-top: 0; }
	.sm-follow { border-left: 0; }
	.sm-follow__item { padding: 18px 0; border-right: 0; border-bottom: var(--bw) solid var(--s-fg); }
	.sm-follow__item:first-child { padding-top: 0; }
	.sm-manifesto__creed li { grid-template-columns: 46px 1fr; gap: 12px; }
	.sm-manifesto__creed li::before { font-size: 2rem; }
	.sm-dossier div { grid-template-columns: 8em 1fr; }
	.sm-keep { padding: 14px; }
}
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link:focus { position: fixed !important; z-index: 200; top: 10px; left: 10px; width: auto; height: auto; padding: 12px 16px; clip: auto; background: var(--sm-red); color: #fff; font: 800 1rem/1 var(--f-display); text-transform: uppercase; letter-spacing: .06em; }
.alignleft { float: left; margin: .3em 1.4em 1em 0; }
.alignright { float: right; margin: .3em 0 1em 1.4em; }
.aligncenter { margin-inline: auto; }
.sticky, .bypostauthor, .wp-caption, .gallery-caption { outline: 0; }
@media (hover: none) {
	.has-noir .sm-card__img { filter: grayscale(.9) contrast(1.15); }
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; scroll-behavior: auto !important; }
	.sm-rec__dot, .sm-netbar__dot, .sm-since__tab::before, .sm-bulletin__lamp { animation: none; }
}
@media (forced-colors: active) {
	.sm-rec__dot, .sm-pin, .sm-netbar__dot, .sm-gauge__bar.is-on, .sm-pbar__seg { forced-color-adjust: none; background: Mark; }
	.sm-hazard, .sm-sh__rule { background: none; border-top: 4px solid CanvasText; box-shadow: none; }
	.sm-btn, .sm-chip, .sm-stamp { border: 2px solid ButtonText; }
	.sm-redacted { forced-color-adjust: none; background: CanvasText; }
}
@media print {
	.sm-netbar, .sm-nav, .sm-oncase, .sm-drawer, .sm-ad, .sm-adrow, .sm-signup, .sm-footer, .sm-story__aside, .sm-share, .sm-story__share, .sm-progress, .sm-related, .sm-modal, .sm-hazard--top, .sm-keep, .sm-masthead__plate, .sm-masthead__top, .sm-masthead__under, .sm-sinceflag__go { display: none !important; }
	body, .sm-dark, .sm-masthead, .sm-casebox, .sm-named, .sm-follow__now { background: #fff !important; color: #000 !important; }
	.sm-masthead__logo img { filter: invert(1) !important; max-width: 320px; margin: 0 auto; }
	.sm-masthead__brand { padding: 0 0 12px; }
	.sm-prose { max-width: none; font-size: 12pt; }
	.sm-prose a::after { content: " (" attr(href) ")"; font-size: .8em; }
	.sm-exhibit, .sm-versus, .sm-reply__item, .sm-since__item { break-inside: avoid; box-shadow: none !important; }
	.sm-redacted { background: #000 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
	.sm-story .sm-prose > p:first-of-type::first-letter { background: none; color: #000; box-shadow: none; }
}
@media (max-width: 1640px) {
	.sm-nav__tools .sm-livepill__title { display: none; }
	.sm-nav__tools .sm-livepill { padding: 3px; }
}
@media (min-width: 900px) {
	.sm-story__titlerow { flex-wrap: nowrap; }
	.sm-story__title { flex: 0 1 auto; }
	.sm-story__stamp { flex: none; margin-top: 1.2rem; }
}
