/* Shared game review type scale: display, section title, card title, body, metadata. */
body {
	font-family: var(--game-review-font-body);
	font-size: var(--game-review-size-body);
	line-height: var(--game-review-line-body);
}

.site-head .brand { font-size: 1rem; line-height: 1.25; }
.head-nav { font-size: var(--game-review-size-meta); line-height: 1.4; }
.preview-banner { font-size: var(--game-review-size-label); line-height: 1.5; }
.eyebrow, .section-label { font-size: var(--game-review-size-label); line-height: 1.4; letter-spacing: .12em; }
.hero h1 { font-family: var(--game-review-font-heading); font-size: clamp(2.25rem, 6vw, 4.625rem); line-height: 1.08; }
.hero-lede { font-size: 1.0625rem; line-height: 1.65; }
.button { min-height: 44px; font-size: .9375rem; line-height: 1.3; }
.proof-cell strong { font-size: .9375rem; line-height: 1.35; }
.proof-cell span { font-size: .8125rem; line-height: 1.4; }
.section h2 { font-family: var(--game-review-font-heading); font-size: clamp(1.625rem, 4vw, 2.5rem); line-height: 1.2; }
.section-note { font-size: 1rem; line-height: 1.6; }
.game-copy h3 { font-size: 1.125rem; line-height: 1.35; }
.game-copy p { font-size: .875rem; line-height: 1.55; }
.game-tags span, .game-badge { font-size: .75rem; line-height: 1.35; }
.card-link { font-size: .875rem; line-height: 1.4; }
.empty, .page-note { font-size: .9375rem; line-height: 1.6; }
.page-link { font-size: .875rem; }
.pill { font-size: .8125rem; line-height: 1.35; }
.feature-copy h1, .feature-copy h2 { font-family: var(--game-review-font-heading); font-size: clamp(1.875rem, 3.8vw, 2.625rem); line-height: 1.15; }
.feature-copy p { font-size: 1rem; line-height: 1.65; }
.dark-link, .soft-link { font-size: .875rem; line-height: 1.4; }
.review-copy small { font-size: .75rem; line-height: 1.4; letter-spacing: .06em; }
.review-copy h3 { font-size: 1.125rem; line-height: 1.4; }
.review-copy p { font-size: .875rem; line-height: 1.55; }
.card-link { font-weight: 700; }
.settings label { font-size: .875rem; line-height: 1.4; }
.settings input { font-size: 1rem; }
.settings output { font-size: .875rem; line-height: 1.5; }
.article-shell { font-family: var(--game-review-font-body); }
.breadcrumb { font-size: .8125rem; line-height: 1.5; }
.article-header .section-label { font-size: .75rem; }
.article-header h1 { font-family: var(--game-review-font-heading); font-size: var(--game-review-size-page); line-height: 1.12; letter-spacing: -.045em; }
.byline { font-size: .875rem; line-height: 1.5; }
.persona-disclosure, .disclosure { font-size: .75rem; line-height: 1.5; }
.persona-details summary { font-size: .875rem; line-height: 1.5; }
.persona-details .profile-content { font-size: .875rem; line-height: 1.65; }
.article-body h2 { font-family: var(--game-review-font-heading); font-size: clamp(1.375rem, 2.8vw, 1.875rem); line-height: 1.2; letter-spacing: -.025em; }
.article-body p { font-size: var(--game-review-size-body); line-height: 1.7; }
.article-body ul { font-size: var(--game-review-size-body); line-height: 1.65; }
.article-body li { line-height: 1.65; }
.article-body figcaption { font-size: .8125rem; line-height: 1.5; }
.article-body blockquote { font-size: .9375rem; line-height: 1.65; }
.article-body a:not(.button) { text-underline-offset: .15em; text-decoration-thickness: .08em; }
.article-aside .aside-card h2, .article-aside .aside-card h3 { font-family: var(--game-review-font-heading); font-size: 1.125rem; line-height: 1.3; letter-spacing: -.02em; }
.article-aside .aside-card p, .article-aside .aside-card li { font-size: var(--game-review-size-body-small); line-height: 1.6; }
.article-aside .aside-card a:not(.button) { font-size: var(--game-review-size-body-small); line-height: 1.55; text-decoration: underline; text-underline-offset: .15em; text-decoration-thickness: .08em; }
.article-aside .aside-card .button { font-size: .9375rem; }
.article-layout .article-aside .aside-card .all-reviews-link { font-size: 1rem; line-height: 1.5; font-weight: 700; text-decoration: underline; text-underline-offset: .15em; }
.frame-gallery figcaption { font-size: .75rem; line-height: 1.45; }
.evidence-list li { font-size: .875rem; line-height: 1.55; }
.store-summary h2 { font-size: 1.125rem; line-height: 1.3; }
.store-summary p { font-size: .9375rem; line-height: 1.6; }
.channel .section-label { font-size: .75rem; }
.channel h2 { font-family: var(--game-review-font-heading); font-size: clamp(1.875rem, 4vw, 2.75rem); line-height: 1.15; letter-spacing: -.04em; }
.channel p { font-size: 1rem; line-height: 1.6; }
.channel .article-body p a { font-size: .9375rem; }
.footer { font-size: .875rem; line-height: 1.5; }

