/**
 * Renov - Avantages Professionnels Hero
 * --------------------------------------------------------------
 * Desktop:
 * - grande image de fond
 * - contenu à gauche
 * - carte avantages blanche à droite
 * - 3 éléments de réassurance en bas
 *
 * Responsive:
 * - tablette : carte sous le contenu
 * - mobile : composition verticale
 */

.renov-el-pro-advantages-hero {
	--renov-pro-accent: #ff4b16;
	--renov-pro-dark: #071d35;
	--renov-pro-white: #ffffff;
	--renov-pro-text: #111827;
	--renov-pro-muted: #394354;
	--renov-pro-soft: #fff0e9;
	--renov-pro-line: #e8e8e8;

	position: relative;
	width: 100%;
	overflow: hidden;

	background: var(--renov-pro-dark);
}

.renov-el-pro-advantages-hero,
.renov-el-pro-advantages-hero * {
	box-sizing: border-box;
}

/* =========================================================
   MAIN
   ========================================================= */

.renov-el-pro-advantages-hero__inner {
	position: relative;

	display: grid;
	grid-template-columns: minmax(0, 65.5%) minmax(390px, 34.5%);

	width: 100%;
	min-height: 650px;

	overflow: hidden;

	background: var(--renov-pro-dark);
}

/* =========================================================
   BACKGROUND
   ========================================================= */

.renov-el-pro-advantages-hero__background {
	position: absolute;
	inset: 0;

	z-index: 0;

	overflow: hidden;
}

.renov-el-pro-advantages-hero__background-image {
	display: block;

	width: 100%;
	height: 100%;

	object-fit: cover;
	object-position: center center;

	transform: scale(1.002);
}

/*
 * L'image reste visible principalement au centre/droite.
 * Le côté gauche reçoit l'overlay sombre de la maquette.
 */
.renov-el-pro-advantages-hero__overlay {
	position: absolute;
	inset: 0;

	z-index: 1;

	pointer-events: none;

	background:
		linear-gradient(
			90deg,
			rgba(3, 25, 45, 0.97) 0%,
			rgba(3, 25, 45, 0.92) 20%,
			rgba(3, 25, 45, 0.77) 35%,
			rgba(3, 25, 45, 0.30) 52%,
			rgba(3, 25, 45, 0.04) 69%,
			rgba(3, 25, 45, 0.02) 100%
		),
		linear-gradient(
			180deg,
			rgba(4, 25, 43, 0.08) 0%,
			rgba(4, 25, 43, 0.02) 55%,
			rgba(4, 25, 43, 0.35) 100%
		);
}

/* =========================================================
   LEFT CONTENT
   ========================================================= */

.renov-el-pro-advantages-hero__content {
	position: relative;
	z-index: 3;

	display: flex;
	flex-direction: column;

	min-width: 0;
	min-height: 650px;

	padding:
		42px
		clamp(34px, 4.3vw, 72px)
		34px;
}

/* =========================================================
   BREADCRUMB
   ========================================================= */

.renov-el-pro-advantages-hero__breadcrumb {
	display: flex;
	align-items: center;
	flex-wrap: wrap;

	gap: 11px;

	margin: 0 0 34px;

	color: rgba(255, 255, 255, 0.94);

	font-size: 14px;
	font-weight: 500;
	line-height: 1.4;
}

.renov-el-pro-advantages-hero__breadcrumb a {
	display: inline-flex;
	align-items: center;

	gap: 10px;

	color: inherit;
	text-decoration: none;

	transition:
		color 180ms ease,
		opacity 180ms ease;
}

.renov-el-pro-advantages-hero__breadcrumb a:hover {
	color: var(--renov-pro-accent);
}

.renov-el-pro-advantages-hero__breadcrumb-home {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	width: 17px;
	height: 17px;
}

.renov-el-pro-advantages-hero__breadcrumb-home i {
	font-size: 13px;
}

.renov-el-pro-advantages-hero__breadcrumb-home svg {
	display: block;

	width: 14px;
	height: 14px;

	fill: currentColor;
	color: currentColor;
}

.renov-el-pro-advantages-hero__breadcrumb-separator {
	color: rgba(255, 255, 255, 0.75);

	font-size: 23px;
	font-weight: 300;
	line-height: 1;
}

/* =========================================================
   HERO COPY
   ========================================================= */

.renov-el-pro-advantages-hero__copy {
	width: min(100%, 500px);
}

/* Eyebrow */

