/* Yourst Elementor Components — Next Hero : styles par défaut du composant.
   Ces règles fixent le rendu d'origine ; chaque instance peut ensuite être
   surchargée individuellement via les contrôles Elementor (spécificité plus élevée). */

.next-hero-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 14px;
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	font-weight: 700;
	color: var( --e-global-color-secondary );
	margin-bottom: 32px;
}

.next-hero-dot {
	display: inline-block;
	  width: 15px;
	  height: 15px;
	  border-radius: 50%;
	  border: 4px solid var(--e-global-color-secondary);
	  background: #A9C2D6;
}

.next-hero-title {
	font-family: 'Source Serif 4', serif;
	font-weight: 700;
	font-size: 70px;
	line-height: 1.04;
	letter-spacing: -1.8px;
	margin: 0 0 26px;
	color: var( --e-global-color-text );
}

.next-hero-title em {
	font-style: italic;
	color: var( --e-global-color-secondary );
}

.next-hero-body {
	font-size: 18px;
	line-height: 1.7;
	color: #3a4150;
	max-width: 580px;
	margin-bottom: 42px;
}

.next-hero-body p {
	margin: 0;
}

.next-hero-body b,
.next-hero-body strong {
	color: var( --e-global-color-text );
	font-weight: 600;
}

.next-hero-cta-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 26px;
}

.next-hero-btn-primary {
	display: inline-block;
	font-size: 15px;
	font-weight: 600;
	color: #ffffff;
	background-color: var( --e-global-color-secondary );
	border: none;
	border-radius: 4px;
	padding: 15px 30px;
	cursor: pointer;
	line-height: 1;
}

.next-hero-btn-ghost {
	font-weight: 700;
	  font-size: 14px;
	  color: var(--navy);
	  border-bottom: 2px solid var(--navy);
	  padding-bottom: 3px;
	  transition: opacity .15s;
}
.next-hero-btn-ghost:hover {
  opacity: .7;
}