

html {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	overflow-x: clip;
}

body {
	overflow-x: clip;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

img,
video,
iframe,
embed {
	max-width: 100%;
	height: auto;
}

body.home .site-main.front-page > *,
body.home .site-main.front-page > .container,
body.home .site-main.front-page .container,
body.home .front-page.container {
	padding-inline: 0 !important;
}

body.home .site-main.front-page {
	width: 100% !important;
	max-width: none !important;
	padding-inline: var(--ref-page-gutter, clamp(14px, 3vw, 24px)) !important;
	box-sizing: border-box;
}

.site-footer.site-footer--harmonized .footer-top-band__inner {
	padding-inline: var(--ref-page-gutter, var(--ltv-container-pad, clamp(14px, 3vw, 20px))) !important;
	max-width: var(--container-width, 1280px);
	margin-inline: auto;
}

@media (max-width: 991px) {
	.front-page .home-hero-zone .home-hero-zone-grid {
		display: flex !important;
		flex-direction: column !important;
		gap: 12px !important;
	}

	.front-page .home-hero-zone .home-center {
		order: -1;
		width: 100%;
	}

	.front-page .home-hero-zone .home-sidebar-left,
	.front-page .home-hero-zone .home-sidebar-right {
		width: 100%;
		height: auto !important;
	}

	.front-page .home-hero-zone .home-sidebar-left {
		display: flex !important;
		flex-direction: column !important;
		grid-template-columns: none !important;
	}

	.front-page .home-hero-zone .hero-slide-media {
		aspect-ratio: 16 / 9 !important;
		max-height: none !important;
		min-height: clamp(200px, 56vw, 320px) !important;
		width: 100%;
	}

	.front-page .home-hero-zone .hero-slide-img {
		width: 100% !important;
		height: 100% !important;
		min-height: inherit !important;
		max-height: none !important;
		object-fit: cover !important;
		object-position: center center;
	}
}

.home-youtube-banner {
	overflow: hidden;
	isolation: isolate;
}

/* Bannière YouTube — texte seul, lisible sur tous les appareils */
.home-youtube-banner__link--simple {
	display: block;
	text-align: center;
	text-decoration: none;
}

.home-youtube-banner__text--simple {
	margin: 0;
	padding: 0;
	text-align: center;
	font-size: clamp(1rem, 2.8vw, 1.375rem);
	font-weight: 700;
	line-height: 1.4;
	color: #fff;
	letter-spacing: 0.01em;
}

.home-youtube-banner .home-youtube-banner__inner {
	padding-block: clamp(12px, 2.5vw, 18px);
}

.home-youtube-banner__device,
.home-youtube-banner__badge,
.home-youtube-banner__grid {
	display: none !important;
}

.category-badge,
body:not(.home) .category-badge,
body.single .single-post .category-badge,
.front-page .category-badge,
.home-video-block .category-badge,
.home-cat-featured-thumb .category-badge,
.home-premium-featured-caption .category-badge,
.hero-slide-cat,
.front-page .home-hero-zone .hero-slide-cat {
	display: inline-flex !important;
	align-items: center;
	padding: 4px 12px !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	background: var(--brand-orange, var(--news-orange, #e65100)) !important;
	color: #fff !important;
	border: none !important;
	border-radius: var(--news-radius-pill, 999px) !important;
	box-shadow: none !important;
}

.category-badge:hover,
body.single .single-post .category-badge:hover {
	background: var(--brand-charcoal, var(--news-charcoal)) !important;
	color: var(--brand-yellow, var(--news-gold)) !important;
}

.front-page .home-mosaic-tile-title,
.front-page .home-national-title,
.front-page .home-national-title a,
.front-page .home-cat-featured-title,
.front-page .home-cat-featured-title a,
.front-page .home-cat-list-title,
.front-page .home-cat-list-title a,
.front-page .most-viewed-card-title,
.front-page .most-viewed-card-title a,
.front-page .home-video-card-title,
.front-page .home-video-card-title a {
	display: -webkit-box !important;
	-webkit-line-clamp: 3 !important;
	line-clamp: 3 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
	white-space: normal !important;
	max-height: none !important;
}

.front-page .home-cat-featured-excerpt {
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
}

.site-footer.site-footer--harmonized .footer-newsletter-input {
	border-inline-end: none;
	border-start-start-radius: 8px;
	border-start-end-radius: 0;
	border-end-start-radius: 8px;
	border-end-end-radius: 0;
}

.site-footer.site-footer--harmonized .footer-newsletter-btn {
	border-start-start-radius: 0;
	border-start-end-radius: 8px;
	border-end-start-radius: 0;
	border-end-end-radius: 8px;
}

@media (max-width: 992px) {
	.site-footer.site-footer--harmonized .footer-col + .footer-col {
		border-inline-start: none !important;
	}

	.site-footer.site-footer--harmonized .footer-col {
		padding-inline: 0 !important;
	}
}

body:not(.home) .site-main.container,
body:not(.home) .site-main--archive.container {
	padding-inline: clamp(14px, 3vw, 24px) !important;
}

body.single-lachtv .single-layout {
	padding-block: 0 !important;
}

body.dark-mode .site-content {
	background: var(--news-canvas);
}

body.dark-mode .front-page .home-premium-body,
body.dark-mode .front-page .home-mosaic-body,
body.dark-mode .front-page .home-national-grid,
body.dark-mode .front-page .home-category-section__body,
body.dark-mode .front-page .most-viewed-layout,
body.dark-mode .front-page .home-video-body--strip,
body.dark-mode .front-page > .home-tri-columns.home-premium-block > .home-premium-body.home-tri-columns-inner,
body.dark-mode .front-page .home-tri-col,
body.dark-mode .front-page .believe-grid,
body.dark-mode .front-page .programs-video-section .programs-block {
	background: var(--news-surface, #141414) !important;
}

body.dark-mode .front-page .home-premium-block,
body.dark-mode .front-page .home-mosaic-block,
body.dark-mode .front-page .home-national-block,
body.dark-mode .front-page .most-viewed-section,
body.dark-mode .front-page .home-video-block,
body.dark-mode .front-page .home-category-sections .home-category-section,
body.dark-mode .front-page .home-sports-block {
	border-color: var(--news-border) !important;
}

body.dark-mode .single-post,
body.dark-mode body.single-lachtv .single-main .single-post,
body.dark-mode .related-posts--lachtv,
body.dark-mode .comments-area,
body.dark-mode .archive-lachtv-read,
body.dark-mode .single-widget,
body.dark-mode .post-card,
body.dark-mode .archive-featured,
body.dark-mode .lachtv-breadcrumb,
body.dark-mode:not(.home) .page-content {
	background: var(--news-surface, #141414) !important;
	border-color: var(--news-border) !important;
	color: var(--news-text);
}

body.dark-mode .category-badge {
	background: var(--brand-orange, var(--news-orange)) !important;
	color: #fff !important;
}

body.dark-mode .category-badge:hover {
	background: var(--brand-yellow, var(--news-gold)) !important;
	color: var(--brand-charcoal, #1a1a1a) !important;
}

body.dark-mode .entry-content,
body.dark-mode .entry-title,
body.dark-mode .single-post .entry-content h2,
body.dark-mode .single-post .entry-content h3 {
	color: var(--news-ink);
}

body.dark-mode .entry-meta,
body.dark-mode .entry-meta > span {
	color: var(--news-muted);
}

@media (hover: none) {
	.front-page .home-premium-block:hover,
	.front-page .home-mosaic-block:hover,
	.front-page .home-national-block:hover,
	.front-page .most-viewed-section:hover,
	.post-card:hover,
	.archive-card__link:hover {
		transform: none !important;
	}
}

@media (max-width: 768px) {
	body.home {
		--ref-page-gutter: max(14px, env(safe-area-inset-left, 0px));
	}

	body.home .site-main.front-page {
		padding-inline-end: max(14px, env(safe-area-inset-right, 0px)) !important;
	}

	.archive-lachtv-grid {
		grid-template-columns: 1fr !important;
	}
}

/* Header shell styles → shell/header-smart.css + shell/header-magazine.css */

body.home .site-main.front-page {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: var(--ltv-section-gap, clamp(10px, 1.4vw, 14px)) !important;
	padding-inline: var(--ltv-container-pad, clamp(12px, 3vw, 20px)) !important;
	box-sizing: border-box;
}

body.home .site-main.front-page > *,
body.home .site-main.front-page > .container {
	width: 100% !important;
	max-width: var(--container-width, 1280px) !important;
	margin-inline: auto !important;
	box-sizing: border-box;
}

body.home .site-main.front-page > .container {
	padding-inline: 0 !important;
}

.site-content > .home-youtube-banner {
	width: 100%;
	max-width: none !important;
}

.front-page .home-zone-block,
.front-page .home-category-section,
.front-page .home-video-block,
.front-page .home-mosaic-block,
.front-page .home-national-block,
.front-page .home-sports-block,
.front-page .home-tri-columns,
.front-page .most-viewed-section,
.front-page .programs-video-section,
.front-page .believe-section,
.front-page .see-also-zone {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.site-footer.site-footer--harmonized .footer-main-band__inner {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: clamp(20px, 3vw, 32px);
	align-items: start;
}

.site-footer.site-footer--harmonized .footer-col--brand {
	grid-column: 1 / -1;
}

@media (min-width: 992px) {
	.site-footer.site-footer--harmonized .footer-col--brand {
		grid-column: auto;
		align-items: center;
		text-align: center;
	}
}

@media (max-width: 480px) {
	body.home {
		--ref-page-gutter: max(12px, env(safe-area-inset-left, 0px));
	}
}

/* RTL accent bars — bar on inline-start, text offset (site-wide) */
.home-tri-col-header::before,
.home-premium-header::before,
.home-mosaic-accent-header::before {
	inset-inline-start: 0 !important;
	inset-inline-end: auto !important;
	pointer-events: none;
}

.home-tri-col-title,
.home-tri-col-header .home-tri-col-title a {
	position: relative;
	z-index: 1;
}

html[dir="rtl"] .home-tri-col-title,
[dir="rtl"] .home-tri-col-title {
	padding-inline-start: 12px !important;
	padding-inline-end: 0 !important;
}

html[dir="rtl"] .home-tri-col-header,
[dir="rtl"] .home-tri-col-header {
	padding-inline-start: 0 !important;
	padding-block-end: 10px !important;
	flex-wrap: nowrap !important;
}

.front-page > .home-mosaic-block.home-mosaic-block--accent-blue .home-premium-header,
.front-page > .home-mosaic-block.home-mosaic-block--accent-blue .home-mosaic-accent-header {
	padding-inline-start: 18px !important;
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}