.renov-el-pro-advantages-hero__eyebrow {
	display: inline-flex;
	align-items: center;

	margin: 0 0 14px;
	padding: 6px 9px;

	border-radius: 4px;

	background: rgba(95, 67, 55, 0.82);
	color: #ffffff;

	font-size: 12px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

.renov-el-pro-advantages-hero__eyebrow::first-line {
	color: inherit;
}

/* Title */

.renov-el-pro-advantages-hero__title {
	max-width: 520px;

	margin: 0;

	color: white !important;

	font-size: clamp(38px, 3.45vw, 58px);
	font-weight: 800;
	line-height: 0.99;
	letter-spacing: -0.035em;
}

.renov-el-pro-advantages-hero__title span {
	color: var(--renov-pro-accent);
}

/* Orange underline */

.renov-el-pro-advantages-hero__title-line {
	display: block;

	width: 50px;
	height: 3px;

	margin-top: 20px;

	background: var(--renov-pro-accent);
}

/* Description */

.renov-el-pro-advantages-hero__description {
	max-width: 470px;

	margin: 20px 0 0;

	color: rgba(255, 255, 255, 0.94);

	font-size: 17px;
	font-weight: 400;
	line-height: 1.58;
}

/* =========================================================
   CTA
   ========================================================= */

.renov-el-pro-advantages-hero__cta {
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;

	gap: 13px;

	width: fit-content;
	min-width: 330px;
	min-height: 60px;

	margin-top: 28px;
	padding: 13px 18px 13px 21px;

	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 8px;

	background:
		linear-gradient(
			135deg,
			#ff5b20 0%,
			var(--renov-pro-accent) 100%
		);

	color: #ffffff;

	font-size: 16px;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;

	box-shadow:
		0 12px 30px rgba(255, 75, 22, 0.20);

	transition:
		transform 200ms ease,
		box-shadow 200ms ease,
		filter 200ms ease;
}

.renov-el-pro-advantages-hero__cta:hover {
	transform: translateY(-2px);

	color: #ffffff;

	filter: brightness(1.04);

	box-shadow:
		0 16px 34px rgba(255, 75, 22, 0.28);
}

.renov-el-pro-advantages-hero__cta-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	flex: 0 0 25px;

	width: 25px;
	height: 25px;

	color: #ffffff;
}

.renov-el-pro-advantages-hero__cta-icon i {
	font-size: 22px;
}

.renov-el-pro-advantages-hero__cta-icon svg {
	display: block;

	width: 24px;
	height: 24px;

	fill: currentColor;
	color: currentColor;
}

.renov-el-pro-advantages-hero__arrow {
	width: 22px;
	height: 22px;

	margin-left: auto;

	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;

	transition: transform 180ms ease;
}

.renov-el-pro-advantages-hero__cta:hover
.renov-el-pro-advantages-hero__arrow {
	transform: translateX(4px);
}

/* =========================================================
   TRUST / BOTTOM LEFT
   ========================================================= */

.renov-el-pro-advantages-hero__trust {
	display: grid;
	grid-template-columns:
		minmax(0, 1fr)
		minmax(0, 0.9fr)
		minmax(0, 1.4fr);

	gap: clamp(22px, 3vw, 48px);

	width: min(100%, 700px);

	margin-top: auto;
	padding-top: 30px;
}

.renov-el-pro-advantages-hero__trust-item {
	display: flex;
	align-items: center;

	gap: 13px;

	min-width: 0;

	color: rgba(255, 255, 255, 0.96);

	font-size: 13px;
	font-weight: 500;
	line-height: 1.28;
	text-decoration: none;
}

a.renov-el-pro-advantages-hero__trust-item {
	transition:
		transform 180ms ease,
		color 180ms ease;
}

a.renov-el-pro-advantages-hero__trust-item:hover {
	transform: translateY(-2px);

	color: #ffffff;
}

.renov-el-pro-advantages-hero__trust-icon {
	display: flex;
	align-items: center;
	justify-content: center;

	flex: 0 0 36px;

	width: 36px;
	height: 36px;

	color: var(--renov-pro-accent);
}

.renov-el-pro-advantages-hero__trust-icon i {
	font-size: 28px;
}

.renov-el-pro-advantages-hero__trust-icon svg {
	display: block;

	width: 29px;
	height: 29px;

	fill: currentColor;
	color: currentColor;
}

/* =========================================================
   RIGHT BENEFITS CARD
   ========================================================= */

.renov-el-pro-advantages-hero__benefits {
	position: relative;
	z-index: 4;

	align-self: center;

	width: calc(100% - 44px);
	max-width: 480px;

	margin:
		22px
		22px
		22px
		0;

	padding:
		28px
		34px
		26px;

	border: 1px solid rgba(0, 0, 0, 0.04);
	border-radius: 19px;

	background: #ffffff;

	box-shadow:
		0 22px 60px rgba(3, 20, 38, 0.18),
		0 5px 18px rgba(3, 20, 38, 0.08);
}

