:root {
	--dm-brand: #168db8;
	--dm-brand-dark: #0d607e;
	--dm-bg: #ffffff;
	--dm-surface: #ffffff;
	--dm-soft: #f3f5f7;
	--dm-ink: #17191c;
	--dm-muted: #646b73;
	--dm-line: #dfe3e7;
	--dm-header: #171719;
	--dm-logo-red: #ef3d4c;
	--dm-games: #168db8;
	--dm-film: #c7443e;
	--dm-music: #b43c72;
	--dm-tech: #16806d;
	--dm-life: #c35a42;
	--dm-books: #8a6a2f;
	--dm-radius: 6px;
	--dm-shadow: 0 16px 44px rgba(20, 27, 34, 0.1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
	margin: 0;
	background: var(--dm-bg);
	color: var(--dm-ink);
	font-family: Inter, Arial, Helvetica, sans-serif;
	font-size: 16px;
	line-height: 1.62;
	letter-spacing: 0;
}

body.is-dark {
	--dm-bg: #111315;
	--dm-surface: #181b1e;
	--dm-soft: #202428;
	--dm-ink: #f5f6f7;
	--dm-muted: #adb4bb;
	--dm-line: #343a40;
}

a { color: var(--dm-brand-dark); text-decoration: none; }
a:hover { color: var(--dm-brand); }
a:focus-visible, button:focus-visible, input:focus-visible {
	outline: 3px solid #65c8ed;
	outline-offset: 3px;
}
img { display: block; max-width: 100%; height: auto; }
button, input { font: inherit; }
.shell { width: min(1280px, calc(100% - 40px)); margin-inline: auto; }
.visually-hidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}
.skip-link {
	position: fixed;
	left: 16px;
	top: -60px;
	z-index: 1000;
	padding: 10px 16px;
	background: var(--dm-brand);
	color: #fff;
}
.skip-link:focus { top: 16px; }

