/* Organized Play page */

:is(body.page-organized-play, body.dt-organized-play-page) {
	background: #0d0f13;
}

:is(body.page-organized-play, body.dt-organized-play-page) .site-main {
	margin-top: 0;
	background: #0d0f13;
}

:is(body.page-organized-play, body.dt-organized-play-page) .site-nav {
	display: none;
}

:is(body.page-organized-play, body.dt-organized-play-page) .site-footer,
:is(body.page-organized-play, body.dt-organized-play-page) footer,
:is(body.page-organized-play, body.dt-organized-play-page) .wp-block-template-part {
	display: none !important;
}

body.dt-organized-play-page footer.wp-block-template-part,
body.dt-organized-play-page .site-footer,
body.dt-organized-play-page .wp-block-template-part {
	display: none !important;
}

:is(body.page-organized-play, body.dt-organized-play-page) .entry-content > .dt-organized-play-landing,
:is(body.page-organized-play, body.dt-organized-play-page) .entry-content > .dt-op-page {
	margin-block: 0;
}

.dt-organized-play-landing,
.dt-organized-play-landing.is-layout-flow {
	gap: 0;
}

.dt-organized-play-landing > *,
.dt-organized-play-landing.is-layout-flow > * + * {
	margin-block: 0 !important;
}

.dt-op-page {
	--dt-op-orange: #ff6f00;
	--dt-op-maroon: #65120d;
	--dt-op-dark: #0c0d11;
	--dt-op-panel: rgba(0, 0, 0, 0.68);
	--dt-op-copy: #ffffff;
	--dt-op-muted: #d0d5dd;
	--dt-op-border: rgba(255, 255, 255, 0.18);
	color: var(--dt-op-copy);
	font-family: Roboto, system-ui, sans-serif;
}

.dt-op-page *,
.dt-op-page *::before,
.dt-op-page *::after {
	box-sizing: border-box;
}

.dt-op-page h1,
.dt-op-page h2,
.dt-op-page h3,
.dt-op-page a,
.dt-op-page button,
.dt-op-eyebrow {
	font-family: "Tilt Warp", system-ui, sans-serif;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0;
}

.dt-op-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.65rem;
	min-height: 60px;
	padding: 0 30px;
	border-radius: 999px;
	background: var(--dt-op-orange);
	color: #fff;
	text-decoration: none;
	font-size: 18px;
	line-height: 14px;
	letter-spacing: 0.36px;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.dt-op-button:hover,
.dt-op-button:focus-visible {
	transform: translateY(-2px);
	box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25);
}

.dt-op-button--secondary {
	border: 2px solid #fff;
	background: rgba(0, 0, 0, 0.35);
}

.dt-op-button__arrow {
	font-size: 20px;
	line-height: 1;
}

.dt-op-hero-block {
	position: relative;
	overflow: hidden;
	min-height: 100dvh;
	background:
		radial-gradient(circle at 15% 30%, rgba(255, 111, 0, 0.08), transparent 20%),
		radial-gradient(circle at 85% 30%, rgba(255, 0, 144, 0.1), transparent 26%),
		linear-gradient(180deg, rgba(0, 0, 0, 0.55) 0, rgba(0, 0, 0, 0.28) 12%, rgba(0, 0, 0, 0.45) 100%),
		linear-gradient(180deg, #171a1f, #0e1014);
}

.dt-op-hero-block::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		radial-gradient(circle at center, rgba(255, 255, 255, 0.04), transparent 55%),
		var(--dt-op-hero-bg, none) center / cover no-repeat;
	mix-blend-mode: screen;
	opacity: 0.28;
	pointer-events: none;
}

.dt-op-hero__bg-video {
	position: absolute;
	inset: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	pointer-events: none;
}

.dt-op-nav {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	padding: 22px 58px 0;
}

.dt-op-nav__brand {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 138px;
	height: 138px;
	border-radius: 999px;
	text-decoration: none;
	color: #fff;
}

.dt-op-nav__brand img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.dt-op-nav__brand {
	transition: transform 0.28s ease;
	transform-origin: top left;
}

body.dt-op-scrolled .dt-op-nav__brand {
	transform: scale(0.75);
}

@media (min-width: 981px) {
	body.dt-op-scrolled .dt-op-nav__brand {
		top: 24px !important;
		left: var(--dt-op-hero-desktop-x, 160px) !important;
		z-index: 80 !important;
	}
}

.dt-op-nav__desktop {
	display: flex;
	align-items: center;
	gap: 28px;
	padding: 8px 0;
	    position: absolute;
    top: 30%;
}

.dt-op-nav__desktop a,
.dt-op-nav__desktop span,
.dt-op-mobile-nav__links a,
.dt-op-mobile-nav__links span {
	color: #fff;
	text-decoration: none;
	font-size: 20px;
	line-height: 24px;
	letter-spacing: 0.9px;
}

.dt-op-nav__desktop .is-disabled,
.dt-op-mobile-nav__links .is-disabled,
.dt-op-button.is-disabled {
	cursor: default;
	opacity: 0.64;
	pointer-events: none;
}

.dt-op-nav__discord,
.dt-op-mobile-nav__discord {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	color: #7987ff;
	font-size: 20px;
}

.dt-op-nav__toggle {
	display: none;
	width: 42px;
	height: 42px;
	border: 0;
	background: transparent;
	color: #fff;
}

.dt-op-nav__toggle span[aria-hidden="true"],
.dt-op-nav__toggle span[aria-hidden="true"]::before,
.dt-op-nav__toggle span[aria-hidden="true"]::after {
	display: block;
	width: 24px;
	height: 2px;
	background: #fff;
	content: "";
}

.dt-op-nav__toggle span[aria-hidden="true"]::before {
	transform: translateY(-7px);
}

.dt-op-nav__toggle span[aria-hidden="true"]::after {
	transform: translateY(5px);
}

.dt-op-mobile-nav {
	display: none;
}

.dt-op-hero__content {
	position: relative;
	z-index: 5;
	padding-top: 26px;
	padding-bottom: 114px;
}

.dt-op-hero__copy {
	max-width: 760px;
	padding-left: 12px;
}

.dt-op-hero__copy h1 {
	margin: 0 0 16px;
	font-size: clamp(40px, 5vw, 56px);
	line-height: clamp(46px, 5.2vw, 64px);
	text-shadow: 0 4px 30px rgba(255, 255, 255, 0.14);
}

.dt-op-hero__copy p {
	margin: 0 0 36px;
	max-width: 730px;
	font-size: 22px;
	line-height: 28px;
}

/*
 * Promo section: Blade — Age of Fortitude (full frame node 3489:816).
 * Background: Banner group only (node 3489:817 / banner component 3485:777) — no duplicate text/video.
 */
.dt-op-promo-block {
	position: relative;
	z-index: 3;
	overflow: hidden;
	background-color: var(--dt-op-promo-bg-start, transparent);
	background-image:
		var(--dt-op-promo-bg, none),
		linear-gradient(135deg, var(--dt-op-promo-bg-start, transparent), var(--dt-op-promo-bg-end, var(--dt-op-promo-bg-start, transparent)));
	background-position: center top, center;
	background-size: 100% auto, 100% 100%;
	background-repeat: no-repeat;
}

.dt-op-promo-block::before,
.dt-op-promo-block::after {
	display: none;
	content: none;
}

