/*
 * Notre gamme GREENCO — couleurs héritées d'Astra.
 * --ast-global-color-0 : accent   --ast-global-color-2 : titres   --ast-global-color-3 : texte
 * --ast-global-color-4 : fond clair   --ast-global-color-6 : bordures
 * Les valeurs de repli ne servent que si Astra n'est pas actif.
 */
.gg-range {
	--gg-accent: var(--ast-global-color-0, #0f4a33);
	--gg-heading: var(--ast-global-color-2, #1c2521);
	--gg-text: var(--ast-global-color-3, #5b655f);
	--gg-soft: var(--ast-global-color-4, #eaf3ee);
	--gg-border: var(--ast-global-color-6, #e7e9e7);
	font-family: inherit;
	padding: 0;
}
.gg-range * { box-sizing: border-box; }
.gg-range .gg-container {
	max-width: var(--wp--style--global--wide-size, 1320px);
	margin-inline: auto;
	padding: 0 !important;
}

/* Titre : même style que h1.entry-title (astra-child/style.css) */
.gg-range .gg-title {
	position: relative;
	display: inline-block;
	margin: 0 0 32px;
	padding-bottom: 6px;
	color: var(--gg-heading);
}
.gg-range .gg-title::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 64px;
	height: 3px;
	border-radius: 3px;
	background: linear-gradient(90deg, var(--gc-green), var(--gc-lime));
}
body.rtl .gg-range .gg-title::after,
html[dir="rtl"] .gg-range .gg-title::after,
.gg-range[dir="rtl"] .gg-title::after {
	left: auto;
	right: 0;
	background: linear-gradient(270deg, var(--gc-green), var(--gc-lime));
}
@media (max-width: 768px) {
	.gg-range .gg-title::after { width: 35px; }
}

.gg-range .gg-list { display: flex; flex-direction: column; }
.gg-range .gg-row {
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 22px 4px;
	border-bottom: 1px solid var(--gg-border);
	text-decoration: none;
	color: inherit;
	transition: background-color .15s ease;
}
.gg-range .gg-row:first-child { border-top: 1px solid var(--gg-border); }
.gg-range .gg-row:hover { background: var(--gg-soft); }
.gg-range .gg-icon {
	flex: 0 0 auto;
	width: 48px;
	height: 48px;
	border-radius: 12px;
	background: var(--gg-soft);
	display: flex;
	align-items: center;
	justify-content: center;
}
.gg-range .gg-icon-img {
	width: 26px;
	height: 26px;
	display: block;
	background-color: var(--gg-accent);
	-webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
	-webkit-mask-position: center; mask-position: center;
	-webkit-mask-size: contain; mask-size: contain;
}
.gg-range .gg-row:hover .gg-icon { background: #fff; }
.gg-range .gg-body { flex: 1 1 auto; min-width: 0; }
.gg-range .gg-body h3 { margin: 0 0 4px; font-size: 1.05rem; font-weight: 700; color: var(--gg-heading); }
.gg-range .gg-body p { margin: 0; font-size: .9rem; line-height: 1.7; color: var(--gg-text); }
.gg-range .gg-cta {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: .9rem;
	font-weight: 700;
	color: var(--gg-accent);
	white-space: nowrap;
}
.gg-range .gg-cta svg { width: 16px; height: 16px; stroke: var(--gg-accent); transition: transform .15s ease; }
.gg-range[dir="rtl"] .gg-row:hover .gg-cta svg { transform: translateX(-4px); }
.gg-range[dir="ltr"] .gg-row:hover .gg-cta svg { transform: translateX(4px); }
@media (max-width: 640px) {
	.gg-range .gg-row { flex-wrap: wrap; }
	.gg-range .gg-cta { margin-inline-start: 68px; }
}
@media (prefers-reduced-motion: reduce) {
	.gg-range * { transition: none !important; }
}