/* Header */
.site-header {
	position: sticky;
	top: 0;
	z-index: 50;
	padding-top: 8px;
	background: linear-gradient(var(--dm-logo-red) 0 8px, rgba(255, 255, 255, 0.74) 8px 100%);
	color: var(--dm-ink);
	border-bottom: 1px solid rgba(112, 120, 128, 0.24);
	box-shadow: 0 8px 28px rgba(26, 32, 38, 0.09);
	-webkit-backdrop-filter: saturate(270%) blur(30px);
	backdrop-filter: saturate(270%) blur(30px);
}
.topbar { background: rgba(255,255,255,.5); color: #4c545c; font-size: 0.82rem; }
.topbar-inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	min-height: 34px;
}
.topbar ul { display: flex; gap: 18px; margin: 0; padding: 0; list-style: none; }
.topbar a { color: #343a40; }
.header-inner {
	display: grid;
	grid-template-columns: 210px minmax(0, 1fr) auto;
	align-items: center;
	gap: 24px;
	min-height: 68px;
}
.brand { display: flex; align-items: center; color: var(--dm-ink); }
.brand:hover { color: var(--dm-ink); }
.brand img { width: 190px; max-height: 62px; object-fit: contain; object-position: left center; }
.brand span { display: none; }
.site-navigation ul {
	display: flex;
	align-items: center;
	gap: 26px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.site-navigation li { position: relative; }
.site-navigation a {
	display: inline-flex;
	align-items: center;
	min-height: 68px;
	color: #20252a;
	font-family: "Arial Narrow", Arial, sans-serif;
	font-size: 0.88rem;
	font-weight: 800;
	text-transform: uppercase;
}
.site-navigation .active > a,
.site-navigation .current > a {
	box-shadow: inset 0 -3px 0 var(--dm-logo-red);
	color: var(--dm-logo-red);
}
.site-navigation a:hover { color:var(--dm-logo-red); }
.site-navigation .mod-menu__sub,
.site-navigation ul ul {
	position: absolute;
	top: 100%;
	left: -16px;
	display: none;
	min-width: 210px;
	padding: 8px 16px;
	background: rgba(255,255,255,.96);
	border: 1px solid rgba(83,91,99,.16);
	box-shadow: var(--dm-shadow);
}
.site-navigation li:hover > ul,
.site-navigation li:focus-within > ul { display: block; }
.site-navigation ul ul a { min-height: 42px; width: 100%; box-shadow: none; }
.header-actions { display: flex; align-items: center; gap: 8px; }
.header-search { width: 210px; }
.header-search label, .header-search .visually-hidden { display: none !important; }
.header-search input[type="search"], .header-search input[type="text"] {
	width: 100%;
	min-height: 40px;
	padding: 8px 12px;
	border: 1px solid #cfd5da;
	border-radius: var(--dm-radius);
	background: rgba(255,255,255,.7);
	color: #20252a;
}
.menu-toggle {
	display: inline-grid;
	place-items: center;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 1px solid #c8cfd5;
	border-radius: var(--dm-radius);
	background: transparent;
	color: #20252a;
	cursor: pointer;
}
.menu-toggle { display: none; padding: 9px; }
.menu-toggle span { display: block; width: 24px; height: 2px; margin: 3px 0; background: #20252a; }

/* Utility zones */
.breaking-strip { background: var(--dm-soft); border-bottom: 1px solid var(--dm-line); }
.breaking-inner {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: 14px;
	min-height: 48px;
}
.breaking-inner strong {
	padding: 4px 10px;
	background: var(--dm-film);
	color: #fff;
	font-size: 0.75rem;
	text-transform: uppercase;
}
.breadcrumbs { padding-block: 14px; color: var(--dm-muted); font-size: 0.86rem; }
.breadcrumbs ol { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.module-band { padding-block: 26px; }

/* Optional top slider. Use an Articles Newsflash module in slideshow. */
.slideshow-zone { overflow: hidden; background: #101113; }
.dm-slider { position: relative; min-height: clamp(460px, 48vw, 720px); }
.dm-slider-track { display: flex; min-height: inherit; transition: transform 500ms ease; will-change: transform; }
.dm-slider-track > .mod-articlesnews,
.dm-slider-track > .newsflash {
	display: flex;
	flex: 0 0 100%;
	min-width: 100%;
	min-height: inherit;
}
.dm-slider-track > :not(.mod-articlesnews):not(.newsflash),
.dm-slider-track .mod-articlesnews__item,
.dm-slider-track .newsflash-item {
	position: relative;
	flex: 0 0 33.333%;
	display: grid;
	align-content: end;
	min-height: inherit;
	padding: 40px;
	background: #252a30;
	color: #fff;
	overflow: hidden;
}
.dm-slider-track img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 0;
}
.dm-slider-track > :not(.mod-articlesnews):not(.newsflash)::after,
.dm-slider-track .mod-articlesnews__item::after,
.dm-slider-track .newsflash-item::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(180deg, transparent 30%, rgba(0, 0, 0, 0.86));
}
.dm-slider-track .mod-articlesnews__item > :not(figure),
.dm-slider-track .newsflash-item > :not(figure),
.dm-slider-track h2, .dm-slider-track h3, .dm-slider-track h4, .dm-slider-track p, .dm-slider-track .readmore {
	position: relative;
	z-index: 2;
}
.dm-slider-track h2, .dm-slider-track h3, .dm-slider-track h4 { margin: 0; color: #fff; font-size: clamp(1.35rem, 2.2vw, 2.1rem); line-height: 1.15; }
.dm-slider-track p { margin: 10px 0 0; color: #e2e5e8; font-size: 0.92rem; }
/* Shared magazine elements */
.main-layout { padding-block: 34px 76px; }
.is-article .main-layout { padding-top: 8px; }
.main-layout.has-sidebar { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 46px; align-items: start; }
.content-column, .sidebar { min-width: 0; }
.magazine-section { margin-bottom: 80px; }
.section-header {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: 22px;
	margin-bottom: 30px;
}
.section-header h1, .module-title {
	margin: 0;
	font-family: "Arial Narrow", Arial, sans-serif;
	font-size: clamp(1.35rem, 2vw, 1.8rem);
	line-height: 1;
	text-transform: uppercase;
}
.section-header > span { height: 3px; background: currentColor; }
.section-games .section-header { color: var(--dm-games); }
.section-film .section-header { color: var(--dm-film); }
.section-music .section-header { color: var(--dm-music); }
.section-technik .section-header { color: var(--dm-tech); }
.section-lifestyle .section-header { color: var(--dm-life); }
.section-books .section-header { color: var(--dm-books); }
.lead-grid, .card-grid, .film-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 28px;
}
.card-grid { margin-top: 32px; }
.story-card { min-width: 0; background: var(--dm-surface); }
.story-link { display: block; height: 100%; color: var(--dm-ink); }
.story-link:hover { color: var(--dm-ink); }
.story-media { position: relative; overflow: hidden; aspect-ratio: 16 / 10; background: var(--dm-soft); }
.story-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 350ms ease; }
.story-link:hover .story-media img { transform: scale(1.025); }
.story-content { padding-top: 16px; }
.story-label {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	margin-bottom: 10px;
	padding: 4px 9px;
	background: var(--dm-brand);
	color: #fff;
	font-size: 0.72rem;
	font-weight: 800;
	text-transform: uppercase;
}
.section-film .story-label { background: var(--dm-film); }
.section-music .story-label { background: var(--dm-music); }
.section-technik .story-label { background: var(--dm-tech); }
.section-lifestyle .story-label { background: var(--dm-life); }
.section-books .story-label { background: var(--dm-books); }
.story-card h2 { margin: 0; font-size: clamp(1.15rem, 1.7vw, 1.55rem); line-height: 1.2; }
.story-card p { margin: 10px 0 0; color: var(--dm-muted); font-size: 0.94rem; font-weight: 400; }
.story-meta { display: flex; flex-wrap: wrap; gap: 8px 14px; margin-top: 13px; color: var(--dm-muted); font-size: 0.76rem; text-transform: uppercase; }

/* Homepage layout variations */
.story-overlay { position: relative; min-height: clamp(400px, 42vw, 610px); background: #1a1c1f; overflow: hidden; }
.story-overlay .story-link, .story-overlay .story-media { position: absolute; inset: 0; aspect-ratio: auto; }
.story-overlay .story-media::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0,0,0,0.03) 28%, rgba(0,0,0,0.88));
}
.story-overlay .story-content {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	padding: 34px;
	color: #fff;
	text-align: center;
}
.story-overlay h2 { color: #fff; font-size: clamp(1.3rem, 2vw, 1.85rem); }
.story-overlay p { color: #e4e6e8; }
.story-overlay .story-meta { justify-content: center; color: #d0d4d7; }
.story-cinema .story-media { aspect-ratio: 2 / 3; }
.film-grid .story-cinema:first-child { grid-column: span 2; }
.film-grid .story-cinema:first-child .story-media { aspect-ratio: 16 / 9; }
.music-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 36px; }
.story-horizontal .story-link { display: grid; grid-template-columns: 180px 1fr; gap: 20px; }
.story-horizontal .story-media { aspect-ratio: 1 / 1; }
.story-horizontal .story-content { padding-top: 4px; }
.mosaic-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 28px; }
.story-large { grid-row: span 2; }
.story-large .story-media { aspect-ratio: 4 / 5; }
.story-large h2 { font-size: clamp(1.5rem, 2.4vw, 2.25rem); }
.empty-state { max-width: 760px; padding: 90px 0; }
.empty-state h1 { margin: 8px 0 18px; font-size: clamp(2.4rem, 6vw, 5rem); line-height: 1; }
.eyebrow { margin: 0; color: var(--dm-brand); font-size: 0.8rem; font-weight: 800; text-transform: uppercase; }

/* Category page */
.category-hero { margin-bottom: 42px; padding: clamp(30px, 6vw, 72px) 0 28px; border-bottom: 3px solid var(--dm-ink); }
.category-hero h1 { margin: 6px 0 12px; font-size: clamp(2.8rem, 8vw, 6.8rem); line-height: 0.95; }
.category-description { max-width: 720px; color: var(--dm-muted); font-size: 1.05rem; }
.category-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 38px 30px; }
.category-story { display: grid; grid-template-columns: 180px 1fr; gap: 20px; border-bottom: 1px solid var(--dm-line); padding-bottom: 28px; }
.category-story.is-featured { grid-column: 1 / -1; grid-template-columns: 1.35fr 1fr; align-items: center; }
.category-story-media { display: block; overflow: hidden; aspect-ratio: 4 / 3; background: var(--dm-soft); }
.category-story.is-featured .category-story-media { aspect-ratio: 16 / 10; }
.category-story-media img { width: 100%; height: 100%; object-fit: cover; }
.category-story h2 { margin: 5px 0 10px; font-size: clamp(1.2rem, 2.2vw, 2rem); line-height: 1.16; }
.category-story h2 a { color: var(--dm-ink); }
.category-story p { margin: 0; color: var(--dm-muted); }
.pagination-wrap { margin-top: 44px; }
.pagination { display: flex; flex-wrap: wrap; gap: 8px; padding: 0; list-style: none; }
.pagination a, .pagination span { display: grid; place-items: center; min-width: 42px; min-height: 42px; padding: 6px; border: 1px solid var(--dm-line); }

/* Article page */
.article-page { max-width: 1180px; margin-inline: auto; }
.article-header { max-width: 1180px; margin: 8px auto 24px; text-align: left; }
.article-kicker { display: inline-flex; margin-bottom: 16px; padding: 5px 11px; background: var(--dm-brand); color: #fff; font-size: 0.76rem; font-weight: 800; text-transform: uppercase; }
.article-kicker:hover { color: #fff; }
.article-header h1 { margin: 0; max-width: none; font-size: 30px; line-height: 1.16; overflow-wrap: anywhere; }
.article-meta { display: flex; flex-wrap: wrap; gap: 9px 18px; margin-top: 20px; color: var(--dm-muted); font-size: 0.86rem; }
.article-image { margin: 0 0 38px; }
.article-image img { width: 100%; max-height: 720px; object-fit: cover; }
.article-image figcaption { margin-top: 8px; color: var(--dm-muted); font-size: 0.8rem; }
.article-video-section { width: 100%; margin: 48px 0 10px; }
.article-video-section > h2 { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 18px; margin: 0 0 20px; font-size: 1.2rem; text-transform: uppercase; }
.article-video-section > h2::after { content: ""; height: 2px; background: var(--dm-line); }
.article-video { position: relative; overflow: hidden; width: 100%; aspect-ratio: 16 / 9; background: #000; }
.article-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.article-video-consent .film-video-trigger { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; color:#fff; }
.article-video-consent .film-video-trigger>span { position:static; width:48px; height:48px; }
.article-video-consent .film-video-trigger strong { font-size:1rem; }
.article-video-consent .film-video-trigger small { color:#cbd2d8; font-size:.7rem; }
.article-content-layout.has-sidebar { display: grid; grid-template-columns: minmax(0, 1fr) 310px; gap: 48px; align-items: start; }
.article-content-layout.has-sidebar .article-body,
.article-content-layout.has-sidebar .article-tags { max-width: none; margin-inline: 0; }
.article-body { max-width: 760px; margin-inline: auto; font-family: Georgia, "Times New Roman", serif; font-size: clamp(1.08rem, 1.7vw, 1.2rem); line-height: 1.75; font-weight: 400; }
.article-body > p:first-child { font-size: 1.18em; line-height: 1.55; }
.article-body.has-readmore-continuation > p:first-child,
.article-body.has-readmore-continuation > p:first-child + p { display: inline; margin: 0; }
.article-body.has-readmore-continuation > p:first-child + p::after { content: ""; display: block; height: 1.15em; }
.article-body h2, .article-body h3 { margin: 1.6em 0 0.55em; font-family: Inter, Arial, sans-serif; line-height: 1.15; }
.article-body img { margin-block: 28px; }
.article-body blockquote { margin: 34px 0; padding-left: 24px; border-left: 4px solid var(--dm-brand); font-size: 1.25em; line-height: 1.45; }
.article-tags { display: flex; flex-wrap: wrap; gap: 8px; max-width: 760px; margin: 34px auto 0; }
.article-tags a { padding: 5px 11px; background: var(--dm-soft); color: var(--dm-ink); font-size: 0.82rem; }
.purchase-sidebar { position: sticky; top: 96px; }
.purchase-card { padding: 22px; border: 1px solid var(--dm-line); border-top: 4px solid var(--dm-brand); background: var(--dm-surface); box-shadow: var(--dm-shadow); }
.purchase-label { margin: 0 0 14px; color: var(--dm-brand-dark); font-size: 0.72rem; font-weight: 800; text-transform: uppercase; }
.purchase-image { width: 100%; max-height: 290px; margin-bottom: 18px; object-fit: contain; background: #fff; }
.purchase-card h2 { margin: 0; font-size: 1.22rem; line-height: 1.2; }
.purchase-price { margin: 10px 0 0; color: var(--dm-ink); font-size: 1.05rem; font-weight: 800; }
.purchase-button { display: flex; align-items: center; justify-content: center; min-height: 46px; margin-top: 18px; padding: 10px 14px; border-radius: var(--dm-radius); background: var(--dm-brand); color: #fff; font-weight: 800; text-align: center; }
.purchase-button:hover { background: var(--dm-brand-dark); color: #fff; }
.purchase-note { margin: 12px 0 0; color: var(--dm-muted); font-size: 0.72rem; font-weight: 400; line-height: 1.45; }
.amazon-api-diagnostic { border-top:4px solid #f0a51b; }
.amazon-api-diagnostic p { margin:0 0 8px; font-size:.72rem; line-height:1.45; }
.amazon-api-diagnostic small { color:var(--dm-muted); font-size:.58rem; line-height:1.4; }
.steam-card { margin-top: 22px; padding: 20px; border: 1px solid var(--dm-line); background: var(--dm-surface); box-shadow: var(--dm-shadow); }
.steam-card h2 { margin: 0 0 12px; padding-bottom: 11px; border-bottom: 1px solid var(--dm-line); font-size: 1rem; text-transform: uppercase; }
.article-epic-card { border-top: 4px solid #17191c; }
.article-epic-card h2 { display: flex; align-items: center; gap: 7px; font-size: 0.82rem; }
.article-sidebar-icon { display: inline-grid; flex: 0 0 auto; place-items: center; }
.article-sidebar-icon svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.steam-list { margin: 0; padding: 0; list-style: none; counter-reset: steam-rank; }
.steam-list li { counter-increment: steam-rank; border-bottom: 1px solid var(--dm-line); }
.steam-list a { display: grid; grid-template-columns: 18px 58px minmax(0, 1fr); gap: 8px; align-items: center; padding: 9px 0; color: var(--dm-ink); }
.steam-list a::before { content: counter(steam-rank); color: var(--dm-brand); font-weight: 800; text-align: center; }
.steam-list img { width: 58px; height: 34px; object-fit: cover; }
.steam-list span, .steam-list strong, .steam-list small { display: block; min-width: 0; }
.steam-list strong { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; font-size: 0.72rem; line-height: 1.2; }
.steam-list small { margin-top: 3px; color: var(--dm-muted); font-size: 0.63rem; }
.steam-source { margin: 10px 0 0; color: var(--dm-muted); font-size: 0.62rem; text-align: right; }
.related-articles { margin-top: 48px; }
.related-articles > h2 { margin: 0 0 18px; padding-bottom: 12px; border-bottom: 2px solid var(--dm-line); font-size: 1.15rem; }
.related-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.related-card { overflow: hidden; border: 1px solid var(--dm-line); background: var(--dm-surface); }
.related-card img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.related-card h3 { display: -webkit-box; overflow: hidden; margin: 0; padding: 12px; -webkit-box-orient: vertical; -webkit-line-clamp: 3; color: var(--dm-ink); font-size: 0.83rem; line-height: 1.3; }

/* Modules and sidebar */
.content-modules { margin-bottom: 34px; }
.module-card, .section-module, .grid-module { margin-bottom: 32px; }
.sidebar .module-card { padding: 22px; background: var(--dm-soft); border-top: 3px solid var(--dm-brand); }
.module-title { margin-bottom: 18px; padding-bottom: 12px; border-bottom: 1px solid var(--dm-line); }
.latestnews, .mostread { margin: 0; padding: 0; list-style: none; }
.latestnews li, .mostread li { padding: 11px 0; border-bottom: 1px solid var(--dm-line); }
.latestnews a, .mostread a { color: var(--dm-ink); font-weight: 700; line-height: 1.3; }
.home-modules { padding-bottom: 50px; }
.discovery-band { padding-block: 52px; background: var(--dm-soft); }
.discovery-grid { display: grid; grid-template-columns: 2fr 1fr; gap: 50px; }
.btn, button, input[type="submit"], .readmore a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 8px 14px;
	border: 1px solid var(--dm-brand);
	border-radius: var(--dm-radius);
	background: var(--dm-brand);
	color: #fff;
	font-weight: 700;
	cursor: pointer;
}

/* Footer */
.site-footer { position:relative; padding-top:0; border-top:8px solid var(--dm-logo-red); background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(246,248,250,.76)); color:#30373d; box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 -12px 34px rgba(24,31,38,.1); -webkit-backdrop-filter:saturate(270%) blur(30px); backdrop-filter:saturate(270%) blur(30px); }
.footer-grid { display: grid; grid-template-columns: 1.25fr repeat(3, 0.72fr) 1.45fr; gap: 42px; padding-block: 44px 34px; }
.footer-about img { width: 190px; max-height: 90px; margin-bottom: 16px; padding: 0; background: transparent; object-fit: contain; object-position: left center; filter:drop-shadow(0 0 1px rgba(255,255,255,.7)); }
.footer-about p { max-width: 275px; margin: 0; font-size: 0.84rem; line-height: 1.55; }
.footer-column h2 { margin: 0 0 15px; color: #171b1f; font-size: 0.78rem; text-transform: uppercase; }
.footer-column .module-title { display: none; }
.footer-column ul { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }
.footer-column p { margin-top: 0; font-size: 0.84rem; line-height: 1.55; }
.footer-signup form { display: flex; align-items: stretch; }
.footer-signup input { min-width: 0; min-height: 40px; border: 0; border-radius: 3px 0 0 3px; }
.footer-signup button { min-height: 40px; border-radius: 0 3px 3px 0; }
.site-footer a { color: #20262b; }
.site-footer a:hover { color:var(--dm-logo-red); }
.footer-bottom { display: block; padding-block: 18px; border-top: 1px solid rgba(73,82,90,.2); color:#4f5961; font-size: 0.78rem; }
.footer-bottom p { margin: 0; }

.offline-page { display: grid; min-height: 100vh; place-items: center; padding: 24px; background: #151517; }
.offline-card { width: min(560px, 100%); padding: 38px; border-radius: var(--dm-radius); background: #fff; color: #17191c; text-align: center; box-shadow: var(--dm-shadow); }
.offline-card img { width: 170px; margin-inline: auto; }

@media (max-width: 1040px) {
	.header-inner { grid-template-columns: 190px 1fr auto; gap: 18px; }
	.site-navigation {
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		display: none;
		padding: 8px 20px 20px;
		background: rgba(255,255,255,.98);
		border-bottom: 1px solid #d9dee2;
	}
	.site-navigation.is-open { display: block; }
	.site-navigation ul { display: block; }
	.site-navigation a { width: 100%; min-height: 48px; border-bottom: 1px solid #e2e6e9; color:#20252a; box-shadow: none; }
	.site-navigation .mod-menu__sub, .site-navigation ul ul { position: static; display: block; padding: 0 0 0 18px; box-shadow: none; }
	.menu-toggle { display: block; }
	.header-search { display: none; }
	.dm-slider-track > :not(.mod-articlesnews):not(.newsflash), .dm-slider-track .mod-articlesnews__item, .dm-slider-track .newsflash-item { flex-basis: 50%; }
	.lead-grid, .card-grid, .film-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.lead-grid .story-overlay:last-child { grid-column: 1 / -1; min-height: 420px; }
	.mosaic-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.story-large { grid-column: 1 / -1; grid-row: auto; }
	.story-large .story-media { aspect-ratio: 16 / 9; }
	.main-layout.has-sidebar { grid-template-columns: 1fr; }
	.sidebar { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
	.category-list { grid-template-columns: 1fr; }
	.article-content-layout.has-sidebar { grid-template-columns: minmax(0, 1fr) 270px; gap: 32px; }
}

@media (max-width: 700px) {
	.shell { width: min(100% - 24px, 1280px); }
	.header-inner { grid-template-columns: 1fr auto; min-height: 62px; }
	.brand img { width: 158px; max-height: 54px; }
	.site-navigation { top: 70px; }
	.topbar { display: none; }
	.dm-slider { min-height: 500px; }
	.dm-slider-track > :not(.mod-articlesnews):not(.newsflash), .dm-slider-track .mod-articlesnews__item, .dm-slider-track .newsflash-item { flex-basis: 100%; padding: 26px; }
	.main-layout { padding-block: 22px 54px; }
	.magazine-section { margin-bottom: 58px; }
	.lead-grid, .card-grid, .film-grid, .music-grid, .mosaic-grid, .discovery-grid, .footer-grid, .sidebar { grid-template-columns: 1fr; }
	.story-overlay, .lead-grid .story-overlay:last-child { grid-column: auto; min-height: 440px; }
	.film-grid .story-cinema:first-child { grid-column: auto; }
	.film-grid .story-cinema:first-child .story-media, .story-cinema .story-media { aspect-ratio: 16 / 10; }
	.story-horizontal .story-link { grid-template-columns: 112px 1fr; gap: 15px; }
	.story-horizontal .story-content { padding-top: 0; }
	.story-horizontal p { display: none; }
	.category-hero { padding-top: 34px; }
	.category-story, .category-story.is-featured { grid-column: auto; grid-template-columns: 1fr; }
	.category-story-media, .category-story.is-featured .category-story-media { aspect-ratio: 16 / 10; }
	.article-header { margin-top: 12px; }
	.article-header h1 { overflow-wrap: anywhere; }
	.article-image { margin-inline: -12px; }
	.article-content-layout.has-sidebar { grid-template-columns: 1fr; }
	.purchase-sidebar { position: static; margin-top: 12px; }
	.purchase-card, .steam-card { max-width: 420px; }
	.related-grid { grid-template-columns: 1fr; }
	.footer-brand, .footer-bottom { display: grid; }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}

/* Daily Media Portal 5 */
body.is-home {
	background-color: #edf0f3;
	background-image: var(--dm-home-background, url('../images/home_bg1.jpg'));
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	background-attachment: fixed;
}
body.is-home .main-layout { width: min(1320px, calc(100% - 32px)); padding: 18px 0 48px; }
body.is-home .content-column { width: 100%; }
.portal-home { color: #17191c; font-weight: 400; }
.portal-home a { color: inherit; }
.portal-home h1, .portal-home h2, .portal-home h3, .portal-home p { margin-top: 0; }
.portal-hero { display: grid; grid-template-columns: minmax(0, 2.15fr) minmax(300px, 1fr); gap: 14px; min-height: 390px; }
.portal-hero-main, .hero-mini { position: relative; display: block; overflow: hidden; border-radius: 6px; background: #111; color: #fff !important; }
.portal-hero-main > img, .hero-mini-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.portal-hero-main::after, .hero-mini-shade { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(2, 8, 16, 0.92) 0%, rgba(2, 8, 16, 0.42) 58%, rgba(2, 8, 16, 0.12)); }
.portal-hero-copy { position: absolute; left: 28px; bottom: 28px; z-index: 2; max-width: 520px; }
.portal-hero-copy h1 { margin: 10px 0; color: #fff; font-size: clamp(1.55rem, 2.3vw, 2.25rem); line-height: 1.08; overflow-wrap: anywhere; }
.portal-hero-copy p { max-width: 470px; margin-bottom: 20px; color: #e4e8ed; line-height: 1.45; }
.badge { display: inline-flex; width: fit-content; padding: 4px 8px; border-radius: 3px; background: #087fbd; color: #fff; font-size: 0.68rem; font-weight: 800; text-transform: uppercase; }
.badge-pink, .section-music .badge { background: #ca1760; }
.portal-button { display: inline-flex; align-items: center; min-height: 38px; padding: 8px 15px; border-radius: 3px; background: #078ccc; color: #fff; font-size: 0.75rem; font-weight: 800; text-transform: uppercase; }
.portal-hero-side { display: grid; grid-template-rows: repeat(3, 1fr); gap: 12px; }
.hero-mini-shade { z-index: 1; background: linear-gradient(90deg, rgba(4, 10, 18, 0.93), rgba(4, 10, 18, 0.18)); }
.hero-mini-copy { position: absolute; inset: 0; z-index: 2; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 16px; }
.hero-mini-copy strong { display: -webkit-box; overflow: hidden; max-width: 78%; margin: 7px 0 0; -webkit-box-orient: vertical; -webkit-line-clamp: 3; font-size: 0.82rem; line-height: 1.22; }
.hero-mini-copy small { color: #d8dde2; }
.quick-nav { display: grid; grid-template-columns: repeat(6, 1fr); margin: 14px 0; border: 1px solid #dfe3e7; border-radius: 5px; background: #fff; }
.quick-nav a { display: flex; justify-content: center; align-items: center; gap: 9px; min-height: 52px; padding: 8px; border-right: 1px solid #e5e8eb; font-size: 0.84rem; font-weight: 700; text-align: center; }
.quick-nav a:last-child { border-right: 0; }
.quick-symbol { display: grid; place-items: center; width: 25px; height: 25px; color: var(--section-color, #1f252b); }
.quick-symbol svg, .rubric-icon svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.section-games { --section-color: #087fbd; }
.section-film { --section-color: #7d3db5; }
.section-disc { --section-color: #207ec4; }
.section-music { --section-color: #ca1760; }
.section-technik { --section-color: #16806d; }
.section-lifestyle { --section-color: #d22564; }
.section-games .badge, .section-film .badge, .section-disc .badge, .section-music .badge, .section-technik .badge, .section-lifestyle .badge { background: var(--section-color); }
.quick-nav a:hover, .quick-nav a.is-active { color: var(--section-color); background: #f1f6f9; box-shadow: inset 0 -3px 0 var(--section-color); }
.portal-columns { display: grid; grid-template-columns: minmax(0, 3fr) minmax(270px, 1fr); gap: 18px; align-items: start; }
.portal-primary { display: grid; gap: 16px; }
.portal-sidebar { display: grid; gap: 16px; }
.portal-panel { padding: 14px; border: 1px solid #dfe3e7; border-radius: 6px; background: #fff; }
.portal-heading { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 12px; }
.portal-heading h2 { margin: 0; font-size: 0.96rem; text-transform: uppercase; }
.portal-heading > a, .rubric-more { color: #087fbd; font-size: 0.72rem; font-weight: 700; }
.latest-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.latest-card { position: relative; min-width: 0; }
.latest-card.is-filter-hidden { display: none; }
.latest-card .badge { position: absolute; left: 9px; top: 9px; }
.latest-card h3 { margin: 10px 0 7px; font-size: 1rem; line-height: 1.25; }
.latest-card p { margin-bottom: 9px; color: #5e6670; font-size: 0.8rem; line-height: 1.45; }
.latest-card small { color: #7a828a; font-size: 0.68rem; }
.card-image { width: 100%; display: block; object-fit: cover; border-radius: 5px; background: #e8ebee; }
.card-image--landscape { aspect-ratio: 16 / 9; }
.card-image--poster { aspect-ratio: 2 / 3; }
.card-image--album { aspect-ratio: 1 / 1; }
.card-image--product { aspect-ratio: 4 / 3; }
.card-image--hero { aspect-ratio: 21 / 9; }
.rubric-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.rubric-column { min-width: 0; padding-right: 11px; border-right: 1px solid #e5e8eb; }
.rubric-column:last-child { border-right: 0; padding-right: 0; }
.rubric-column > h3 { display: flex; align-items: center; gap: 6px; margin: 0 0 9px; }
.rubric-icon { display: inline-grid; place-items: center; color: var(--section-color); }
.rubric-lead { display: block; }
.rubric-lead strong { display: -webkit-box; overflow: hidden; margin-top: 7px; -webkit-box-orient: vertical; -webkit-line-clamp: 3; font-size: 0.77rem; line-height: 1.3; }
.rubric-column ul { display: grid; gap: 8px; margin: 10px 0; padding: 0; list-style: none; }
.rubric-column li a { display: grid; grid-template-columns: 34px 1fr; gap: 7px; align-items: center; font-size: 0.65rem; line-height: 1.25; }
.rubric-column li span { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.rubric-thumb { width: 34px; height: 34px; object-fit: cover; border-radius: 3px; }
.review-grid, .pick-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.review-card, .pick-grid article { position: relative; }
.review-card h3, .pick-grid h3 { margin: 8px 0 0; font-size: 0.8rem; line-height: 1.3; }
.review-card .badge, .pick-grid .badge { position: absolute; left: 7px; top: 7px; }
.rating { position: absolute; right: 7px; top: 7px; padding: 4px 7px; border-radius: 3px; background: #087fbd; color: #fff; font-size: 0.72rem; }
.portal-bottom-grid { display: grid; grid-template-columns: 1fr 1.15fr; gap: 16px; margin-top: 16px; }
.portal-bottom-grid:not(.has-recommendations) .contest-banner { grid-column: 1 / -1; }
.recommendations-panel { min-width: 0; }
.recommendations-panel .pick-grid { height: 100%; }
.recommendations-panel .portal-heading h2 { display: inline-flex; margin: 0; padding: 5px 10px; border-radius: 3px; background: #ca1760; color: #fff; font-size: 0.78rem; }
.contest-banner { position: relative; overflow: hidden; min-height: 280px; padding: 30px; border: 1px solid rgba(255,255,255,.9); border-radius: 6px; background: rgba(255,255,255,.58) url("../images/giveaway-banner.png") center / cover no-repeat; color: #17191c; box-shadow: 0 16px 38px rgba(34,42,50,.17), inset 0 1px 0 rgba(255,255,255,.96); -webkit-backdrop-filter: saturate(170%) blur(20px); backdrop-filter: saturate(170%) blur(20px); }
.contest-banner::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(255,255,255,.97) 0%, rgba(255,255,255,.9) 46%, rgba(255,255,255,.46) 72%, rgba(255,255,255,.12) 100%); }
.contest-banner > div { position: relative; z-index: 2; max-width: 55%; }
.contest-banner h2 { margin-bottom: 8px; font-size: 1.15rem; text-transform: uppercase; }
.contest-banner h2 a { color:#17191c; transition:color .18s ease; }
.contest-banner h2 a:hover { color:var(--dm-logo-red); }
.contest-banner p { line-height: 1.4; }
.contest-banner ul { padding-left: 18px; font-size: 0.82rem; }
.contest-banner .portal-button { background:var(--dm-logo-red); color:#fff; box-shadow:0 8px 20px rgba(239,55,66,.24); }
.contest-banner .portal-button:hover { background:#cf2631; color:#fff; }

/* Active contest overview */
.contest-overview { width:min(1180px,calc(100% - 32px)); margin:28px auto 42px; color:#17191c; }
.contest-overview-hero { display:grid; grid-template-columns:64px minmax(0,1fr) 72px; gap:18px; align-items:center; margin-bottom:20px; padding:24px 28px; border:1px solid rgba(255,255,255,.92); border-radius:7px; background:linear-gradient(120deg,rgba(255,255,255,.94),rgba(255,244,245,.76)); box-shadow:0 16px 38px rgba(34,42,50,.15),inset 0 1px 0 #fff; -webkit-backdrop-filter:saturate(170%) blur(20px); backdrop-filter:saturate(170%) blur(20px); }
.contest-overview-icon { display:grid; width:64px; height:64px; place-items:center; border-radius:50%; background:var(--dm-logo-red); color:#fff; box-shadow:0 10px 24px rgba(239,55,66,.26); }
.contest-overview-icon svg { width:34px; height:34px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.contest-overview-hero p { margin:0 0 3px; color:var(--dm-logo-red); font-size:.68rem; font-weight:850; text-transform:uppercase; }
.contest-overview-hero h1 { margin:0 0 5px; font-size:2rem; line-height:1.08; }
.contest-overview-hero div>span { color:#5e6770; font-size:.82rem; }
.contest-overview-hero>strong { display:grid; width:64px; height:64px; place-items:center; align-content:center; border:1px solid rgba(239,55,66,.2); border-radius:50%; background:rgba(255,255,255,.76); color:var(--dm-logo-red); font-size:1.5rem; line-height:1; }
.contest-overview-hero>strong small { margin-top:4px; color:#68717a; font-size:.52rem; text-transform:uppercase; }
.contest-overview-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.contest-overview-card { display:grid; grid-template-columns:minmax(190px,.86fr) minmax(0,1.14fr); overflow:hidden; min-height:300px; border:1px solid rgba(255,255,255,.92); border-radius:7px; background:rgba(255,255,255,.76); box-shadow:0 15px 34px rgba(34,42,50,.14),inset 0 1px 0 #fff; -webkit-backdrop-filter:saturate(165%) blur(18px); backdrop-filter:saturate(165%) blur(18px); }
.contest-overview-card.is-featured { grid-column:1/-1; grid-template-columns:minmax(360px,1.12fr) minmax(0,.88fr); min-height:380px; }
.contest-overview-media { position:relative; display:block; overflow:hidden; min-height:100%; background:linear-gradient(145deg,#e9edf0,#fff3f4); }
.contest-overview-media img { width:100%; height:100%; min-height:300px; object-fit:cover; transition:transform .35s ease; }
.contest-overview-card.is-featured .contest-overview-media img { min-height:380px; }
.contest-overview-card:hover .contest-overview-media img { transform:scale(1.025); }
.contest-overview-media>span { position:absolute; left:14px; top:14px; padding:6px 9px; border-radius:3px; background:var(--dm-logo-red); color:#fff; font-size:.58rem; font-weight:850; text-transform:uppercase; }
.contest-overview-copy { display:flex; min-width:0; flex-direction:column; align-items:flex-start; justify-content:center; padding:24px; }
.contest-overview-status { display:flex; align-items:center; gap:7px; margin:0 0 9px; color:#238148; font-size:.61rem; font-weight:800; text-transform:uppercase; }
.contest-overview-status i { width:8px; height:8px; border-radius:50%; background:#2cb467; box-shadow:0 0 0 4px rgba(44,180,103,.13); }
.contest-overview-copy h2 { margin:0 0 7px; font-size:1.18rem; line-height:1.18; }
.contest-overview-card.is-featured h2 { font-size:1.6rem; }
.contest-overview-copy h2 a { color:#17191c; transition:color .18s ease; }
.contest-overview-copy h2 a:hover { color:var(--dm-logo-red); }
.contest-overview-article { margin:0 0 8px; color:#59636b; font-size:.7rem; font-weight:700; line-height:1.35; }
.contest-overview-excerpt { display:-webkit-box; overflow:hidden; margin:0 0 13px; -webkit-box-orient:vertical; -webkit-line-clamp:3; color:#626c75; font-size:.72rem; line-height:1.45; }
.contest-overview-copy dl { display:grid; width:100%; gap:6px; margin:0 0 16px; }
.contest-overview-copy dl>div { display:flex; justify-content:space-between; gap:12px; padding-top:6px; border-top:1px solid rgba(100,110,120,.14); font-size:.64rem; }
.contest-overview-copy dt { color:#747d85; }.contest-overview-copy dd { margin:0; color:#252a2e; font-weight:800; text-align:right; }
.contest-overview-button { display:inline-flex; align-items:center; gap:9px; margin-top:auto; padding:10px 14px; border-radius:4px; background:var(--dm-logo-red); color:#fff; font-size:.68rem; font-weight:850; text-transform:uppercase; box-shadow:0 8px 19px rgba(239,55,66,.22); }
.contest-overview-button:hover { background:#cf2631; color:#fff; }.contest-overview-button span { font-size:1rem; line-height:.7; }
.contest-overview-empty { padding:50px 24px; border:1px solid rgba(255,255,255,.9); border-radius:7px; background:rgba(255,255,255,.72); box-shadow:0 15px 34px rgba(34,42,50,.13); text-align:center; -webkit-backdrop-filter:blur(18px); backdrop-filter:blur(18px); }
.contest-overview-empty>span { display:grid; width:48px; height:48px; margin:0 auto 14px; place-items:center; border-radius:50%; background:#eaf6ee; color:#238148; font-weight:900; }.contest-overview-empty h2 { margin:0 0 7px; }.contest-overview-empty p { margin:0; color:#68717a; }
@media(max-width:860px){.contest-overview-grid{grid-template-columns:1fr}.contest-overview-card,.contest-overview-card.is-featured{grid-column:auto;grid-template-columns:minmax(190px,.8fr) minmax(0,1.2fr);min-height:300px}.contest-overview-card.is-featured .contest-overview-media img{min-height:300px}.contest-overview-card.is-featured h2{font-size:1.25rem}}
@media(max-width:620px){.contest-overview{width:min(100% - 20px,1180px);margin-top:18px}.contest-overview-hero{grid-template-columns:48px 1fr;padding:18px}.contest-overview-icon{width:48px;height:48px}.contest-overview-icon svg{width:25px;height:25px}.contest-overview-hero h1{font-size:1.45rem}.contest-overview-hero>strong{display:none}.contest-overview-card,.contest-overview-card.is-featured{grid-template-columns:1fr}.contest-overview-media,.contest-overview-media img,.contest-overview-card.is-featured .contest-overview-media img{min-height:220px;max-height:260px}.contest-overview-copy{padding:19px}}
.side-panel { padding: 12px; }
.side-panel .portal-heading { padding-bottom: 9px; border-bottom: 1px solid #e5e8eb; }
.side-panel .portal-heading h2 { display: flex; align-items: center; gap: 7px; font-size: 0.83rem; }
.sidebar-heading-icon { display: inline-grid; place-items: center; color: #087fbd; }
.sidebar-heading-icon svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.release-list { display: grid; }
.release-list > a { display: grid; grid-template-columns: 44px 1fr; gap: 10px; align-items: center; padding: 9px 0; border-bottom: 1px solid #e5e8eb; }
.release-list time { display: grid; place-items: center; min-height: 43px; border: 1px solid #dbe0e5; border-radius: 4px; font-size: 0.58rem; text-transform: uppercase; }
.release-list > a[class*="section-"] time { border-color: var(--section-color, #087fbd); color: var(--section-color, #087fbd); }
.release-list > a.section-games time { background: #eaf6fc; }
.release-list > a.section-film time { background: #f3ecfa; }
.release-list > a.section-disc time { background: #edf5fb; }
.release-list > a.section-music time { background: #fcecf3; }
.release-list > a.section-technik time { background: #eaf6f3; }
.release-list > a.section-lifestyle time { background: #fcecf3; }
.release-list time strong { font-size: 0.95rem; }
.release-list span strong { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; font-size: 0.7rem; line-height: 1.25; }
.release-list span small { color: #7a828a; font-size: 0.61rem; }
.charts-heading-icon { display: inline-grid; place-items: center; color: #ca1760; }
.charts-heading-icon svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.charts-list { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.charts-list li { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 7px; align-items: center; padding: 7px 0; border-bottom: 1px solid #e5e8eb; }
.chart-rank { color: #ca1760; font-size: 0.9rem; font-weight: 800; text-align: center; }
.charts-list a { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 8px; align-items: center; min-width: 0; }
.charts-list img { width: 42px; height: 42px; border-radius: 3px; object-fit: cover; }
.charts-list strong, .charts-list small { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; }
.charts-list strong { -webkit-line-clamp: 2; font-size: 0.68rem; line-height: 1.2; }
.charts-list small { margin-top: 2px; -webkit-line-clamp: 1; color: #7a828a; font-size: 0.6rem; line-height: 1.2; }
.charts-source { margin: 8px 0 0; color: #7a828a; font-size: 0.58rem; text-align: right; }
body.is-home .site-footer { margin-top: 0; }
.footer-grid { grid-template-columns: 1.25fr repeat(3, 0.72fr) 1.45fr; }

body.is-home .portal-hero-main,
body.is-home .hero-mini,
body.is-home .contest-banner {
	box-shadow: 0 16px 38px rgba(25, 31, 38, 0.2);
}
body.is-home .quick-nav,
body.is-home .portal-panel {
	border: 1px solid rgba(255, 255, 255, 0.84);
	background: rgba(255, 255, 255, 0.58);
	box-shadow: 0 14px 36px rgba(34, 42, 50, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.94);
	-webkit-backdrop-filter: saturate(170%) blur(20px);
	backdrop-filter: saturate(170%) blur(20px);
}
body.is-home .quick-nav a {
	border-color: rgba(255, 255, 255, 0.62);
	background: rgba(255, 255, 255, 0.16);
}
body.is-home .quick-nav a:hover,
body.is-home .quick-nav a.is-active {
	background: rgba(255, 255, 255, 0.72);
}
body.is-home .rubric-column {
	border-color: rgba(105, 115, 125, 0.2);
}

@media (max-width: 1050px) {
	.portal-hero { grid-template-columns: 1.5fr 1fr; }
	.portal-columns { grid-template-columns: 1fr; }
	.portal-sidebar { grid-template-columns: 1fr 1fr; }
	.rubric-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 24px; }
	.portal-bottom-grid { grid-template-columns: 1fr; }
	.footer-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 760px) {
	body.is-home { background-attachment: scroll; background-position: center top; }
	body.is-home .main-layout { width: min(100% - 20px, 1320px); }
	.portal-hero { grid-template-columns: 1fr; }
	.portal-hero-main { min-height: 430px; }
	.portal-hero-side { grid-template-rows: repeat(3, 125px); }
	.quick-nav { grid-template-columns: repeat(2, 1fr); }
	.quick-nav a { border-bottom: 1px solid #e5e8eb; }
	.latest-grid, .review-grid, .pick-grid, .portal-sidebar { grid-template-columns: 1fr; }
	.rubric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.portal-hero-copy { left: 20px; right: 20px; bottom: 20px; }
	.portal-hero-copy h1 { font-size: 1.7rem; }
	.contest-banner > div { max-width: 100%; }
	.footer-grid { grid-template-columns: 1fr; }
}

/* Kino & Streaming category */
.film-portal { color:#17191c; }
.film-top-grid { display:grid; grid-template-columns:minmax(0,2.2fr) 300px; gap:14px; margin-bottom:16px; }
.film-hero { position:relative; display:block; overflow:hidden; min-height:430px; border-radius:5px; background:#08101a; color:#fff; }
.film-hero-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.film-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(2,8,15,.92),rgba(2,8,15,.12)); }
.film-hero-copy { position:absolute; left:28px; bottom:28px; z-index:2; display:flex; flex-direction:column; align-items:flex-start; max-width:570px; }
.film-hero-copy em,.film-tip article>span { padding:5px 9px; border-radius:2px; background:#087fbd; color:#fff; font-size:.64rem; font-style:normal; font-weight:800; text-transform:uppercase; }
.film-hero-copy strong { margin:10px 0; font-size:2.25rem; line-height:1.08; }
.film-hero-copy strong,.film-feature-list strong { transition:color .18s ease; }
.film-hero:hover .film-hero-copy strong,.film-feature-list article:hover strong { color:var(--dm-logo-red); }
.film-hero-copy>span:not(.film-shade) { color:#e6ebef; font-size:.88rem; line-height:1.45; }
.film-hero-copy b,.film-tip article>a { margin-top:18px; padding:9px 14px; border-radius:3px; background:#087fbd; color:#fff; font-size:.7rem; text-transform:uppercase; }
.film-content-grid { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:16px; align-items:start; }
.film-primary,.film-sidebar { display:grid; gap:16px; }
.film-panel,.film-tip { padding:14px; border:1px solid #dfe3e7; border-radius:5px; background:#fff; }
.film-panel>header { margin-bottom:11px; padding-bottom:9px; border-bottom:1px solid #e3e7ea; }
.film-panel h2 { display:flex; align-items:center; gap:7px; margin:0; font-size:.88rem; text-transform:uppercase; }
.film-heading-icon { display:inline-flex; width:18px; height:18px; flex:0 0 18px; color:#078bc7; }
.film-heading-icon svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.film-stream-top ol,.netflix-series ol { margin:0; padding:0; list-style:none; counter-reset:filmrank; }
.film-stream-top li { display:grid; grid-template-columns:20px 46px 1fr; gap:8px; align-items:center; padding:8px 0; border-bottom:1px solid #e5e8eb; counter-increment:filmrank; }
.film-stream-top li::before { content:counter(filmrank); color:#087fbd; font-weight:800; text-align:center; }
.film-stream-top img { width:46px; height:64px; object-fit:cover; }
.film-poster-placeholder { display:grid; width:46px; height:64px; place-items:center; background:linear-gradient(145deg,#151515,#3b070a); color:#e50914; font-size:1.4rem; font-weight:900; }
.film-stream-top strong,.film-stream-top small { display:block; font-size:.66rem; line-height:1.2; }
.film-stream-top small { margin-top:3px; color:#7b838b; }
.film-tip { display:grid; grid-template-columns:minmax(260px,.9fr) 1.1fr; padding:0; overflow:hidden; }
.film-tip>div { min-height:280px; }
.film-tip-image { width:100%; height:100%; object-fit:cover; }
.film-tip article { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:26px; }
.film-tip h2 { margin:10px 0; font-size:1.55rem; line-height:1.15; }
.film-tip p { color:#626a73; line-height:1.5; }
.film-card-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.film-card-grid article { min-width:0; }
[data-film-item][hidden] { display:none!important; }
.film-filter-empty { margin:14px 0 0; color:#69717a; font-size:.72rem; }
.film-card-image { width:100%; aspect-ratio:16/10; object-fit:cover; }
.film-video-trigger { position:relative; display:block; width:100%; padding:0; border:0; background:#10151b; }
.film-video-trigger>span { position:absolute; left:10px; bottom:10px; display:grid; width:30px; height:30px; place-items:center; border-radius:50%; background:#ca1760; color:#fff; }
.film-card-grid h3 { margin:8px 0 5px; font-size:.78rem; line-height:1.25; }
.film-card-grid h3 a { color:#17191c; transition:color .18s ease; }
.film-card-grid h3 a:hover { color:var(--dm-logo-red); }
.film-card-grid p { margin:0; color:#69717a; font-size:.66rem; line-height:1.4; }
.film-feature-list { display:grid; gap:11px; }
.film-feature-list article { display:grid; grid-template-columns:180px 1fr; gap:13px; align-items:center; }
.film-feature-image { width:180px; aspect-ratio:16/9; object-fit:cover; }
.film-feature-list .film-video-trigger>span { left:50%; bottom:50%; transform:translate(-50%,50%); width:38px; height:38px; }
.film-feature-list strong { font-size:.82rem; }
.film-feature-list p { margin:4px 0 0; color:#69717a; font-size:.68rem; }
.cinema-list article { display:grid; grid-template-columns:42px 1fr; gap:9px; align-items:center; padding:9px 0; border-bottom:1px solid #e5e8eb; }
.cinema-list time { display:grid; min-height:42px; place-items:center; border:1px solid #cfd6dc; border-radius:3px; font-size:.55rem; }
.cinema-list time b { font-size:.9rem; }
.cinema-list strong { font-size:.7rem; }
.cinema-poster-list article { grid-template-columns:38px 42px 1fr; }
.cinema-poster-list article>img,.cinema-poster-fallback { width:38px; height:56px; border-radius:2px; object-fit:cover; }
.cinema-poster-fallback { display:grid; place-items:center; background:#171026; color:#b77be0; font-size:.5rem; font-weight:800; text-transform:uppercase; }
.film-data-note { color:#69717a; font-size:.7rem; line-height:1.45; }
.film-genres>div { display:flex; flex-wrap:wrap; gap:7px; }
.film-genres button { padding:6px 10px; border:1px solid #d5dbe0; border-radius:3px; background:#fff; color:#30363b; font-size:.65rem; cursor:pointer; }
.film-genres button:hover,.film-genres button.is-active { border-color:#087fbd; background:#087fbd; color:#fff; }
.netflix-series { overflow:hidden; }
.netflix-rank-track { display:flex; gap:8px; overflow-x:auto; margin:0; padding:18px 20px 22px 28px; border-radius:5px; background:transparent; list-style:none; scroll-behavior:smooth; scroll-snap-type:x mandatory; overscroll-behavior-inline:contain; scrollbar-color:#e50914 rgba(24,29,34,.14); scrollbar-width:thin; }
.netflix-rank-track::-webkit-scrollbar { height:7px; }
.netflix-rank-track::-webkit-scrollbar-track { background:rgba(24,29,34,.14); border-radius:8px; }
.netflix-rank-track::-webkit-scrollbar-thumb { background:#e50914; border-radius:8px; }
.netflix-series li { position:relative; display:flex; flex:0 0 190px; min-width:0; flex-direction:column; padding-left:48px; color:#17191c; font-family:Inter,Arial,Helvetica,sans-serif; scroll-snap-align:start; }
.netflix-series li>b { position:absolute; left:0; bottom:60px; z-index:0; color:transparent; font-family:Arial Black,Inter,Arial,sans-serif; font-size:8.5rem; font-weight:900; line-height:.78; letter-spacing:0; -webkit-text-stroke:3px #e50914; paint-order:stroke fill; text-shadow:0 7px 20px rgba(129,0,8,.16); }
.netflix-series img,.netflix-cover-placeholder { position:relative; z-index:1; width:138px; aspect-ratio:2/3; border:1px solid rgba(255,255,255,.75); border-radius:5px; object-fit:cover; box-shadow:0 12px 26px rgba(27,34,40,.22); }
.netflix-cover-placeholder { display:grid; place-items:center; background:linear-gradient(145deg,#111 0%,#280507 70%,#111 100%); }
.netflix-cover-placeholder i { color:#e50914; font-size:2.4rem; font-style:normal; font-weight:900; }
.netflix-series li>span:last-child { position:relative; z-index:2; width:138px; }
.netflix-series span strong,.netflix-series span small { display:-webkit-box; overflow:hidden; margin-top:8px; -webkit-box-orient:vertical; -webkit-line-clamp:2; color:#17191c; font-size:.7rem; font-weight:750; line-height:1.25; }
.netflix-series span small { margin-top:3px; color:#5f6871; font-size:.59rem; font-weight:500; }
.netflix-series .steam-source { margin-bottom:0; }
.film-video-modal { width:min(900px,calc(100% - 28px)); padding:0; border:0; background:#000; }
.film-video-modal::backdrop { background:rgba(0,0,0,.82); }
.film-video-modal>div { aspect-ratio:16/9; }
.film-video-modal iframe { width:100%; height:100%; border:0; }
.film-video-close { position:absolute; right:8px; top:8px; z-index:2; width:38px; height:38px; padding:0; border:0; border-radius:50%; background:#fff; color:#111; font-size:1.4rem; }
.image-lightbox { width:min(760px,calc(100% - 28px)); max-height:calc(100vh - 28px); padding:0; border:0; border-radius:4px; background:#111; color:#fff; overflow:hidden; }
.image-lightbox::backdrop { background:rgba(0,0,0,.88); }
.image-lightbox figure { display:grid; place-items:center; margin:0; max-height:calc(100vh - 28px); }
.image-lightbox img { display:block; max-width:100%; max-height:calc(100vh - 78px); object-fit:contain; }
.image-lightbox figcaption { width:100%; min-height:34px; padding:9px 48px 9px 12px; color:#e8eaec; font-size:.7rem; text-align:center; }
.image-lightbox-close { position:absolute; right:8px; top:8px; z-index:2; width:38px; height:38px; padding:0; border:0; border-radius:50%; background:#fff; color:#111; font-size:1.4rem; cursor:pointer; }
.image-lightbox-prev,.image-lightbox-next { position:absolute; top:50%; z-index:3; display:grid; width:44px; height:52px; padding:0; place-items:center; transform:translateY(-50%); border:0; border-radius:4px; background:rgba(255,255,255,.9); color:#111; font-size:2rem; cursor:pointer; }.image-lightbox-prev { left:10px; }.image-lightbox-next { right:10px; }.image-lightbox-prev[hidden],.image-lightbox-next[hidden] { display:none; }
.article-gallery { margin:22px 0; padding:14px; border:1px solid var(--dm-line); border-radius:6px; background:#f7f9fb; }.article-gallery>header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:11px; }.article-gallery>header h2 { margin:0; font-size:1rem; }.article-gallery>header span { color:var(--dm-muted); font-size:.65rem; }.article-gallery-main { overflow:hidden; margin:0; border-radius:5px; background:#111; }.article-gallery-main img { display:block; width:100%; aspect-ratio:16/10; object-fit:contain; cursor:zoom-in; }.article-gallery-main figcaption { min-height:0; padding:8px 11px; background:#111; color:#e8edf1; font-size:.66rem; text-align:center; }.article-gallery-main figcaption:empty { display:none; }.article-gallery-thumbs { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:8px; margin-top:9px; }.article-gallery-thumbs button { min-width:0; padding:2px; border:2px solid transparent; border-radius:4px; background:#fff; cursor:pointer; }.article-gallery-thumbs button:hover,.article-gallery-thumbs button.is-active { border-color:var(--dm-brand); }.article-gallery-thumbs img { display:block; width:100%; aspect-ratio:4/3; border-radius:2px; object-fit:cover; }
.film-stream-top img[role="button"],.netflix-series img[role="button"],.cinema-poster-list img[role="button"],.article-cinema-starts img[role="button"],.article-netflix img[role="button"],.provider-top img[role="button"],.music-chart img[role="button"],.article-music-chart img[role="button"],.music-albums img[role="button"],.music-release-list img[role="button"] { cursor:zoom-in; }

/* Consent */
.consent-banner[hidden] { display:none; }
.consent-banner { position:fixed; inset:auto 18px 18px; z-index:10000; width:min(620px,calc(100% - 36px)); margin:auto; padding:22px; border:1px solid #d9dee3; border-radius:6px; background:#fff; color:#17191c; box-shadow:0 18px 60px rgba(0,0,0,.28); }
.consent-banner h2 { margin:0 0 8px; font-size:1.15rem; }
.consent-banner p { margin:0; color:#5f6871; font-size:.78rem; line-height:1.5; }
.consent-options { display:grid; gap:8px; margin:16px 0; }
.consent-options label { display:flex; justify-content:space-between; gap:14px; align-items:center; font-size:.78rem; }
.consent-actions { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.consent-actions button { min-height:42px; padding:7px; font-size:.7rem; }
.consent-reject { border-color:#606a73!important; background:#fff!important; color:#17191c!important; }
.consent-settings-button { margin-top:12px; padding:0; border:0; background:none; color:#cfd8e0; font-size:.7rem; text-decoration:underline; }

@media(max-width:1040px){.film-top-grid,.film-content-grid{grid-template-columns:1fr}.film-sidebar{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.film-hero{min-height:430px}.film-hero-copy strong{font-size:1.65rem}.film-tip{grid-template-columns:1fr}.film-tip>div{min-height:240px}.film-card-grid{grid-template-columns:repeat(2,1fr)}.film-sidebar{grid-template-columns:1fr}.film-feature-list article{grid-template-columns:110px 1fr}.film-feature-image{width:110px}.netflix-rank-track{margin-inline:-14px;padding-inline:18px}.netflix-series li{flex-basis:172px;padding-left:42px}.netflix-series img,.netflix-cover-placeholder,.netflix-series li>span:last-child{width:125px}.netflix-series li>b{font-size:7.5rem}.consent-actions{grid-template-columns:1fr}}

/* Music category portal */
.music-portal { color:#17191c; }
.music-top-grid { display:grid; grid-template-columns:minmax(0,2.2fr) 310px; gap:14px; margin-bottom:14px; }
.music-hero { position:relative; display:block; overflow:hidden; min-height:440px; border-radius:5px; background:#101018; color:#fff; }
.music-hero-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.music-overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(8,5,13,.94),rgba(8,5,13,.12)); }
.music-hero-copy { position:absolute; left:30px; right:30px; bottom:28px; z-index:2; display:flex; max-width:600px; flex-direction:column; align-items:flex-start; }
.music-hero-copy em,.music-news-grid article>span { padding:5px 9px; border-radius:2px; background:#ca1760; color:#fff; font-size:.62rem; font-style:normal; font-weight:800; text-transform:uppercase; }
.music-hero-copy strong { margin:10px 0; font-size:2.2rem; line-height:1.08; }
.music-hero-copy strong { transition:color .18s ease; }
.music-hero:hover .music-hero-copy strong { color:var(--dm-logo-red); }
.music-hero-copy>span { color:#eef0f3; font-size:.84rem; line-height:1.45; }
.music-hero-copy b { margin-top:18px; padding:9px 14px; border-radius:3px; background:#078bc7; font-size:.7rem; text-transform:uppercase; }
.music-panel { padding:14px; border:1px solid #dfe3e7; border-radius:5px; background:#fff; }
.music-panel>header { margin-bottom:12px; padding-bottom:10px; border-bottom:1px solid #e3e7ea; }
.music-panel h2 { display:flex; align-items:center; gap:7px; margin:0; font-size:.88rem; text-transform:uppercase; }
.music-panel h2>span { display:inline-flex; width:18px; height:18px; color:#ca1760; }
.music-panel h2 svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.music-chart ol,.article-music-chart ol { margin:0; padding:0; list-style:none; counter-reset:music-rank; }
.music-chart li,.article-music-chart li { counter-increment:music-rank; border-bottom:1px solid #e5e8eb; }
.music-chart a,.article-music-chart a { display:grid; grid-template-columns:20px 48px 1fr; gap:8px; align-items:center; padding:7px 0; color:#17191c; }
.music-chart a::before,.article-music-chart a::before { content:counter(music-rank); color:#ca1760; font-weight:800; text-align:center; }
.music-chart img,.article-music-chart img { width:48px; height:48px; object-fit:cover; }
.music-chart strong,.music-chart small,.article-music-chart strong,.article-music-chart small { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; font-size:.65rem; line-height:1.2; }
.music-chart small,.article-music-chart small { margin-top:3px; color:#747c84; -webkit-line-clamp:1; }
.music-filters { display:grid; grid-template-columns:repeat(8,1fr); margin-bottom:16px; border:1px solid #dfe3e7; border-radius:5px; background:#fff; }
.music-filters button { min-height:46px; padding:7px; border:0; border-right:1px solid #e3e7ea; background:#fff; color:#34393e; font-size:.67rem; font-weight:750; cursor:pointer; }
.music-filters button:last-child { border-right:0; }
.music-filters button:hover,.music-filters button.is-active { background:#ca1760; color:#fff; }
.music-layout { display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:16px; align-items:start; }
.music-main,.music-sidebar { display:grid; gap:16px; }
.music-news-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.music-news-grid article { min-width:0; }
.music-news-image { width:100%; aspect-ratio:16/10; object-fit:cover; }
.music-news-grid article>span { display:inline-block; margin-top:8px; }
.music-news-grid h3 { margin:7px 0 5px; font-size:.84rem; line-height:1.25; }
.music-news-grid h3 a { color:#17191c; transition:color .18s ease; }
.music-news-grid h3 a:hover { color:var(--dm-logo-red); }
.music-news-grid p { margin:0; color:#69717a; font-size:.68rem; line-height:1.4; }
[data-music-item][hidden] { display:none!important; }
.music-empty { color:#69717a; font-size:.72rem; }
.music-video-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.music-video-image { width:100%; aspect-ratio:16/9; object-fit:cover; }
.music-video-grid h3 { margin:7px 0 0; font-size:.72rem; line-height:1.25; }
.music-albums>div { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
.music-albums a { position:relative; min-width:0; color:#17191c; }
.music-albums a>b { position:absolute; left:5px; top:5px; z-index:2; display:grid; width:25px; height:25px; place-items:center; border-radius:3px; background:#ca1760; color:#fff; }
.music-albums img { width:100%; aspect-ratio:1; object-fit:cover; }
.music-albums strong,.music-albums small { display:-webkit-box; overflow:hidden; margin-top:5px; -webkit-box-orient:vertical; -webkit-line-clamp:2; font-size:.65rem; line-height:1.2; }
.music-albums small { color:#747c84; -webkit-line-clamp:1; }
.music-date-list a { display:grid; grid-template-columns:44px 1fr; gap:9px; align-items:center; padding:9px 0; border-bottom:1px solid #e5e8eb; color:#17191c; }
.music-date-list time { display:grid; min-height:44px; place-items:center; border:1px solid #f0b8d0; border-radius:3px; background:#fcecf3; color:#9f225a; font-size:.54rem; }
.music-date-list time b { font-size:.9rem; }
.music-date-list strong { font-size:.7rem; line-height:1.25; }
.music-release-list,.music-event-list { display:grid; }
.music-release-list a { display:grid; grid-template-columns:48px 1fr; gap:9px; align-items:center; padding:8px 0; border-bottom:1px solid #e5e8eb; color:#17191c; }
.music-release-list img { width:48px; height:48px; border-radius:3px; object-fit:cover; }
.music-release-list strong,.music-release-list small,.music-event-list strong,.music-event-list small { display:block; font-size:.68rem; line-height:1.2; }
.music-release-list small,.music-event-list small { margin-top:3px; color:#737b84; font-size:.56rem; }
.music-event-list a { display:grid; grid-template-columns:54px 38px 1fr; gap:8px; align-items:center; padding:8px 0; border-bottom:1px solid #e5e8eb; color:#17191c; }
.music-event-list img { width:54px; height:42px; border-radius:3px; object-fit:cover; }
.music-event-list time { display:grid; min-height:38px; place-items:center; border:1px solid #f0b8d0; border-radius:3px; background:#fcecf3; color:#9f225a; font-size:.5rem; }
.music-event-list time b { font-size:.78rem; }
.music-data-note { color:#737b84; font-size:.66rem; line-height:1.45; }
.tmdb-attribution { margin:12px 0 0; color:#737b84; font-size:.58rem; text-align:right; }
.music-facts dl { margin:0; }
.music-facts dl>div { display:grid; grid-template-columns:92px 1fr; gap:8px; padding:8px 0; border-bottom:1px solid var(--dm-line); font-size:.7rem; }
.music-facts dt { color:var(--dm-muted); }
.music-facts dd { margin:0; font-weight:700; }
.article-music-chart { border-top:4px solid #ca1760; }
@media(max-width:1040px){.music-top-grid,.music-layout{grid-template-columns:1fr}.music-sidebar{grid-template-columns:1fr 1fr}.music-filters{grid-template-columns:repeat(4,1fr)}}
@media(max-width:760px){.music-hero{min-height:410px}.music-hero-copy strong{font-size:1.6rem}.music-filters{grid-template-columns:repeat(2,1fr)}.music-news-grid{grid-template-columns:1fr}.music-video-grid{grid-template-columns:repeat(2,1fr)}.music-albums>div{grid-template-columns:repeat(2,1fr)}.music-sidebar{grid-template-columns:1fr}}

/* Blu-ray & DVD collectors portal */
.disc-portal { color:#17191c; }
.disc-showcase { display:grid; grid-template-columns:minmax(0,1.9fr) 360px; min-height:440px; margin-bottom:14px; overflow:hidden; border-radius:5px; background:#071321; box-shadow:0 12px 30px rgba(9,25,40,.16); }
.disc-feature { position:relative; display:block; min-height:440px; overflow:hidden; color:#fff; }
.disc-feature-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.disc-feature-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(3,12,22,.94),rgba(3,12,22,.12)); }
.disc-feature-copy { position:absolute; left:30px; right:30px; bottom:30px; z-index:2; display:flex; max-width:610px; flex-direction:column; align-items:flex-start; }
.disc-feature-copy em { padding:5px 9px; background:#087fbd; color:#fff; font-size:.62rem; font-style:normal; font-weight:800; text-transform:uppercase; }
.disc-feature-copy strong { margin:10px 0; font-size:2.15rem; line-height:1.08; }
.disc-feature-copy>span { color:#e9eef2; font-size:.84rem; line-height:1.45; }
.disc-feature-copy b { margin-top:18px; padding:9px 14px; background:#087fbd; font-size:.68rem; text-transform:uppercase; }
.disc-release-rail { padding:20px; background:linear-gradient(160deg,#071321,#102c46); color:#fff; }
.disc-release-rail h2,.disc-shelf>header,.disc-collectors>header,.disc-reviews>header,.disc-trailers>header { display:flex; align-items:center; gap:9px; margin:0; }
.disc-release-rail h2 { padding-bottom:13px; border-bottom:1px solid rgba(255,255,255,.16); font-size:.9rem; text-transform:uppercase; }
.disc-release-rail h2 span,.disc-shelf>header>span,.disc-collectors>header>span,.disc-reviews>header>span,.disc-trailers>header>span { display:inline-flex; width:22px; height:22px; color:#42a9df; }
.disc-portal svg,.disc-facts svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.8; }
.disc-release-rail a { display:grid; grid-template-columns:46px 1fr; gap:10px; align-items:center; padding:11px 0; border-bottom:1px solid rgba(255,255,255,.12); color:#fff; }
.disc-release-rail time { display:grid; min-height:46px; place-items:center; border:1px solid #42a9df; color:#bfe9ff; font-size:.53rem; }
.disc-release-rail time b { font-size:.95rem; }
.disc-release-rail a span,.disc-release-rail strong { display:block; min-width:0; }
.disc-release-rail i { color:#75c6f0; font-size:.56rem; font-style:normal; text-transform:uppercase; }
.disc-release-rail strong { display:-webkit-box; margin-top:3px; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; font-size:.69rem; line-height:1.25; }
.disc-filters { display:grid; grid-template-columns:repeat(7,1fr); margin-bottom:16px; border:1px solid #dce3e8; background:#fff; }
.disc-filters button { min-height:48px; border:0; border-right:1px solid #e2e7eb; background:#fff; color:#30363b; font-size:.68rem; font-weight:800; cursor:pointer; }
.disc-filters button:hover,.disc-filters button.is-active { background:#087fbd; color:#fff; }
.disc-shelf,.disc-collectors,.disc-reviews,.disc-trailers { padding:18px; border:1px solid #dce3e8; border-radius:5px; background:#fff; }
.disc-shelf>header,.disc-collectors>header,.disc-reviews>header,.disc-trailers>header { margin-bottom:18px; }
.disc-shelf header p,.disc-collectors header p,.disc-reviews header p,.disc-trailers header p { margin:0 0 2px; color:#087fbd; font-size:.57rem; font-weight:800; text-transform:uppercase; }
.disc-shelf header h2,.disc-collectors header h2,.disc-reviews header h2,.disc-trailers header h2 { margin:0; font-size:1rem; }
.disc-cover-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:18px 14px; padding:18px 12px 22px; border-bottom:12px solid #13283b; background:linear-gradient(#f8fafb,#e7edf1); box-shadow:inset 0 -3px 0 #7890a2; }
.disc-cover-grid article { min-width:0; }
.disc-cover-grid article>a:first-child { position:relative; display:block; padding-left:7px; filter:drop-shadow(4px 7px 5px rgba(0,0,0,.24)); }
.disc-spine { position:absolute; left:0; top:0; bottom:0; z-index:2; width:8px; overflow:hidden; background:#087fbd; color:transparent; }
.disc-cover-image { width:100%; aspect-ratio:2/3; object-fit:cover; background:#dce4ea; }
.disc-cover-grid article>i { display:inline-block; margin-top:9px; padding:3px 6px; background:#e8f5fc; color:#087fbd; font-size:.54rem; font-style:normal; font-weight:800; text-transform:uppercase; }
.disc-cover-grid h3 { margin:5px 0 0; font-size:.72rem; line-height:1.25; }
[data-disc-item][hidden] { display:none!important; }
.disc-empty { color:#69717a; font-size:.72rem; }
.disc-lower-grid { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(280px,.7fr); gap:16px; margin-top:16px; }
.disc-collectors>div { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.disc-collectors article { overflow:hidden; background:#071321; }
.disc-collectors article>a { position:relative; display:block; color:#fff; }
.disc-edition-image { width:100%; aspect-ratio:16/10; object-fit:cover; opacity:.82; }
.disc-collectors article span { position:absolute; inset:auto 10px 10px; }
.disc-collectors article i { display:block; color:#75c6f0; font-size:.55rem; font-style:normal; text-transform:uppercase; }
.disc-collectors article strong { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; font-size:.72rem; line-height:1.25; }
.disc-reviews>a { display:grid; grid-template-columns:82px 1fr; gap:10px; align-items:center; padding:9px 0; border-bottom:1px solid #e4e8eb; color:#17191c; }
.disc-review-image { width:82px; aspect-ratio:16/10; object-fit:cover; }
.disc-reviews strong,.disc-reviews small { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; font-size:.68rem; line-height:1.25; }
.disc-reviews small { margin-top:4px; color:#747c84; font-size:.59rem; }
.disc-trailers { margin-top:16px; }
.disc-trailers>div { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.disc-trailer-image { width:100%; aspect-ratio:16/9; object-fit:cover; }
.disc-trailers article>strong { display:block; margin-top:7px; font-size:.7rem; line-height:1.25; }
.disc-facts { border-top:4px solid #087fbd; }
.disc-facts dl { margin:0; }
.disc-facts dl>div { display:grid; grid-template-columns:94px 1fr; gap:8px; padding:8px 0; border-bottom:1px solid var(--dm-line); font-size:.68rem; }
.disc-facts dt { color:var(--dm-muted); }
.disc-facts dd { margin:0; font-weight:700; overflow-wrap:anywhere; }
@media(max-width:1040px){.disc-showcase{grid-template-columns:1fr}.disc-release-rail>div{display:grid;grid-template-columns:repeat(2,1fr);gap:0 18px}.disc-cover-grid{grid-template-columns:repeat(4,1fr)}.disc-lower-grid{grid-template-columns:1fr}.disc-filters{grid-template-columns:repeat(4,1fr)}}
@media(max-width:760px){.disc-feature,.disc-showcase{min-height:410px}.disc-feature-copy strong{font-size:1.55rem}.disc-release-rail>div{grid-template-columns:1fr}.disc-filters{grid-template-columns:repeat(2,1fr)}.disc-cover-grid{grid-template-columns:repeat(2,1fr)}.disc-collectors>div{grid-template-columns:1fr}.disc-trailers>div{grid-template-columns:repeat(2,1fr)}}

/* Lifestyle, DIY and maker portal */
.lifestyle-portal { --life-coral:#f36f56; --life-peach:#ffe2d8; --life-green:#78986e; --life-orange:#eb9a35; color:#25231f; }
.life-hero-grid { display:grid; grid-template-columns:minmax(0,2.3fr) 330px; gap:12px; min-height:430px; margin-bottom:14px; }
.life-hero { position:relative; display:block; overflow:hidden; border-radius:5px; background:#36261c; color:#fff; }
.life-hero-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.life-hero>span { position:absolute; inset:0; background:linear-gradient(90deg,rgba(45,27,17,.86),rgba(45,27,17,.08)); }
.life-hero>div { position:absolute; left:32px; bottom:32px; z-index:2; max-width:590px; }
.life-hero em { display:inline-block; padding:5px 9px; background:var(--life-coral); font-size:.62rem; font-style:normal; font-weight:800; text-transform:uppercase; }
.life-hero strong { display:block; margin:9px 0; font-family:Georgia,serif; font-size:2.5rem; line-height:1.08; }
.life-hero p { max-width:520px; margin:0; font-size:.86rem; line-height:1.45; }
.life-hero b { display:inline-block; margin-top:18px; padding:10px 15px; border-radius:3px; background:var(--life-coral); font-size:.7rem; }
.life-top-list { display:grid; gap:9px; }
.life-top-list a { display:grid; grid-template-columns:110px 30px 1fr; gap:9px; align-items:center; overflow:hidden; border:1px solid #eedfd7; border-radius:5px; background:#fff; color:#26231f; }
.life-top-image { width:110px; height:100%; min-height:96px; object-fit:cover; }
.life-top-list b { display:grid; width:25px; height:25px; place-items:center; border-radius:50%; background:var(--life-peach); color:#bd513e; }
.life-top-list a:nth-child(2) b { background:#dce9d8;color:#55774c; }.life-top-list a:nth-child(3) b { background:#ffebc9;color:#b56e18; }
.life-top-list strong { display:-webkit-box; overflow:hidden; padding-right:8px; -webkit-box-orient:vertical; -webkit-line-clamp:3; font-family:Georgia,serif; font-size:.72rem; line-height:1.3; }
.life-topics { display:grid; grid-template-columns:repeat(7,1fr); margin-bottom:16px; border:1px solid #eadfd9; background:#fff; }
.life-topics button { min-height:58px; border:0; border-right:1px solid #eadfd9; background:#fff; color:#39342f; font-family:Georgia,serif; font-size:.67rem; font-weight:700; cursor:pointer; }
.life-topics button span { display:inline-flex; width:23px; height:23px; margin-right:7px; vertical-align:middle; color:var(--life-coral); }
.life-topics button span svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.life-topics button:hover,.life-topics button.is-active { background:var(--life-peach); color:#9e3f2f; }
.life-content-grid { display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:16px; align-items:start; }
.life-content-grid main,.life-sidebar { display:grid; gap:16px; }
.life-section,.life-sidebar>section { padding:14px; border:1px solid #eadfd9; border-radius:5px; background:#fff; }
.life-section>header,.life-sidebar section>header { margin-bottom:12px; padding-bottom:8px; border-bottom:2px solid var(--life-peach); }
.life-section h2,.life-sidebar h2 { margin:0; font-size:.84rem; text-transform:uppercase; }
.life-project-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px 14px; }
.life-project-image { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:4px; }
.life-project-grid i { display:inline-block; margin-top:7px; padding:3px 6px; border-radius:8px; background:var(--life-peach); color:#b84835; font-size:.52rem; font-style:normal; font-weight:800; text-transform:uppercase; }
.life-project-grid article:nth-child(3n+2) i { background:#dce9d8;color:#55774c; }.life-project-grid article:nth-child(3n) i { background:#ffebc9;color:#a96716; }
.life-project-grid h3 { margin:6px 0 4px; font-family:Georgia,serif; font-size:.86rem; line-height:1.24; }
.life-project-grid p { margin:0; color:#716962; font-size:.66rem; line-height:1.45; }
[data-life-item][hidden] { display:none!important; }.life-empty { color:#716962;font-size:.72rem; }
.life-guides>div { display:grid; grid-template-columns:repeat(2,1fr); gap:0 18px; }
.life-guides a { display:grid; grid-template-columns:92px 1fr 16px; gap:10px; align-items:center; padding:9px 0; border-bottom:1px solid #eee5e0; color:#27231f; }
.life-guide-image { width:92px; aspect-ratio:16/10; object-fit:cover; border-radius:3px; }
.life-guides strong,.life-guides small { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; font-family:Georgia,serif; font-size:.7rem; line-height:1.25; }
.life-guides small { margin-top:4px; color:#756c65; font-family:Arial,sans-serif; font-size:.59rem; }
.life-guides b { color:var(--life-coral);font-size:1.2rem; }
.life-review-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; }
.life-review-image { width:100%; aspect-ratio:4/3; object-fit:contain; background:#faf8f5; }
.life-review-grid h3 { margin:7px 0; font-family:Georgia,serif; font-size:.68rem; line-height:1.25; }
.life-review-grid article>a:last-child { color:var(--life-coral);font-size:.6rem;font-weight:800; }
.life-sidebar>section { padding:13px; }
.makerworld-list { margin:0; padding:0; list-style:none; counter-reset:maker-rank; }
.makerworld-list li { counter-increment:maker-rank; border-bottom:1px solid #eee5e0; }
.makerworld-list a { display:grid; grid-template-columns:22px 52px 1fr; gap:8px; align-items:center; padding:8px 0; color:#27231f; }
.makerworld-list a::before { content:counter(maker-rank); display:grid; width:21px;height:21px;place-items:center;border-radius:50%;background:var(--life-peach);color:#b84835;font-weight:800; }
.makerworld-list img { width:52px;height:52px;object-fit:cover;border-radius:3px;background:#f3efeb; }
.makerworld-list span,.makerworld-list strong,.makerworld-list small { display:block;min-width:0; }
.makerworld-list strong { display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-family:Georgia,serif;font-size:.66rem;line-height:1.25; }
.makerworld-list small { margin-top:3px;color:#78986e;font-size:.55rem;font-weight:700; }
.popular-projects { overflow:hidden; }
.popular-projects .makerworld-list li:first-child { margin-bottom:7px; border:0; border-radius:5px; background:#35291f; }
.popular-projects .makerworld-list li:first-child a { position:relative; display:block; min-height:175px; padding:0; color:#fff; }
.popular-projects .makerworld-list li:first-child a::before { position:absolute; left:9px; top:9px; z-index:3; content:"1"; display:grid; width:25px; height:25px; place-items:center; border-radius:50%; background:#f36f56; color:#fff; font-weight:800; }
.popular-projects .makerworld-list li:first-child img,.popular-projects .makerworld-list li:first-child .maker-placeholder { width:100%; height:175px; border-radius:5px; object-fit:cover; }
.popular-projects .makerworld-list li:first-child img { opacity:.78; }
.popular-projects .makerworld-list li:first-child .maker-copy { position:absolute; left:12px; right:12px; bottom:11px; z-index:2; padding:24px 0 0; background:linear-gradient(transparent,rgba(0,0,0,.78)); }
.popular-projects .makerworld-list li:first-child strong { font-size:.76rem; }
.popular-projects .makerworld-list li:first-child small { color:#dce9d8; }
.maker-placeholder { display:grid; width:52px; height:52px; place-items:center; border-radius:3px; background:linear-gradient(145deg,#ffe2d8,#dce9d8); color:#c8523d; }
.maker-placeholder svg { width:28px; height:28px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.popular-projects .makerworld-list li:first-child .maker-placeholder svg { width:56px; height:56px; }
.makerworld-source { display:block;margin-top:10px;color:var(--life-coral);font-size:.62rem;font-weight:800; }
.life-sidebar ul { margin:0;padding-left:18px; }.life-sidebar li { margin:7px 0;color:var(--life-green);font-size:.66rem; }.life-sidebar li a { color:#39342f; }
.life-tags { display:flex;flex-wrap:wrap;gap:6px; }.life-tags span { padding:4px 9px;border-radius:12px;background:var(--life-peach);font-size:.58rem; }.life-tags span:nth-child(3n+2){background:#dce9d8}.life-tags span:nth-child(3n){background:#ffebc9}
.lifestyle-article .article-header h1 { max-width:980px; font-family:Georgia,serif; font-weight:700; }
.lifestyle-article .article-kicker { background:#f36f56; }
.lifestyle-article .article-image img { border-radius:5px; }
.lifestyle-article .article-body { font-family:Georgia,serif; color:#302c28; }
.lifestyle-article .article-body h2,.lifestyle-article .article-body h3 { font-family:Georgia,serif; }
.lifestyle-portal h3 a:hover,.lifestyle-portal .life-guides a:hover strong,.lifestyle-portal .life-sidebar a:hover,.lifestyle-article a:hover { color:#c8523d; }
.lifestyle-portal .life-hero:hover,.lifestyle-portal .life-hero:hover strong,.lifestyle-portal .life-collectors a:hover { color:#fff; }
.lifestyle-facts { border-top:4px solid #f36f56; }
.lifestyle-facts dl { margin:0; }.lifestyle-facts dl>div { display:grid;grid-template-columns:110px 1fr;gap:8px;padding:9px 0;border-bottom:1px solid var(--dm-line);font-size:.69rem; }.lifestyle-facts dt { color:#7c7068; }.lifestyle-facts dd { margin:0;font-weight:700; }
@media(max-width:1040px){.life-hero-grid,.life-content-grid{grid-template-columns:1fr}.life-top-list{grid-template-columns:repeat(2,1fr)}.life-topics{grid-template-columns:repeat(4,1fr)}.life-review-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.life-hero{min-height:420px}.life-hero strong{font-size:1.75rem}.life-top-list{grid-template-columns:1fr}.life-topics{grid-template-columns:repeat(2,1fr)}.life-project-grid{grid-template-columns:1fr}.life-guides>div{grid-template-columns:1fr}.life-review-grid{grid-template-columns:repeat(2,1fr)}}

/* Themed article pages */
.cinema-article,.disc-article,.lifestyle-article { --article-accent:#087fbd; }
.cinema-article { --article-accent:#8b2fc9; }
.disc-article { --article-accent:#087fbd; }
.lifestyle-article { --article-accent:#f36f56; }
.cinema-article .article-header,.disc-article .article-header,.lifestyle-article .article-header { position:relative; margin-bottom:22px; padding-left:18px; border-left:5px solid var(--article-accent); }
.cinema-article .article-kicker,.disc-article .article-kicker,.lifestyle-article .article-kicker { background:var(--article-accent); }
.cinema-article .article-image,.disc-article .article-image,.lifestyle-article .article-image { overflow:hidden; border-radius:5px; box-shadow:0 12px 30px rgba(18,24,30,.1); }
.cinema-article .article-video-section>h2,.cinema-article .related-articles>h2 { color:#6c239f; }
.disc-article .article-video-section>h2,.disc-article .related-articles>h2 { color:#075d91; }
.lifestyle-article .article-video-section>h2,.lifestyle-article .related-articles>h2 { color:#c8523d; }
.cinema-article .purchase-card { border-top-color:#8b2fc9; }.cinema-article .purchase-button { background:#8b2fc9; }
.disc-article .purchase-card { border-top-color:#087fbd; }
.lifestyle-article .purchase-card { border-top-color:#f36f56; }.lifestyle-article .purchase-button { background:#f36f56; }
.latest-disc-card { border-top:4px solid #087fbd; }
.latest-disc-card>div { display:grid; gap:0; }
.latest-disc-card>div>a { display:grid; grid-template-columns:48px 1fr; gap:9px; align-items:center; padding:8px 0; border-bottom:1px solid var(--dm-line); color:var(--dm-ink); }
.latest-disc-card img { width:48px; height:68px; object-fit:cover; background:#eef2f5; }
.latest-disc-card strong,.latest-disc-card small { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; font-size:.66rem; line-height:1.2; }
.latest-disc-card small { margin-top:3px; color:var(--dm-muted); font-size:.57rem; }
.themed-more { border-top:4px solid #8b2fc9; }
.themed-more>div { display:grid; gap:0; }
.themed-more>div>a { display:grid; grid-template-columns:76px 1fr; gap:9px; align-items:center; padding:8px 0; border-bottom:1px solid var(--dm-line); color:var(--dm-ink); }
.themed-more img { width:76px; height:50px; border-radius:3px; object-fit:cover; background:#eef1f3; }
.themed-more strong { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:3; font-size:.66rem; line-height:1.2; }
.lifestyle-more { border-top-color:#f36f56; }
.lifestyle-topic-links { display:flex; flex-wrap:wrap; gap:5px; margin:11px 0 0; }
.lifestyle-topic-links a { padding:4px 8px; border-radius:12px; background:#ffe2d8; color:#a83e2c; font-size:.56rem; font-weight:700; }
.article-netflix { border-top:4px solid #e50914; }
.article-netflix ol { margin:0; padding:0; list-style:none; }
.article-netflix li { display:grid; grid-template-columns:25px 38px 1fr; gap:8px; align-items:center; padding:8px 0; border-bottom:1px solid var(--dm-line); }
.article-netflix li>b { display:grid; width:23px; height:23px; place-items:center; border-radius:3px; background:#e50914; color:#fff; font-size:.65rem; }
.article-netflix li>img,.article-netflix li>i { width:38px; height:54px; object-fit:cover; }
.article-netflix li>i { display:grid; place-items:center; background:#210406; color:#e50914; font-size:1rem; font-style:normal; font-weight:900; }
.article-netflix strong,.article-netflix small { display:block; font-size:.66rem; line-height:1.2; }
.article-netflix small { margin-top:3px; color:var(--dm-muted); font-size:.56rem; }
.provider-top { border-top:4px solid #1464d2; }
.provider-paramountplus { border-top-color:#1775c8; }.provider-disneyplus { border-top-color:#113ccf; }
.provider-top ol { margin:0; padding:0; list-style:none; }
.provider-top li { border-bottom:1px solid var(--dm-line); }
.provider-top li>a { display:grid; grid-template-columns:22px 40px 1fr; gap:8px; align-items:center; padding:7px 0; color:var(--dm-ink); }
.provider-top li b { display:grid; width:21px; height:21px; place-items:center; border-radius:50%; background:#e7effb; color:#1464d2; font-size:.6rem; }
.provider-top li img { width:40px; height:56px; object-fit:cover; border-radius:2px; }
.provider-top li strong { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; font-size:.65rem; line-height:1.2; }
.provider-movies { border-top-style:double; }
.article-cinema-starts { border-top:4px solid #8b2fc9; }
.article-cinema-starts>div { display:grid; }
.article-cinema-starts a { display:grid; grid-template-columns:42px 38px 1fr; gap:8px; align-items:center; padding:8px 0; border-bottom:1px solid var(--dm-line); color:var(--dm-ink); }
.article-cinema-starts img,.article-cinema-starts i { width:42px; height:62px; border-radius:2px; object-fit:cover; }
.article-cinema-starts i { display:grid; place-items:center; background:#171026; color:#b77be0; font-size:.5rem; font-style:normal; font-weight:800; text-transform:uppercase; }
.article-cinema-starts time { color:#8b2fc9; font-size:.62rem; font-weight:800; }
.article-cinema-starts strong { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:3; font-size:.65rem; line-height:1.2; }

/* Technik category portal */
.tech-portal { color:#17191c; --tech:#087fdb; }
.tech-top-grid { display:grid; grid-template-columns:minmax(0,2fr) minmax(280px,.9fr); gap:12px; min-height:420px; }
.tech-hero,.tech-side-heroes a { position:relative; display:block; overflow:hidden; border-radius:5px; background:#07111a; color:#fff; }
.tech-hero-image,.tech-side-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.tech-shade { position:absolute; inset:0; background:linear-gradient(0deg,rgba(3,9,15,.94),rgba(3,9,15,.05) 80%); }
.tech-hero-copy { position:absolute; left:28px; bottom:28px; z-index:2; display:flex; max-width:580px; flex-direction:column; align-items:flex-start; }
.tech-hero-copy em,.tech-side-heroes em,.tech-current-grid article>span,.tech-review-grid article>a>span { padding:4px 8px; border-radius:2px; background:var(--tech); color:#fff; font-size:.58rem; font-style:normal; font-weight:800; text-transform:uppercase; }
.tech-hero-copy strong { margin:10px 0; font-size:2.1rem; line-height:1.08; }
.tech-hero-copy>span { color:#e9edf1; font-size:.82rem; line-height:1.45; }
.tech-hero-copy b { margin-top:17px; padding:9px 14px; border-radius:3px; background:var(--tech); font-size:.68rem; text-transform:uppercase; }
.tech-side-heroes { display:grid; grid-template-rows:repeat(3,1fr); gap:9px; }
.tech-side-heroes a>span:last-child { position:absolute; inset:0; z-index:2; display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-end; padding:13px; }
.tech-side-heroes strong { display:-webkit-box; overflow:hidden; margin-top:7px; -webkit-box-orient:vertical; -webkit-line-clamp:2; font-size:.8rem; line-height:1.2; }
.tech-topic-nav { display:grid; grid-template-columns:repeat(6,1fr); margin:12px 0; border:1px solid #dce2e7; border-radius:5px; background:#fff; }
.tech-topic-nav button { display:flex; align-items:center; justify-content:center; gap:8px; min-height:50px; padding:7px; border:0; border-right:1px solid #e3e7eb; background:#fff; color:#1b2228; font-size:.67rem; font-weight:750; cursor:pointer; }
.tech-topic-nav button:last-child { border-right:0; }.tech-topic-nav button:hover,.tech-topic-nav button.is-active { background:#eaf5ff; color:#0870bd; }
.tech-topic-nav span,.tech-rubrics h3 span { display:inline-grid; width:23px; height:23px; place-items:center; color:var(--tech); }.tech-topic-nav svg,.tech-rubrics svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; }
.tech-content-grid { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:16px; align-items:start; }.tech-main,.tech-sidebar { display:grid; gap:16px; }
.tech-panel { padding:14px; border:1px solid #dfe3e7; border-radius:5px; background:#fff; }.tech-panel>header { margin-bottom:11px; padding-bottom:9px; border-bottom:1px solid #e3e7ea; }.tech-panel>header h2 { margin:0; font-size:.88rem; text-transform:uppercase; }
.tech-current-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }.tech-current-grid article[hidden] { display:none; }.tech-current-image { width:100%; aspect-ratio:16/10; border-radius:4px; object-fit:cover; }.tech-current-grid article>span { display:inline-block; margin-top:-12px; margin-left:7px; position:relative; vertical-align:top; }.tech-current-grid h3 { margin:7px 0 5px; font-size:.82rem; line-height:1.25; }.tech-current-grid p { margin:0; color:#69717a; font-size:.67rem; line-height:1.4; }.tech-filter-empty { color:#69717a; font-size:.7rem; }
.tech-rubrics { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; }.tech-rubrics>section { min-width:0; }.tech-rubrics h3 { display:flex; align-items:center; gap:5px; min-height:32px; margin:0 0 8px; font-size:.65rem; text-transform:uppercase; }.tech-rubrics h3 span { width:18px; height:18px; flex:0 0 18px; }.tech-rubric-image { width:100%; aspect-ratio:16/10; border-radius:3px; object-fit:cover; }.tech-rubrics ul { margin:7px 0 0; padding-left:14px; }.tech-rubrics li { margin:5px 0; font-size:.57rem; line-height:1.25; }.tech-rubrics p { color:#7b838b; font-size:.6rem; }
.tech-review-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }.tech-review-grid a { position:relative; display:block; color:#17191c; }.tech-review-image { width:100%; aspect-ratio:4/3; border-radius:4px; object-fit:contain; background:#eef2f5; }.tech-review-grid article>a>span { position:absolute; left:6px; top:6px; }.tech-review-grid article>a>b { position:absolute; right:6px; top:6px; padding:6px 8px; border-radius:4px; background:#087fdb; color:#fff; font-size:.72rem; white-space:nowrap; }.tech-review-grid strong { display:block; margin-top:7px; font-size:.7rem; line-height:1.25; }
.tech-article-score { display:inline-flex; align-items:baseline; gap:4px; margin-top:10px; padding:7px 11px; border-radius:4px; background:#087fdb; color:#fff; font-weight:850; line-height:1; }.tech-article-score small { font-size:.68rem; font-weight:750; }
.tech-guide-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }.tech-guide-grid>a { display:grid; grid-template-columns:90px 1fr; gap:9px; align-items:center; color:#17191c; }.tech-guide-image { width:90px; height:76px; border-radius:3px; object-fit:contain; background:#eef2f5; }.tech-guide-grid span>* { display:block; }.tech-guide-grid em { color:#087fdb; font-size:.52rem; font-style:normal; font-weight:800; text-transform:uppercase; }.tech-guide-grid strong { margin:4px 0; font-size:.68rem; line-height:1.2; }.tech-guide-grid small { color:#087fdb; font-size:.55rem; font-weight:750; }
.tech-popular { margin:0; padding:0; list-style:none; counter-reset:tech-rank; }.tech-popular li { counter-increment:tech-rank; border-bottom:1px solid #e5e8eb; }.tech-popular a { display:grid; grid-template-columns:20px 58px 1fr; gap:8px; align-items:center; padding:8px 0; color:#17191c; }.tech-popular a::before { content:counter(tech-rank); color:#087fdb; font-weight:850; text-align:center; }.tech-popular-image { width:58px; height:38px; border-radius:3px; object-fit:cover; }.tech-popular strong { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; font-size:.65rem; line-height:1.2; }
.tech-release-panel { border-top:3px solid #087fdb; }.tech-release-panel>div>a { display:grid; grid-template-columns:45px 1fr; gap:8px; padding:9px 0; border-bottom:1px solid #e5e8eb; color:#17191c; }.tech-release-panel time { color:#087fdb; font-size:.62rem; font-weight:800; }.tech-release-panel strong { font-size:.65rem; line-height:1.2; }
.tech-deal-banner { padding:22px; border-radius:5px; background:linear-gradient(135deg,#06172a,#052f5c); color:#fff; }.tech-deal-banner>span { display:grid; width:45px; height:45px; place-items:center; border:2px solid #23a5ff; border-radius:50%; color:#23a5ff; font-size:1.25rem; font-weight:900; }.tech-deal-banner h2 { margin:12px 0 7px; color:#41b2ff; font-size:1rem; text-transform:uppercase; }.tech-deal-banner p { color:#d8e5ef; font-size:.68rem; line-height:1.4; }.tech-deal-banner a { display:inline-block; margin-top:8px; padding:8px 12px; border-radius:3px; background:#087fdb; color:#fff; font-size:.62rem; font-weight:800; text-transform:uppercase; }
.tech-article { --article-accent:#087fdb; }.tech-article .article-header { position:relative; margin-bottom:22px; padding-left:18px; border-left:5px solid var(--article-accent); }.tech-article .article-kicker { background:var(--article-accent); }.tech-article .article-image { overflow:hidden; border-radius:5px; box-shadow:0 12px 30px rgba(18,24,30,.1); }.tech-article .purchase-card,.tech-more,.tech-advice { border-top-color:#087fdb; }.tech-article .purchase-button { background:#087fdb; }.tech-more { border-top:4px solid #087fdb; }.tech-topic-links { display:flex; flex-wrap:wrap; gap:5px; margin:11px 0 0; }.tech-topic-links a { padding:4px 8px; border-radius:12px; background:#e7f4ff; color:#0667aa; font-size:.55rem; font-weight:700; }.tech-advice { border-top:4px solid #087fdb; }.tech-advice p { color:#69717a; font-size:.67rem; line-height:1.4; }.tech-advice>a { display:block; padding:8px; border-radius:3px; background:#087fdb; color:#fff; font-size:.62rem; font-weight:800; text-align:center; text-transform:uppercase; }
.article-music-events { border-top:4px solid #ca1760; }.article-music-events>div>a { display:grid; grid-template-columns:52px 38px 1fr; gap:8px; align-items:center; padding:8px 0; border-bottom:1px solid var(--dm-line); color:var(--dm-ink); }.article-music-events img { width:52px; height:40px; border-radius:3px; object-fit:cover; }.article-music-events time { display:grid; min-height:38px; place-items:center; border:1px solid #f0b8d0; border-radius:3px; background:#fcecf3; color:#9f225a; font-size:.48rem; }.article-music-events time b { font-size:.76rem; }.article-music-events strong,.article-music-events small { display:block; font-size:.64rem; line-height:1.2; }.article-music-events small { margin-top:3px; color:var(--dm-muted); font-size:.54rem; }
@media(max-width:1040px){.tech-top-grid,.tech-content-grid{grid-template-columns:1fr}.tech-sidebar{grid-template-columns:repeat(2,1fr)}.tech-rubrics{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.tech-top-grid{min-height:0}.tech-hero{min-height:420px}.tech-side-heroes{grid-template-rows:repeat(3,130px)}.tech-hero-copy strong{font-size:1.55rem}.tech-topic-nav{grid-template-columns:repeat(2,1fr)}.tech-current-grid,.tech-review-grid,.tech-guide-grid,.tech-sidebar{grid-template-columns:1fr}.tech-rubrics{grid-template-columns:repeat(2,1fr)}}

/* Gewinnspiele */
.disc-contest-stage { margin-top:18px; padding:16px; border:1px solid #dce3e9; border-radius:6px; background:linear-gradient(135deg,#f8fbff,#eef6ff); }
.disc-contest-stage>header { display:flex; align-items:center; gap:10px; margin-bottom:13px; padding-bottom:11px; border-bottom:1px solid #d6e2ec; }.disc-contest-stage>header p { margin:0 0 2px; color:#087fbd; font-size:.58rem; font-weight:800; text-transform:uppercase; }.disc-contest-stage>header h2 { margin:0; font-size:1rem; text-transform:uppercase; }
.disc-contest-icon { display:grid; width:36px; height:36px; flex:0 0 36px; place-items:center; border-radius:50%; background:#087fbd; color:#fff; }.disc-contest-icon svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.disc-contest-stage>div { display:grid; grid-template-columns:1.45fr repeat(2,minmax(0,1fr)); gap:12px; }.disc-contest-stage article a { position:relative; display:block; overflow:hidden; min-height:210px; border-radius:5px; background:#06111e; color:#fff; }.disc-contest-stage article.is-featured a { min-height:280px; }.disc-contest-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }.disc-contest-shade { position:absolute; inset:0; background:linear-gradient(0deg,rgba(2,8,16,.96),rgba(2,8,16,.05) 82%); }.disc-contest-copy { position:absolute; left:16px; right:16px; bottom:15px; z-index:2; display:flex; flex-direction:column; align-items:flex-start; }.disc-contest-copy em { padding:4px 7px; border-radius:2px; background:#ca1760; font-size:.55rem; font-style:normal; font-weight:800; text-transform:uppercase; }.disc-contest-copy strong { display:-webkit-box; overflow:hidden; margin:8px 0 4px; -webkit-box-orient:vertical; -webkit-line-clamp:3; font-size:.92rem; line-height:1.18; }.disc-contest-copy small { color:#dce5eb; font-size:.58rem; }.disc-contest-copy b { margin-top:10px; padding:7px 10px; border-radius:3px; background:#087fbd; font-size:.58rem; text-transform:uppercase; }
.article-contest { overflow:hidden; margin:14px 0 28px; border:1px solid #cbddec; border-radius:7px; background:#f8fbfe; box-shadow:0 12px 30px rgba(12,37,58,.08); }.article-body+.article-contest { margin-top:10px; }.article-contest-intro { display:grid; grid-template-columns:58px 1fr; gap:15px; align-items:center; padding:22px; background:linear-gradient(135deg,#061525,#073a68); color:#fff; }.article-contest.has-cover .article-contest-intro { grid-template-columns:58px 72px 1fr; }.contest-gift-icon { display:grid; width:58px; height:58px; place-items:center; border:2px solid #29a8ff; border-radius:50%; color:#46b5ff; }.contest-gift-icon svg { width:31px; height:31px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }.contest-cover { width:72px; height:96px; border:2px solid rgba(255,255,255,.7); border-radius:4px; object-fit:cover; background:#fff; box-shadow:0 6px 16px rgba(0,0,0,.28); }.article-contest-intro h2 { display:flex; align-items:center; gap:9px; margin:3px 0 6px; color:#fff; font-size:1.35rem; line-height:1.2; }.article-contest-intro p { margin:0; color:#dce8f2; font-size:.72rem; }.contest-eyebrow { color:#57bdff!important; font-size:.74rem!important; font-weight:850; letter-spacing:0; text-transform:uppercase; }.contest-publication { margin-top:7px!important; font-weight:700; }.contest-deadline { margin-top:3px!important; font-weight:700; }.contest-disc-icon { display:inline-grid; width:29px; height:29px; flex:0 0 29px; place-items:center; border-radius:50%; background:rgba(52,174,255,.16); color:#57bdff; }.contest-disc-icon svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.contest-form { display:grid; gap:14px; padding:22px; }.contest-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }.contest-location-grid { grid-template-columns:minmax(130px,.35fr) 1fr; }.contest-form label { display:grid; gap:6px; color:#303942; font-size:.68rem; font-weight:700; }.contest-form input[type="text"],.contest-form input[type="email"] { width:100%; padding:10px 11px; border:1px solid #cbd5dd; border-radius:4px; background:#fff; color:#161b20; font:inherit; }.contest-form input:focus { outline:2px solid #168fd6; outline-offset:1px; border-color:#168fd6; }.contest-terms { padding:15px 16px; border:1px solid #d8e1e8; border-radius:5px; background:#fff; }.contest-terms p { margin:0 0 10px; color:#4d5861; font-size:.64rem; line-height:1.5; }.contest-terms p:last-child { margin-bottom:0; font-weight:750; }.contest-privacy { display:grid!important; grid-template-columns:18px 1fr; align-items:start; font-weight:400!important; line-height:1.4; }.contest-privacy input { margin-top:2px; }.contest-form>button { justify-self:start; padding:10px 16px; border:0; border-radius:4px; background:#087fbd; color:#fff; font-size:.68rem; font-weight:850; text-transform:uppercase; cursor:pointer; }.contest-form>button:hover { background:#066b9f; }.contest-honeypot { position:absolute!important; left:-9999px!important; }.contest-alert,.contest-closed-note { margin:18px 22px 0; padding:11px 13px; border-radius:4px; font-size:.7rem; }.contest-alert.is-success { background:#e4f6e9; color:#17672d; }.contest-alert.is-error { background:#fde9e9; color:#9b2424; }.contest-closed-note { margin-bottom:18px; background:#edf1f4; color:#59636c; }.disc-article .article-contest { border-color:#a9d3ee; }
.contest-security { padding:12px; border:1px solid #cddde9; border-radius:5px; background:#edf7fd; }.contest-security>p { margin:0 0 8px; color:#315266; font-size:.65rem; font-weight:750; }.contest-security label { max-width:320px; }.cf-turnstile { min-height:65px; }
.field-entry.contest-prize,.field-entry.contest-start,.field-entry.contest-end,.field-entry.contest-release,.field-entry.contest-publication,.field-entry.contest-partner,.field-entry.contest-question,.field-entry.gewinn,.field-entry.gewinnspiel-preis,.field-entry.gewinnspiel-veroeffentlichung,.field-entry.veroeffentlichung,.field-entry.gewinnspiel-frage { display:none!important; }
@media(max-width:760px){.disc-contest-stage>div{grid-template-columns:1fr}.disc-contest-stage article a,.disc-contest-stage article.is-featured a{min-height:250px}.contest-form-grid,.contest-location-grid{grid-template-columns:1fr}.article-contest-intro{grid-template-columns:44px 1fr;padding:17px}.article-contest.has-cover .article-contest-intro{grid-template-columns:44px 58px 1fr}.contest-gift-icon{width:44px;height:44px}.contest-gift-icon svg{width:24px;height:24px}.contest-cover{width:58px;height:78px}.article-contest-intro h2{font-size:1.05rem}.contest-disc-icon{display:none}.article-gallery-thumbs{grid-template-columns:repeat(3,1fr)}.image-lightbox-prev,.image-lightbox-next{width:36px;height:44px}}

/* Games category portal */
body.is-games-section { background-color:#edf0f3; background-image:url('../images/games_bg2.jpg'); background-position:center center; background-size:cover; background-repeat:no-repeat; background-attachment:fixed; }
body.is-games-section .games-portal { padding:0; border-radius:0; background:none; color:#17191c; box-shadow:none; }
body.is-games-section .games-main-hero,body.is-games-section .games-side-heroes a { box-shadow:0 14px 34px rgba(25,31,38,.18); }
body.is-games-section .games-platform-nav,body.is-games-section .games-panel { border:1px solid rgba(255,255,255,.82); background:rgba(255,255,255,.58); box-shadow:0 14px 36px rgba(34,42,50,.16),inset 0 1px 0 rgba(255,255,255,.9); -webkit-backdrop-filter:saturate(165%) blur(20px); backdrop-filter:saturate(165%) blur(20px); }
body.is-games-section .games-platform-nav button { background:rgba(255,255,255,.3); }
body.is-games-section .games-platform-nav button:hover,body.is-games-section .games-platform-nav button.is-active { background:rgba(8,127,189,.92); }
body.is-games-section .games-abo-grid>section { border-color:rgba(255,255,255,.78); background:rgba(255,255,255,.5); box-shadow:0 10px 26px rgba(31,40,48,.14),inset 0 1px 0 rgba(255,255,255,.88); -webkit-backdrop-filter:saturate(160%) blur(16px); backdrop-filter:saturate(160%) blur(16px); }
body.is-games-section.is-article .article-page { padding:24px; border:1px solid rgba(255,255,255,.82); border-radius:6px; background:rgba(255,255,255,.6); box-shadow:0 18px 48px rgba(17,26,35,.17),inset 0 1px 0 rgba(255,255,255,.92); -webkit-backdrop-filter:saturate(165%) blur(20px); backdrop-filter:saturate(165%) blur(20px); }
body.is-games-section.is-article .purchase-card,body.is-games-section.is-article .steam-card,body.is-games-section.is-article .related-card,body.is-games-section.is-article .article-gallery { border-color:rgba(255,255,255,.82); background:rgba(255,255,255,.62); box-shadow:0 12px 30px rgba(28,37,45,.14),inset 0 1px 0 rgba(255,255,255,.9); -webkit-backdrop-filter:saturate(160%) blur(16px); backdrop-filter:saturate(160%) blur(16px); }
body.is-games-section .breadcrumbs { color:#17191c; font-weight:650; text-shadow:0 1px 0 rgba(255,255,255,.82); }
body.is-games-section .breadcrumbs .breadcrumb-item,body.is-games-section .breadcrumbs span { color:#17191c; }
body.is-games-section .breadcrumbs a { color:var(--dm-logo-red); font-weight:800; }
body.is-games-section .breadcrumbs a:hover { color:#b81224; }
@media(max-width:760px){body.is-games-section{background-attachment:scroll;background-position:center top}body.is-games-section.is-article .article-page{padding:14px}}

/* Fixed section backgrounds and liquid-glass surfaces */
body.is-cinema-section,
body.is-disc-section,
body.is-music-section,
body.is-tech-section,
body.is-lifestyle-section {
	background-color:#edf0f3;
	position:relative;
	isolation:isolate;
}
body.is-cinema-section { --dm-section-bg:url('../images/cinema_bg.png'); background-color:#f5f0e8; }
body.is-disc-section { --dm-section-bg:url('../images/disc_bg.png'); background-color:#f3eee7; }
body.is-music-section { --dm-section-bg:url('../images/music_bg.png'); background-color:#181522; }
body.is-tech-section { --dm-section-bg:url('../images/tech_bg.png'); background-color:#f2ede7; }
body.is-lifestyle-section { --dm-section-bg:url('../images/lifestyle_bg.png'); background-color:#f3ede3; }
body.is-cinema-section::before,
body.is-disc-section::before,
body.is-music-section::before,
body.is-tech-section::before,
body.is-lifestyle-section::before,
body.is-cinema-section::after,
body.is-disc-section::after,
body.is-music-section::after,
body.is-tech-section::after,
body.is-lifestyle-section::after {
	content:"";
	position:fixed;
	inset:0;
	pointer-events:none;
}
body.is-cinema-section::before,
body.is-disc-section::before,
body.is-music-section::before,
body.is-tech-section::before,
body.is-lifestyle-section::before {
	display:none;
}
body.is-cinema-section::after,
body.is-disc-section::after,
body.is-music-section::after,
body.is-tech-section::after,
body.is-lifestyle-section::after {
	z-index:-1;
	background:var(--dm-section-bg) center center / cover no-repeat;
}

body.is-cinema-section .film-panel,
body.is-cinema-section .film-tip,
body.is-disc-section .disc-filters,
body.is-disc-section .disc-shelf,
body.is-disc-section .disc-collectors,
body.is-disc-section .disc-reviews,
body.is-disc-section .disc-trailers,
body.is-music-section .music-panel,
body.is-music-section .music-filters,
body.is-tech-section .tech-panel,
body.is-tech-section .tech-topic-nav,
body.is-lifestyle-section .life-section,
body.is-lifestyle-section .life-sidebar>section,
body.is-lifestyle-section .life-top-list a,
body.is-lifestyle-section .life-topics {
	border-color:rgba(255,255,255,.84);
	background:rgba(255,255,255,.58);
	box-shadow:0 14px 36px rgba(34,42,50,.16),inset 0 1px 0 rgba(255,255,255,.94);
	-webkit-backdrop-filter:saturate(170%) blur(20px);
	backdrop-filter:saturate(170%) blur(20px);
}
body.is-cinema-section .film-hero,
body.is-disc-section .disc-showcase,
body.is-music-section .music-hero,
body.is-tech-section .tech-hero,
body.is-tech-section .tech-side-heroes a,
body.is-lifestyle-section .life-hero {
	box-shadow:0 16px 38px rgba(25,31,38,.2);
}
body.is-cinema-section .breadcrumbs,
body.is-disc-section .breadcrumbs,
body.is-music-section .breadcrumbs,
body.is-tech-section .breadcrumbs,
body.is-lifestyle-section .breadcrumbs {
	color:#17191c;
	font-weight:650;
	text-shadow:0 1px 0 rgba(255,255,255,.86);
}
body.is-cinema-section.is-article .article-page,
body.is-disc-section.is-article .article-page,
body.is-music-section.is-article .article-page,
body.is-tech-section.is-article .article-page,
body.is-lifestyle-section.is-article .article-page {
	padding:24px;
	border:1px solid rgba(255,255,255,.84);
	border-radius:6px;
	background:rgba(255,255,255,.6);
	box-shadow:0 18px 48px rgba(17,26,35,.17),inset 0 1px 0 rgba(255,255,255,.94);
	-webkit-backdrop-filter:saturate(170%) blur(20px);
	backdrop-filter:saturate(170%) blur(20px);
}
body.is-cinema-section.is-article .purchase-sidebar>*,
body.is-disc-section.is-article .purchase-sidebar>*,
body.is-music-section.is-article .purchase-sidebar>*,
body.is-tech-section.is-article .purchase-sidebar>*,
body.is-lifestyle-section.is-article .purchase-sidebar>*,
body.is-cinema-section.is-article .related-card,
body.is-disc-section.is-article .related-card,
body.is-music-section.is-article .related-card,
body.is-tech-section.is-article .related-card,
body.is-lifestyle-section.is-article .related-card,
body.is-cinema-section.is-article .article-gallery,
body.is-disc-section.is-article .article-gallery,
body.is-music-section.is-article .article-gallery,
body.is-tech-section.is-article .article-gallery,
body.is-lifestyle-section.is-article .article-gallery {
	border-color:rgba(255,255,255,.84);
	background:rgba(255,255,255,.62);
	box-shadow:0 12px 30px rgba(28,37,45,.14),inset 0 1px 0 rgba(255,255,255,.92);
	-webkit-backdrop-filter:saturate(165%) blur(16px);
	backdrop-filter:saturate(165%) blur(16px);
}
@media(max-width:760px){
	body.is-cinema-section.is-article .article-page,body.is-disc-section.is-article .article-page,body.is-music-section.is-article .article-page,body.is-tech-section.is-article .article-page,body.is-lifestyle-section.is-article .article-page{padding:14px}
}
.games-top-grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(280px, 0.85fr); gap: 12px; min-height: 410px; }
.games-main-hero, .games-side-heroes a { position: relative; display: block; overflow: hidden; border-radius: 5px; background: #07111c; color: #fff; }
.games-main-hero > img, .games-side-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.games-shade { position: absolute; inset: 0; background: linear-gradient(0deg, rgba(2, 7, 13, 0.94), rgba(2, 7, 13, 0.04) 75%); }
.games-hero-copy { position: absolute; left: 26px; right: 26px; bottom: 26px; z-index: 2; display: flex; flex-direction: column; align-items: flex-start; max-width: 650px; }
.games-label, .games-side-heroes em { padding: 5px 9px; border-radius: 2px; background: #087fbd; color: #fff; font-size: 0.66rem; font-style: normal; font-weight: 800; text-transform: uppercase; }
.games-hero-copy strong { margin: 10px 0 8px; font-size: 2rem; line-height: 1.08; }
.games-hero-copy strong { transition:color .18s ease; }
.games-main-hero:hover .games-hero-copy strong { color:var(--dm-logo-red); }
.games-hero-copy > span:not(.games-label) { color: #e7ebef; font-size: 0.88rem; line-height: 1.4; }
.games-hero-copy b { margin-top: 17px; padding: 9px 14px; border-radius: 3px; background: #087fbd; font-size: 0.72rem; text-transform: uppercase; }
.games-side-heroes { display: grid; grid-template-rows: repeat(3, 1fr); gap: 10px; }
.games-side-heroes a > span:last-child { position: absolute; inset: 0; z-index: 2; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end; padding: 14px; }
.games-side-heroes strong { display: -webkit-box; overflow: hidden; margin-top: 7px; -webkit-box-orient: vertical; -webkit-line-clamp: 2; font-size: 0.83rem; line-height: 1.22; }
.games-side-heroes em { background: #ca1760; font-size: 0.56rem; }
.games-platform-nav { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); margin: 12px 0; border: 1px solid #dde2e7; border-radius: 5px; background: #fff; }
.games-platform-nav button { display: flex; align-items: center; justify-content: center; gap: 7px; min-width: 0; min-height: 50px; padding: 8px 5px; border: 0; border-right: 1px solid #e4e8eb; border-radius: 0; background: #fff; color: #17191c; font-size: 0.75rem; }
.games-platform-nav button:last-child { border-right: 0; }
.games-platform-nav button:hover, .games-platform-nav button.is-active { background: #087fbd; color: #fff; }
.games-nav-icon, .games-heading-icon, .abo-service-icon { display: inline-grid; flex: 0 0 auto; place-items: center; }
.games-nav-icon svg { width: 20px; height: 20px; }
.games-heading-icon svg { width: 18px; height: 18px; }
.abo-service-icon svg { width: 17px; height: 17px; }
.games-nav-icon svg, .games-heading-icon svg, .abo-service-icon svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.games-content-grid { display: grid; grid-template-columns: minmax(0, 1fr) 310px; gap: 16px; align-items: start; }
.games-primary, .games-sidebar { display: grid; gap: 16px; }
.games-panel { padding: 14px; border: 1px solid #dfe3e7; border-radius: 5px; background: #fff; }
.games-panel > header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom: 10px; padding-bottom: 9px; border-bottom: 1px solid #e3e7ea; }
.games-panel > header h2 { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 0.88rem; text-transform: uppercase; }
.games-all-reviews { color:#087fbd; font-size:.62rem; font-weight:800; white-space:nowrap; }
.games-news-list { display: grid; }
.games-news-list article { border-bottom: 1px solid #e5e8eb; }
.games-news-list article.is-hidden { display: none; }
.games-news-list article > a { display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 14px; align-items: center; padding: 9px 0; color: #17191c; }
.games-news-image { width: 210px; aspect-ratio: 16 / 8; border-radius: 3px; object-fit: cover; }
.games-news-list small { display: inline-flex; padding: 3px 7px; border-radius: 2px; background: #ca1760; color: #fff; font-size: 0.55rem; font-weight: 800; text-transform: uppercase; }
.games-news-list strong { display: block; margin: 5px 0 3px; font-size: 0.84rem; line-height: 1.25; }
.games-news-list p { display: -webkit-box; overflow: hidden; margin: 0; -webkit-box-orient: vertical; -webkit-line-clamp: 2; color: #69717a; font-size: 0.7rem; line-height: 1.35; }
.games-filter-empty { color: #69717a; font-size: 0.82rem; }
.games-review-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.games-review-grid article a { position: relative; display: block; overflow: hidden; min-height: 190px; border-radius: 4px; color: #fff; }
.games-review-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.games-review-grid article > a > strong { position: absolute; left: 12px; right: 48px; bottom: 12px; z-index: 2; font-size: 0.8rem; line-height: 1.25; }
.games-review-grid article > a > b { position: absolute; right: 8px; top: 8px; z-index: 2; padding: 6px 8px; border-radius: 3px; background: #087fbd; }
.games-release-list > a { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 9px; align-items: center; padding: 8px 0; border-bottom: 1px solid #e5e8eb; color: #17191c; }
.games-release-list time { display: grid; place-items: center; min-height: 42px; border: 1px solid #cfd6dc; border-radius: 3px; font-size: 0.55rem; text-transform: uppercase; }
.games-release-list time strong { font-size: 0.9rem; }
.games-release-list span strong { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; font-size: 0.68rem; line-height: 1.25; }
.games-release-list span small { display: block; margin-top: 2px; color: #7b838b; font-size: 0.58rem; }
.games-steam-list { margin: 0; padding: 0; list-style: none; counter-reset: games-list; }
.games-steam-list li { counter-increment: games-list; border-bottom: 1px solid #e5e8eb; }
.games-steam-list a { display: grid; grid-template-columns: 18px 68px minmax(0, 1fr); gap: 7px; align-items: center; padding: 8px 0; color: #17191c; }
.games-steam-list a::before { content: counter(games-list); color: #087fbd; font-weight: 800; text-align: center; }
.games-steam-list img { width: 68px; height: 38px; object-fit: cover; }
.games-steam-list strong { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; font-size: 0.68rem; line-height: 1.2; }
.games-release-panel { border-top: 3px solid #ca1760; }
.games-release-panel > header h2, .games-release-panel .games-heading-icon { color: #ca1760; }
.games-subscriptions { border-top: 3px solid #087fbd; }
.games-subscriptions > header h2 { color: #087fbd; }
.games-subscriptions h3 { display: flex; align-items: center; gap: 6px; margin: 12px 0 5px; color: #087fbd; font-size: 0.68rem; text-transform: uppercase; }
.games-subscriptions h3.is-xbox { color: #16833d; }
.games-subscriptions h3.is-playstation { color: #07569f; }
.games-subscriptions h3.is-nintendo { color: #e60012; }
.games-subscriptions > a { display: block; padding: 5px 0 5px 12px; color: #17191c; font-size: 0.65rem; line-height: 1.3; }
.games-subscriptions > a::before { content: "•"; margin-left: -10px; margin-right: 6px; }
.games-abo-panel { margin-top: 0; }
.games-abo-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.games-abo-grid > section { overflow:hidden; border:1px solid #dfe3e7; border-radius:5px; background:#fff; box-shadow:0 8px 22px rgba(17,30,42,.07); }
.games-abo-grid h3 { display:flex; justify-content:space-between; align-items:center; min-height:46px; margin:0; padding:9px 12px; background:linear-gradient(135deg,#16833d,#0d5f2a); color:#fff; font-size:.72rem; text-transform:uppercase; }
.abo-service-title { display: flex; align-items: center; gap: 6px; }
.games-abo-grid .playstation h3 { background:linear-gradient(135deg,#0868be,#073e78); }
.games-abo-grid .nintendo h3 { background:linear-gradient(135deg,#ef1627,#a9000e); }
.games-abo-grid h3 small { font-size: 0.55rem; }
.games-abo-grid section > div { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; padding: 10px; }
.games-abo-grid a { min-width: 0; color: #17191c; }
.games-abo-grid img { width: 100%; aspect-ratio: 2 / 3; padding:4px; border-radius: 3px; object-fit: contain; background:#f2f4f6; }
.abo-cover-placeholder { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; width: 100%; aspect-ratio: 2 / 3; padding: 8px; border-radius: 3px; background: #e60012; color: #fff; text-align: center; }
.abo-cover-placeholder.abo-cover-2 { background: #bd0010; }
.abo-cover-placeholder.abo-cover-3 { background: #8f0010; }
.abo-cover-placeholder svg { width: 30px; height: 30px; fill: none; stroke: currentColor; stroke-width: 1.6; }
.abo-cover-placeholder b { font-size: 0.54rem; line-height: 1.2; }
.games-abo-grid a strong { display: -webkit-box; overflow: hidden; margin-top: 5px; -webkit-box-orient: vertical; -webkit-line-clamp: 2; font-size: 0.61rem; line-height: 1.25; }
.games-abo-grid section > div > p, .games-subscriptions > p { margin: 4px 0; color: #69717a; font-size: 0.65rem; line-height: 1.35; }
.games-abo-grid section>.abo-update-list { display:grid; grid-template-columns:1fr; gap:0; padding:5px 11px 8px; }
.abo-update-row { display:grid; grid-template-columns:36px minmax(0,1fr) 12px; gap:8px; align-items:center; min-height:58px; padding:8px 0; border-bottom:1px solid #e4e8eb; color:#17191c; }
.abo-update-row:last-child { border-bottom:0; }
.abo-update-number { display:inline-flex; width:34px; height:34px; padding:0; align-items:center; justify-content:center; align-self:center; justify-self:center; border-radius:50%; background:#e7f3eb; color:#16833d; font-size:1rem; font-weight:900; font-variant-numeric:tabular-nums; line-height:1; text-align:center; }
.playstation .abo-update-number { background:#e7f0fa; color:#07569f; }.nintendo .abo-update-number { background:#fde8ea; color:#e60012; }
.abo-update-row span:not(.abo-update-number),.abo-update-row strong,.abo-update-row small { display:block; min-width:0; }
.abo-update-row strong { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; font-size:.68rem; line-height:1.2; }
.abo-update-row small { margin-top:3px; color:#727b83; font-size:.56rem; }
.abo-update-row>b { color:#8c969e; font-size:1rem; }
.games-epic-panel { border-top: 3px solid #17191c; }
.games-epic-panel > header h2 { display: flex; align-items: center; gap: 8px; }
.epic-free-grid { display: grid; gap: 10px; }
.epic-free-grid a { display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 9px; align-items: center; color: #17191c; }
.epic-free-grid img { grid-row: span 2; width: 92px; aspect-ratio: 16 / 9; border-radius: 3px; object-fit: cover; }
.epic-free-grid strong { display: -webkit-box; overflow: hidden; align-self: end; -webkit-box-orient: vertical; -webkit-line-clamp: 2; font-size: 0.7rem; line-height: 1.25; }
.epic-free-grid small { align-self: start; color: #16833d; font-size: 0.62rem; font-weight: 800; }

@media (max-width: 1040px) {
	.games-content-grid { grid-template-columns: 1fr; }
	.games-sidebar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
	.games-top-grid { grid-template-columns: 1fr; min-height: 0; }
	.games-main-hero { min-height: 420px; }
	.games-side-heroes { grid-template-rows: repeat(3, 130px); }
	.games-hero-copy strong { font-size: 1.55rem; }
	.games-platform-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.games-platform-nav button { border-bottom: 1px solid #e4e8eb; }
	.games-news-list article > a { grid-template-columns: 115px minmax(0, 1fr); }
	.games-news-image { width: 115px; }
	.games-news-list p { display: none; }
	.games-review-grid, .games-sidebar, .games-abo-grid { grid-template-columns: 1fr; }
	.games-abo-grid section > div { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
