/* PureEV — Header v2 (bandeau, logo, nav, outils) */

.pureev-header-site {
	--header-accent: #0a7cff;
	--header-accent-soft: #eef6ff;
	--header-bg: #ffffff;
	--header-border: rgba(10, 124, 255, 0.14);
	position: sticky;
	top: 0;
	z-index: 100;
	background: var(--header-bg);
	border-bottom: 1px solid var(--header-border);
	box-shadow: 0 8px 28px rgba(15, 23, 42, 0.06);
}

.pureev-header-site::before {
	content: "";
	display: block;
	height: 3px;
	background: linear-gradient(90deg, #0a7cff 0%, #059669 52%, #7c3aed 100%);
}

.pureev-header {
	min-height: 72px;
	padding: 12px 0 22px;
	align-items: center;
}

/* --- Logo --- */
.pureev-brand {
	position: relative;
	display: block;
	flex: 0 0 auto;
	align-self: center;
	/* Hauteur flex = logo seul ; la baseline est en absolute */
}

.pureev-brand-link {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	text-decoration: none !important;
}

.pureev-brand-link:hover {
	text-decoration: none !important;
}

/* Monogramme — carré blanc bordé, éclair dégradé à l’intérieur */
.pureev-brand-mark {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.pureev-brand-mark--frame {
	width: 2.05rem;
	height: 2.05rem;
	border: 1.5px solid rgba(10, 124, 255, 0.42);
	border-radius: 9px;
	background: #fff;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05);
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.pureev-brand-link:hover .pureev-brand-mark--frame {
	border-color: rgba(10, 124, 255, 0.65);
	box-shadow: 0 2px 6px rgba(10, 124, 255, 0.12);
}

.pureev-brand-icon {
	display: block;
	width: 1.22rem;
	height: 1.22rem;
	transition: transform 0.15s ease;
}

.pureev-brand-link:hover .pureev-brand-icon {
	transform: scale(1.05);
}

/* Wordmark — sans-serif éditorial / tech */
.pureev-brand-wordmark {
	display: inline-flex;
	align-items: baseline;
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	font-size: clamp(1.38rem, 1.22rem + 0.55vw, 1.72rem);
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.04em;
}

.pureev-brand-pure {
	color: #0f172a;
	font-weight: 600;
}

.pureev-brand-ev {
	font-weight: 800;
	background: linear-gradient(120deg, #0a7cff 0%, #059669 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

/* Compat anciens markup v1/v2 */
.pureev-brand-name {
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	font-size: clamp(1.38rem, 1.22rem + 0.55vw, 1.72rem);
	font-weight: 700;
	letter-spacing: -0.04em;
	line-height: 1;
	color: #0f172a;
}

.pureev-brand-name .pureev-brand-ev,
.pureev-brand-ev {
	background: linear-gradient(120deg, #0a7cff 0%, #059669 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	font-weight: 800;
}

/* Fallback si le markup logo n'est pas encore patché */
.pureev-brand a:not(.pureev-brand-link) {
	font-size: clamp(1.35rem, 1.2rem + 0.5vw, 1.65rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	color: #0f172a;
	text-decoration: none;
}

.pureev-brand a:not(.pureev-brand-link):hover {
	color: var(--header-accent);
	text-decoration: none;
}

.pureev-brand-baseline {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 2;
	margin: 3px 0 0;
	padding: 2px 12px 2px 0;
	width: max-content;
	max-width: none;
	white-space: nowrap;
	font-size: 0.74rem;
	font-weight: 500;
	font-style: italic;
	line-height: 1.2;
	letter-spacing: 0.01em;
	color: #64748b;
	background: linear-gradient(90deg, rgba(10, 124, 255, 0.09) 0%, transparent 92%);
	border-radius: 0 6px 6px 0;
}

/* --- Navigation --- */
.pureev-nav-item a {
	position: relative;
	display: inline-block;
	padding: 7px 11px;
	border-radius: 8px;
	color: #475569;
	text-decoration: none;
	transition: color 0.15s ease, background 0.15s ease;
}

.pureev-nav-item a:hover {
	text-decoration: none;
}

.pureev-nav-item a::after {
	content: "";
	position: absolute;
	left: 11px;
	right: 11px;
	bottom: 4px;
	height: 2px;
	border-radius: 2px;
	background: currentColor;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.18s ease;
}

.pureev-nav-item a:hover::after,
.pureev-nav-item.is-active a::after {
	transform: scaleX(1);
}

.pureev-nav-item:nth-child(1) a:hover,
.pureev-nav-item:nth-child(1).is-active a {
	color: #0a7cff;
	background: #eef6ff;
}

.pureev-nav-item:nth-child(2) a:hover,
.pureev-nav-item:nth-child(2).is-active a {
	color: #7c3aed;
	background: #f3efff;
}

.pureev-nav-item:nth-child(3) a:hover,
.pureev-nav-item:nth-child(3).is-active a {
	color: #059669;
	background: #ecfdf5;
}

.pureev-nav-item:nth-child(4) a:hover,
.pureev-nav-item:nth-child(4).is-active a {
	color: #d97706;
	background: #fff7ed;
}

.pureev-nav-item:nth-child(5) a:hover,
.pureev-nav-item:nth-child(5).is-active a {
	color: #dc2626;
	background: #fef2f2;
}

.pureev-nav-item:nth-child(6) a:hover,
.pureev-nav-item:nth-child(6).is-active a {
	color: #334155;
	background: #f1f5f9;
}

.pureev-nav-item.is-active a {
	font-weight: 700;
}

/* --- Outils (recherche, RSS, X) --- */
.pureev-header-tools a {
	border-color: #dbeafe;
	background: #f8fbff;
	color: #475569;
	font-weight: 600;
	transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.15s ease;
}

.pureev-header-tools a:hover {
	transform: translateY(-1px);
}

.pureev-header-tools a.pureev-rss:hover {
	border-color: #ea580c;
	background: #ea580c;
	color: #fff;
}

.pureev-header-tools a.pureev-x:hover {
	border-color: #0f172a;
	background: #0f172a;
	color: #fff;
}

.pureev-search-form {
	border-color: #dbeafe;
	background: #f8fbff;
}

.pureev-search-form:focus-within {
	background: #fff;
	border-color: var(--header-accent);
	box-shadow: 0 0 0 3px rgba(10, 124, 255, 0.14);
}

.pureev-search-toggle {
	color: var(--header-accent);
}

/* --- Responsive --- */
@media (max-width: 1280px) {
	.pureev-brand-baseline {
		display: none;
	}
}

@media (max-width: 900px) {
	.pureev-header-site {
		position: relative;
	}

	.pureev-header {
		min-height: 0;
		padding: 12px 0;
	}

	.pureev-nav-list {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		padding-bottom: 4px;
		scrollbar-width: none;
	}

	.pureev-nav-list::-webkit-scrollbar {
		display: none;
	}

	.pureev-nav-item a {
		padding: 6px 9px;
		font-size: 11px;
	}
}

@media (max-width: 720px) {
	.pureev-header-tools {
		gap: 6px;
	}

	.pureev-header-tools a {
		height: 30px;
		padding: 0 10px;
		font-size: 11px;
	}
}