/* Card title */

.renov-el-pro-advantages-hero__benefits-title {
	margin: 0 0 18px;

	color: #101827;

	font-size: clamp(26px, 2.25vw, 34px);
	font-weight: 800;
	line-height: 1.02;
	letter-spacing: -0.025em;
}

.renov-el-pro-advantages-hero__benefits-title span {
	color: var(--renov-pro-accent);
}

/* =========================================================
   BENEFIT LIST
   ========================================================= */

.renov-el-pro-advantages-hero__benefits-list {
	display: flex;
	flex-direction: column;
}

/* Item */

.renov-el-pro-advantages-hero__benefit {
	position: relative;

	display: grid;
	grid-template-columns: 70px minmax(0, 1fr);

	gap: 18px;

	padding: 17px 0;
}

.renov-el-pro-advantages-hero__benefit + .renov-el-pro-advantages-hero__benefit {
	border-top: 1px solid var(--renov-pro-line);
}

/* Icon circle */

.renov-el-pro-advantages-hero__benefit-icon {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 68px;
	height: 68px;

	border-radius: 50%;

	background: var(--renov-pro-soft);
	color: var(--renov-pro-accent);
}

.renov-el-pro-advantages-hero__benefit-icon i {
	font-size: 28px;
}

.renov-el-pro-advantages-hero__benefit-icon svg {
	display: block;

	width: 30px;
	height: 30px;

	fill: currentColor;
	color: currentColor;
}

/* Benefit text */

.renov-el-pro-advantages-hero__benefit-copy {
	min-width: 0;

	padding-top: 2px;
}

.renov-el-pro-advantages-hero__benefit-copy h3 {
	margin: 0 0 4px;

	color: #101827;

	font-size: 15px;
	font-weight: 800;
	line-height: 1.3;
}

.renov-el-pro-advantages-hero__benefit-copy p {
	margin: 0;

	color: #273244;

	font-size: 13px;
	font-weight: 400;
	line-height: 1.42;
}

/* =========================================================
   PHONE + EMAIL
   ========================================================= */

.renov-el-pro-advantages-hero__contact-links {
	display: flex;
	flex-direction: column;

	gap: 5px;

	margin-top: 6px;
}

.renov-el-pro-advantages-hero__contact-links a {
	display: inline-flex;
	align-items: center;

	gap: 8px;

	width: fit-content;
	max-width: 100%;

	color: var(--renov-pro-accent);

	font-size: 14px;
	font-weight: 800;
	line-height: 1.25;
	text-decoration: none;

	transition:
		transform 180ms ease,
		color 180ms ease;
}

.renov-el-pro-advantages-hero__contact-links a:hover {
	transform: translateX(3px);

	color: #dc390c;
}

.renov-el-pro-advantages-hero__contact-links a > span {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	flex: 0 0 18px;

	width: 18px;
	height: 18px;
}

.renov-el-pro-advantages-hero__contact-links i {
	font-size: 14px;
}

.renov-el-pro-advantages-hero__contact-links svg {
	display: block;

	width: 15px;
	height: 15px;

	fill: currentColor;
	color: currentColor;
}

/* =========================================================
   FOCUS
   ========================================================= */

.renov-el-pro-advantages-hero a:focus-visible {
	outline: 3px solid rgba(255, 75, 22, 0.45);
	outline-offset: 4px;
}

/* =========================================================
   LARGE SCREENS
   ========================================================= */

@media (min-width: 1600px) {

	.renov-el-pro-advantages-hero__content {
		padding-left: 12%;
		padding-right: 68px;
	}

	.renov-el-pro-advantages-hero__benefits {
		max-width: 500px;

		padding-inline: 36px;
	}
}

/* =========================================================
   LAPTOP
   ========================================================= */