.dt-op-promo {
	position: relative;
	z-index: 1;
	max-width: 1512px;
	margin: 0 auto;
	min-height: 603px;
	display: grid;
	grid-template-columns: minmax(0, 400px) minmax(0, 1fr);
	align-items: center;
	column-gap: 24px;
	padding: 170px 160px 80px;
}

.dt-op-promo__copy {
	position: relative;
	z-index: 2;
	max-width: 410px;
	text-align: left;
}

.dt-op-eyebrow {
	margin: 0 0 18px;
	font-size: 20px;
	line-height: 27px;
	letter-spacing: 2.2px;
}

.dt-op-promo__copy h2,
.dt-op-news__intro h2,
.dt-op-features h2,
.dt-op-locations h2 {
	margin: 0 0 14px;
	font-size: clamp(40px, 4.3vw, 48px);
	line-height: 1;
}

.dt-op-locations h2{
	text-align:center !important;
}

/* theme-base `p { text-align: center }` — promo copy is left-aligned (Figma 3489:816) */
.dt-op-promo__copy p {
	margin: 0 0 28px;
	font-size: 22px;
	line-height: 28px;
	text-align: left;
}

.dt-op-news__intro p,
.dt-op-leaderboard__header p {
	margin: 0 0 28px;
	font-size: 22px;
	line-height: 28px;
}

.dt-op-promo__media {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 320px;
	align-self: stretch;
	width: 100%;
}

/* Figma banner includes splash/character art; hide layered <img> duplicates */
.dt-op-promo__splash,
.dt-op-promo__character {
	display: none !important;
}

.dt-op-promo__video {
	position: relative;
	width: 100%;
	max-width: 100%;
	aspect-ratio: 533 / 323;
	border: 0;
	padding: 0;
	background: #050505;
	box-shadow: 0 20px 50px rgba(0, 0, 0, 0.35);
	cursor: pointer;
	flex-shrink: 0;
}

.dt-op-promo__video img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.dt-op-promo__play {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 64px;
	height: 64px;
	transform: translate(-50%, -50%);
	border-radius: 999px;
	background: rgba(255, 111, 0, 0.92);
	box-shadow: 0 16px 30px rgba(0, 0, 0, 0.25);
}

.dt-op-promo__play::before {
	content: "";
	position: absolute;
	left: 26px;
	top: 19px;
	border-left: 18px solid #fff;
	border-top: 12px solid transparent;
	border-bottom: 12px solid transparent;
}

.dt-op-video-modal[hidden] {
	display: none;
}

.dt-op-video-modal {
	position: fixed;
	inset: 0;
	z-index: 500;
	display: grid;
	place-items: center;
	padding: 1rem;
}

body.dt-op-video-open .dt-op-promo-block {
	z-index: 1000;
}

body.dt-op-video-open .dt-op-video-modal {
	z-index: 1001;
}

.dt-op-video-modal__backdrop {
	position: absolute;
	inset: 0;
	border: 0;
	background: rgba(0, 0, 0, 0.84);
}

.dt-op-video-modal__dialog {
	position: relative;
	z-index: 1;
	width: min(100%, 920px);
	background: #07080b;
	padding: 20px;
}

.dt-op-video-modal__close {
	position: absolute;
	right: 10px;
	top: 4px;
	border: 0;
	background: transparent;
	color: #fff;
	font-size: 34px;
}

.dt-op-video-modal__video {
	display: block;
	width: 100%;
	height: auto;
}

.dt-op-news-block {
	background:
		linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 0%),
		var(--dt-op-news-block-bg, none) center / cover no-repeat,
		transparent;
	padding: 60px clamp(16px, 5vw, 96px) 54px;
}

.dt-op-news__top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 30px;
	margin-bottom: 35px;
}

.dt-op-news__intro {
	max-width: 971px;
}

.dt-op-news__viewport {
	overflow: hidden;
}

.dt-op-news__track {
	display: flex;
	gap: 30px;
	transition: transform 0.38s ease;
	will-change: transform;
}

.dt-op-news-card {
	position: relative;
	flex: 0 0 calc(50% - 15px);
	min-height: 400px;
	border-radius: 20px;
	overflow: hidden;
	background:
		linear-gradient(180deg, rgba(0, 0, 0, 0.04) 0%, rgba(0, 0, 0, 0.82) 76%),
		var(--dt-op-news-image) center / cover no-repeat,
		linear-gradient(135deg, rgba(255, 111, 0, 0.35), rgba(0, 0, 0, 0.75));
	display: flex;
	align-items: flex-end;
	padding: 30px;
}

.dt-op-news-card__body {
	max-width: 550px;
}

.dt-op-news-card h3,
.dt-op-program-card h3,
.dt-op-location-card h3 {
	margin: 0 0 10px;
	font-size: 32px;
	line-height: 32px;
}

.dt-op-news-card p,
.dt-op-program-card p {
	margin: 0 0 20px;
	font-size: 22px;
	line-height: 28px;
}

.dt-op-news-card .dt-op-button {
	min-height: auto;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	color: var(--dt-op-orange);
}

.dt-op-news__controls {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 26px;
	padding-top: 30px;
}

.dt-op-news__arrow,
.dt-op-news__dot {
	border: 0;
	background: transparent;
	color: #fff;
}

.dt-op-news__dots {
	display: flex;
	gap: 12px;
}

.dt-op-news__dot {
	width: 16px;
	height: 16px;
	border: 2px solid #fff;
	transform: rotate(45deg);
	border-radius: 4px;
}

.dt-op-news__dot.is-active {
	background: #fff;
}

.dt-op-features-block {
	background:
		linear-gradient(180deg, rgba(56, 11, 8, 0.05), rgba(56, 11, 8, 0.4)),
		#65120d;
		margin-top:-90px !important;
}

.dt-op-features {
	position: relative;
	padding: 120px 0 180px;
	background:
		linear-gradient(270deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 28.5%, rgba(0, 0, 0, 0) 70.5%, rgba(0, 0, 0, 0.5) 100%),
		linear-gradient(180deg, rgba(255, 255, 255, 0.02), transparent);
}

.dt-op-features::before {
	content: "";
	position: absolute;
	inset: 0;
	background: var(--dt-op-features-watermark) right center / auto 100% no-repeat;
	opacity: 0.18;
	pointer-events: none;
}

.dt-op-leaderboard,
.dt-op-programs,
.dt-op-locations {
	position: relative;
	z-index: 1;
}

.dt-op-leaderboard__header {
	text-align: center;
	margin-bottom: 30px;
}

.dt-op-leaderboard__header p {
	max-width: 768px;
	margin-left: auto;
	margin-right: auto;
}

.dt-op-table {
	max-width: 812px;
	margin: 0 auto;
}

.dt-op-table__head,
.dt-op-table__row {
	display: grid;
	grid-template-columns: 102px minmax(0, 1fr) 180px 180px;
	align-items: center;
	gap: 0;
}

.dt-op-table__head {
	min-height: 44px;
	background: rgba(0, 0, 0, 0.7);
	border-radius: 12px;
	padding: 0 10px;
	font-size: 16px;
	line-height: 18px;
	letter-spacing: 0.32px;
}

.dt-op-table__body {
	display: grid;
	gap: 10px;
	margin-top: 10px;
}

