/**
 * Bloc : lg/hero-home
 *
 * Hero plein écran avec slider des univers.
 * Mobile-first : empilé, contenu condensé.
 * Desktop : full viewport, barre univers glass au pied.
 *
 * Figma specs (desktop) :
 * - Section full viewport (100svh)
 * - Gradient overlay : from-black/30 to transparent
 * - Surtitle : Inria Sans Bold 56px, uppercase, white
 * - Title pill : fond blanc, radius 10px, padding 3px 14px
 * - Accent : Inria Sans Bold 72px, #E52A19, text-shadow glow
 * - Tabs : pills inline, actif = bg rouge, inactifs = glass (white/40 + blur)
 * - Barre univers : bg-black/20, backdrop-blur, border-top white/10
 * - Logo cards : glass dark (zinc-500/70), radius 10px, shadow lumineux
 *
 * @since 1.0.0
 */

/* ============================================
   SECTION ROOT
   ============================================ */

.lg-hero-home {
	position: relative;
	width: 100%;
	min-height: 100svh;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	/* Mobile/tablette : le hero démarre sous le header, pas derrière */
	margin-top: 0;
	background: var(--color-noir-primary);
}

/* ============================================
   BACKGROUND (image + overlay)
   ============================================ */

.lg-hero-home__background {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.lg-hero-home__bg-picture {
	display: block;
	width: 100%;
	height: 100%;
}

.lg-hero-home__bg-image {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	-o-object-position: right;
	   object-position: right;
	transition: opacity var(--transition-slow);
}

/* Overlay renforcé — gauche sombre (lisibilité texte) + base globale */
.lg-hero-home__overlay {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(
			to right,
			rgba(0, 0, 0, 0.55) 0%,
			rgba(0, 0, 0, 0.15) 55%,
			rgba(0, 0, 0, 0.05) 100%
		),
		linear-gradient(
			to bottom,
			rgba(0, 0, 0, 0.25) 0%,
			rgba(0, 0, 0, 0) 50%,
			rgba(0, 0, 0, 0.20) 100%
		);
	z-index: 1;
}

/* ============================================
   INNER — Contenu positionné au-dessus du bg
   ============================================ */

.lg-hero-home__inner {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	flex: 1;
	/* Header fixe = 88px réels — contenu démarre clairement en dessous */
	padding-top: calc(88px + var(--space-5));
	padding-left: var(--space-6);
	padding-right: var(--space-6);
}

/* ============================================
   HEADING GROUP — Surtitle + Title + Accent
   Positionné dans la zone libre du hero
   ============================================ */

.lg-hero-home__heading-group {
	flex: 1;
	display: flex;
	flex-direction: column;
	/* justify-content: center; */
	padding-bottom: 16rem;
}

/* Surtitle — "LE GROUPE LG" */
.lg-hero-home__surtitle {
	font-family: var(--ff-heading);
	font-size: 1.5rem;
	font-weight: var(--fw-bold);
	font-style: normal;
	text-transform: uppercase;
	line-height: normal;
	color: var(--color-blanc);
	margin-bottom: 0;
}

/* Title wrapper */
.lg-hero-home__title {
	font-family: var(--ff-heading);
	font-weight: var(--fw-bold);
	text-transform: uppercase;
}

/* Pill — "DES UNIVERS & DES HUMAINS" */
.lg-hero-home__title-pill {
	display: inline-block;
	background: var(--color-blanc);
	color: var(--color-noir-primary);
	padding: 3px 14px;
	border-radius: 10px;
	font-size: 1rem;
	font-weight: var(--fw-bold);
	font-style: normal;
	line-height: normal;
	text-transform: uppercase;
	margin-bottom: 0;
}

/* Accent — "EN MOUVEMENT." */
.lg-hero-home__title-accent {
	display: block;
	color: var(--color-accent);
	font-size: 2.125rem;
	font-weight: var(--fw-bold);
	font-style: italic;
	line-height: normal;
	text-transform: uppercase;
	text-shadow: 0 0 4px rgba(255, 255, 255, 0.70);
	margin-top: var(--space-2);
}

/* ============================================
   TABS UNIVERS — Pills inline
   Figma : actif = bg rouge, inactifs = glass
   ============================================ */

.lg-hero-home__tabs {
	display: flex;
	flex-wrap: nowrap;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	gap: var(--space-3);
	padding-bottom: var(--space-5);
	/* Full-bleed mobile : la barre déborde du padding latéral de __inner
	   pour scroller d'un bord à l'autre de l'écran. Le tab coupé l'est donc
	   au ras du bord (affordance de scroll) et non à 2rem du bord. */
	margin-inline: calc(-1 * var(--space-6));
	padding-inline: var(--space-6);
	scrollbar-width: none;
}

.lg-hero-home__tabs::-webkit-scrollbar {
	display: none;
}

.lg-hero-home__tab {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px 12px;
	font-family: var(--ff-heading);
	font-size: var(--fs-body);
	font-weight: var(--fw-bold);
	text-transform: uppercase;
	color: var(--color-blanc);
	background: transparent;
	border: none;
	border-radius: var(--radius-pill);
	cursor: pointer;
	white-space: nowrap;
	text-decoration: none;
	line-height: 1.75;
	transition:
		background var(--transition-base),
		color var(--transition-base),
		border-color var(--transition-base);
}

/* Glass inactif — Figma: bg-white/40, border stone-300, backdrop-blur */
.lg-hero-home__tab--glass {
	background: rgba(255, 255, 255, 0.4);
	border: 1px solid rgba(214, 211, 209, 1);
	backdrop-filter: blur(10px);
	color: var(--color-noir-primary);
	font-weight: var(--fw-regular);
}

.lg-hero-home__tab--glass:hover {
	background: rgba(255, 255, 255, 0.55);
	text-decoration: none;
}

/* Active tab — Figma: bg rouge plein */
.lg-hero-home__tab--active {
	background: var(--color-rouge-lg);
	color: var(--color-blanc);
	font-weight: var(--fw-bold);
	border: none;
}

.lg-hero-home__tab--active:hover {
	background: #BF1E10;
}

/* Icône lien externe */
.lg-hero-home__tab-external {
	width: 10px;
	height: 10px;
	flex-shrink: 0;
	opacity: 0.7;
	display: none;
}

/* ============================================
   BARRE UNIVERS — Glass dark au pied du hero
   Figma: bg-black/20, backdrop-blur, border-top white/10
   ============================================ */

/* Conteneur des panneaux : grille empilée.
   Tous les panneaux occupent la même cellule (grid-area 1/1) → le conteneur
   prend la hauteur du plus grand et la réserve en permanence, donc aucun saut
   vertical quand on change d'univers. */
.lg-hero-home__universes {
	display: grid;
	width: 100%;
}

.lg-hero-home__universe {
	position: relative;
	z-index: 2;
	grid-area: 1 / 1;
	width: 100%;
	background: rgba(0, 0, 0, 0.2);
	backdrop-filter: blur(10px);
	color: var(--color-blanc);
	/* Inactif : masqué mais occupe toujours sa place dans la grille
	   (visibility:hidden, pas display:none) → hauteur réservée + retiré
	   de l'accessibilité et du tab order. */
	visibility: hidden;
}

/* Liseret blanc avec fondu gauche/droite — pattern identique à la navbar */
.lg-hero-home__universe::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient(
		90deg,
		transparent 0%,
		white 40%,
		white 60%,
		transparent 100%
	);
	pointer-events: none;
}