/* Main games directory */
.games-page { font-family: var(--game-review-font-body); font-size: var(--game-review-size-body); line-height: var(--game-review-line-body); }
.games-page .games-eyebrow, .games-page .games-section-kicker { font-size: var(--game-review-size-label); line-height: 1.4; letter-spacing: .12em; }
.games-page .games-hero h1 { font-family: var(--game-review-font-heading); font-size: clamp(2.25rem, 5.8vw, 4.375rem); line-height: 1.08; letter-spacing: -.05em; }
.games-page .games-hero-copy > p:not(.games-eyebrow), .games-page .featured-game-copy > p:not(.games-section-kicker), .games-page .games-channel-cta p:not(.games-section-kicker) { font-size: 1rem; line-height: 1.6; }
.games-page .games-button { font-size: .875rem; line-height: 1.35; }
.games-page .games-hero-caption strong { font-size: .875rem; line-height: 1.35; }
.games-page .games-hero-caption small { font-size: .75rem; line-height: 1.4; }
.games-page .games-proof-heading p, .games-page .games-proof-heading > span { font-size: .75rem; line-height: 1.4; }
.games-page .games-proof-grid strong { font-size: 1.125rem; line-height: 1.2; }
.games-page .games-proof-grid span { font-size: .8125rem; line-height: 1.4; }
.games-page .games-section-heading h2 { font-family: var(--game-review-font-heading); font-size: clamp(1.625rem, 3.5vw, 2.25rem); line-height: 1.2; }
.games-page .games-section-heading > a { font-size: .875rem; line-height: 1.45; }
.games-page .featured-game-copy h3 { font-family: var(--game-review-font-heading); font-size: clamp(1.625rem, 3.5vw, 2.25rem); line-height: 1.15; letter-spacing: -.04em; }
.games-page .featured-game-facts span { font-size: .8125rem; line-height: 1.35; }
.games-page .games-text-link, .games-page .all-reviews-link { font-size: .9375rem; line-height: 1.45; }
.games-page .games-section-heading-compact h2, .games-page .games-channel-cta h2 { font-family: var(--game-review-font-heading); font-size: 1.375rem; line-height: 1.2; }
.games-page .review-start-list strong { font-size: .9375rem; line-height: 1.45; }
.games-page .review-number { font-size: .875rem; }