@media (max-width: 1280px) {

	.renov-el-pro-advantages-hero__inner {
		grid-template-columns: minmax(0, 62%) minmax(380px, 38%);
	}

	.renov-el-pro-advantages-hero__content {
		padding-left: 42px;
		padding-right: 32px;
	}

	.renov-el-pro-advantages-hero__copy {
		width: min(100%, 450px);
	}

	.renov-el-pro-advantages-hero__title {
		font-size: clamp(38px, 4vw, 52px);
	}

	.renov-el-pro-advantages-hero__description {
		font-size: 16px;
	}

	.renov-el-pro-advantages-hero__trust {
		gap: 18px;
	}

	.renov-el-pro-advantages-hero__benefits {
		width: calc(100% - 30px);

		margin-right: 15px;

		padding:
			26px
			25px
			23px;
	}

	.renov-el-pro-advantages-hero__benefit {
		grid-template-columns: 58px minmax(0, 1fr);

		gap: 14px;
	}

	.renov-el-pro-advantages-hero__benefit-icon {
		width: 56px;
		height: 56px;
	}

	.renov-el-pro-advantages-hero__benefit-icon i {
		font-size: 23px;
	}

	.renov-el-pro-advantages-hero__benefit-icon svg {
		width: 25px;
		height: 25px;
	}
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

	.renov-el-pro-advantages-hero {
		background: var(--renov-pro-dark);
	}

	.renov-el-pro-advantages-hero__inner {
		display: block;

		min-height: 0;
	}

	.renov-el-pro-advantages-hero__background {
		height: 680px;
	}

	.renov-el-pro-advantages-hero__background-image {
		object-position: 62% center;
	}

	.renov-el-pro-advantages-hero__overlay {
		height: 680px;

		background:
			linear-gradient(
				90deg,
				rgba(3, 25, 45, 0.97) 0%,
				rgba(3, 25, 45, 0.88) 38%,
				rgba(3, 25, 45, 0.45) 72%,
				rgba(3, 25, 45, 0.30) 100%
			),
			linear-gradient(
				180deg,
				rgba(3, 25, 45, 0.05) 0%,
				rgba(3, 25, 45, 0.22) 62%,
				var(--renov-pro-dark) 100%
			);
	}

	.renov-el-pro-advantages-hero__content {
		min-height: 680px;

		padding:
			34px
			32px
			32px;
	}

	.renov-el-pro-advantages-hero__copy {
		width: min(100%, 500px);
	}

	.renov-el-pro-advantages-hero__benefits {
		width: calc(100% - 48px);
		max-width: 760px;

		margin: 32px auto;

		padding: 34px;
	}

	.renov-el-pro-advantages-hero__benefits-list {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));

		column-gap: 32px;
	}

	.renov-el-pro-advantages-hero__benefit {
		grid-template-columns: 62px minmax(0, 1fr);

		padding: 22px 0;
	}

	.renov-el-pro-advantages-hero__benefit + .renov-el-pro-advantages-hero__benefit {
		border-top: 0;
	}

	.renov-el-pro-advantages-hero__benefit:nth-child(n + 3) {
		border-top: 1px solid var(--renov-pro-line);
	}

	.renov-el-pro-advantages-hero__benefit-icon {
		width: 60px;
		height: 60px;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

	.renov-el-pro-advantages-hero__background {
		height: 720px;
	}

	.renov-el-pro-advantages-hero__background-image {
		object-position: 59% center;
	}

	.renov-el-pro-advantages-hero__overlay {
		height: 720px;

		background:
			linear-gradient(
				180deg,
				rgba(3, 25, 45, 0.82) 0%,
				rgba(3, 25, 45, 0.78) 35%,
				rgba(3, 25, 45, 0.87) 67%,
				var(--renov-pro-dark) 100%
			);
	}

	.renov-el-pro-advantages-hero__content {
		min-height: 720px;

		padding:
			25px
			20px
			28px;
	}

	.renov-el-pro-advantages-hero__breadcrumb {
		gap: 8px;

		margin-bottom: 27px;

		font-size: 12px;
	}

	.renov-el-pro-advantages-hero__eyebrow {
		margin-bottom: 13px;

		font-size: 10px;
	}

	.renov-el-pro-advantages-hero__title {
		max-width: 420px;

		font-size: clamp(37px, 10.5vw, 50px);
		line-height: 1;
	}

	.renov-el-pro-advantages-hero__title-line {
		margin-top: 17px;
	}

	.renov-el-pro-advantages-hero__description {
		max-width: 460px;

		margin-top: 18px;

		font-size: 15px;
		line-height: 1.55;
	}

	.renov-el-pro-advantages-hero__cta {
		width: 100%;
		min-width: 0;
		min-height: 58px;

		margin-top: 24px;
	}

	.renov-el-pro-advantages-hero__trust {
		grid-template-columns: repeat(3, minmax(0, 1fr));

		gap: 10px;

		width: 100%;

		padding-top: 26px;
	}

	.renov-el-pro-advantages-hero__trust-item {
		flex-direction: column;
		align-items: flex-start;

		gap: 7px;

		font-size: 11px;
	}

	.renov-el-pro-advantages-hero__trust-icon {
		width: 30px;
		height: 30px;

		flex-basis: 30px;
	}

	.renov-el-pro-advantages-hero__trust-icon i {
		font-size: 24px;
	}

	.renov-el-pro-advantages-hero__trust-icon svg {
		width: 25px;
		height: 25px;
	}

	/* Card */

	.renov-el-pro-advantages-hero__benefits {
		width: calc(100% - 28px);

		margin: 22px auto 28px;

		padding:
			27px
			22px
			20px;

		border-radius: 16px;
	}

	.renov-el-pro-advantages-hero__benefits-title {
		margin-bottom: 13px;

		font-size: 29px;
	}

	.renov-el-pro-advantages-hero__benefits-list {
		display: flex;
	}

	.renov-el-pro-advantages-hero__benefit {
		grid-template-columns: 58px minmax(0, 1fr);

		gap: 14px;

		padding: 18px 0;
	}

	.renov-el-pro-advantages-hero__benefit + .renov-el-pro-advantages-hero__benefit,
	.renov-el-pro-advantages-hero__benefit:nth-child(n + 3) {
		border-top: 1px solid var(--renov-pro-line);
	}

	.renov-el-pro-advantages-hero__benefit-icon {
		width: 56px;
		height: 56px;
	}

	.renov-el-pro-advantages-hero__benefit-copy h3 {
		font-size: 15px;
	}

	.renov-el-pro-advantages-hero__benefit-copy p {
		font-size: 13px;
	}
}