.lg-hero-home__universe-inner {
	display: flex;
	flex-direction: column;
	gap: var(--space-6);
	padding: var(--space-6);
}

.lg-hero-home__universe--active {
	visibility: visible;
}

/* Texte univers */
.lg-hero-home__universe-text {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--space-3);
}

.lg-hero-home__universe-name {
	font-family: var(--ff-heading);
	font-size: var(--fs-h3);
	font-weight: var(--fw-bold);
	text-transform: uppercase;
	text-align: center;
	color: var(--color-blanc);
	line-height: var(--lh-heading);
}

.lg-hero-home__universe-slogan {
	font-family: var(--ff-heading);
	font-size: var(--fs-h2);
	font-weight: var(--fw-bold);
	text-align: center;
	color: var(--color-blanc);
	line-height: var(--lh-heading);
}

.lg-hero-home__universe-desc {
	font-family: var(--ff-body);
	font-size: 1rem;
	font-weight: var(--fw-bold);
	line-height: var(--lh-body);
	text-align: center;
	color: var(--color-blanc);
	max-width: 28.375rem;
}

/* ============================================
   LOGO GRID — Glass dark
   Figma: bg zinc-500/70, radius 10px, shadow lumineux
   Grille fixe des 6 premières marques
   ============================================ */

.lg-hero-home__logos-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--space-3);
	flex: 1;
}