.dt-op-table__row {
	min-height: 80px;
	padding: 0 10px;
	background: rgba(0, 0, 0, 0.8);
	border-radius: 12px;
	font-size: 22px;
	line-height: 28px;
}

.dt-op-table__player {
	display: flex;
	align-items: center;
	gap: 12px;
}

.dt-op-table__player img {
	width: 40px;
	height: 40px;
	border-radius: 999px;
	object-fit: cover;
}

.dt-op-powered {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin-top: 20px;
	font-size: 16px;
	line-height: 18px;
	letter-spacing: 0.32px;
}

.dt-op-powered img {
	max-height: 36px;
	width: auto;
}

.dt-op-powered strong {
	font-family: "Tilt Warp", system-ui, sans-serif;
}

.dt-op-programs {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 30px;
	margin-top: 120px;
}

.dt-op-program-card {
	display: flex;
	flex-direction: column;
	min-height: 648px;
	padding-bottom: 30px;
	border-radius: 20px;
	overflow: hidden;
	background: rgba(0, 0, 0, 0.6);
}

.dt-op-program-card__image {
	height: 332px;
}

.dt-op-program-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.dt-op-program-card__content {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 20px;
}

.dt-op-program-card__content .dt-op-button {
	margin-top: auto;
	align-self: center;
}

/* Copy alignment: news intro + locations (override theme / block defaults). */
.dt-op-news__intro,
.dt-op-news__intro h2,
.dt-op-news__intro p {
	text-align: left;
}

.dt-op-locations h2 {
	text-align: left;
}

.dt-op-location-card__content {
	text-align: left;
}

.dt-op-program-card .dt-op-program-card__content h3 {
	text-align: center;
}

.dt-op-program-card:nth-child(2) .dt-op-program-card__content h3 {
	text-align: center;
}

.dt-op-locations-block {
	background: #65120d;
	padding: 144px 0 160px;
}

.dt-op-location-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 23px;
}

.dt-op-location-card {
	position: relative;
	display: block;
	min-height: 505px;
	border-radius: 20px;
	overflow: hidden;
	text-decoration: none;
	color: #fff;
	background: #101216;
}

.dt-op-location-card img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.dt-op-location-card::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.88) 74%);
}

.dt-op-location-card__content {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	padding: 32px;
}

.dt-op-location-card__content .dt-op-eyebrow {
	margin-bottom: 8px;
}

.dt-op-location-card__content h3 {
	margin-bottom: 6px;
	color: var(--dt-op-orange);
}

.dt-op-location-card__subtitle {
	margin: 0;
	font-size: 20px;
	line-height: 30px;
	color: var(--dt-op-muted);
}

body.dt-op-nav-open,
body.dt-op-video-open {
	overflow: hidden;
}