/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 480px) {

	.renov-el-pro-advantages-hero__background,
	.renov-el-pro-advantages-hero__overlay {
		height: 760px;
	}

	.renov-el-pro-advantages-hero__content {
		min-height: 760px;

		padding-inline: 17px;
	}

	.renov-el-pro-advantages-hero__title {
		font-size: clamp(34px, 10.7vw, 44px);
	}

	.renov-el-pro-advantages-hero__description {
		font-size: 14px;
	}

	.renov-el-pro-advantages-hero__cta {
		padding-inline: 16px;

		font-size: 14px;
	}

	.renov-el-pro-advantages-hero__trust {
		grid-template-columns: 1fr;

		gap: 13px;

		margin-top: 25px;
	}

	.renov-el-pro-advantages-hero__trust-item {
		flex-direction: row;
		align-items: center;

		font-size: 12px;
	}

	.renov-el-pro-advantages-hero__benefits {
		width: calc(100% - 20px);

		padding:
			24px
			17px
			18px;
	}

	.renov-el-pro-advantages-hero__benefits-title {
		font-size: 26px;
	}

	.renov-el-pro-advantages-hero__benefit {
		grid-template-columns: 50px minmax(0, 1fr);

		gap: 12px;
	}

	.renov-el-pro-advantages-hero__benefit-icon {
		width: 48px;
		height: 48px;
	}

	.renov-el-pro-advantages-hero__benefit-icon i {
		font-size: 20px;
	}

	.renov-el-pro-advantages-hero__benefit-icon svg {
		width: 22px;
		height: 22px;
	}

	.renov-el-pro-advantages-hero__contact-links a {
		font-size: 13px;

		overflow-wrap: anywhere;
	}
}

/* =========================================================
   REVEAL ENHANCEMENTS
   ========================================================= */

.renov-el-pro-advantages-hero__benefits {
	transition:
		transform 300ms ease,
		box-shadow 300ms ease;
}

.renov-el-pro-advantages-hero__benefits:hover {
	transform: translateY(-3px);

	box-shadow:
		0 28px 70px rgba(3, 20, 38, 0.22),
		0 7px 20px rgba(3, 20, 38, 0.10);
}

.renov-el-pro-advantages-hero__benefit-icon {
	transition:
		transform 220ms ease,
		background-color 220ms ease;
}

.renov-el-pro-advantages-hero__benefit:hover
.renov-el-pro-advantages-hero__benefit-icon {
	transform: scale(1.06);
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

	.renov-el-pro-advantages-hero__background-image,
	.renov-el-pro-advantages-hero__cta,
	.renov-el-pro-advantages-hero__arrow,
	.renov-el-pro-advantages-hero__trust-item,
	.renov-el-pro-advantages-hero__benefits,
	.renov-el-pro-advantages-hero__benefit-icon,
	.renov-el-pro-advantages-hero__contact-links a {
		transition: none !important;
	}

	.renov-el-pro-advantages-hero__cta:hover,
	a.renov-el-pro-advantages-hero__trust-item:hover,
	.renov-el-pro-advantages-hero__benefits:hover,
	.renov-el-pro-advantages-hero__benefit:hover
	.renov-el-pro-advantages-hero__benefit-icon,
	.renov-el-pro-advantages-hero__contact-links a:hover {
		transform: none;
	}
}