/* Carte logo */
.lg-hero-home__logo-card {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	min-height: 72px;
	padding: var(--space-2);
	background: rgba(128, 128, 128, 0.70);
	border-radius: 10px;
	box-shadow: 0 4px 10px 0 rgba(255, 255, 255, 0.25);
	text-decoration: none;
	transition:
		background var(--transition-base),
		box-shadow var(--transition-base);
}

.lg-hero-home__logo-card:hover {
	background: rgba(128, 128, 128, 0.85);
	text-decoration: none;
}

.lg-hero-home__logo-card-arrow {
	position: absolute;
	top: var(--space-2);
	right: var(--space-2);
	color: var(--color-blanc);
	/* opacity: 0.8; */
	display: flex;
	width: 0.6875rem;
	height: 0.6875rem;
	justify-content: center;
	align-items: center;
	background-color: var(--color-rouge-lg);
	border-radius: 100%;
	aspect-ratio: 1/1;
}

.lg-hero-home__logo-card-arrow svg {
	width: 0.25rem;
	height: 0.25rem;
	flex-shrink: 0;
	aspect-ratio: 1/1;
}

/* Logos calés sur une boîte commune (largeur pleine, hauteur de référence)
   + object-fit:contain → chaque logo tient dans la même boîte, quelle que
   soit sa forme : les wordmarks larges ne débordent plus du padding et les
   logos compacts (MG…) sont mis à la même échelle de hauteur. */
.lg-hero-home__logo {
	width: 100%;
	height: 40px;
	-o-object-fit: contain;
	   object-fit: contain;
	-o-object-position: center;
	   object-position: center;
}

/* ============================================
   TABLET (≥ 768px)
   ============================================ */

@media (min-width: 768px) {

	.lg-hero-home__inner {
		padding-top: calc(88px + var(--space-8));
	}

	.lg-hero-home__heading-group {
		padding-bottom: var(--space-6);
	}

	.lg-hero-home__tabs {
		max-width: 75%;
		flex-wrap: wrap;
		/* Plus de scroll horizontal à partir de la tablette : on annule le
		   débordement full-bleed mobile. */
		margin-inline: 0;
		padding-inline: 0;
	}

	/* Surtitle — tablette */
	.lg-hero-home__surtitle {
		font-size: 1.625rem;
		margin-bottom: var(--space-2);
	}

	/* Pill — tablette */
	.lg-hero-home__title-pill {
		font-size: 1.25rem;
		margin-bottom: var(--space-2);
	}

	/* Accent — tablette */
	.lg-hero-home__title-accent {
		font-size: 2.625rem;
	}

	.lg-hero-home__universe-text {
		/* Hauteur = contenu (un flex-basis 40% en colonne créait un vide vertical). */
		flex: 0 0 auto;
	}

	/* Cartes logos iso-maquette : format compact fixe (≈ 137 × 80 px, ratio
	   ~1.7) centré, et non étiré sur toute la largeur — sinon les cartes
	   paraissent trop allongées (~3.4:1). Gaps maquette : 84px horizontal,
	   30px vertical. */
	.lg-hero-home__logos-grid {
		grid-template-columns: repeat(3, 137px);
		justify-content: center;
		gap: 1.875rem 5.25rem;
		flex: 0 0 auto;
	}

	.lg-hero-home__logo-card {
		min-height: 5rem;
	}

	.lg-hero-home__logo-card-arrow {
		width: 1.00356rem;
		height: 1.00356rem;
	}

	.lg-hero-home__logo-card-arrow svg {
		width: 0.25rem;
		height: 0.25rem;
	}
}

/* ============================================
   DESKTOP (≥ 1024px)
   ============================================ */

