/* ==========================================================================
   WrestlingNews.co (WrestlingNews.co) - theme styles
   Converted from the approved "WrestlingNews.co" mockup (look 0).
   Tokens: white page, #111 ink, red #e1060a, Anton/Dharma headlines,
   Source Serif 4 body, Archivo UI.
   ========================================================================== */

:root {
	--bg: #ffffff;
	--fg: #111111;
	--mute: #5b5b63;
	--line: #e2e2e6;
	--acc: #e1060a;
	--acc-on-dark: #ff4a4d; /* red that passes 4.5:1 on black for small text */
	--accfg: #ffffff;
	--surf: #ffffff;
	--hbg: #ffffff;
	--hfg: #111111;
	--nbg: #111111;
	--nfg: #ffffff;
	--dark: #0b0b0d;
	--dfont: 'Dharma Gothic E', 'Dharma Gothic', Anton, Impact, 'Arial Narrow', sans-serif;
	--bfont: 'Source Serif 4', Georgia, serif;
	--ufont: Archivo, Arial, sans-serif;
	--gutter: 20px;
	--sticky-top: calc(16px + var(--wp-admin--admin-bar--height, 0px));
}

/* ---------- base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
	margin: 0;
	background: var(--bg);
	color: var(--fg);
	font-family: var(--bfont);
	font-size: 16px;
	line-height: 1.5;
	overflow-x: hidden;
}
a { color: inherit; text-decoration: none; }
img, video, iframe { max-width: 100%; }
img { height: auto; }
ul.menu, .ntk-shows, .ntk-set, .evrow, .ytrow, .soc, .fmenu { list-style: none; margin: 0; padding: 0; }
button { font: inherit; }

.wrap { max-width: 1240px; margin: 0 auto; padding-inline: var(--gutter); }
.d {
	font-family: var(--dfont);
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: .005em;
	line-height: .98;
	text-wrap: balance;
	margin: 0;
}
.u { font-family: var(--ufont); }
.meta { font-family: var(--ufont); font-size: 12.5px; color: var(--mute); }
.ex { color: var(--mute); font-size: 15px; margin: 6px 0 0; }
section { margin-block: 34px; }

/* Cover-fit images inside fixed boxes */
.ph, .ngl .bg, .ytc .th, .slogo, .lgt, .av, .wmini .th, .vn .th, .screen, .upnext .ph, .vcard .ph {
	overflow: hidden;
}
.ph img, .ngl .bg img, .ytc .th img, .slogo img, .lgt img, .av img, .wmini .th img, .vn .th img, .screen img, .upnext .ph img, .vcard .ph img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.ph { background: var(--line); }

/* Accessibility */
.screen-reader-text {
	border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
	height: 1px; width: 1px; margin: -1px; overflow: hidden; padding: 0;
	position: absolute !important; word-wrap: normal !important;
}
.skip-link {
	position: absolute; left: 12px; top: -60px; z-index: 1000;
	background: var(--fg); color: #fff; padding: 10px 16px;
	font-family: var(--ufont); font-weight: 800;
}
.skip-link:focus { top: 12px; }
:focus-visible { outline: 3px solid var(--acc); outline-offset: 2px; }
nav.main :focus-visible, .ntk-crawl :focus-visible, .evband :focus-visible, .ytband :focus-visible,
.cathd :focus-visible, .authhd :focus-visible, .abox :focus-visible, .livehd :focus-visible,
.vmod :focus-visible, .btn:focus-visible, .ngl:focus-visible {
	outline-color: #fff;
	box-shadow: 0 0 0 5px #111;
}
#main:focus { outline: none; }

