/* ---- dispatch (Longwalk 26) — one entry, bone ground, narrow measure ---- */
body.t-dispatch.ws-body { --bg: #faf9f6; --fg: #3a3a3c; --heading: #101012; --text: #3a3a3c; --muted: #8a8a8d; }
body.t-dispatch .ws-nav { background: rgba(16, 16, 18, 0.55); border-bottom: 0; position: sticky; top: 0; width: 100%; backdrop-filter: blur(6px); }
body.t-dispatch .ws-nav .ws-brand { color: #ffffff; }
body.t-dispatch .ws-nav-links a { color: #ffffff; opacity: 0.82; }
body.t-dispatch .ws-nav-links a:hover, body.t-dispatch .ws-nav-links a.on { opacity: 1; color: #ffffff; }
body.t-dispatch .ws-burger span { background: #ffffff; }
/* three tiles in a four-up grid sat hard left — centre the row instead */
body.t-dispatch .ws-gallery-grid { justify-content: center; grid-template-columns: repeat(auto-fit, minmax(240px, 300px)); }
body.t-dispatch .ws-hero { min-height: 96vh; }
body.t-dispatch .ws-hero h1 { font-size: clamp(32px, 5.4vw, 62px); font-weight: 700; letter-spacing: -0.02em; max-width: 16ch; }
body.t-dispatch .ws-hero p { text-transform: uppercase; letter-spacing: 0.18em; font-size: 11.5px; font-weight: 600; }
/* the running entry sits on a narrow reading measure, like a printed column */
body.t-dispatch .ws-richtext .ws-container { max-width: 640px; }
body.t-dispatch .ws-richtext p { font-size: 18px; line-height: 1.8; }
/* the second richtext carries no heading — it is the pull quote */
body.t-dispatch .ws-richtext:not(:has(.ws-h2)) p { font-size: clamp(22px, 3vw, 32px); line-height: 1.4; color: #3b4a6b; font-weight: 500; text-align: center; }
body.t-dispatch .ws-cta { background: #3b4a6b; }
body.t-dispatch .ws-cta h2, body.t-dispatch .ws-cta p { color: #ffffff; }
body.t-dispatch .btn.brand { background: #3b4a6b; color: #ffffff; }

/* dispatch — bone by day, night-walk dark by night */
html[data-theme="dark"] body.t-dispatch.ws-body { --bg: #101012; --fg: #c5c5c9; --heading: #faf9f6; --text: #c5c5c9; --muted: #86868c; }
html[data-theme="dark"] body.t-dispatch { background: #101012; }
html[data-theme="dark"] body.t-dispatch .ws-section:nth-child(even):not(.ws-cta):not(.ws-shoplink) { background: #17171a; }
html[data-theme="dark"] body.t-dispatch .ws-richtext:not(:has(.ws-h2)) p { color: #93a3c4; }
html[data-theme="dark"] body.t-dispatch .ws-team-card, html[data-theme="dark"] body.t-dispatch .ws-features-item { background: #17171a; }
html[data-theme="dark"] body.t-dispatch .btn.brand { background: #93a3c4; color: #101012; }
body.t-dispatch .ws-features-grid { grid-template-columns: repeat(auto-fit, minmax(240px, 320px)); }