@media (min-width: 1024px) {
	.lg-hero-home__bg-picture {
		-o-object-position: center;
		   object-position: center;
	}

	.lg-hero-home {
		/* Desktop : hero derrière le header transparent (overlay intentionnel) */
		margin-top: -76px;
	}

	.lg-hero-home__inner {
		width: 100%;
		max-width: var(--container-max);
		margin: 0 auto;
		padding-top: calc(76px + var(--space-16));
		padding-left: var(--container-px);
		padding-right: var(--container-px);
	}

	/* Surtitle — Figma desktop: 56px / 80px */
	.lg-hero-home__surtitle {
		font-size: 3.5rem;
		line-height: 5rem;
	}

	/* Title pill — Figma desktop: 40px */
	.lg-hero-home__title-pill {
		font-size: 2.5rem;
	}

	/* Accent — Figma desktop: 72px / 80px */
	.lg-hero-home__title-accent {
		font-size: 4.5rem;
		line-height: 5rem;
		text-shadow: 0 0 10px rgba(255, 255, 255, 0.50);
		padding-left: 3.75rem;
	}

	/* Tabs */
	.lg-hero-home__tabs {
		max-width: 500px;
	}
	.lg-hero-home__tab {
		font-size: var(--fs-body);
		padding: 4px 12px;
	}

	/* Universe bar */
	.lg-hero-home__universe-inner {
		width: 100%;
		max-width: var(--container-max);
		margin: 0 auto;
		flex-direction: row;
		align-items: center;
		padding: var(--space-8) var(--container-px);
		gap: var(--space-10);
	}

	.lg-hero-home__universe-text {
		flex: 1 1 0;
		min-width: 0;
		align-items: flex-start;
	}

	.lg-hero-home__universe-name,
	.lg-hero-home__universe-slogan,
	.lg-hero-home__universe-desc {
		text-align: left;
	}

	.lg-hero-home__universe-desc {
		font-size: 1.125rem;
		max-width: 100%;
	}

	.lg-hero-home__logos-grid {
		grid-template-columns: repeat(3, 160px);
		gap: var(--space-4);
		flex: 0 0 auto;
	}

	.lg-hero-home__logo-card {
		/* Reprend la hauteur desktop (la règle tablette monte les cartes à 5rem). */
		min-height: 4.5rem;
		padding: var(--space-4);
	}

	.lg-hero-home__logo-card-arrow {
		width: 1.25rem;
		height: 1.25rem;
	}

	.lg-hero-home__logo-card-arrow svg {
		width: 0.375rem;
		height: 0.375rem;
	}

	/* Cartes desktop plus basses (min-height 72px → ~40px de zone utile) :
	   hauteur de logo un peu réduite, largeur héritée (100% de la zone utile). */
	.lg-hero-home__logo {
		height: 36px;
	}
}

/* ============================================
   DESKTOP MEDIUM (1024px → 1700px)
   MacBook Air / laptops 13"–15" : tailles de typo
   réduites par rapport à la maquette desktop standard.
   ============================================ */

@media (min-width: 1024px) and (max-width: 1700px) {

	/* Hauteur cible Figma 1280px = 701px (override du 100svh) */
	.lg-hero-home {
		min-height: 701px;
	}

	/* Surtitle — "LE GROUPE LG" : 56 → 48 */
	.lg-hero-home__surtitle {
		font-size: 3rem;
		line-height: normal;
	}

	/* Pill — "DES UNIVERS & DES HUMAINS" : 40 → 32 */
	.lg-hero-home__title-pill {
		font-size: 2rem;
	}

	/* Accent — "EN MOUVEMENT." : 72 → 64 */
	.lg-hero-home__title-accent {
		font-size: 4rem;
		line-height: normal;
	}

	/* Tabs univers : 20/? → 18/27 */
	.lg-hero-home__tab {
		font-size: 1.125rem;
		line-height: 27px;
	}

	/* Nom univers ("LG AUTOMOBILE") : 24 → 18/31 */
	.lg-hero-home__universe-name {
		font-size: 1.125rem;
		line-height: 31px;
	}

	/* Slogan univers ("Votre nouvelle route…") : 32 → 24/38 */
	.lg-hero-home__universe-slogan {
		font-size: 1.5rem;
		line-height: 38px;
	}

	/* Description univers ("Nous vous accompagnons…") : 18/27 → 16/22 */
	.lg-hero-home__universe-desc {
		font-size: 1rem;
		line-height: 22px;
	}
}

/* ============================================
   LARGE DESKTOP (≥ 1440px)
   ============================================ */

@media (min-width: 1440px) {
	/* .lg-hero-home__inner {
		padding-left: 0;
		padding-right: 0;
	} */

	/* Même contrainte max-width sur les enfants de __inner et __universe */
	.lg-hero-home__heading-group {
		max-width: var(--container-max);
		/* margin-left: auto; */
		/* margin-right: auto; */
		/* padding-left: var(--space-10); */
		/* padding-right: var(--space-10); */
	}

	.lg-hero-home__universe-inner {
		max-width: var(--container-max);
		margin-left: auto;
		margin-right: auto;
	}
}