/* ---------- buttons, kickers, section heads ---------- */
.btn {
	display: inline-flex; align-items: center; gap: 8px;
	font-family: var(--ufont); font-weight: 700; font-size: 14px;
	padding: 10px 16px; background: var(--acc); color: var(--accfg);
	border: 0; cursor: pointer;
}
.btn:hover { background: #b90508; }
.ghost {
	display: inline-flex; align-items: center; gap: 6px;
	font-family: var(--ufont); font-weight: 700; font-size: 14px;
	padding: 9px 14px; border: 1.5px solid var(--line); color: var(--fg); background: transparent;
}
.kick {
	display: inline-block; background: var(--acc); color: #fff;
	font-family: var(--dfont); font-weight: 400; font-size: 15px;
	letter-spacing: .04em; text-transform: uppercase;
	padding: 3px 8px 1px; line-height: 1.1;
}
.sec {
	display: flex; align-items: flex-end; gap: 12px;
	border-bottom: 5px solid var(--fg); padding-bottom: 0; margin: 0 0 16px;
}
.sec .d { background: var(--acc); color: #fff; font-size: 24px; padding: 6px 12px 3px; line-height: 1; }
.sec a { margin-left: auto; font-family: var(--ufont); font-size: 13px; font-weight: 700; color: var(--acc); padding-bottom: 4px; }
.sec a:hover { text-decoration: underline; }

/* ---------- header ---------- */
.site-header { background: var(--hbg); color: var(--hfg); }
.hb { display: flex; align-items: center; gap: 22px; padding-block: 16px; }
.brand { display: inline-flex; flex: none; }
.logo { height: 40px; width: auto; display: block; }
.custom-logo-link { display: inline-flex; }
.hright { margin-left: auto; display: flex; gap: 10px; align-items: center; }
.srch {
	width: 38px; height: 38px; border-radius: 50%;
	border: 1px solid currentColor; display: grid; place-items: center; color: var(--fg);
}
.srch:hover, .srch[aria-expanded="true"] { background: var(--fg); color: #fff; }
.site-search { border-top: 1px solid var(--line); padding-block: 12px; }
.site-search[hidden] { display: none; }
.search-form { display: flex; gap: 8px; max-width: 640px; }
.search-form input[type="search"] {
	flex: 1; min-width: 0; font: inherit; font-family: var(--ufont); font-size: 16px;
	padding: 10px 12px; border: 1.5px solid var(--fg); background: #fff; color: var(--fg);
}

/* Black nav bar (primary menu) */
nav.main {
	background: var(--nbg); color: var(--nfg);
	font-family: var(--ufont); font-weight: 700; font-size: 13.5px;
	text-transform: uppercase; letter-spacing: .05em;
}
nav.main .wrap { overflow-x: auto; scrollbar-width: none; }
nav.main .wrap::-webkit-scrollbar { display: none; }
nav.main .menu { display: flex; gap: 22px; align-items: center; white-space: nowrap; padding-block: 12px; }
nav.main .menu a { display: inline-block; padding-block: 2px; }
nav.main .menu a:hover { text-decoration: underline; text-underline-offset: 6px; }
nav.main .current-menu-item > a, nav.main .current-menu-ancestor > a, nav.main .current-cat > a { color: var(--acc-on-dark); }
nav.main .tix > a { background: var(--acc); color: #fff; padding: 6px 12px; }
nav.main .tix > a:hover { background: #b90508; text-decoration: none; }

/* ---------- TV-style breaking ticker ---------- */
.ntk { background: var(--bg); padding-block: 12px 4px; }
.ntk-main { min-width: 0; display: flex; flex-direction: column; position: relative; padding-top: 26px; }
.ntk-tab {
	position: absolute; left: 0; top: 0; height: 28px;
	display: flex; align-items: center; gap: 8px; padding: 0 14px;
	background: #e1060a; color: #fff;
	font-family: var(--ufont); font-weight: 800; font-size: 15px; letter-spacing: .02em; text-transform: uppercase;
	border-radius: 6px 6px 0 0; z-index: 1;
}
.ntk-tab i { width: 9px; height: 9px; border-radius: 50%; background: #fff; }
.ntk.live .ntk-tab i { animation: ntkblink 1.2s steps(2, start) infinite; }
@keyframes ntkblink { to { visibility: hidden; } }
.ntk-box { background: #fff; color: #111; border-left: 6px solid #e1060a; border-top: 4px solid #e1060a; position: relative; }
.ntk-head {
	display: block; font-family: var(--dfont); font-weight: 400; text-transform: uppercase; color: #111;
	font-size: 30px; line-height: 1.05; padding: 7px 16px 5px;
	white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
a.ntk-head:hover { color: var(--acc); }
.ntk-shows { display: flex; border-top: 1px solid #d9d9de; overflow-x: auto; scrollbar-width: none; }
.ntk-shows::-webkit-scrollbar { display: none; }
.ntk-shows > li { flex: 1 0 0; min-width: 150px; display: flex; border-right: 1px solid #e6e6ea; }
.ntk-shows > li:last-child { border-right: none; }
.shw { flex: 1; min-width: 0; display: flex; align-items: center; gap: 8px; padding: 6px 10px; color: #111; font-family: var(--ufont); }
a.shw:hover { background: #f4f4f5; }
.shw.on { background: #fff0f0; }
.slogo {
	flex: none; width: 72px; height: 36px; display: grid; place-items: center;
	background: #000; color: #fff; font-family: Anton, Impact, sans-serif; font-size: 10px; border-radius: 3px; white-space: nowrap;
}
.shw.on .slogo { outline: 2px solid #e1060a; outline-offset: 1px; }
.stx { display: flex; flex-direction: column; min-width: 0; line-height: 1.15; }
.stx b { font-size: 13px; font-weight: 800; white-space: normal; line-height: 1.1; }
.stx small { font-size: 11.5px; font-weight: 700; color: #5b5b63; white-space: nowrap; }
.stx em { font-style: normal; color: #fff; background: #c40509; padding: 0 4px; }
.ntk-crawl { background: #111; color: #fff; overflow: hidden; height: 30px; display: flex; align-items: center; border-left: 6px solid #111; }
.ntk-track { display: flex; flex: none; white-space: nowrap; animation: ntkcrawl var(--crawl, 70s) linear infinite; will-change: transform; }
.ntk-crawl:hover .ntk-track, .ntk-crawl:focus-within .ntk-track { animation-play-state: paused; }
.ntk-set { display: flex; flex: none; }
.ntk-set li { font-family: var(--ufont); font-weight: 700; font-size: 15px; letter-spacing: .02em; text-transform: uppercase; padding-right: 28px; }
.ntk-set li::before { content: ""; display: inline-block; width: 9px; height: 9px; background: #e1060a; margin-right: 14px; vertical-align: middle; transform: translateY(-1px); }
.ntk-set a:hover { text-decoration: underline; }
@keyframes ntkcrawl { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) {
	.ntk-track { animation: none; }
	.ntk-crawl { overflow-x: auto; }
	.ntk-set[aria-hidden="true"] { display: none; }
	.ntk.live .ntk-tab i { animation: none; }
}

/* ---------- ads (space reserved to prevent layout shift) ---------- */
.ad-slot { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; margin: 16px auto; text-align: center; max-width: 100%; }
.ad-label { display: block; font-family: var(--ufont); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: #6b6b73; margin-bottom: 4px; }
.ad-top-banner { min-height: 250px; max-width: 970px; }
.ad-home-leaderboard, .ad-after-content, .ad-river { min-height: 250px; }
.ad-in-article { min-height: 280px; margin: 24px 0; }
.ad-sidebar-outer { min-height: 600px; }
.ad-sidebar-outer .ad-sidebar-1 { position: sticky; top: var(--sticky-top); margin: 0; }
.ad-sidebar-2 { min-height: 250px; position: sticky; top: var(--sticky-top); margin: 0; }

/* ---------- ticket band ---------- */
.evband {
	margin-block: 14px 22px; display: flex; align-items: center; gap: 16px;
	padding: 12px 14px; background: var(--acc); color: var(--accfg);
	box-shadow: 0 6px 0 rgba(0, 0, 0, .18);
}
.evlab { display: flex; align-items: center; gap: 10px; flex: none; }
.evlab .d { display: block; font-size: 30px; line-height: .95; color: #fff; letter-spacing: .02em; }
.evloc { display: block; font-family: var(--ufont); font-size: 12px; white-space: nowrap; }
.evrow { flex: 1; min-width: 0; display: flex; gap: 10px; overflow-x: auto; scrollbar-width: none; padding: 8px 0; scroll-snap-type: x proximity; }
.evrow::-webkit-scrollbar { display: none; }
.evrow > li { flex: 1 1 150px; min-width: 0; display: flex; scroll-snap-align: start; }
.evrow > li.pl { flex: 1.4 1 210px; }
.stub {
	flex: 1; min-width: 0; display: flex; align-items: stretch;
	background: #fff; color: #111; border-radius: 6px; position: relative; transition: transform .15s ease;
}
a.stub:hover { transform: translateY(-2px); }
.stub .sd {
	flex: none; width: 46px; display: flex; flex-direction: column; align-items: center; justify-content: center;
	font-family: var(--ufont); font-size: 10px; letter-spacing: .08em; color: #5b5b63;
	border-right: 2px dashed #d4d4d8; padding: 6px 0;
}
.stub .sd b { font-family: var(--dfont); font-weight: 400; font-size: 22px; line-height: 1; color: #111; }
.stub::before, .stub::after { content: ""; position: absolute; left: 39px; width: 14px; height: 14px; border-radius: 50%; background: var(--acc); }
.stub::before { top: -7px; }
.stub::after { bottom: -7px; }
.stub .tx { min-width: 0; display: flex; flex-direction: column; justify-content: center; padding: 7px 10px; font-family: var(--ufont); font-size: 12px; line-height: 1.25; color: #5b5b63; }
.stub .tx b { font-size: 13.5px; color: #111; line-height: 1.15; }
.stub.pl { background: #111; color: #fff; }
.stub.pl .sd { color: #b9b9c2; border-right-color: #3a3a42; }
.stub.pl .sd b, .stub.pl .tx b { color: #fff; }
.stub.pl .tx { color: #b9b9c2; }
.stub.pl em { font-style: normal; font-weight: 800; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: #ff6b7d; }
.evall { flex: none; font-family: var(--ufont); font-weight: 800; font-size: 13.5px; padding: 11px 14px; background: #fff; color: #111; border-radius: 6px; white-space: nowrap; }
.evall:hover { background: #111; color: #fff; }
@media (prefers-reduced-motion: reduce) { .stub { transition: none; } }

/* ---------- story cards ---------- */
.grid { display: grid; gap: 22px; }
.g2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.g3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.g4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.story .ph { aspect-ratio: 16 / 10; margin-bottom: 10px; }
.story h3, .story h2 { font-size: 22px; margin: 4px 0 0; }
.story h3 a:hover, .story h2 a:hover, .pc .top:hover h3, .pc li a:hover, .mostread a:hover { color: var(--acc); }
.story .meta { margin-top: 4px; }

/* ---------- home lead: news-graphic card (photo on top, headline below) ---------- */
.lead { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 26px; border-bottom: 1px solid var(--line); padding-bottom: 26px; }
.lead .ex { font-size: 16px; margin-top: 12px; }
.leadside { display: flex; flex-direction: column; gap: 18px; }
.leadside .story { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 12px; }
.leadside .story .ph { aspect-ratio: 1; margin: 0; }

.ngl { display: flex; flex-direction: column; justify-content: flex-start; position: relative; width: 100%; overflow: hidden; background: #000; color: #fff; }
.ngl.stack .bg { position: relative; aspect-ratio: 16 / 10; flex: none; background: #1b1b1f; }
.ngl.stack .bg img { object-position: center 22%; }
.ngl .txt {
	position: relative; text-align: center; display: flex; flex-direction: column; align-items: center;
	margin-top: -64px; padding: 0 20px 14px;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0, #000 58px);
}
.ngl .lab {
	background: #e1060a; color: #fff; font-family: var(--dfont); text-transform: uppercase;
	font-size: clamp(28px, 4.4vw, 54px); line-height: 1; padding: 10px 22px 6px; margin-bottom: 6px;
}
.ngl h2, .ngl h3 { color: #fff; font-size: clamp(34px, 4.6vw, 62px); line-height: .92; text-transform: uppercase; margin: 0; }
.ngl:hover h2, .ngl:hover h3 { color: #ff4a4d; text-decoration: none; }

/* ---------- promotion columns ---------- */
.pcols { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.pc .sec { margin-bottom: 12px; }
.pc .sec .d { font-size: 22px; }
.pc .sec a { font-size: 12.5px; }
.pc .top { display: block; }
.pc .top .ph { aspect-ratio: 16 / 10; }
.pc .top h3 { font-size: 22px; margin: 8px 0 0; }
.pc ul { list-style: none; margin: 10px 0 0; padding: 0; }
.pc li { border-top: 1px solid var(--line); padding: 9px 0; font-family: var(--ufont); font-weight: 700; font-size: 14.5px; line-height: 1.3; }

/* ---------- YouTube strip ---------- */
.ytband { background: var(--dark); color: #fff; padding: 18px 18px 20px; margin-block: 30px; }
.ythd { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 14px; }
.ytband .yl { background: #e1060a; color: #fff; font-size: 26px; padding: 6px 14px 3px; line-height: 1; }
.yt-t { font-family: var(--ufont); font-weight: 800; font-size: 15px; letter-spacing: .02em; }
.ytsp { flex: 1; }
.ytsub { background: #e1060a; color: #fff; font-family: var(--ufont); font-weight: 800; font-size: 14px; padding: 9px 16px; }
.ytsub:hover { background: #b90508; }
.ytarr { width: 40px; height: 40px; border: 1.5px solid #3a3a42; background: transparent; color: #fff; font-size: 24px; line-height: 1; cursor: pointer; }
.ytarr:hover { border-color: #fff; }
.ytrow { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 48px) / 4); gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain; }
.ytrow::-webkit-scrollbar { display: none; }
.ytrow > li { scroll-snap-align: start; min-width: 0; }
.ytc { display: block; color: #fff; }
.ytc .th { display: block; position: relative; aspect-ratio: 16 / 9; background: #222; }
.ytc .th img { transition: transform .25s ease; }
.ytc:hover .th img { transform: scale(1.04); }
.ytc .pl, .wmini .pl {
	position: absolute; left: 50%; top: 50%; width: 54px; height: 54px; margin: -27px 0 0 -27px;
	border-radius: 50%; background: rgba(225, 6, 10, .95); opacity: 0; transform: scale(.85);
	transition: opacity .15s ease, transform .15s ease;
}
.ytc:hover .pl, .ytc:focus-visible .pl { opacity: 1; transform: none; }
@media (hover: none) { .ytc .pl { opacity: .9; transform: scale(.75); } }
.ytc .pl::after, .wmini .pl::after { content: ""; position: absolute; left: 21px; top: 16px; border-left: 17px solid #fff; border-top: 11px solid transparent; border-bottom: 11px solid transparent; }
.ytc .nw { position: absolute; left: 8px; top: 8px; background: #e1060a; color: #fff; font-family: var(--ufont); font-weight: 800; font-size: 11px; letter-spacing: .1em; padding: 3px 7px; }
.ytc .du { position: absolute; right: 8px; bottom: 8px; background: rgba(0, 0, 0, .82); color: #fff; font-family: var(--ufont); font-weight: 700; font-size: 12px; padding: 2px 6px; }
.ytc .yth { display: block; font-family: var(--ufont); font-weight: 700; font-size: 14.5px; line-height: 1.3; margin: 9px 0 0; color: #fff; }
.ytc .ag { display: block; font-family: var(--ufont); font-size: 12.5px; color: #a4a4ad; margin-top: 4px; }
@media (prefers-reduced-motion: reduce) { .ytc .th img, .ytc .pl { transition: none; } .ytrow { scroll-behavior: auto; } }

/* Pop-up player */
.vmod { position: fixed; inset: 0; z-index: 9999; background: rgba(0, 0, 0, .86); display: grid; place-items: center; padding: 24px 16px; overflow-y: auto; }
.vmod[hidden] { display: none; }
.vbox { position: relative; width: min(1000px, 100%, calc((100vh - 280px) * 16 / 9)); min-width: min(560px, 100%); background: #111; color: #fff; font-family: var(--ufont); }
.vx { position: absolute; right: 10px; top: 10px; z-index: 2; width: 44px; height: 44px; border: none; border-radius: 50%; background: #fff; color: #111; font-size: 20px; font-weight: 800; cursor: pointer; box-shadow: 0 2px 10px rgba(0, 0, 0, .5); }
.vscr { position: relative; aspect-ratio: 16 / 9; background: #000; }
.vscr iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.vmeta { display: flex; gap: 16px; align-items: center; flex-wrap: wrap; padding: 14px 16px; }
.vmeta .vt { flex: 1; min-width: 220px; }
.vmeta .vk { font-weight: 800; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--acc-on-dark); }
.vmeta h2 { font-family: var(--dfont); font-weight: 400; text-transform: uppercase; font-size: 28px; line-height: 1.02; margin: 4px 0 0; }
.vbtns { display: flex; gap: 8px; flex-wrap: wrap; }
.vbtns a, .vbtns button { font-family: var(--ufont); font-weight: 800; font-size: 14px; padding: 9px 14px; color: #fff; background: transparent; border: 1.5px solid #3a3a42; cursor: pointer; }
.vbtns .vsub { background: #e1060a; border-color: #e1060a; }
.vup { padding: 0 16px 16px; }
.vul { font-weight: 800; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: #b9b9c2; margin-bottom: 8px; }
.vnrow { display: grid; grid-auto-flow: column; grid-auto-columns: 200px; gap: 12px; overflow-x: auto; scrollbar-width: thin; list-style: none; margin: 0; padding: 0 0 4px; }
.vn { display: block; color: #fff; font-size: 13px; line-height: 1.3; font-weight: 700; }
.vn .th { display: block; aspect-ratio: 16 / 9; background: #222; margin-bottom: 6px; }
.vn:hover { text-decoration: underline; }
body.vmod-open { overflow: hidden; }

/* ---------- main + sidebar ---------- */
.main2 { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 32px; }
.side { display: flex; flex-direction: column; gap: 22px; min-width: 0; }
.mostread { margin: 0; }
.mostread ol { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 14px; counter-reset: n; }
.mostread li { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 10px; counter-increment: n; font-weight: 600; font-size: 15.5px; line-height: 1.35; }
.mostread li::before { content: counter(n); font-family: var(--dfont); font-size: 40px; line-height: 1; color: var(--acc); }
.card2 { border: 1px solid var(--line); padding: 16px; background: var(--surf); display: flex; flex-direction: column; gap: 10px; margin: 0; }
.card2 .c2h { margin: 0; font-family: var(--ufont); font-size: 15px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.nsc { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 4px 10px; align-items: center; font-family: var(--ufont); }
.nsc .lgt { grid-row: span 3; width: 110px; }
.nsc .btn { justify-self: start; padding: 6px 12px; font-size: 13px; }
.lgt { display: block; aspect-ratio: 2 / 1; background: #000; }
.wmini { display: flex; flex-direction: column; gap: 6px; font-family: var(--ufont); font-size: 14px; }
.wmini .th { position: relative; aspect-ratio: 16 / 9; display: block; background: #222; }
.wmini .pl { opacity: 1; transform: none; width: 46px; height: 46px; margin: -23px 0 0 -23px; }
.wmini .pl::after { left: 18px; top: 13px; border-left-width: 15px; border-top-width: 10px; border-bottom-width: 10px; }
.wmini:hover b { color: var(--acc); }

/* ---------- article ---------- */
.crumb { font-family: var(--ufont); font-size: 13px; color: var(--mute); padding-top: 18px; }
.crumb a { font-weight: 700; color: var(--fg); }
.crumb a:hover { color: var(--acc); }
.art { margin-top: 12px; }
.post h1 { font-size: 50px; margin: 10px 0 0; line-height: .98; }
.post > .kick:hover { background: #b90508; }
.dek { font-size: 19px; color: var(--mute); margin: 12px 0 0; max-width: 62ch; }
.byl { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: 12px 0; margin: 16px 0; font-family: var(--ufont); }
.byl b { font-size: 15px; }
.byl a:hover b { color: var(--acc); }
.byl .meta { display: block; }
.av { width: 44px; height: 44px; border-radius: 50%; background: #111; flex: none; border: 3px solid var(--acc); display: inline-block; }
.av.big { width: 72px; height: 72px; }
.av.huge { width: 132px; height: 132px; border-width: 5px; }
.av.sm { width: 26px; height: 26px; border-width: 2px; }
.shr { margin-left: auto; display: flex; gap: 6px; }
.shr a, .shr button { min-width: 36px; height: 36px; padding: 0 10px; display: inline-flex; align-items: center; justify-content: center; gap: 6px; background: #111; color: #fff; font-family: var(--ufont); font-weight: 800; font-size: 13px; border: 0; cursor: pointer; }
.shr a:hover { background: var(--acc); }
.shr .copy { background: transparent; color: var(--fg); border: 1.5px solid var(--line); }
.shr .copy:hover { border-color: var(--fg); }
.gpref2 { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin: 14px 0; padding: 12px 14px; border: 2px solid var(--fg); background: var(--surf); font-family: var(--ufont); color: var(--fg); }
.gpref2 img { width: 220px; height: auto; flex: none; }
.gpref2 span { flex: 1; min-width: 200px; font-size: 14px; color: var(--mute); line-height: 1.35; }
.gpref2 b { display: block; font-size: 16px; color: var(--fg); margin-bottom: 2px; }
.gpref2:hover { border-color: var(--acc); }
.feat { margin: 16px 0 0; }
.feat img { width: 100%; height: auto; display: block; }
figcaption, .wp-caption-text, .wp-element-caption { font-family: var(--ufont); font-size: 13px; color: var(--mute); margin-top: 6px; }
.body { font-size: 19px; line-height: 1.7; max-width: 68ch; }
.body p { margin: 18px 0; }
.body a { color: var(--acc); text-decoration: underline; text-underline-offset: 3px; font-weight: 600; }
.body a:hover { color: #b90508; }
.body h2 { font-family: var(--dfont); font-weight: 400; text-transform: uppercase; font-size: 32px; line-height: 1; margin: 30px 0 10px; }
.body h3 { font-family: var(--ufont); font-weight: 800; font-size: 21px; line-height: 1.25; margin: 26px 0 8px; }
.body blockquote { margin: 22px 0; padding: 4px 0 4px 18px; border-left: 5px solid var(--acc); font-style: italic; }
.body img { height: auto; }
.body figure { margin: 22px 0; }
.body .wp-block-embed, .body iframe { max-width: 100%; }
.body ul, .body ol { padding-left: 1.3em; }
.body .ad-slot a { color: inherit; text-decoration: none; font-weight: inherit; }
.tagrow { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px; }
.tagrow a { font-family: var(--ufont); font-weight: 700; font-size: 13px; padding: 6px 10px; background: var(--surf); border: 1.5px solid var(--line); }
.tagrow a:hover { border-color: var(--fg); }
.abox { display: flex; gap: 16px; align-items: flex-start; background: var(--dark); color: #fff; padding: 18px; margin: 0 0 20px; }
.abox .akick { font-family: var(--dfont); font-size: 16px; letter-spacing: .04em; text-transform: uppercase; color: var(--acc-on-dark); }
.abox .aname { display: block; font-family: var(--ufont); font-weight: 800; font-size: 22px; margin-top: 2px; }
.abox .aname:hover { text-decoration: underline; }
.abox p { margin: 6px 0; color: #c9c9d1; font-size: 15px; }
.abox .aall { font-family: var(--ufont); font-size: 13px; font-weight: 800; color: var(--acc-on-dark); }
.abox .aall:hover { text-decoration: underline; }
.page-links { font-family: var(--ufont); font-weight: 700; margin: 20px 0; }

/* ---------- category / archive ---------- */
.cathd { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-top: 20px; margin-bottom: 0; background: var(--dark); color: #fff; padding: 10px 16px; border-bottom: 5px solid #e1060a; }
.cathd .lgt { width: 88px; }
.cathd h1 { font-size: 38px; color: #fff; line-height: 1; }
.cathd .catdesc { font-size: 13px; color: #b9b9c2; flex-basis: 100%; }
.cathd .catdesc p { margin: 0; }
.catsub { display: flex; flex-wrap: wrap; gap: 6px; margin-left: auto; }
.catsub a { font-family: var(--ufont); font-weight: 800; font-size: 13px; padding: 6px 11px; border: 1.5px solid #3a3a42; color: #fff; }
.catsub a:hover { border-color: #fff; }
.catsub a.on { background: #e1060a; border-color: #e1060a; }
.catsearch { margin-left: auto; flex: 1 1 300px; }
.catsearch .search-form input[type="search"] { border-color: #fff; }
.river { display: flex; flex-direction: column; }
.river .story { display: grid; grid-template-columns: 86px 240px minmax(0, 1fr); gap: 20px; padding: 20px 0; border-bottom: 1px solid var(--line); }
.river .story .ph { aspect-ratio: 3 / 2; margin: 0; }
.river .tm { font-family: var(--ufont); font-weight: 700; font-size: 13px; color: var(--acc); }
.river h3 { font-size: 22px; }
.rby { display: flex; align-items: center; gap: 8px; margin-top: 6px; }
.river .ad-slot { margin: 20px auto; }
.pager { display: flex; justify-content: center; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 20px; }
.pager .btn { font-size: 15px; padding: 13px 22px; }
.empty { padding: 30px 0; }

/* ---------- author ---------- */
.authhd { display: flex; gap: 26px; align-items: center; margin-top: 20px; background: var(--dark); color: #fff; padding: 24px; border-bottom: 6px solid #e1060a; }
.authhd h1 { font-size: 54px; color: #fff; margin-top: 6px; }
.authhd p { margin: 6px 0; color: #c9c9d1; max-width: 62ch; }
.authhd .arole { color: #fff; font-weight: 700; }
.astats { display: flex; gap: 26px; margin: 10px 0; font-family: var(--ufont); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: #b9b9c2; }
.astats b { display: block; font-family: var(--dfont); font-weight: 400; font-size: 28px; color: #fff; letter-spacing: 0; }
.afol { display: flex; gap: 8px; flex-wrap: wrap; }
.afol .ghost { color: #fff; border-color: #3a3a42; }
.afol .ghost:hover { border-color: #fff; }

/* ---------- live results ---------- */
.livehd { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 20px; align-items: center; margin-top: 14px; margin-bottom: 0; background: var(--dark); color: #fff; padding: 18px; }
.livehd.nologo { grid-template-columns: minmax(0, 1fr); }
.livehd .lgt { width: 200px; }
.livehd h1 { font-size: 36px; color: #fff; margin: 8px 0; }
.lvst { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-family: var(--ufont); font-size: 12.5px; color: #b9b9c2; }
.final { background: #fff; color: #111; font-family: var(--ufont); font-weight: 800; font-size: 12px; letter-spacing: .12em; padding: 4px 9px; }
.badge-live { display: inline-flex; align-items: center; gap: 6px; background: #e1060a; color: #fff; font-family: var(--ufont); font-weight: 800; font-size: 12px; letter-spacing: .12em; padding: 4px 9px; }
.badge-live i { width: 8px; height: 8px; border-radius: 50%; background: #fff; animation: ntkblink 1.2s steps(2, start) infinite; }
@media (prefers-reduced-motion: reduce) { .badge-live i { animation: none; } }
.lvm { font-family: var(--ufont); font-size: 14px; color: #d9d9de; font-weight: 700; }
.lvnote button { margin-left: 6px; font-family: var(--ufont); font-weight: 800; font-size: 12px; background: #fff; color: #111; border: 0; padding: 3px 8px; cursor: pointer; }
.live-results .entry-content { max-width: none; font-size: 17px; }
/* H2 followed by a list = numbered results card */
.live-results .entry-content h2 { font-family: var(--ufont); font-weight: 800; font-size: 15px; letter-spacing: .06em; text-transform: uppercase; margin: 26px 0 0; padding: 0 0 8px; }
.live-results .entry-content h2:has(+ ol), .live-results .entry-content h2:has(+ ul) { border: 1px solid var(--line); border-bottom: 0; padding: 16px 16px 4px; }
.live-results .entry-content h2 + ol, .live-results .entry-content h2 + ul {
	list-style: none; margin: 0 0 18px; padding: 0 16px 4px; counter-reset: q;
	border: 1px solid var(--line); border-top: 0;
}
.live-results .entry-content h2 + ol > li, .live-results .entry-content h2 + ul > li {
	counter-increment: q; position: relative; padding: 12px 0 12px 44px; border-bottom: 1px solid var(--line);
	font-family: var(--ufont); font-size: 16px; line-height: 1.4;
}
.live-results .entry-content h2 + ol > li:last-child, .live-results .entry-content h2 + ul > li:last-child { border-bottom: 0; }
.live-results .entry-content h2 + ol > li::before, .live-results .entry-content h2 + ul > li::before {
	content: counter(q); position: absolute; left: 0; top: 10px; width: 30px; height: 30px;
	display: grid; place-items: center; background: #111; color: #fff; font-family: var(--dfont); font-size: 18px;
}
.live-results .entry-content h2 + ol > li strong:first-child, .live-results .entry-content h2 + ul > li strong:first-child { font-weight: 800; }
.live-results .entry-content h2 + ol > li:has(mark)::before { background: #e1060a; }
.live-results .entry-content h2 + ol > li mark { background: #e1060a; color: #fff; font-size: 10.5px; font-weight: 800; letter-spacing: .1em; padding: 2px 7px; margin-right: 6px; }
/* H3 sections = timeline */
.live-results .entry-content h3 {
	position: relative; font-family: var(--ufont); font-weight: 800; font-size: 17px; line-height: 1.3;
	margin: 0; padding: 18px 0 2px 18px; border-left: 3px solid var(--line);
}
.live-results .entry-content h3::before {
	content: ""; position: absolute; left: -9px; top: 21px; width: 15px; height: 15px; border-radius: 50%;
	background: var(--fg); border: 3px solid var(--bg);
}
.live-results .entry-content h3 ~ :is(p, ul, ol, figure, blockquote) { margin: 0; padding: 4px 0 8px 18px; border-left: 3px solid var(--line); color: var(--mute); font-size: 16px; }
.live-results .entry-content h3 ~ h2 ~ :is(p, ul, ol, figure, blockquote) { border-left: 0; padding-left: 0; color: inherit; }
.live-results .entry-content h3 ~ h2 ~ h3 ~ :is(p, ul, ol, figure, blockquote) { border-left: 3px solid var(--line); padding-left: 18px; color: var(--mute); }
.live-results .entry-content h3 ~ h2 + :is(ol, ul) { border-left: 1px solid var(--line); padding-left: 16px; color: inherit; }
.live-results .entry-content .ad-slot { border-left: 0; }

/* ---------- pages: videos, static, 404 ---------- */
.pagehead { padding-block: 26px 6px; margin: 0; }
.pagehead h1 { font-size: 52px; margin-top: 6px; }
.pagehead p { color: var(--mute); margin: 8px 0 12px; font-size: 17px; max-width: 62ch; }
.post .pagehead { padding-top: 6px; }
.tabs { display: flex; gap: 8px; flex-wrap: wrap; margin: 18px 0; }
.tabs .tab { font-family: var(--ufont); font-weight: 700; font-size: 14px; padding: 10px 16px; border: 1.5px solid var(--line); background: var(--surf); color: var(--fg); display: inline-flex; align-items: center; gap: 8px; }
.tabs .tab.on { background: var(--fg); color: var(--bg); border-color: var(--fg); }
.tabs a.tab:hover { border-color: var(--fg); }
.tabs .dot { width: 10px; height: 10px; border-radius: 50%; }
.player { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 24px; }
.screen { position: relative; display: block; aspect-ratio: 16 / 9; background: #000; }
.screen iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.screen .play { position: absolute; left: 50%; top: 50%; width: 84px; height: 84px; margin: -42px 0 0 -42px; border-radius: 50%; background: #e1060a; box-shadow: 0 8px 30px rgba(0, 0, 0, .45); }
.screen .play::after { content: ""; position: absolute; left: 33px; top: 24px; border-left: 26px solid #fff; border-top: 18px solid transparent; border-bottom: 18px solid transparent; }
.vtitle { font-size: 28px; margin-top: 14px; }
.upnext { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.upnext .sec { margin: 0; }
.upnext .sec .d { font-size: 20px; }
.upnext a { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 10px; font-family: var(--ufont); font-size: 14px; font-weight: 700; line-height: 1.3; }
.upnext a:hover span:last-child { color: var(--acc); }
.upnext .ph { aspect-ratio: 16 / 9; display: block; }
.vgrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.vcard { display: block; }
.vcard .ph { display: block; aspect-ratio: 16 / 9; }
.vcard .vct { display: block; font-family: var(--ufont); font-size: 15px; font-weight: 700; line-height: 1.3; margin: 8px 0 2px; }
.vcard:hover .vct { color: var(--acc); }
.note2 { font-family: var(--ufont); font-size: 13px; color: var(--mute); border: 1px dashed var(--line); padding: 10px 12px; }
.nf { padding-block: 40px 10px; }
.nf h1 { font-size: 64px; }

/* ---------- footer ---------- */
.site-footer { background: var(--hbg); color: var(--hfg); margin-top: 40px; border-top: 5px solid var(--fg); }
.site-footer .wrap { display: flex; flex-wrap: wrap; gap: 24px; align-items: center; padding-block: 28px; font-family: var(--ufont); font-size: 13px; }
.flogo { height: 28px; width: auto; }
.fmenu { display: flex; flex-wrap: wrap; gap: 6px 16px; }
.fmenu a:hover { color: var(--acc); text-decoration: underline; }
.soc { display: flex; flex-wrap: wrap; gap: 8px; margin-left: auto; list-style: none; padding: 0; }
.soc a { width: 34px; height: 34px; border-radius: 50%; border: 1px solid currentColor; display: grid; place-items: center; }
.soc a:hover { background: var(--fg); color: #fff; }

/* ---------- comments ---------- */
.comments { margin-top: 30px; font-family: var(--ufont); }
.comment-list { list-style: none; padding: 0; }
.comment-list .comment { border-bottom: 1px solid var(--line); padding: 12px 0; }
.comment-list .children { list-style: none; padding-left: 24px; }
.comment-form input:not([type="submit"]):not([type="checkbox"]), .comment-form textarea { width: 100%; font: inherit; padding: 9px 10px; border: 1.5px solid var(--line); }
.comment-form .submit { background: var(--acc); color: #fff; border: 0; padding: 10px 16px; font-weight: 700; cursor: pointer; }

/* ---------- WordPress core classes ---------- */
.alignleft { float: left; margin: 6px 20px 10px 0; }
.alignright { float: right; margin: 6px 0 10px 20px; }
.aligncenter { display: block; margin-inline: auto; }
.wp-caption { max-width: 100%; }
.sticky, .bypostauthor, .gallery-caption { }

/* ---------- tablet ---------- */
@media (min-width: 761px) and (max-width: 1050px) {
	.pcols { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.main2 { grid-template-columns: minmax(0, 1fr) 300px; gap: 24px; }
	.ytrow { grid-auto-columns: calc((100% - 32px) / 3); }
	.player { grid-template-columns: minmax(0, 1fr); }
}

/* ---------- phone ---------- */
@media (max-width: 760px) {
	:root { --gutter: 16px; }
	body { font-size: 15px; }
	section { margin-block: 26px; }
	.hb { gap: 12px; padding-block: 12px; }
	.logo { height: 28px; }
	.hright .patreon { display: none; }
	nav.main .menu { gap: 16px; }

	/* ticker: show cells become logo + day only */
	.ntk-main { padding-top: 24px; }
	.ntk-tab { font-size: 14px; height: 26px; padding: 0 12px; }
	.ntk-head { font-size: 22px; white-space: normal; padding: 8px 12px 6px; }
	.ntk-shows > li { min-width: 84px; }
	.shw { flex-direction: column; gap: 3px; padding: 6px 4px; text-align: center; }
	.stx b { display: none; } /* the logo's alt text still names the show */
	.stx small { font-size: 11px; }
	.ntk-set li { font-size: 14px; }

	/* ticket band scrolls sideways */
	.evband { flex-wrap: wrap; gap: 10px; }
	.evlab { width: 100%; }
	.evlab .d { display: inline; font-size: 24px; margin-right: 8px; }
	.evloc { display: inline; }
	.evrow { flex-basis: 100%; }
	.evrow > li { flex: 0 0 170px; }
	.evrow > li.pl { flex: 0 0 220px; }
	.evall { width: 100%; text-align: center; }

	/* grids stack */
	.g2, .g3, .g4, .pcols, .vgrid { grid-template-columns: minmax(0, 1fr); }
	.main2, .lead, .player { grid-template-columns: minmax(0, 1fr); }
	.ngl .txt { margin-top: -48px; padding: 0 14px 12px; }
	.ngl .lab { font-size: 26px; }
	.ngl h2, .ngl h3 { font-size: 34px; }
	.ytband { padding: 14px; margin-inline: calc(var(--gutter) * -1); }
	.ytrow { grid-auto-columns: 78%; }
	.ytarr, .yt-t { display: none; }
	.river .story { grid-template-columns: 110px minmax(0, 1fr); gap: 12px; }
	.river .tm { grid-column: 1 / -1; }
	.river h3 { font-size: 18px; }
	.river .ex { display: none; }

	/* article */
	.post h1 { font-size: 32px; }
	.dek { font-size: 17px; }
	.body { font-size: 17.5px; }
	.shr { margin-left: 0; width: 100%; }
	.gpref2 img { width: 180px; }

	/* headers */
	.cathd h1, .authhd h1 { font-size: 34px; }
	.catsub { margin-left: 0; }
	.livehd { grid-template-columns: minmax(0, 1fr); }
	.livehd .lgt { width: 160px; }
	.livehd h1 { font-size: 26px; }
	.authhd { flex-direction: column; align-items: flex-start; }
	.av.huge { width: 96px; height: 96px; }
	.pagehead h1 { font-size: 34px; }
	.upnext a { grid-template-columns: 120px minmax(0, 1fr); }

	/* ads */
	.ad-top-banner, .ad-home-leaderboard, .ad-after-content, .ad-river { min-height: 100px; }
	.ad-in-article { min-height: 280px; }
	.ad-sidebar-outer { min-height: 280px; }

	.site-footer .soc { margin-left: 0; }

	/* player modal goes full width */
	.vmod { padding: 0; place-items: start center; }
	.vbox { width: 100%; min-width: 0; }
	.vx { width: 38px; height: 38px; font-size: 17px; }
	.vmeta h2 { font-size: 22px; }
	.vnrow { grid-auto-columns: 160px; }
}

/* LATEST (no breaking story): calm black tab, no blinking dot. BREAKING: red tab with blinking dot. */
.ntk.latest .ntk-tab{background:#111}
.ntk.latest .ntk-tab i{display:none}
.ntk.latest .ntk-box{border-top-color:#111;border-left-color:#111}
.ntk.breaking .ntk-tab i{animation:wncblink 1.2s steps(2,start) infinite}
@keyframes wncblink{to{visibility:hidden}}
@media (prefers-reduced-motion:reduce){.ntk.breaking .ntk-tab i{animation:none}}

/* ---------- social follow band ---------- */
.socband{margin-block:30px;background:#fff;border:3px solid #111}
.sochd{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:#111;color:#fff;padding:10px 16px}
.sochd .d{background:#e1060a;color:#fff;font-size:24px;padding:5px 12px 2px;line-height:1;margin:0}
.soctot{font-family:var(--ufont,Archivo,Arial,sans-serif);font-size:14px;color:#d9d9de}
.soctot b{font-family:var(--dfont,Anton,Impact,sans-serif);font-weight:400;font-size:24px;color:#fff;letter-spacing:.02em}
.sochandle{margin-left:auto;font-family:var(--ufont,Archivo,Arial,sans-serif);font-weight:800;font-size:14px;color:#fff}
.socgrid{list-style:none;margin:0;padding:12px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.soct{display:flex;flex-direction:column;align-items:flex-start;gap:3px;height:100%;padding:12px;border:1.5px solid #e2e2e6;background:#fff;color:#111;font-family:var(--ufont,Archivo,Arial,sans-serif);text-decoration:none;transition:border-color .15s,transform .15s}
.soct:hover{border-color:#e1060a;transform:translateY(-2px)}
.soct .ic{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#111;color:#fff;margin-bottom:4px}
.soct .nm{font-weight:800;font-size:15px}
.soct .ct{font-size:12.5px;color:#5b5b63}
.soct .ct b{font-family:var(--dfont,Anton,Impact,sans-serif);font-weight:400;font-size:24px;color:#111;letter-spacing:.02em;line-height:1}
.soct .ex{font-size:12px;font-weight:700;color:#e1060a}
.soct .go{margin-top:auto;padding-top:6px;font-weight:800;font-size:12.5px;color:#e1060a}
.soc-youtube .ic{background:#ff0033}.soc-tiktok .ic{background:#111}.soc-facebook .ic{background:#1877f2}
.soc-instagram .ic{background:linear-gradient(45deg,#f58529,#dd2a7b,#8134af)}.soc-x .ic{background:#000}
.soc-threads .ic{background:#000}.soc-snapchat .ic{background:#fffc00;color:#111}.soc-bluesky .ic{background:#0085ff}
.soc-spotify .ic{background:#1db954}.soc-patreon .ic{background:#f96854}
.socbox ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:6px}
.socbox a{display:flex;align-items:center;gap:7px;padding:6px;border:1px solid #e2e2e6;color:#111;font-family:var(--ufont,Archivo,Arial,sans-serif);font-size:13px;font-weight:700;text-decoration:none}
.socbox a:hover{border-color:#e1060a}
.socbox .ic{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#111;color:#fff;flex:none}
.socbox .nm{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.socbox b{margin-left:auto;font-family:var(--dfont,Anton,Impact,sans-serif);font-weight:400;font-size:16px}
@media (max-width:1050px){.socgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.socgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.sochandle{margin-left:0}}

/* compact follow row (replaces the big band on the homepage) */
.socrow{display:flex;align-items:center;gap:14px;margin-block:18px;padding:8px 12px;background:#111;color:#fff;font-family:var(--ufont,Archivo,Arial,sans-serif)}
.socrow-l{display:flex;align-items:baseline;gap:10px;flex:none}
.socrow-l .d{background:#e1060a;color:#fff;font-weight:400;font-size:18px;line-height:1;padding:5px 9px 3px;text-transform:uppercase}
.socrow-l span{font-size:12.5px;color:#c9c9d1;white-space:nowrap}.socrow-l span b{color:#fff;font-size:15px}
.socrow-list{list-style:none;margin:0;padding:0;display:flex;flex:1;gap:6px;overflow-x:auto;scrollbar-width:none}
.socrow-list::-webkit-scrollbar{display:none}
.socrow-list a{display:flex;align-items:center;gap:6px;padding:3px 10px 3px 3px;border-radius:999px;background:#1f1f24;color:#fff;text-decoration:none;font-weight:800;font-size:13px;white-space:nowrap}
.socrow-list a:hover{background:#2c2c33}
.socrow-list .ic{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:#fff}
@media (max-width:760px){.socrow{flex-direction:column;align-items:stretch;gap:8px}.socrow-list{flex:none}}

/* ticket stubs: wider so show names fit on one or two lines */
.evrow > li, .evrow > li.pl { flex: 0 0 auto; min-width: 150px; max-width: 230px; }
.stub .tx { padding: 6px 12px 6px 10px; }
.stub .tx b { font-size: 13px; white-space: normal; }
.stub.pl em { font-size: 9.5px; letter-spacing: .14em; }

/* 1.0.6: long headlines scale down; category lead is smaller and drops the repeated category label */
.ngl.long h2, .ngl.long h3 { font-size: clamp(30px, 3.6vw, 50px); }
.ngl.xlong h2, .ngl.xlong h3 { font-size: clamp(28px, 3vw, 42px); }
.archive .lead .ngl h2, .search .lead .ngl h2 { font-size: clamp(28px, 3.2vw, 44px); }
.archive .lead .ngl.long h2, .archive .lead .ngl.xlong h2, .search .lead .ngl.long h2 { font-size: clamp(26px, 2.6vw, 36px); }
.category .lead .ngl .lab { display: none; }
.archive .lead .ngl .txt { margin-top: 0; padding-top: 16px; }
@media (max-width: 760px) { .archive .lead .ngl h2, .archive .lead .ngl.long h2, .archive .lead .ngl.xlong h2 { font-size: 28px; } }

/* ===== 1.1.0 Events, tickets and promoter portal ===== */
.evhero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); margin-top: 22px; background: var(--dark); color: #fff; }
.evh-l { padding: 26px 28px; display: flex; flex-direction: column; gap: 8px; justify-content: center; }
.evh-l .kick { align-self: flex-start; background: var(--acc); color: #fff; padding: 3px 8px; }
.evh-l h1 { font-size: 56px; color: #fff; margin: 0; }
.evh-l p { margin: 0; color: #c9c9d1; font-size: 16px; max-width: 46ch; }
.evstats { display: flex; gap: 22px; margin-top: 10px; font-family: var(--ufont); font-size: 12.5px; color: #b9b9c2; text-transform: uppercase; letter-spacing: .06em; }
.evstats b { display: block; font-family: var(--dfont); font-weight: 400; font-size: 34px; line-height: 1; color: #fff; letter-spacing: 0; }
.evh-r { display: grid; grid-template-columns: minmax(0, 1fr); background: #151518; border-left: 6px solid var(--acc); color: #fff; }
.evh-img { display: block; aspect-ratio: 2.4 / 1; overflow: hidden; background: #000; }
.evh-img img { width: 100%; height: 100%; object-fit: cover; }
.evh-tx { display: flex; flex-direction: column; gap: 6px; padding: 14px 18px 18px; font-family: var(--ufont); }
.evh-tx .flag, .tkh .flag { align-self: flex-start; background: var(--acc); color: #fff; font-family: var(--ufont); font-weight: 800; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; padding: 3px 8px; }
.evh-tx b.d { font-size: 30px; color: #fff; line-height: 1; }
.evh-tx .u { color: #d9d9de; font-size: 14px; }
.evh-tx .btn { align-self: flex-start; margin-top: 6px; }
.evh-tx .cd { display: flex; align-items: baseline; gap: 6px; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #b9b9c2; }
.evh-tx .cd b { font-family: var(--dfont); font-weight: 400; font-size: 32px; line-height: 1; color: #fff; letter-spacing: 0; }
.bigshows { margin-block: 26px 18px; }
.bsrow { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(220px, 1fr); gap: 14px; overflow-x: auto; scrollbar-width: thin; padding-bottom: 4px; }
.bs { display: flex; flex-direction: column; background: #111; color: #fff; }
.bsl { display: block; aspect-ratio: 2 / 1; overflow: hidden; background: #000; }
.bsl img { width: 100%; height: 100%; object-fit: cover; }
.bst { padding: 10px 12px; display: flex; flex-direction: column; gap: 2px; font-family: var(--ufont); }
.bst b { font-size: 15px; }
.bst span { font-size: 12.5px; color: #b9b9c2; }
.locbar { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; padding: 14px 16px; border: 1.5px solid var(--fg); background: var(--surf); margin-top: 18px; }
.locbar .zip { display: flex; align-items: center; gap: 8px; font-family: var(--ufont); font-weight: 700; font-size: 13.5px; }
.locbar input, .locbar select { font: inherit; font-family: var(--ufont); font-size: 15px; padding: 9px 10px; border: 1px solid var(--line); background: var(--bg); color: var(--fg); min-width: 0; }
.locbar input { width: 96px; }
.locbar .btn { border: none; cursor: pointer; font-size: 14px; }
.locbar .where { margin-left: auto; display: flex; border: 1.5px solid var(--fg); overflow: hidden; }
.locbar .where button { font: inherit; font-family: var(--ufont); font-weight: 700; font-size: 13.5px; padding: 9px 14px; border: none; background: var(--surf); color: var(--fg); cursor: pointer; }
.locbar .where button[aria-pressed="true"] { background: var(--fg); color: var(--bg); }
.locbar [data-locmsg] { flex-basis: 100%; }
.locbar [data-locmsg]:empty { display: none; }
.evtabs { margin: 14px 0 18px; }
.evtabs .tab { cursor: pointer; font: inherit; font-family: var(--ufont); font-weight: 700; font-size: 14px; }
.evtabs .tab[aria-pressed="true"] { background: var(--acc); color: #fff; border-color: var(--acc); }
.evmap { margin-bottom: 18px; border: 1px solid var(--line); }
.evmap-c { height: 340px; background: #e9e9ee; }
.evmap .meta { margin: 0; padding: 4px 8px; }
.evlist .monthhd { font-family: var(--dfont); font-size: 24px; text-transform: uppercase; color: var(--fg); border-bottom: 3px solid var(--acc); padding-bottom: 4px; margin: 22px 0 12px; }
.evlist .monthhd:first-child { margin-top: 0; }
.erow { display: grid; grid-template-columns: 64px 120px minmax(0, 1fr) auto auto; gap: 16px; align-items: center; padding: 12px 14px; margin-bottom: 10px; background: var(--surf); border: 1px solid var(--line); border-left: 5px solid var(--fg); color: var(--fg); transition: border-color .15s; }
.erow:hover { border-left-color: var(--acc); }
.erow.big { border-left-color: var(--acc); }
.erow .dt { display: flex; flex-direction: column; align-items: center; background: #111; color: #fff; padding: 6px 0; font-family: var(--ufont); font-size: 10.5px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.erow .dt b { font-family: var(--dfont); font-weight: 400; font-size: 30px; line-height: 1; letter-spacing: 0; }
.erow .dt span:last-child { color: var(--acc-on-dark); }
.erow .lgt { width: 120px; }
.erow .tx { display: flex; flex-direction: column; gap: 2px; min-width: 0; font-family: var(--ufont); }
.erow .tx .kick { font-size: 11px; }
.erow .tx .kick em { font-style: normal; color: var(--acc); }
.erow .tx b { font-size: 17px; line-height: 1.2; }
.erow .st { font-family: var(--ufont); font-weight: 800; font-size: 12.5px; color: #1a7f37; white-space: nowrap; text-align: right; display: flex; flex-direction: column; }
.erow .st small { font-weight: 600; color: var(--mute); font-size: 12px; }
.erow .st.off { color: var(--mute); }
.erow .btn { padding: 8px 14px; font-size: 13px; }
.erow.hide { display: none; }
.evpromo { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; margin-top: 34px; padding: 22px 26px; background: var(--dark); color: #fff; }
.evpromo .kick { color: var(--acc-on-dark); }
.evpromo h2 { color: #fff; font-size: 34px; margin: 4px 0; }
.evpromo p { margin: 0; color: #c9c9d1; max-width: 60ch; }
.evpromo .btn { margin-left: auto; }
.note2 { font-family: var(--ufont); font-size: 13px; color: var(--mute); border: 1px dashed var(--line); padding: 10px 12px; }
/* ticket page */
.tkpick { margin-top: 20px; }
.tkp-hd { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin-bottom: 10px; }
.tkp-hd h2 { font-size: 26px; background: var(--acc); color: #fff; padding: 5px 12px 2px; line-height: 1; margin: 0; }
.tkp-hd .meta { margin-left: auto; font-weight: 700; color: var(--acc); }
.tkp-row { display: grid; grid-auto-flow: column; grid-auto-columns: 220px; justify-content: start; gap: 12px; overflow-x: auto; padding-bottom: 6px; scrollbar-width: thin; }
.tkc { position: relative; display: flex; flex-direction: column; background: #111; color: #fff; border: 3px solid transparent; transition: transform .15s; }
.tkc:hover { transform: translateY(-2px); }
.tkc.on { border-color: var(--acc); }
.tkc-l { display: block; aspect-ratio: 2 / 1; overflow: hidden; background: #000; }
.tkc-l img { width: 100%; height: 100%; object-fit: cover; }
.tkc-t { padding: 8px 10px 10px; display: flex; flex-direction: column; gap: 2px; font-family: var(--ufont); }
.tkc-t b { font-size: 14.5px; line-height: 1.2; }
.tkc-t span { font-size: 12.5px; color: #b9b9c2; }
.tkc-on { position: absolute; top: 6px; right: 6px; background: var(--acc); color: #fff; font-family: var(--ufont); font-weight: 800; font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; padding: 3px 7px; }
.tkpage { margin-top: 20px; }
.tkh { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); background: var(--dark); color: #fff; min-height: 420px; }
.tkh-l { padding: 20px 28px 26px; display: flex; flex-direction: column; gap: 8px; position: relative; z-index: 1; }
.tkh-logo { display: block; width: min(340px, 100%); aspect-ratio: 2 / 1; overflow: hidden; margin-top: 4px; background: #000; }
.tkh-logo img { width: 100%; height: 100%; object-fit: cover; }
.tkh h1 { font-size: 46px; color: #fff; margin: 0; }
.tkh .when { font-size: 16px; color: #d9d9de; font-weight: 700; }
.tkcount { margin: 0; font-family: var(--ufont); font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #b9b9c2; display: flex; align-items: baseline; gap: 6px; }
.tkcount b { font-family: var(--dfont); font-weight: 400; font-size: 34px; line-height: 1; color: #fff; letter-spacing: 0; }
.tkcount.tonight { background: var(--acc); color: #fff; align-self: flex-start; padding: 6px 12px; font-size: 18px; }
.tkdone { margin: 0; color: #b9b9c2; font-family: var(--ufont); font-weight: 700; }
.tkh-btns { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 8px; }
.btn.big { font-size: 16px; padding: 12px 22px; }
.ghost.inv { border-color: #fff; color: #fff; }
.tkh-r { position: relative; overflow: hidden; min-height: 240px; }
.tkh-r img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 20%; }
.tkh-r .shade { position: absolute; inset: 0; background: linear-gradient(90deg, var(--dark) 0, rgba(11, 11, 13, 0) 45%); }
.tkh.nophoto { grid-template-columns: minmax(0, 1fr); min-height: 0; }
.tkh.nophoto .tkh-r { display: none; }
.tkfacts { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); background: var(--acc); color: #fff; }
.tkfacts div { padding: 12px 16px; border-right: 1px solid rgba(255, 255, 255, .25); font-family: var(--ufont); min-width: 0; }
.tkfacts div:last-child { border-right: none; }
.tkfacts small { display: block; font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; opacity: .85; }
.tkfacts b { font-size: 15px; }
.tkmain { margin-top: 24px; }
.tkbody { display: flex; flex-direction: column; gap: 18px; min-width: 0; }
.seller { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 14px 16px; border: 1px solid var(--line); background: var(--surf); }
.seller.hot { border: 2px solid var(--acc); }
.seller b { font-family: var(--ufont); font-size: 16px; }
.seller .tag { display: table; font-family: var(--ufont); font-weight: 800; font-size: 10.5px; letter-spacing: .1em; background: var(--acc); color: #fff; padding: 2px 6px; margin-bottom: 4px; }
.seller .tag.gray { background: var(--mute); }
.matches2 { list-style: none; margin: 0; padding: 0; }
.matches2 li { display: flex; flex-direction: column; gap: 2px; padding: 10px 0 10px 14px; border-bottom: 1px solid var(--line); border-left: 4px solid var(--fg); margin-bottom: 6px; font-family: var(--ufont); }
.matches2 li.tba { border-left-color: var(--line); }
.matches2 b { font-size: 16px; }
.tknews { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 12px; align-items: center; }
.tknews .ph { aspect-ratio: 16 / 10; margin: 0; }
.tknews b { font-size: 15px; line-height: 1.3; }
.plan { display: flex; flex-direction: column; gap: 10px; font-family: var(--ufont); }
.plan small { display: block; font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--mute); }
.plan b { display: block; font-size: 16px; }
.card2 .ghost { justify-content: center; cursor: pointer; font: inherit; font-family: var(--ufont); font-weight: 700; }
.osn { display: grid; grid-template-columns: 80px minmax(0, 1fr); gap: 10px; align-items: center; font-family: var(--ufont); font-size: 14px; }
.osn .lgt { width: 80px; }
.osn b { display: block; line-height: 1.25; }
.tkall { margin-top: 34px; }
.tkall-m { font-family: var(--dfont); font-size: 22px; text-transform: uppercase; color: var(--fg); border-bottom: 3px solid var(--acc); margin: 16px 0 10px; padding-bottom: 3px; }
.tkr { display: grid; grid-template-columns: 70px 120px minmax(0, 1fr) auto auto; gap: 16px; align-items: center; padding: 10px 14px; margin-bottom: 8px; background: var(--surf); border: 1px solid var(--line); border-left: 5px solid var(--fg); font-family: var(--ufont); color: var(--fg); }
.tkr:hover, .tkr.on { border-left-color: var(--acc); }
.tkr.on { background: #fff5f5; }
.tkr-d { font-family: var(--dfont); font-size: 22px; text-align: center; line-height: 1; white-space: nowrap; }
.tkr .lgt { width: 120px; }
.tkr-t { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.tkr-t b { font-size: 17px; }
.tkr-t .kick { align-self: flex-start; }
.tkr-s { font-weight: 800; font-size: 12.5px; color: var(--mute); white-space: nowrap; }
.tkr .btn { padding: 8px 14px; font-size: 13px; }
/* promoter portal */
.pp { padding-block: 22px 10px; }
.pp-login { display: grid; place-items: center; }
.pp-login .pp-card { max-width: 520px; }
.pp-login h1 { font-size: 40px; margin: 6px 0 8px; }
.pp-login form p { margin: 0 0 12px; font-family: var(--ufont); }
.pp-login form label { display: block; font-weight: 700; font-size: 13.5px; margin-bottom: 4px; }
.pp-login form .input { width: 100%; font: inherit; font-size: 15px; padding: 9px 10px; border: 1.5px solid var(--line); background: var(--bg); color: var(--fg); }
.pp-login form .button { font: inherit; font-family: var(--ufont); font-weight: 700; background: var(--acc); color: #fff; border: none; padding: 11px 20px; cursor: pointer; }
.pp-apply { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--line); font-family: var(--ufont); }
.pp-apply p { margin: 4px 0 0; font-size: 14px; }
.pp-top { display: flex; align-items: flex-end; gap: 16px; flex-wrap: wrap; margin-bottom: 16px; }
.pp-top h1 { font-size: 44px; margin: 6px 0 2px; }
.pp-top .ghost { margin-left: auto; }
.pp-msg { font-family: var(--ufont); font-weight: 700; padding: 12px 14px; margin-bottom: 14px; border-left: 5px solid #1a7f37; background: #eef8f0; }
.pp-msg.err { border-left-color: var(--acc); background: #fff5f5; }
.pp-grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 24px; align-items: start; }
.pp-card { border: 1px solid var(--line); padding: 18px; background: var(--surf); }
.pp-list { display: flex; flex-direction: column; gap: 10px; margin-bottom: 14px; }
.pp-ev { display: grid; grid-template-columns: 56px minmax(0, 1fr) auto; gap: 12px; align-items: center; border: 1px solid var(--line); padding: 10px; background: var(--bg); }
.pp-ev .dt { text-align: center; font-family: var(--ufont); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--mute); }
.pp-ev .dt b { display: block; font-family: var(--dfont); font-size: 28px; line-height: 1; color: var(--fg); font-weight: 400; }
.pp-ev .in { display: flex; flex-direction: column; gap: 2px; min-width: 0; font-family: var(--ufont); }
.pp-ev .in b { font-size: 15px; }
.pp-st { align-self: flex-start; font-family: var(--ufont); font-weight: 800; font-size: 11.5px; letter-spacing: .04em; border: 1.5px solid currentColor; padding: 2px 8px; margin-top: 3px; }
.pp-st.live { color: #1a7f37; }
.pp-st.pend { color: #b35c00; }
.pp-st.draft { color: var(--mute); }
.pp-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 14px; }
.pp-f { display: flex; flex-direction: column; gap: 5px; font-family: var(--ufont); min-width: 0; }
.pp-f.w, .pp-act.w { grid-column: 1 / -1; }
.pp-f > span { font-weight: 700; font-size: 13.5px; }
.pp-f em { color: var(--acc); font-style: normal; }
.pp-f input, .pp-f textarea, .pp-f select { font: inherit; font-size: 15px; padding: 9px 10px; border: 1.5px solid var(--line); background: var(--bg); color: var(--fg); min-width: 0; width: 100%; }
.pp-f input:focus, .pp-f textarea:focus, .pp-f select:focus { outline: none; border-color: var(--acc); }
.pp-f small { font-size: 12px; color: var(--mute); }
.pp-f input[type="file"] { padding: 8px; border-style: dashed; }
.pp-act { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.pp-act .btn { border: none; cursor: pointer; font-size: 15px; }
@media (max-width: 900px) {
	.evhero, .tkh { grid-template-columns: minmax(0, 1fr); }
	.evh-r { border-left: none; border-top: 6px solid var(--acc); }
	.evh-l h1 { font-size: 40px; }
	.evh-l { padding: 18px; }
	.tkh-r { order: -1; min-height: 200px; }
	.tkh-r .shade { background: linear-gradient(0deg, var(--dark) 0, rgba(11, 11, 13, 0) 60%); }
	.tkh h1 { font-size: 34px; }
	.tkh-l { padding: 16px; }
	.pp-grid, .pp-form { grid-template-columns: minmax(0, 1fr); }
	.pp-top h1 { font-size: 32px; }
}
@media (max-width: 760px) {
	.evstats { gap: 14px; flex-wrap: wrap; }
	.evstats b { font-size: 28px; }
	.locbar .where { margin-left: 0; }
	.locbar .btn { flex-basis: 100%; justify-content: center; }
	.evmap-c { height: 260px; }
	.erow { grid-template-columns: 56px minmax(0, 1fr); gap: 10px 12px; }
	.erow .lgt { display: none; }
	.erow .st { grid-column: 1 / -1; text-align: left; flex-direction: row; gap: 8px; }
	.erow .btn { grid-column: 1 / -1; justify-content: center; }
	.tkp-row { grid-auto-columns: 72%; }
	.tkp-hd .meta { margin-left: 0; }
	.tkfacts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.tkfacts div:last-child { grid-column: 1 / -1; }
	.tkr { grid-template-columns: 56px 96px minmax(0, 1fr); gap: 10px; }
	.tkr .lgt { width: 96px; }
	.tkr-s { display: none; }
	.tkr .btn { grid-column: 1 / -1; justify-content: center; }
	.evpromo .btn { margin-left: 0; }
	.evpromo h2 { font-size: 28px; }
}
.pp-login .pp-card { width: 100%; max-width: 520px; min-width: 0; }
.pp-login form .input, .pp-login form { max-width: 100%; box-sizing: border-box; }
.erow .tx .kick, .tkr-t .kick { background: none; color: var(--mute); padding: 0; font-family: var(--ufont); font-weight: 800; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; }
.erow .tx .kick em { color: var(--acc); }
[hidden] { display: none !important; }
.tkbody .ad-slot { width: 100%; align-self: stretch; }
.tkbody .ad-slot > * { max-width: 100%; }
.pp-login h1, .pp-top h1, .evh-l h1, .tkh h1 { overflow-wrap: anywhere; }
.ad-video { margin: 18px 0; min-height: 0; }
.ad-video .ad-label { display: none; }
/* 1.2.1: phone menu scroll hint */
@media (max-width: 760px) {
	nav.main { position: relative; }
	nav.main::after { content: ""; position: absolute; top: 0; right: 0; bottom: 0; width: 44px; pointer-events: none; background: linear-gradient(90deg, rgba(17, 17, 17, 0), var(--nbg) 80%); }
	nav.main .menu { padding-right: 40px; }
}