@media (max-width: 980px) {
	.dt-op-nav {
		padding: 18px 18px 0;
		align-items: center;
	}

	.dt-op-nav__desktop {
		display: none;
	}

	.dt-op-nav__toggle,
	.dt-op-mobile-nav {
		display: block;
	}

	.dt-op-nav__brand {
		width: 56px;
		height: 56px;
	}

	.dt-op-mobile-nav__overlay {
		position: fixed;
		inset: 0;
		z-index: 90;
		border: 0;
		background: rgba(0, 0, 0, 0.82);
	}

	.dt-op-mobile-nav__drawer {
		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		z-index: 91;
		width: min(84vw, 335px);
		transform: translateX(100%);
		transition: transform 0.28s ease;
		pointer-events: none;
	}

	.dt-op-mobile-nav__panel {
		position: relative;
		display: flex;
		flex-direction: column;
		min-height: 100%;
		padding: 22px 28px 0 50px;
		background: #000;
		clip-path: polygon(12% 0, 100% 0, 100% 100%, 11% 100%, 14% 90%, 10% 82%, 13% 71%, 9% 61%, 12% 49%, 8% 38%, 12% 26%, 9% 15%, 13% 8%);
	}

	.dt-op-mobile-nav__close {
		align-self: flex-end;
		border: 0;
		background: transparent;
		color: #fff;
		font-size: 40px;
	}

	.dt-op-mobile-nav__links {
		display: flex;
		flex-direction: column;
		gap: 30px;
		padding-top: 40px;
	}

	.dt-op-mobile-nav__art {
		margin-top: auto;
		height: 300px;
		background:
			radial-gradient(circle at 70% 78%, rgba(255, 243, 126, 0.92), rgba(255, 243, 126, 0) 18%),
			radial-gradient(circle at 82% 78%, rgba(255, 133, 39, 0.85), rgba(255, 133, 39, 0) 28%),
			radial-gradient(circle at 72% 90%, rgba(255, 103, 22, 0.75), rgba(255, 103, 22, 0) 34%);
	}

	.dt-op-mobile-nav__art img {
		width: 100%;
		height: 100%;
		object-fit: contain;
		object-position: center bottom;
		display: block;
	}

	body.dt-op-nav-open .dt-op-mobile-nav__drawer {
		transform: translateX(0);
		pointer-events: auto;
	}

	.dt-op-hero-block {
		min-height: 100dvh;
	}

	.dt-op-hero__content {
		padding-top: 24px;
		padding-bottom: 28px;
	}

	.dt-op-hero__copy {
		max-width: 264px;
		padding-left: 0;
	}

	.dt-op-hero__copy h1 {
		font-size: 32px;
		line-height: 36px;
		margin-bottom: 10px;
	}

	.dt-op-hero__copy p,
	.dt-op-promo__copy p {
		font-size: 14px;
		line-height: 18px;
		text-align: left;
	}

	.dt-op-news__intro p,
	.dt-op-news-card p,
	.dt-op-program-card p {
		font-size: 14px;
		line-height: 18px;
	}

	.dt-op-button {
		min-height: 44px;
		padding: 0 18px;
		font-size: 12px;
		line-height: 14px;
	}

	.dt-op-promo {
		grid-template-columns: 1fr;
		padding: 26px 0 24px;
		min-height: 0;
	}

	.dt-op-promo__copy {
		padding: 0 16px 20px;
		max-width: none;
	}

	.dt-op-eyebrow {
		font-size: 12px;
		line-height: 16px;
		letter-spacing: 1.6px;
	}

	.dt-op-promo__copy h2,
	.dt-op-news__intro h2,
	.dt-op-features h2,
	.dt-op-locations h2 {
		font-size: 22px;
		line-height: 24px;
	}

	.dt-op-promo__media {
		min-height: 196px;
	}

	.dt-op-promo__video {
		position: relative;
		left: auto;
		top: auto;
		transform: none;
		width: 100%;
		max-width: 100%;
		aspect-ratio: 533 / 323;
	}

	.dt-op-promo__play {
		width: 42px;
		height: 42px;
	}

	.dt-op-promo__play::before {
		left: 17px;
		top: 12px;
		border-left-width: 12px;
		border-top-width: 8px;
		border-bottom-width: 8px;
	}

	.dt-op-news-block {
		padding: 20px clamp(16px, 4vw, 24px) 24px;
	}

	.dt-op-news__top {
		flex-direction: column;
		gap: 12px;
		margin-bottom: 18px;
	}

	.dt-op-news__track {
		gap: 14px;
	}

	.dt-op-news-card {
		flex-basis: 100%;
		min-height: 186px;
		padding: 18px;
	}

	.dt-op-news-card h3,
	.dt-op-program-card h3,
	.dt-op-location-card h3 {
		font-size: 14px;
		line-height: 16px;
		margin-bottom: 8px;
	}

	.dt-op-news__controls {
		gap: 18px;
		padding-top: 16px;
	}

	.dt-op-news__dot {
		width: 10px;
		height: 10px;
		border-width: 1px;
		border-radius: 2px;
	}

	.dt-op-features {
		padding: 32px 0 36px;
	}

	.dt-op-leaderboard__header {
		margin-bottom: 18px;
	}

	.dt-op-table {
		overflow: hidden;
		border-radius: 12px;
	}

	.dt-op-table__head,
	.dt-op-table__row {
		grid-template-columns: 54px minmax(120px, 1fr) 68px 92px;
		padding: 0 4px;
	}

	.dt-op-table__head {
		font-size: 9px;
		line-height: 12px;
		min-height: 28px;
	}

	.dt-op-table__row {
		min-height: 38px;
		font-size: 10px;
		line-height: 12px;
	}

	.dt-op-table__player {
		gap: 6px;
	}

	.dt-op-table__player img {
		width: 18px;
		height: 18px;
	}

	.dt-op-powered {
		font-size: 10px;
		line-height: 12px;
		margin-top: 10px;
	}

	.dt-op-powered img {
		max-height: 18px;
	}

	.dt-op-programs,
	.dt-op-location-grid {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.dt-op-programs {
		margin-top: 32px;
	}

	.dt-op-program-card {
		min-height: 0;
	}

	.dt-op-program-card__image {
		height: 202px;
	}

	.dt-op-program-card__content {
		padding: 18px 14px 20px;
	}

	.dt-op-program-card__content .dt-op-button {
		margin-top: 12px;
	}

	.dt-op-locations-block {
		padding: 24px 0 40px;
	}

	.dt-op-location-card {
		min-height: 163px;
	}

	.dt-op-location-card__content {
		padding: 18px 14px;
	}

	.dt-op-location-card__subtitle {
		font-size: 12px;
		line-height: 14px;
	}
}

@media (min-width: 981px) {
	/* True final desktop override block */
	.dt-op-hero-block {
		min-height: 100dvh !important;
		background:
			linear-gradient(180deg, rgba(10, 13, 18, 0.12) 0%, rgba(10, 13, 18, 0.68) 100%),
			#0f1217 !important;
	}

	.dt-op-hero-block::after {
		inset: 0 0 auto !important;
		height: 186px !important;
		background: top center / 100% 186px no-repeat url("../images/organized-play/nav-edge-strip.png") !important;
	}

	.dt-op-nav {
		min-height: 126px !important;
		padding: 18px 78px 0 0 !important;
		align-items: flex-start !important;
		justify-content: flex-end !important;
	}

	.dt-op-nav__brand {
		position: absolute !important;
		left: 52px !important;
		top: 10px !important;
		width: 196px !important;
		height: 196px !important;
		overflow: visible !important;
		z-index: 3 !important;
	}

	.dt-op-nav__brand img {
		width: 100% !important;
		height: 100% !important;
		object-fit: contain !important;
		transform: scale(1.1) !important;
		transform-origin: top left !important;
	}

	.dt-op-nav__desktop {
		gap: 16px !important;
		padding: 0 !important;
		background: transparent !important;
		border-radius: 0 !important;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
	}

	.dt-op-nav__desktop a {
		font-size: 20px !important;
		line-height: 14px !important;
		letter-spacing: 0.7px !important;
	}

	.dt-op-nav__discord,
	.dt-op-nav__discord-icon {
		width: 16px !important;
		height: 16px !important;
	}

	.dt-op-hero__content {
		padding-top: 0 !important;
		padding-bottom: 54px !important;
	}

	.dt-op-hero__copy {
		max-width: 540px !important;
		padding-left: 66px !important;
		padding-top: 54px !important;
	}

	.dt-op-hero__copy h1 {
		max-width: 540px !important;
		font-size: 56px !important;
		line-height: 64px !important;
		margin-bottom: 14px !important;
	}

	.dt-op-hero__copy p {
		max-width: 520px !important;
		font-size: 16px !important;
		line-height: 22px !important;
		margin-bottom: 34px !important;
	}

	.dt-op-promo-block {
		background-color: var(--dt-op-promo-bg-start, transparent) !important;
		background-image:
			var(--dt-op-promo-bg, none),
			linear-gradient(135deg, var(--dt-op-promo-bg-start, transparent), var(--dt-op-promo-bg-end, var(--dt-op-promo-bg-start, transparent))) !important;
		background-position: center top, center !important;
		background-size: 100% auto, 100% 100% !important;
		background-repeat: no-repeat !important;
	}

	.dt-op-promo-block::before,
	.dt-op-promo-block::after {
		display: none !important;
		content: none !important;
	}

	.dt-op-promo {
		position: relative !important;
		max-width: 1512px !important;
		min-height: 603px !important;
		padding: 170px 160px 80px !important;
		grid-template-columns: minmax(0, 400px) minmax(0, 1fr) !important;
		column-gap: 24px !important;
		overflow: hidden !important;
	}

	.dt-op-promo__copy {
		position: relative !important;
		z-index: 3 !important;
		max-width: 400px !important;
		padding-top: 48px !important;
		padding-bottom: 48px !important;
	}

	.dt-op-eyebrow {
		margin-bottom: 10px !important;
		font-size: 20px !important;
		line-height: 27px !important;
		letter-spacing: 2.2px !important;
	}

	.dt-op-promo__copy h2 {
		margin-bottom: 2px !important;
		font-size: 48px !important;
		line-height: 48px !important;
	}

	.dt-op-promo__copy p {
		font-size: 22px !important;
		line-height: 28px !important;
		margin-bottom: 20px !important;
		text-align: left !important;
	}

	.dt-op-promo__media {
		position: relative !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		min-height: 100% !important;
		width: 100% !important;
		background: none !important;
	}

	.dt-op-promo__splash,
	.dt-op-promo__character {
		display: none !important;
	}

	.dt-op-promo__video {
		position: relative !important;
		left: auto !important;
		top: auto !important;
		width: 100% !important;
		max-width: 100% !important;
		aspect-ratio: 533 / 323 !important;
		transform: none !important;
		z-index: 4 !important;
	}

	.dt-op-promo__play {
		width: 60px !important;
		height: 60px !important;
	}
}

@media (min-width: 981px) {
	/* Final desktop pass: this block lives at the end of the file so it wins. */
	.dt-op-hero-block {
		min-height: 100dvh;
		background:
			linear-gradient(180deg, rgba(10, 13, 18, 0.12) 0%, rgba(10, 13, 18, 0.68) 100%),
			#0f1217;
	}

	.dt-op-hero-block::after {
		inset: 0 0 auto;
		height: 186px;
		background: top center / 100% 186px no-repeat url("../images/organized-play/nav-edge-strip.png");
	}

	.dt-op-nav {
		min-height: 126px;
		padding: 18px 78px 0 0;
		align-items: flex-start;
		justify-content: flex-end;
	}

	.dt-op-nav__brand {
		position: absolute;
		left: 54px;
		top: 18px;
		width: 168px;
		height: 168px;
		overflow: visible;
		z-index: 3;
	}

	.dt-op-nav__brand img {
		width: 100%;
		height: 100%;
		object-fit: contain;
		transform: scale(1.1);
		transform-origin: top left;
	}

	.dt-op-nav__desktop {
		gap: 16px;
		padding: 0;
		background: transparent;
		border-radius: 0;
		backdrop-filter: none;
		-webkit-backdrop-filter: none;
	}

	.dt-op-nav__desktop a {
		font-size: 20px;
		line-height: 14px;
		letter-spacing: 0.7px;
	}

	.dt-op-nav__discord,
	.dt-op-nav__discord-icon {
		width: 16px;
		height: 16px;
	}

	.dt-op-hero__content {
		padding-top: 0;
		padding-bottom: 54px;
	}

	.dt-op-hero__copy {
		max-width: 540px;
		padding-left: 66px;
		padding-top: 54px;
	}

	.dt-op-hero__copy h1 {
		max-width: 540px;
		font-size: 56px;
		line-height: 64px;
		margin-bottom: 14px;
	}

	.dt-op-hero__copy p {
		max-width: 520px;
		font-size: 16px;
		line-height: 22px;
		margin-bottom: 34px;
	}

	.dt-op-promo-block {
		background-color: var(--dt-op-promo-bg-start, transparent);
		background-image:
			var(--dt-op-promo-bg, none),
			linear-gradient(135deg, var(--dt-op-promo-bg-start, transparent), var(--dt-op-promo-bg-end, var(--dt-op-promo-bg-start, transparent)));
		background-position: center top, center;
		background-size: 100% auto, 100% 100%;
		background-repeat: no-repeat;
	}

	.dt-op-promo-block::before,
	.dt-op-promo-block::after {
		display: none;
		content: none;
	}

	.dt-op-promo {
		position: relative;
		max-width: 1512px;
		min-height: 603px;
		padding: 170px 160px 80px;
		grid-template-columns: minmax(0, 400px) minmax(0, 1fr);
		column-gap: 24px;
		overflow: hidden;
	}

	.dt-op-promo__copy {
		position: relative;
		z-index: 3;
		max-width: 400px;
		padding-top: 0;
		padding-bottom: 0;
	}

	.dt-op-eyebrow {
		margin-bottom: 10px;
		font-size: 20px;
		line-height: 27px;
		letter-spacing: 2.2px;
	}

	.dt-op-promo__copy h2 {
		margin-bottom: 2px;
		font-size: 48px;
		line-height: 48px;
	}

	.dt-op-promo__copy p {
		font-size: 22px;
		line-height: 28px;
		margin-bottom: 20px;
		text-align: left;
	}

	.dt-op-promo__media {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		min-height: 100%;
		width: 100%;
		background: none;
	}

	.dt-op-promo__splash,
	.dt-op-promo__character {
		display: none !important;
	}

	.dt-op-promo__video {
		position: relative;
		left: auto;
		top: auto;
		width: 100%;
		max-width: 100%;
		aspect-ratio: 533 / 323;
		transform: none;
		z-index: 4;
	}

	.dt-op-promo__video img {
		object-fit: cover;
	}

	.dt-op-promo__play {
		width: 60px;
		height: 60px;
	}
}

/* Organized Play desktop fidelity overrides */

@media (min-width: 782px) {
	body.dt-organized-play-page .entry-content {
		margin-bottom: 0;
	}

	.dt-op-hero-block {
		min-height: 100dvh;
		background:
			linear-gradient(180deg, rgba(13, 16, 22, 0.16) 0%, rgba(13, 16, 22, 0.72) 100%),
			center top / cover no-repeat url("../images/organized-play/nav-texture.png"),
			#101318;
	}

	.dt-op-hero-block::after {
		height: 178px;
		background-size: 100% 178px;
	}

	.dt-op-nav {
		padding-inline: 72px 86px;
	}

	.dt-op-nav__brand img {
		width: 118px;
		height: auto;
	}

	.dt-op-hero__content {
		padding-top: 18px;
		padding-bottom: 42px;
	}

	.dt-op-hero__copy {
		max-width: 520px;
		padding-left: 66px;
		padding-top: 96px;
	}

	.dt-op-hero__copy h1 {
		max-width: 520px;
		font-size: 44px;
		line-height: 50px;
		margin-bottom: 12px;
	}

	.dt-op-hero__copy p {
		max-width: 470px;
		font-size: 14px;
		line-height: 19px;
		margin-bottom: 24px;
	}

	.dt-op-promo {
		min-height: 332px;
		padding: 48px 96px 42px;
		grid-template-columns: minmax(0, 360px) minmax(0, 1fr);
	}

	.dt-op-promo__copy {
		max-width: 330px;
	}

	.dt-op-eyebrow {
		margin-bottom: 18px;
		font-size: 16px;
		line-height: 22px;
		letter-spacing: 1.9px;
	}

	.dt-op-promo__copy h2 {
		font-size: 38px;
		line-height: 38px;
		margin-bottom: 6px;
	}

	.dt-op-promo__copy p {
		font-size: 16px;
		line-height: 22px;
		margin-bottom: 24px;
		text-align: left;
	}

	.dt-op-promo__media {
		display: flex;
		align-items: center;
		justify-content: center;
		min-height: 210px;
		width: 100%;
		background-size: auto 100%;
	}

	.dt-op-promo__video {
		position: relative;
		left: auto;
		top: auto;
		transform: none;
		width: 100%;
		max-width: 100%;
		aspect-ratio: 533 / 323;
	}

	.dt-op-promo__play {
		width: 52px;
		height: 52px;
	}

	.dt-op-news-block {
		padding: 34px clamp(20px, 5vw, 96px) 40px;
	}

	.dt-op-news__top {
		margin-bottom: 24px;
	}

	.dt-op-news__intro h2,
	.dt-op-leaderboard__header h2,
	.dt-op-locations h2 {
		font-size: 46px;
		line-height: 50px;
	}

	.dt-op-news__intro p,
	.dt-op-leaderboard__header p {
		font-size: 14px;
		line-height: 18px;
		margin-bottom: 0;
		max-width: 700px;
	}

	.dt-op-news-card {
		flex: 0 0 620px;
		width: 620px;
		min-height: 292px;
		border-radius: 12px;
	}

	.dt-op-news-card__body {
		max-width: 360px;
	}

	.dt-op-news-card h3 {
		max-width: 320px;
		font-size: 20px;
		line-height: 22px;
		margin-bottom: 8px;
	}

	.dt-op-news-card p {
		font-size: 12px;
		line-height: 16px;
		margin-bottom: 14px;
	}

	.dt-op-news__controls {
		padding-top: 18px;
	}

	.dt-op-features {
		padding: 72px 0 110px;
	}

	.dt-op-features::before {
		background-size: auto 100%;
		background-position: right top;
		opacity: 0.68;
	}

	.dt-op-leaderboard__header {
		margin-bottom: 20px;
	}

	.dt-op-leaderboard__header h2 {
		margin-bottom: 10px;
	}

	.dt-op-table,
	.dt-op-powered {
		max-width: 700px;
		margin-inline: auto;
	}

	.dt-op-table__head {
		margin-bottom: 8px;
	}

	.dt-op-table__head,
	.dt-op-table__row {
		grid-template-columns: 72px minmax(0, 1fr) 120px 160px;
	}

	.dt-op-table__row {
		min-height: 64px;
	}

	.dt-op-programs {
		max-width: 1060px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 28px;
		margin-top: 84px;
	}

	.dt-op-program-card {
		min-height: 360px;
		border-radius: 18px;
	}

	.dt-op-program-card__content {
		padding: 18px 24px 22px;
	}

	.dt-op-program-card h3 {
		font-size: 22px;
		line-height: 24px;
	}

	.dt-op-program-card p {
		font-size: 14px;
		line-height: 20px;
	}

	.dt-op-locations-block {
		padding: 72px 0 110px;
	}

	.dt-op-locations h2 {
		margin-bottom: 14px;
	}

	.dt-op-location-grid {
		grid-template-columns: repeat(3, 285px);
		gap: 18px;
	}

	.dt-op-location-card {
		min-height: 286px;
		border-radius: 14px;
	}

	.dt-op-location-card__content {
		padding: 18px 18px 20px;
	}

	.dt-op-location-card h3 {
		font-size: 17px;
		line-height: 19px;
	}

	.dt-op-location-card__subtitle {
		font-size: 11px;
		line-height: 14px;
	}
}

/* Exact Figma asset overrides */

.dt-op-button {
	gap: 10px;
}

.dt-op-button__arrow {
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	background: center / contain no-repeat url("../images/organized-play/hero-arrow.svg");
}

.dt-op-button--secondary .dt-op-button__arrow {
	background-image: url("../images/organized-play/hero-arrow.svg");
}

.dt-op-news-card .dt-op-button__arrow {
	background-image: url("../images/organized-play/news-arrow-orange.svg");
}

.dt-op-nav__discord,
.dt-op-mobile-nav__discord {
	width: 24px;
	height: 24px;
	background: center / contain no-repeat url("../images/organized-play/discord-bg.png");
}

.dt-op-nav__discord-icon {
	display: block;
	width: 100%;
	height: 100%;
	background: center / contain no-repeat url("../images/organized-play/discord-icon.png");
}

.dt-op-hero-block {
	min-height: 100dvh;
	background:
		radial-gradient(circle at 14% 34%, rgba(255, 255, 255, 0.04), transparent 22%),
		linear-gradient(180deg, rgba(4, 6, 9, 0.18) 0%, rgba(4, 6, 9, 0.48) 100%),
		#12161c;
}

.dt-op-hero-block::before {
	background:
		linear-gradient(180deg, rgba(0, 0, 0, 0.08), rgba(0, 0, 0, 0.38)),
		var(--dt-op-hero-bg, none) center / cover no-repeat;
	opacity: 1;
	mix-blend-mode: normal;
}

.dt-op-hero-block::after {
	content: "";
	position: absolute;
	inset: 0 0 auto;
	height: 316px;
	background: top center / 100% 316px no-repeat url("../images/organized-play/nav-texture.png");
	pointer-events: none;
	z-index: 0;
}

.dt-op-nav {
	min-height: 200px;
	padding: 34px 118px 0 160px;
	align-items: flex-start;
}

.dt-op-nav__brand {
	position: absolute;
	left: 160px;
	top: 58px;
	width: 228px;
	height: 210px;
	z-index: 2;
}

.dt-op-nav__desktop {
	margin-left: auto;
	gap: 20px;
	padding: 8px 18px 8px 12px;
	border-radius: 999px;
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

.dt-op-nav__desktop a,
.dt-op-nav__desktop span,
.dt-op-mobile-nav__links a,
.dt-op-mobile-nav__links span {
	font-size: 20px;
	line-height: 24px;
	letter-spacing: 0.9px;
}

.dt-op-hero__content {
	padding-top: 58px;
	padding-bottom: 114px;
}

.dt-op-hero__copy {
	max-width: 750px;
	padding-left: 160px;
	padding-top: 270px;
}

.dt-op-hero__copy h1 {
	margin: 0 0 16px;
	max-width: 750px;
	font-size: 56px;
	line-height: 64px;
	text-shadow: 0 4px 30px rgba(255, 255, 255, 0.25);
}

.dt-op-hero__copy p {
	max-width: 750px;
	font-size: 22px;
	line-height: 28px;
	margin-bottom: 60px;
}

.dt-op-promo-block {
	background-color: var(--dt-op-promo-bg-start, transparent);
	background-image:
		var(--dt-op-promo-bg, none),
		linear-gradient(135deg, var(--dt-op-promo-bg-start, transparent), var(--dt-op-promo-bg-end, var(--dt-op-promo-bg-start, transparent)));
	background-position: center top, center;
	background-size: 100% auto, 100% 100%;
	background-repeat: no-repeat;
}

.dt-op-promo-block::before,
.dt-op-promo-block::after {
	display: none;
	content: none;
}

.dt-op-promo {
	max-width: 1512px;
	min-height: 603px;
	grid-template-columns: minmax(0, 400px) minmax(0, 1fr);
	column-gap: 24px;
	padding: 170px 160px 80px;
}

.dt-op-promo__copy {
	max-width: 400px;
}

.dt-op-promo__copy h2 {
	margin-bottom: 0;
}

.dt-op-promo__media {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 360px;
	align-self: stretch;
	width: 100%;
}

.dt-op-promo__splash,
.dt-op-promo__character {
	display: none !important;
}

.dt-op-promo__video {
	position: relative;
	left: auto;
	top: auto;
	width: 100%;
	max-width: 100%;
	aspect-ratio: 533 / 323;
	transform: none;
	box-shadow: 0 20px 50px rgba(0, 0, 0, 0.35);
}

.dt-op-promo__play {
	width: 60px;
	height: 60px;
	background: center / contain no-repeat url("../images/organized-play/promo-play-button.png");
	box-shadow: none;
}

.dt-op-promo__play::before {
	display: none;
}

.dt-op-news-block {
	padding: 47px clamp(16px, 5vw, 96px) 54px;
    background-size: 100%;
    background-position: center 73%;
	position:relative;
	z-index:1;
}

.dt-op-news__top {
	align-items: center;
	margin-bottom: 35px;
}

.dt-op-news__intro {
	max-width: 971px;
}

.dt-op-news__viewport {
	width: 100%;
}

.dt-op-news__track {
	gap: 30px;
}

.dt-op-news-card {
	flex: 0 0 850px;
	width: 850px;
	min-height: 400px;
}

.dt-op-news-card h3 {
	max-width: 550px;
}

.dt-op-news__controls {
	gap: 20px;
	padding-top: 30px;
}

.dt-op-news__arrow {
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	background: center / contain no-repeat url("../images/organized-play/news-arrow-white.svg");
	font-size: 0;
}

.dt-op-news__arrow.is-prev {
	transform: rotate(180deg);
}

.dt-op-news__dot {
	width: 15px;
	height: 15px;
	border-radius: 4px;
	border-color: #d9d9d9;
}

.dt-op-news__dot.is-active {
	background: #d9d9d9;
}

.dt-op-features {
	padding: 120px 0 180px;
	background:
		linear-gradient(270deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 28.5%, rgba(0, 0, 0, 0) 70.5%, rgba(0, 0, 0, 0.5) 100%),
		#63100d;
}

.dt-op-features::before {
	background: var(--dt-op-features-watermark) center top / cover no-repeat;
	opacity: 0.6;
}

.dt-op-leaderboard__header h2 {
	font-size: 56px;
	line-height: 64px;
	text-shadow: 0 0 0 #f2f4f7, 0 1px 2px rgba(16, 24, 40, 0.05);
}

.dt-op-leaderboard__header p {
	font-size: 22px;
	line-height: 28px;
}

.dt-op-table {
	max-width: 814px;
}

.dt-op-table__head,
.dt-op-table__row {
	grid-template-columns: 102px 350px 180px 180px;
}

.dt-op-table__head {
	padding: 0;
}

.dt-op-table__head > div {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 12px 24px;
	font-size: 16px;
	line-height: 18px;
}

.dt-op-table__head > div:nth-child(2) {
	justify-content: flex-start;
	padding-inline: 30px 24px;
}

.dt-op-table__row {
	padding: 0;
}

.dt-op-table__row > div {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 80px;
	padding: 16px 24px;
	font-size: 22px;
	line-height: 28px;
}

.dt-op-table__row > div:nth-child(2) {
	justify-content: flex-start;
}

.dt-op-table__player img {
	width: 40px;
	height: 40px;
	border-radius: 24px;
}

.dt-op-powered img {
	max-height: 36px;
}

.dt-op-programs {
	grid-template-columns: repeat(2, 590px);
	justify-content: center;
	gap: 30px;
	margin-top: 120px;
}

.dt-op-program-card {
	min-height: 648px;
	border-radius: 20px;
	background: rgba(0, 0, 0, 0.6);
}

.dt-op-program-card__image {
	height: 332px;
}

.dt-op-program-card__content {
	padding: 20px 20px 30px;
}

.dt-op-program-card__content h3 {
	font-size: 32px;
	line-height: 32px;
}

.dt-op-program-card__content p {
	color: #d0d5dd;
}

.dt-op-locations-block {
	padding: 144px 0 160px;
	background: #63100d;
}

.dt-op-locations h2 {
	margin-bottom: 20px;
}

.dt-op-location-grid {
	grid-template-columns: repeat(3, 390px);
	justify-content: center;
	gap: 23px;
}

.dt-op-location-card {
	min-height: 505px;
}

.dt-op-location-card__content {
	padding: 32px;
}

.dt-op-location-card__content h3 {
	font-family: Roboto, system-ui, sans-serif;
	font-size: 28px;
	line-height: 28px;
	font-weight: 700;
	letter-spacing: 0.056px;
	color: #ff6f00;
}

.dt-op-location-card__subtitle {
	font-family: "Roboto Condensed", Roboto, system-ui, sans-serif;
	font-size: 26px;
	line-height: 30px;
	color: #d0d5dd;
}

@media (max-width: 980px) {
	.dt-op-button__arrow {
		width: 16px;
		height: 16px;
		flex-basis: 16px;
	}

	.dt-op-hero-block {
		min-height: 480px;
	}

	.dt-op-nav {
		min-height: 64px;
		padding: 16px 16px 0;
		justify-content: space-between;
	}

	.dt-op-nav__brand {
		position: static;
		width: 38px;
		height: 35px;
	}

	.dt-op-nav__brand img {
		object-fit: contain;
	}

	.dt-op-nav__toggle {
		display: block;
		width: 24px;
		height: 24px;
	}

	.dt-op-nav__toggle span[aria-hidden="true"],
	.dt-op-nav__toggle span[aria-hidden="true"]::before,
	.dt-op-nav__toggle span[aria-hidden="true"]::after {
		width: 18px;
		height: 2px;
	}

	.dt-op-nav__toggle span[aria-hidden="true"]::before {
		transform: translateY(-5px);
	}

	.dt-op-nav__toggle span[aria-hidden="true"]::after {
		transform: translateY(3px);
	}

	.dt-op-mobile-nav__drawer {
		width: 393px;
		max-width: 100vw;
	}

	.dt-op-mobile-nav__panel {
		padding: 39px 48px 14px 70px;
		background: #000;
		clip-path: none;
		overflow: visible;
	}

	.dt-op-mobile-nav__panel::before {
		content: "";
		position: absolute;
		left: -76px;
		top: -14px;
		width: 528px;
		height: 848px;
		background: center / contain no-repeat url("../images/organized-play/mobile-nav-union.png");
		pointer-events: none;
	}

	.dt-op-mobile-nav__close {
		width: 18px;
		height: 18px;
		padding: 0;
		background: transparent;
		border: 0;
		align-self: flex-end;
	}

	.dt-op-mobile-nav__close span {
		display: block;
		width: 18px;
		height: 18px;
		background: center / contain no-repeat url("../images/organized-play/mobile-nav-close.png");
	}

	.dt-op-mobile-nav__links {
		gap: 30px;
		padding-top: 88px;
	}

	.dt-op-mobile-nav__art {
		position: absolute;
		right: -6px;
		bottom: 0;
		width: 300px;
		height: 394px;
		margin-top: 0;
		background: none;
	}

	.dt-op-mobile-nav__art img {
		object-position: right bottom;
	}

	.dt-op-hero__content {
		padding-top: 12px;
		padding-bottom: 26px;
	}

	.dt-op-hero__copy {
		padding-left: 16px;
		padding-top: 76px;
		max-width: 272px;
	}

	.dt-op-hero__copy h1 {
		font-size: 32px;
		line-height: 36px;
		max-width: 260px;
	}

	.dt-op-hero__copy p {
		font-size: 12px;
		line-height: 18px;
		margin-bottom: 18px;
	}

	.dt-op-promo {
		padding: 18px 16px 16px;
	}

	.dt-op-promo__media {
		min-height: 180px;
	}

	.dt-op-promo__splash,
	.dt-op-promo__character {
		display: none !important;
	}

	.dt-op-promo__video {
		position: relative;
		left: auto;
		top: auto;
		transform: none;
		width: 100%;
		max-width: 100%;
		aspect-ratio: 533 / 323;
	}

	.dt-op-news-block {
		padding: 20px clamp(16px, 4vw, 24px) 24px;
	}

	.dt-op-news__intro,
	.dt-op-news__intro h2,
	.dt-op-news__intro p {
		width: 100%;
		max-width: 100%;
	}

	.dt-op-news__track {
		gap: 14px;
	}

	.dt-op-news-card {
		flex-basis: 252px;
		width: 252px;
		min-height: 149px;
		padding: 12px 16px;
	}

	.dt-op-news-card h3 {
		font-size: 14px;
		line-height: 16px;
		max-width: 180px;
	}

	.dt-op-news-card p {
		font-size: 12px;
		line-height: 14px;
	}

	.dt-op-features {
		padding: 28px 0 36px;
	}

	.dt-op-leaderboard__header h2 {
		font-size: 22px;
		line-height: 24px;
	}

	.dt-op-table__head,
	.dt-op-table__row {
		grid-template-columns: 54px minmax(120px, 1fr) 68px 92px;
	}

	.dt-op-programs {
		grid-template-columns: 1fr;
		margin-top: 32px;
	}

	.dt-op-program-card,
	.dt-op-program-card__content,
	.dt-op-program-card__content h3,
	.dt-op-program-card__content p,
	.dt-op-location-card,
	.dt-op-location-card__content,
	.dt-op-location-card__content h3,
	.dt-op-location-card__subtitle {
		width: 100%;
		max-width: 100%;
	}

	.dt-op-program-card__content p {
		word-break: normal;
		overflow-wrap: anywhere;
	}

	.dt-op-location-grid {
		grid-template-columns: 1fr;
	}

	.dt-op-location-card__content h3 {
		font-size: 18px;
		line-height: 20px;
	}

	.dt-op-location-card__subtitle {
		font-size: 12px;
		line-height: 14px;
	}
}

@media (min-width: 981px) {
	/* Winning desktop override block */
	.dt-op-hero-block {
		min-height: 100dvh !important;
		background:
			linear-gradient(180deg, rgba(10, 13, 18, 0.12) 0%, rgba(10, 13, 18, 0.68) 100%),
			#0f1217 !important;
	}

	.dt-op-hero-block::after {
		inset: 0 0 auto !important;
		height: 186px !important;
		background: top center / 100% 186px no-repeat url("../images/organized-play/nav-edge-strip.png") !important;
	}

	.dt-op-nav {
		min-height: 126px !important;
		padding: 18px 78px 0 0 !important;
		align-items: flex-start !important;
		justify-content: flex-end !important;
	}

	.dt-op-nav__brand {
		position: absolute !important;
		left: 54px !important;
		top: 18px !important;
		width: 168px !important;
		height: 168px !important;
		overflow: visible !important;
		z-index: 3 !important;
	}

	.dt-op-nav__brand img {
		width: 100% !important;
		height: 100% !important;
		object-fit: contain !important;
		transform: scale(1.1) !important;
		transform-origin: top left !important;
	}

	.dt-op-nav__desktop {
		gap: 16px !important;
		padding: 0 !important;
		background: transparent !important;
		border-radius: 0 !important;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
	}

	.dt-op-nav__desktop a {
		font-size: 20px !important;
		line-height: 14px !important;
		letter-spacing: 0.7px !important;
	}

	.dt-op-nav__discord,
	.dt-op-nav__discord-icon {
		width: 16px !important;
		height: 16px !important;
	}

	.dt-op-hero__content {
		padding-top: 0 !important;
		padding-bottom: 54px !important;
	}

	.dt-op-hero__copy {
		max-width: 540px !important;
		padding-left: 66px !important;
		padding-top: 54px !important;
	}

	.dt-op-hero__copy h1 {
		max-width: 540px !important;
		font-size: 56px !important;
		line-height: 64px !important;
		margin-bottom: 14px !important;
	}

	.dt-op-hero__copy p {
		max-width: 520px !important;
		font-size: 16px !important;
		line-height: 22px !important;
		margin-bottom: 34px !important;
	}

	.dt-op-promo-block {
		background-color: var(--dt-op-promo-bg-start, transparent) !important;
		background-image:
			var(--dt-op-promo-bg, none),
			linear-gradient(135deg, var(--dt-op-promo-bg-start, transparent), var(--dt-op-promo-bg-end, var(--dt-op-promo-bg-start, transparent))) !important;
		background-position: center top, center !important;
		background-size: 100% auto, 100% 100% !important;
		background-repeat: no-repeat !important;
	}

	.dt-op-promo-block::before,
	.dt-op-promo-block::after {
		display: none !important;
		content: none !important;
	}

	.dt-op-promo {
		position: relative !important;
		max-width: 1512px !important;
		min-height: 603px !important;
		padding: 170px 160px 80px !important;
		grid-template-columns: minmax(0, 400px) minmax(0, 1fr) !important;
		column-gap: 24px !important;
		overflow: hidden !important;
	}

	.dt-op-promo__copy {
		position: relative !important;
		z-index: 3 !important;
		max-width: 400px !important;
		padding-top: 48px !important;
		padding-bottom: 48px !important;
	}

	.dt-op-eyebrow {
		margin-bottom: 10px !important;
		font-size: 20px !important;
		line-height: 27px !important;
		letter-spacing: 2.2px !important;
	}

	.dt-op-promo__copy h2 {
		margin-bottom: 2px !important;
		font-size: 48px !important;
		line-height: 48px !important;
	}

	.dt-op-promo__copy p {
		font-size: 22px !important;
		line-height: 28px !important;
		margin-bottom: 20px !important;
		text-align: left !important;
	}

	.dt-op-promo__media {
		position: relative !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		min-height: 100% !important;
		width: 100% !important;
		background: none !important;
	}

	.dt-op-promo__splash,
	.dt-op-promo__character {
		display: none !important;
	}

	.dt-op-promo__video {
		position: relative !important;
		left: auto !important;
		top: auto !important;
		width: 100% !important;
		max-width: 100% !important;
		aspect-ratio: 533 / 323 !important;
		transform: none !important;
		z-index: 4 !important;
	}

	.dt-op-promo__play {
		width: 60px !important;
		height: 60px !important;
	}
}

/*
 * Nav strip (Figma Rectangle 9, node 2613:6946 — 1512×316): links sit on the deep-red band.
 * Hero ::after aligned from the top only showed the grey texture inside the 126px-tall nav.
 */
@media (min-width: 981px) {
	.dt-op-hero-block::after {
		display: none !important;
	}

	.dt-op-nav {
		align-items: flex-end !important;
		padding-top: 0 !important;
		/* More bottom padding nudges the link row up so it centers on the red band */
		padding-bottom: 28px !important;
	}

	.dt-op-nav__desktop {
		align-items: center !important;
		gap: 20px !important;
	}

	.dt-op-nav__desktop a {
		font-size: 20px !important;
		line-height: 18px !important;
		letter-spacing: 0.08em !important;
		white-space: nowrap !important;
	}

	.dt-op-nav__discord,
	.dt-op-nav__discord-icon {
		width: 20px !important;
		height: 20px !important;
	}

	.dt-op-nav::before {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		height: 316px;
		background: center bottom / 100% 316px no-repeat url("../images/organized-play/nav-edge-strip.png");
		z-index: -1;
		pointer-events: none;
	}
}

@media (min-width: 981px) {
	.dt-op-hero-block {
		--dt-op-hero-desktop-x: clamp(120px, 12.6vw, 160px);
		min-height: 100dvh !important;
	}

	.dt-op-nav__brand {
		left: var(--dt-op-hero-desktop-x) !important;
		top: 24px !important;
		width: clamp(170px, 13vw, 196px) !important;
		height: clamp(170px, 13vw, 196px) !important;
	}

	.dt-op-nav__brand img {
		width: 100% !important;
		height: 100% !important;
		transform: none !important;
	}

	.dt-op-nav__desktop {
		top: 44px !important;
	}

	.dt-op-hero__copy {
		max-width: min(980px, calc(100vw - var(--dt-op-hero-desktop-x) - 80px)) !important;
		padding-left: var(--dt-op-hero-desktop-x) !important;
		padding-top: clamp(150px, 13vw, 176px) !important;
	}

	.dt-op-hero__content {
		z-index: 5 !important;
	}

	.dt-op-hero__copy h1 {
		max-width: 980px !important;
	}

	.dt-op-hero__copy p {
		max-width: 760px !important;
		font-size: 22px !important;
		line-height: 28px !important;
		margin-bottom: 34px !important;
		text-align: left !important;
	}
}

@media (min-width: 981px) {
	.dt-op-promo-block {
		min-height: max(603px, calc(100vw * 394 / 1020));
	}

	body.dt-organized-play-page:not(.block-editor-iframe__body) .dt-op-promo-block {
		margin-top: clamp(-430px, -48dvh, -300px) !important;
	}
}
