/**
 * Ubris Builder WP — Écosystème accueil
 *
 * @author     Complianz System
 * @copyright  2025-2026 Complianz System
 * @license    GPL-2.0-or-later
 * @link       https://ubris-wordpress.fr/
 */

.wpcursor-component.wpcursor-ecosysteme-accueil {
	--wpc-eco-pad: max(1.15rem, env(safe-area-inset-left), env(safe-area-inset-right));
	--wpc-eco-ink: var(--wpcursor-ink, #210000);
	--wpc-eco-muted: #6b5e5a;
	--wpc-eco-cream: var(--wpcursor-cream, #f9f7f5);
	--wpc-eco-lime: var(--wpcursor-lime, #f1fbbf);
	--wpc-eco-orange: var(--wpcursor-orange, #f98700);
	--wpc-eco-red: var(--wpcursor-red, #ab1a19);
	--wpc-eco-burgundy: var(--wpcursor-burgundy, #5b0504);
	--wpc-eco-gradient: var(--wpcursor-gradient, linear-gradient(90deg, #f98700 0%, #ab1a19 100%));
	background:
		radial-gradient(ellipse 70% 50% at 8% 0%, rgb(255 179 71 / 0.14), transparent 55%),
		radial-gradient(ellipse 55% 40% at 95% 10%, rgb(241 251 191 / 0.45), transparent 50%),
		var(--wpc-eco-cream);
	color: var(--wpc-eco-ink);
	font-family: var(--wpcursor-font-body, "Poppins", system-ui, sans-serif);
	padding: 3.25rem 0 4rem;
	width: 100%;
}

@media (min-width: 1100px) {
	.wpcursor-component.wpcursor-ecosysteme-accueil {
		--wpc-eco-pad: clamp(1.5rem, 4vw, 3.5rem);
		padding: 4.25rem 0 5rem;
	}
}

.entry-content > .wpcursor-component.wpcursor-ecosysteme-accueil {
	margin-inline: calc(50% - 50vw);
	max-width: 100vw;
	width: 100vw;
}

.wpcursor-ecosysteme-accueil__inner {
	margin: 0 auto;
	max-width: 80rem;
	padding: 0 var(--wpc-eco-pad);
	width: 100%;
}

.wpcursor-ecosysteme-accueil__head {
	margin: 0 auto 1.85rem;
	max-width: 48rem;
	text-align: center;
}

.wpcursor-ecosysteme-accueil__eyebrow {
	color: var(--wpc-eco-red);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	margin: 0 0 0.85rem;
	text-transform: uppercase;
}

.wpcursor-component.wpcursor-ecosysteme-accueil .wpcursor-ecosysteme-accueil__title {
	color: var(--wpc-eco-ink);
	font-family: var(--wpcursor-font-title, "Poppins", system-ui, sans-serif);
	font-size: clamp(1.85rem, 3.6vw, 2.85rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.15;
	margin: 0 0 0.9rem;
}

.wpcursor-ecosysteme-accueil__title-line,
.wpcursor-ecosysteme-accueil__title-accent {
	display: block;
}

.wpcursor-component.wpcursor-ecosysteme-accueil .wpcursor-ecosysteme-accueil__title-accent {
	background: var(--wpc-eco-gradient);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.wpcursor-ecosysteme-accueil__lead {
	color: var(--wpc-eco-muted);
	font-size: 1.02rem;
	line-height: 1.65;
	margin: 0;
}

.wpcursor-ecosysteme-accueil__tabs {
	margin: 0 auto 1.35rem;
}

.wpcursor-ecosysteme-accueil__tablist {
	background: #ffffff;
	border: 1px solid #efe9e4;
	border-radius: 999px;
	box-shadow: 0 8px 22px rgb(33 0 0 / 0.05);
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem;
	justify-content: center;
	margin: 0 auto 1.25rem;
	max-width: 36rem;
	padding: 0.3rem;
}

.wpcursor-ecosysteme-accueil__tab {
	appearance: none;
	background: transparent;
	border: 0;
	border-radius: 999px;
	color: var(--wpc-eco-ink);
	cursor: pointer;
	flex: 1 1 auto;
	font-family: inherit;
	font-size: 0.84rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	line-height: 1.2;
	min-width: 6.5rem;
	padding: 0.72rem 1rem;
	transition: background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}

.wpcursor-ecosysteme-accueil__tab.is-active.is-orange {
	background: var(--wpc-eco-orange);
	box-shadow: 0 8px 18px rgb(249 135 0 / 0.28);
	color: #fff;
}

.wpcursor-ecosysteme-accueil__tab.is-active.is-red {
	background: var(--wpc-eco-red);
	box-shadow: 0 8px 18px rgb(171 26 25 / 0.28);
	color: #fff;
}

.wpcursor-ecosysteme-accueil__tab.is-active.is-burgundy {
	background: var(--wpc-eco-burgundy);
	box-shadow: 0 8px 18px rgb(91 5 4 / 0.28);
	color: #fff;
}

.wpcursor-ecosysteme-accueil__tab:focus-visible {
	outline: 2px solid var(--wpc-eco-ink);
	outline-offset: 3px;
}

.wpcursor-ecosysteme-accueil__panel {
	align-items: stretch;
	background: #ffffff;
	border: 1px solid #efe9e4;
	border-radius: 1.35rem;
	box-shadow: 0 14px 36px rgb(33 0 0 / 0.06);
	display: grid;
	gap: 0;
	grid-template-columns: 1fr;
	margin: 0;
	overflow: hidden;
}

/* display:grid ci-dessus écrase sinon l’attribut HTML hidden */
.wpcursor-ecosysteme-accueil__panel[hidden] {
	display: none !important;
}

@media (min-width: 960px) {
	.wpcursor-ecosysteme-accueil__panel {
		grid-template-columns: minmax(17rem, 0.9fr) minmax(0, 1.55fr);
	}
}

.wpcursor-ecosysteme-accueil__copy {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 1.45rem 1.35rem 1.5rem;
}

@media (min-width: 960px) {
	.wpcursor-ecosysteme-accueil__copy {
		padding: 1.85rem 1.65rem 1.9rem 1.85rem;
	}
}

.wpcursor-ecosysteme-accueil__badge {
	align-self: flex-start;
	background: var(--wpc-eco-lime);
	border: 1px solid rgb(91 5 4 / 0.12);
	border-radius: 999px;
	color: var(--wpc-eco-burgundy);
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	margin: 0 0 0.75rem;
	padding: 0.28rem 0.65rem;
	text-transform: uppercase;
}

.wpcursor-component.wpcursor-ecosysteme-accueil .wpcursor-ecosysteme-accueil__panel-title {
	color: var(--wpc-eco-ink);
	font-size: clamp(1.25rem, 2.2vw, 1.65rem);
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.25;
	margin: 0 0 0.65rem;
}

.wpcursor-ecosysteme-accueil__panel-text {
	color: var(--wpc-eco-muted);
	font-size: 0.98rem;
	line-height: 1.6;
	margin: 0 0 1rem;
}

.wpcursor-ecosysteme-accueil__points {
	display: grid;
	gap: 0.55rem;
	list-style: none;
	margin: 0 0 1.25rem;
	padding: 0;
}

.wpcursor-ecosysteme-accueil__points li {
	align-items: flex-start;
	color: var(--wpc-eco-ink);
	display: flex;
	font-size: 0.92rem;
	font-weight: 550;
	gap: 0.65rem;
	line-height: 1.45;
}

.wpcursor-ecosysteme-accueil__points li::before {
	align-items: center;
	background: #e8f6d8;
	border-radius: 50%;
	color: #2f6b1f;
	content: "✓";
	display: inline-flex;
	flex: 0 0 1.15rem;
	font-size: 0.7rem;
	font-weight: 800;
	height: 1.15rem;
	justify-content: center;
	margin-top: 0.1rem;
	width: 1.15rem;
}

.wpcursor-ecosysteme-accueil__panel-cta {
	align-items: center;
	align-self: flex-start;
	background: var(--wpc-eco-gradient);
	border-radius: 999px;
	box-shadow: 0 10px 22px rgb(171 26 25 / 0.18);
	color: #fff;
	display: inline-flex;
	font-size: 0.9rem;
	font-weight: 700;
	justify-content: center;
	letter-spacing: -0.01em;
	padding: 0.85rem 1.25rem;
	text-decoration: none;
}

.wpcursor-ecosysteme-accueil__panel-cta:hover,
.wpcursor-ecosysteme-accueil__panel-cta:focus-visible {
	color: #fff;
	filter: brightness(1.06);
}

.wpcursor-ecosysteme-accueil__media {
	background:
		radial-gradient(circle at 20% 20%, rgb(255 179 71 / 0.25), transparent 50%),
		linear-gradient(145deg, #fff4e8, #ffe0c2);
	margin: 0;
	min-height: 14rem;
	overflow: hidden;
	position: relative;
}

@media (min-width: 960px) {
	.wpcursor-ecosysteme-accueil__media {
		min-height: 100%;
	}
}

.wpcursor-ecosysteme-accueil__media img {
	display: block;
	height: 100%;
	object-fit: cover;
	object-position: top center;
	width: 100%;
}

@media (max-width: 959px) {
	.wpcursor-ecosysteme-accueil__media {
		aspect-ratio: 16 / 10;
		max-height: 22rem;
	}

	.wpcursor-ecosysteme-accueil__media img {
		height: 100%;
	}
}

@media (min-width: 960px) {
	.wpcursor-ecosysteme-accueil__media img {
		min-height: 26rem;
	}
}

.wpcursor-ecosysteme-accueil__note {
	background: var(--wpc-eco-lime);
	border-left: 4px solid #7aa83a;
	border-radius: 0.75rem;
	color: var(--wpc-eco-ink);
	font-size: 0.95rem;
	font-weight: 600;
	letter-spacing: -0.01em;
	line-height: 1.55;
	margin: 0 auto 1.35rem;
	max-width: 52rem;
	padding: 0.95rem 1.15rem;
	text-align: left;
}

.wpcursor-ecosysteme-accueil__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.7rem;
	justify-content: center;
}

.wpcursor-ecosysteme-accueil__btn {
	align-items: center;
	border-radius: 999px;
	display: inline-flex;
	font-size: 0.9375rem;
	font-weight: 700;
	justify-content: center;
	letter-spacing: -0.01em;
	line-height: 1.2;
	padding: 0.95rem 1.35rem;
	text-align: center;
	text-decoration: none;
}

.wpcursor-ecosysteme-accueil__btn--primary {
	background: var(--wpc-eco-gradient);
	border: 1px solid transparent;
	box-shadow: 0 10px 22px rgb(171 26 25 / 0.18);
	color: #ffffff;
}

.wpcursor-ecosysteme-accueil__btn--primary:hover,
.wpcursor-ecosysteme-accueil__btn--primary:focus-visible {
	color: #ffffff;
	filter: brightness(1.06);
}

.wpcursor-ecosysteme-accueil__btn--ghost {
	background: #ffffff;
	border: 1px solid #d8d4d0;
	color: var(--wpc-eco-ink);
}

.wpcursor-ecosysteme-accueil__btn--ghost:hover,
.wpcursor-ecosysteme-accueil__btn--ghost:focus-visible {
	border-color: var(--wpc-eco-burgundy);
	color: var(--wpc-eco-ink);
}

.wpcursor-ecosysteme-accueil__btn:focus-visible,
.wpcursor-ecosysteme-accueil__panel-cta:focus-visible {
	outline: 2px solid var(--wpc-eco-ink);
	outline-offset: 3px;
}

@media (max-width: 640px) {
	.wpcursor-ecosysteme-accueil__btn {
		width: 100%;
	}

	.wpcursor-ecosysteme-accueil__tab {
		font-size: 0.78rem;
		min-width: 0;
		padding: 0.65rem 0.75rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.wpcursor-ecosysteme-accueil__tab,
	.wpcursor-ecosysteme-accueil__btn--primary,
	.wpcursor-ecosysteme-accueil__panel-cta {
		transition: none;
	}

	.wpcursor-ecosysteme-accueil__btn--primary:hover,
	.wpcursor-ecosysteme-accueil__panel-cta:hover {
		filter: none;
	}
}