/* Homepage discovery cards */
.portal-home .mini-review-copy small { font-size: .75rem; line-height: 1.35; letter-spacing: .04em; }
.portal-home .mini-review-copy strong { font-size: 1rem; line-height: 1.35; }
.portal-home .mini-review-copy em { font-size: .8125rem; line-height: 1.4; }
.portal-home .mini-review-card { grid-template-columns: 88px minmax(0, 1fr); gap: 12px; min-height: 92px; padding: 10px; }
.portal-home .mini-review-card > img { width: 88px; height: 72px; }
.portal-home .review-intro-copy > p:not(.portal-section-kicker) { font-size: 1rem; line-height: 1.6; }
.portal-home .review-intro-copy .portal-section-kicker { font-size: .75rem; line-height: 1.4; }
.portal-home .review-focus-list a { font-size: .875rem; line-height: 1.35; }
.portal-home .review-main-link { font-size: .9375rem; line-height: 1.35; }
.portal-home .channel-copy > p:not(.portal-section-kicker) { font-size: 1rem; line-height: 1.6; }
.portal-home .channel-copy .portal-section-kicker { font-size: .75rem; line-height: 1.4; }
.portal-home .channel-copy > a { font-size: .875rem; line-height: 1.35; }

@media (max-width: 640px) {
	.article-header h1 { font-size: clamp(2rem, 8vw, 2.75rem); }
	.article-body { padding: 1.25rem; }
	.article-body p { font-size: 1rem; line-height: 1.7; }
	.article-body ul { font-size: 1rem; }
	.article-aside .aside-card p, .article-aside .aside-card li { font-size: .9375rem; }
	.article-aside .aside-card a:not(.button) { font-size: .9375rem; }
	.article-layout .article-aside .aside-card .all-reviews-link { font-size: 1rem; }
	.feature-copy h1, .feature-copy h2 { font-size: clamp(1.875rem, 7vw, 2.5rem); }
	.section-note { font-size: .9375rem; }
	.review-copy h3 { font-size: 1rem; line-height: 1.35; }
	.review-copy p { font-size: .875rem; line-height: 1.5; }
	.card-link { font-size: .875rem; }
	.games-page .games-hero h1 { font-size: clamp(2.25rem, 10vw, 3.0625rem); }
	.games-page .games-hero-copy > p:not(.games-eyebrow), .games-page .featured-game-copy > p:not(.games-section-kicker), .games-page .games-channel-cta p:not(.games-section-kicker) { font-size: .9375rem; line-height: 1.55; }
	.games-page .games-eyebrow, .games-page .games-section-kicker { font-size: .75rem; }
	.games-page .games-proof-heading p, .games-page .games-proof-heading > span { font-size: .6875rem; }
	.games-page .games-proof-grid strong { font-size: 1rem; }
	.games-page .games-proof-grid span { font-size: .75rem; }
	.games-page .games-section-heading h2 { font-size: 1.5rem; }
	.games-page .games-section-heading > a { font-size: .75rem; }
	.games-page .featured-game-copy h3 { font-size: 1.5rem; }
	.games-page .games-text-link, .games-page .all-reviews-link { font-size: .875rem; }
	.games-page .games-section-heading-compact h2, .games-page .games-channel-cta h2 { font-size: 1.25rem; }
	.games-page .review-start-list strong { font-size: .9375rem; }
	.portal-home .mini-review-copy small { font-size: .6875rem; }
	.portal-home .mini-review-copy strong { font-size: .9375rem; line-height: 1.35; }
	.portal-home .mini-review-copy em { font-size: .75rem; }
	.portal-home .mini-review-card { grid-template-columns: 76px minmax(0, 1fr); gap: 10px; min-height: 90px; padding: 8px; }
	.portal-home .mini-review-card > img { width: 76px; height: 72px; }
	.portal-home .review-intro-copy > p:not(.portal-section-kicker) { font-size: .9375rem; }
	.portal-home .review-focus-list a { font-size: .875rem; }
	.portal-home .review-main-link { font-size: .875rem; }
	.portal-home .channel-copy > p:not(.portal-section-kicker) { font-size: .9375rem; }
	.portal-home .channel-copy > a { font-size: .8125rem; }
}

/* Keep the page-level typography tokens ahead of the directory's compact layout rules. */
#main.games-page .games-eyebrow, #main.games-page .games-section-kicker { font-size: var(--game-review-size-label); line-height: 1.4; }
#main.games-page .games-hero h1 { font-size: clamp(2.25rem, 5.8vw, 4.375rem); line-height: 1.08; }
#main.games-page .games-hero-copy > p:not(.games-eyebrow), #main.games-page .games-content .featured-game-copy > p:not(.games-section-kicker), #main.games-page .games-channel-cta p:not(.games-section-kicker) { font-size: 1rem; line-height: 1.6; }
#main.games-page .games-button { font-size: .875rem; }
#main.games-page .games-proof-heading p, #main.games-page .games-proof-heading > span { font-size: .75rem; }
#main.games-page .games-proof-grid strong { font-size: 1.125rem; }
#main.games-page .games-proof-grid span { font-size: .8125rem; }
#main.games-page .games-section-heading h2 { font-size: clamp(1.625rem, 3.5vw, 2.25rem); line-height: 1.2; }
#main.games-page .games-section-heading > a { font-size: .875rem; }
#main.games-page .featured-game-copy h3 { font-size: clamp(1.625rem, 3.5vw, 2.25rem); line-height: 1.15; }
#main.games-page .featured-game-facts span { font-size: .8125rem; }
#main.games-page .games-text-link, #main.games-page .all-reviews-link { font-size: .9375rem; }
#main.games-page .games-section-heading-compact h2, #main.games-page .games-channel-cta h2 { font-size: 1.375rem; line-height: 1.2; }
#main.games-page .review-start-list strong { font-size: .9375rem; line-height: 1.45; }
#main.portal-home .mini-review-copy small { font-size: .75rem; line-height: 1.35; }
#main.portal-home .mini-review-copy strong { font-size: 1rem; line-height: 1.35; }
#main.portal-home .mini-review-copy em { font-size: .8125rem; line-height: 1.4; }
#main.portal-home .mini-review-card { grid-template-columns: 88px minmax(0, 1fr); gap: 12px; min-height: 92px; padding: 10px; }
#main.portal-home .mini-review-card > img { width: 88px; height: 72px; }

@media (max-width: 640px) {
	#main.games-page .games-eyebrow, #main.games-page .games-section-kicker { font-size: .75rem; }
	#main.games-page .games-hero h1 { font-size: clamp(2.25rem, 10vw, 3.0625rem); }
	#main.games-page .games-hero-copy > p:not(.games-eyebrow), #main.games-page .games-content .featured-game-copy > p:not(.games-section-kicker), #main.games-page .games-channel-cta p:not(.games-section-kicker) { font-size: .9375rem; line-height: 1.55; }
	#main.games-page .games-button { font-size: .875rem; }
	#main.games-page .games-proof-heading p, #main.games-page .games-proof-heading > span { font-size: .6875rem; }
	#main.games-page .games-proof-grid strong { font-size: 1rem; }
	#main.games-page .games-proof-grid span { font-size: .75rem; }
	#main.games-page .games-section-heading h2 { font-size: 1.5rem; }
	#main.games-page .games-section-heading > a { font-size: .75rem; }
	#main.games-page .featured-game-copy h3 { font-size: 1.5rem; }
	#main.games-page .games-text-link, #main.games-page .all-reviews-link { font-size: .875rem; }
	#main.games-page .games-section-heading-compact h2, #main.games-page .games-channel-cta h2 { font-size: 1.25rem; }
	#main.games-page .review-start-list strong { font-size: .9375rem; }
	#main.portal-home .mini-review-copy small { font-size: .6875rem; }
	#main.portal-home .mini-review-copy strong { font-size: .9375rem; }
	#main.portal-home .mini-review-copy em { font-size: .75rem; }
	#main.portal-home .mini-review-card { grid-template-columns: 76px minmax(0, 1fr); gap: 10px; min-height: 90px; padding: 8px; }
	#main.portal-home .mini-review-card > img { width: 76px; height: 72px; }
}
