/*
 * Page d'accueil (design-source/charte-2026/kelborne-homepage.html).
 *
 * CSS de la maquette, limité au contenu principal de l'accueil (.kb-accueil) pour
 * ne toucher ni l'en-tête ni le pied de page, qui gardent les styles des LP.
 * Seuls changements : le surlignage du titre vise aussi <mark> (format natif de
 * l'éditeur) et la pastille de preuve est un paragraphe. Chargé sur l'accueil.
 */

@font-face{font-family:Rubik;src:url('../fonts/rubik-bold.woff2') format('woff2'),url('../fonts/rubik-bold.woff') format('woff');font-weight:700;font-display:swap}
@font-face{font-family:Noto;src:url('../fonts/notosans-regular.woff2') format('woff2'),url('../fonts/notosans-regular.woff') format('woff');font-weight:400;font-display:swap}
@font-face{font-family:Noto;src:url('../fonts/notosans-bold.woff2') format('woff2'),url('../fonts/notosans-bold.woff') format('woff');font-weight:700;font-display:swap}

:root {
	--ink:#2D4057;
	--aqua:#BEE4E1;
	--blue:#80ADC9;
	--cream:#FCF8EE;
	--apricot:#FFC073;
	--muted:#53667A;
	--line:#D5DEE4;
}

.kb-maq .kb-accueil * {
	box-sizing:border-box;
}

html {
	font-size:16px;
	scroll-behavior:smooth;
}

.kb-maq .kb-accueil {
	margin:0;
	background:var(--cream);
	color:var(--ink);
	font-family:Noto,Arial,sans-serif;
	line-height:1.65;
}

.kb-maq .kb-accueil button,
.kb-maq .kb-accueil a {
	color:inherit;
}

.kb-maq .kb-accueil button {
	font:inherit;
	cursor:pointer;
}

.kb-maq .kb-accueil a:focus-visible,
.kb-maq .kb-accueil button:focus-visible,
.kb-maq .kb-accueil summary:focus-visible {
	outline:3px solid #1C6870;
	outline-offset:5px;
}

.kb-maq .kb-accueil .wrap {
	max-width:1200px;
	margin:auto;
	padding:0 32px;
}

.kb-maq .kb-accueil h1,
.kb-maq .kb-accueil h2,
.kb-maq .kb-accueil h3 {
	font-family:Rubik,Arial,sans-serif;
	font-weight:700;
	line-height:1.2;
}

.kb-maq .kb-accueil h1 {
	font-size:3rem;
	letter-spacing:-.035em;
	max-width:860px;
	margin:0 auto 24px;
}

.kb-maq .kb-accueil h1 span, .kb-maq .kb-accueil h1 mark {
	text-decoration:underline;
	text-decoration-color:var(--apricot);
	text-decoration-thickness:6px;
	text-underline-offset:6px;
	color:inherit;
}

.kb-maq .kb-accueil .home-intro {
	padding:64px 0 36px;
	text-align:center;
}

.kb-maq .kb-accueil .eyebrow {
	font-weight:700;
	letter-spacing:.12em;
	font-size:.75rem;
	margin:0 0 19px;
}

.kb-maq .kb-accueil .home-intro>p:last-child {
	font-size:1.0625rem;
	color:var(--muted);
	margin:0 auto;
	max-width:640px;
	line-height:1.75;
}

.kb-maq .kb-accueil .project-grid {
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:24px;
	scroll-margin-top:28px;
}

.kb-maq .kb-accueil .project-link {
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	padding:30px 30px 28px;
	background:white;
	border:1px solid var(--line);
	border-radius:18px;
	text-decoration:none;
	min-width:0;
	transition:border-color .15s,box-shadow .15s;
	min-height:322px;
}

.kb-maq .kb-accueil .project-link:hover {
	border-color:var(--ink);
	box-shadow:0 0 0 1px var(--ink),0 12px 32px rgba(45,64,87,.1);
}

.kb-maq .kb-accueil .project-link:focus-visible {
	border-color:var(--ink);
}

.kb-maq .kb-accueil .project-icon {
	width:86px;
	height:86px;
	object-fit:contain;
	display:block;
	margin-bottom:22px;
}

.kb-maq .kb-accueil .project-link h2 {
	font-size:1.5rem;
	letter-spacing:-.02em;
	margin:0 0 11px;
}

.kb-maq .kb-accueil .project-description {
	font-size:.9375rem;
	color:var(--muted);
	margin:0 0 25px;
	line-height:1.7;
	max-width:280px;
}

.kb-maq .kb-accueil .project-cta {
	font-size:.875rem;
	font-weight:700;
	text-decoration:underline;
	text-decoration-color:var(--blue);
	text-decoration-thickness:2px;
	text-underline-offset:6px;
	margin-top:auto;
	display:block;
	padding-top:4px;
}

.kb-maq .kb-accueil .project-link:hover .project-cta {
	text-decoration-color:var(--ink);
}

.kb-maq .kb-accueil.home-main {
	padding-bottom:58px;
}

@media (min-width:1400px) {
	.kb-maq .kb-accueil .home-intro {
		padding-top:78px;
	}

	.kb-maq .kb-accueil.home-main {
		padding-bottom:75px;
	}
}

@media (max-width:900px) {
	.kb-maq .kb-accueil .wrap {
		padding:0 24px;
	}

	.kb-maq .kb-accueil .project-grid {
		gap:16px;
	}

	.kb-maq .kb-accueil .project-link {
		padding:25px 21px;
		min-height:335px;
	}

	.kb-maq .kb-accueil .project-link h2 {
		font-size:1.3rem;
	}

	.kb-maq .kb-accueil .project-cta {
		font-size:.8125rem;
	}

	.kb-maq .kb-accueil h1 {
		font-size:2.65rem;
	}

	.kb-maq .kb-accueil .home-intro {
		padding-top:45px;
	}
}

@media (max-width:700px) {
	.kb-maq .kb-accueil .wrap {
		padding:0 20px;
	}

	.kb-maq .kb-accueil .home-intro {
		padding:34px 0 28px;
		text-align:left;
	}

	.kb-maq .kb-accueil .eyebrow {
		font-size:.6875rem;
		margin-bottom:14px;
	}

	.kb-maq .kb-accueil h1 {
		font-size:2rem;
		line-height:1.25;
		letter-spacing:-.03em;
		margin-bottom:20px;
	}

	.kb-maq .kb-accueil h1 span, .kb-maq .kb-accueil h1 mark {
		text-decoration-thickness:4px;
		text-underline-offset:4px;
		color:inherit;
	}

	.kb-maq .kb-accueil .home-intro>p:last-child {
		font-size:.9375rem;
		line-height:1.7;
		margin:0;
	}

	.kb-maq .kb-accueil .project-grid {
		grid-template-columns:1fr;
		gap:14px;
	}

	.kb-maq .kb-accueil .project-link {
		display:grid;
		grid-template-columns:62px minmax(0,1fr);
		column-gap:18px;
		row-gap:0;
		padding:21px 20px;
		min-height:0;
		border-radius:15px;
	}

	.kb-maq .kb-accueil .project-icon {
		grid-row:1/4;
		width:62px;
		height:62px;
		margin:0;
		align-self:start;
		margin-top:3px;
	}

	.kb-maq .kb-accueil .project-link h2 {
		font-size:1.3rem;
		margin-bottom:7px;
	}

	.kb-maq .kb-accueil .project-description {
		font-size:.875rem;
		margin:0 0 11px;
		max-width:none;
		line-height:1.65;
	}

	.kb-maq .kb-accueil .project-cta {
		font-size:.8125rem;
		padding-top:0;
	}

	.kb-maq .kb-accueil.home-main {
		padding-bottom:36px;
	}
}

@media (prefers-reduced-motion:reduce) {
	html {
		scroll-behavior:auto;
	}

	.kb-maq .kb-accueil * {
		transition:none!important;
	}
}

/* Avis : note à gauche, trois emplacements lisibles à droite, sans faux verbatim. */

.kb-maq .kb-accueil .reviews-section {
	margin-top:64px;
}

.kb-maq .kb-accueil .reviews-heading {
	display:flex;
	justify-content:space-between;
	align-items:end;
	gap:30px;
	margin-bottom:26px;
}

.kb-maq .kb-accueil .reviews-heading h2 {
	font-size:2rem;
	letter-spacing:-.025em;
	margin:0;
}

.kb-maq .kb-accueil .reviews-heading>p {
	font-size:.875rem;
	color:var(--muted);
	margin:0;
	max-width:420px;
}

.kb-maq .kb-accueil .reviews-layout {
	display:grid;
	grid-template-columns:260px minmax(0,1fr);
	gap:24px;
	align-items:stretch;
}

.kb-maq .kb-accueil .rating-panel {
	background:var(--ink);
	color:white;
	border-radius:16px;
	padding:28px 26px;
	display:flex;
	flex-direction:column;
	align-items:start;
}

.kb-maq .kb-accueil .google-label {
	display:flex;
	gap:9px;
	align-items:center;
	font-size:.875rem;
	font-weight:700;
	margin:0 0 22px;
}

.kb-maq .kb-accueil .google-label img {
	width:21px;
	height:21px;
}

.kb-maq .kb-accueil .google-label span {
	line-height:1;
}

.kb-maq .kb-accueil .rating-number {
	font-family:Rubik,Arial,sans-serif;
	font-size:3.8rem;
	line-height:1.15;
	letter-spacing:-.04em;
	display:block;
}

.kb-maq .kb-accueil .rating-number small {
	font-family:Noto,Arial,sans-serif;
	font-size:1rem;
	letter-spacing:0;
	margin-left:7px;
}

.kb-maq .kb-accueil .rating-stars {
	font-size:1.2rem;
	letter-spacing:4px;
	color:var(--apricot);
	margin:12px 0 8px;
	line-height:1.4;
}

.kb-maq .kb-accueil .rating-count {
	font-size:.875rem;
	margin:0 0 22px;
}

.kb-maq .kb-accueil .rating-note {
	font-size:.75rem;
	line-height:1.7;
	margin:auto 0 0;
	padding-top:16px;
	border-top:1px solid #657386;
	color:#e0e7ec;
}

.kb-maq .kb-accueil .review-grid {
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:16px;
}

.kb-maq .kb-accueil .review-placeholder {
	background:white;
	border:1px solid var(--line);
	border-radius:16px;
	padding:22px 20px;
	min-width:0;
	display:flex;
	flex-direction:column;
}

.kb-maq .kb-accueil .review-source {
	display:flex;
	justify-content:space-between;
	align-items:center;
	gap:10px;
	font-size:.75rem;
	color:var(--muted);
	margin-bottom:24px;
}

.kb-maq .kb-accueil .review-source img {
	width:18px;
	height:18px;
	flex:none;
}

.kb-maq .kb-accueil .review-placeholder h3 {
	font-family:Noto,Arial,sans-serif;
	font-size:.9375rem;
	line-height:1.55;
	margin:0 0 12px;
}

.kb-maq .kb-accueil .review-placeholder>p {
	color:var(--muted);
	font-size:.8125rem;
	line-height:1.8;
	margin:0 0 24px;
}

.kb-maq .kb-accueil .review-details {
	font-size:.75rem;
	color:var(--muted);
	padding-top:14px;
	border-top:1px solid var(--line);
	margin-top:auto;
}

.kb-maq .kb-accueil .reviews-footnote {
	font-size:.75rem;
	line-height:1.8;
	color:var(--muted);
	margin:15px 0 0;
}

@media (max-width:1000px) {
	.kb-maq .kb-accueil .review-grid {
		grid-template-columns:1fr;
	}

	.kb-maq .kb-accueil .review-placeholder {
		padding:20px 22px;
	}

	.kb-maq .kb-accueil .review-source {
		margin-bottom:12px;
	}

	.kb-maq .kb-accueil .review-placeholder>p {
		margin-bottom:18px;
	}

	.kb-maq .kb-accueil .rating-panel {
		justify-content:center;
	}

	.kb-maq .kb-accueil .rating-note {
		margin-top:30px;
	}
}

@media (max-width:700px) {
	.kb-maq .kb-accueil .reviews-heading h2 {
		font-size:1.6rem;
		line-height:1.25;
		margin-bottom:15px;
	}

	.kb-maq .kb-accueil .reviews-section {
		margin-top:38px;
	}

	.kb-maq .kb-accueil .reviews-heading {
		display:block;
		margin-bottom:23px;
	}

	.kb-maq .kb-accueil .reviews-heading>p {
		font-size:.8125rem;
	}

	.kb-maq .kb-accueil .reviews-layout {
		grid-template-columns:1fr;
		gap:16px;
	}

	.kb-maq .kb-accueil .rating-panel {
		padding:23px 24px;
		display:grid;
		grid-template-columns:1fr 1fr;
		column-gap:20px;
	}

	.kb-maq .kb-accueil .google-label {
		grid-column:1/-1;
		margin-bottom:17px;
	}

	.kb-maq .kb-accueil .rating-number {
		font-size:3.25rem;
		grid-row:2/4;
	}

	.kb-maq .kb-accueil .rating-number small {
		font-size:.875rem;
	}

	.kb-maq .kb-accueil .rating-stars {
		margin:4px 0 3px;
		font-size:1.05rem;
		letter-spacing:3px;
	}

	.kb-maq .kb-accueil .rating-count {
		margin:0;
		font-size:.8125rem;
	}

	.kb-maq .kb-accueil .rating-note {
		grid-column:1/-1;
		margin-top:19px;
		padding-top:14px;
	}

	.kb-maq .kb-accueil .review-grid {
		gap:13px;
	}

	.kb-maq .kb-accueil .review-placeholder {
		padding:20px;
	}

	.kb-maq .kb-accueil .reviews-footnote {
		font-size:.75rem;
	}
}

/* Photo sur toute la largeur ; les autres sections gardent leurs marges. */

.kb-maq .kb-accueil .home-hero {
	position:relative;
	isolation:isolate;
	min-height:400px;
	height:clamp(400px,29vw,480px);
	overflow:hidden;
	background:#24312f;
}

.kb-maq .kb-accueil .home-hero-photo {
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:50% 16%;
	display:block;
	z-index:-2;
}

.kb-maq .kb-accueil .hero-shade {
	position:absolute;
	inset:0;
	z-index:-1;
	background:linear-gradient(90deg,rgba(10,20,25,.88) 0%,rgba(10,20,25,.72) 32%,rgba(10,20,25,.12) 66%,rgba(10,20,25,0) 100%);
}

.kb-maq .kb-accueil .hero-content {
	height:100%;
	display:flex;
	align-items:center;
}

.kb-maq .kb-accueil .home-hero .home-intro {
	padding:40px 0;
	text-align:left;
	max-width:600px;
}

.kb-maq .kb-accueil .home-hero .eyebrow {
	color:var(--aqua);
	margin-bottom:18px;
}

.kb-maq .kb-accueil .home-hero h1 {
	font-size:2.8rem;
	line-height:1.2;
	max-width:600px;
	color:white;
	margin:0 0 22px;
	letter-spacing:-.03em;
}

.kb-maq .kb-accueil .home-hero .home-intro>p:last-child {
	font-size:1rem;
	color:white;
	max-width:500px;
	margin:0;
	line-height:1.8;
}

.kb-maq .kb-accueil .home-sections {
	padding-top:36px;
}

.kb-maq .kb-accueil .home-sections .project-link {
	min-height:300px;
}

.kb-maq .kb-accueil .home-sections .reviews-section {
	margin-top:50px;
}

@media (max-width:1000px) {
	.kb-maq .kb-accueil .home-hero .home-intro {
		max-width:52%;
	}

	.kb-maq .kb-accueil .home-hero h1 {
		font-size:2.45rem;
	}

	.kb-maq .kb-accueil .home-hero h1 br {
		display:none;
	}

	.kb-maq .kb-accueil .home-hero .home-intro>p:last-child {
		font-size:.9375rem;
	}
}

@media (max-width:700px) {
	.kb-maq .kb-accueil .home-hero {
		height:auto;
		min-height:0;
		overflow:visible;
		background:var(--cream);
	}

	.kb-maq .kb-accueil .home-hero-photo {
		position:static;
		width:100%;
		height:225px;
		object-fit:cover;
		object-position:50% 18%;
		z-index:auto;
	}

	.kb-maq .kb-accueil .hero-shade {
		display:none;
	}

	.kb-maq .kb-accueil .hero-content {
		height:auto;
		display:block;
	}

	.kb-maq .kb-accueil .home-hero .home-intro {
		max-width:none;
		padding:28px 0 0;
	}

	.kb-maq .kb-accueil .home-hero .eyebrow {
		color:var(--ink);
		margin-bottom:14px;
	}

	.kb-maq .kb-accueil .home-hero h1 {
		font-size:2rem;
		color:var(--ink);
		margin-bottom:17px;
		line-height:1.25;
	}

	.kb-maq .kb-accueil .home-hero .home-intro>p:last-child {
		color:var(--muted);
		font-size:.9375rem;
		max-width:none;
	}

	.kb-maq .kb-accueil .home-sections {
		padding-top:27px;
	}

	.kb-maq .kb-accueil .home-sections .project-link {
		min-height:0;
	}

	.kb-maq .kb-accueil .home-sections .reviews-section {
		margin-top:36px;
	}
}

/* Trois arguments et pictogrammes identiques aux LP, alignés horizontalement. */

.kb-maq .kb-accueil .trust-section {
	margin-top:60px;
	padding:48px 0 38px;
	border-top:1px solid var(--line);
	border-bottom:1px solid var(--line);
}

.kb-maq .kb-accueil .section-heading {
	max-width:790px;
	margin:0 auto 36px;
	text-align:center;
}

.kb-maq .kb-accueil .section-heading h2 {
	font-size:2rem;
	letter-spacing:-.025em;
	margin:0 0 18px;
}

.kb-maq .kb-accueil .section-heading p {
	font-size:1rem;
	line-height:1.8;
	color:var(--muted);
	margin:0;
}

.kb-maq .kb-accueil .trust-grid {
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:32px;
}

.kb-maq .kb-accueil .trust-point {
	min-width:0;
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	padding:0 0 6px;
}

.kb-maq .kb-accueil .trust-point+.trust-point {
	border-left:1px solid var(--line);
	padding-left:32px;
}

.kb-maq .kb-accueil .trust-point img {
	width:72px;
	height:72px;
	object-fit:contain;
	margin-bottom:19px;
}

.kb-maq .kb-accueil .trust-point h3 {
	font-size:1.2rem;
	line-height:1.4;
	letter-spacing:-.015em;
	margin:0 0 12px;
}

.kb-maq .kb-accueil .trust-point>p:not(.trust-proof) {
	font-size:1rem;
	line-height:1.75;
	color:var(--muted);
	margin:0 0 22px;
}

.kb-maq .kb-accueil .trust-proof {
	display:inline-block;
	max-width:100%;
	font-size:.875rem;
	line-height:1.5;
	font-weight:700;
	padding:8px 14px;
	background:#EBF5F4;
	border-radius:24px;
	margin-top:auto;
}

/* Relier la promesse aux trois choix dès le premier écran. */

@media (min-width:701px) {
	.kb-maq .kb-accueil .home-hero {
		min-height:370px;
		height:clamp(370px,27vw,430px);
	}

	.kb-maq .kb-accueil .hero-content {
		padding-bottom:32px;
	}

	.kb-maq .kb-accueil .home-sections {
		position:relative;
		padding-top:0;
		margin-top:-36px;
	}

	.kb-maq .kb-accueil .home-sections .project-link {
		min-height:280px;
		box-shadow:0 6px 20px #2d405708;
	}

	.kb-maq .kb-accueil .project-icon {
		width:76px;
		height:76px;
		margin-bottom:17px;
	}

	.kb-maq .kb-accueil .project-description {
		margin-bottom:20px;
	}
}

@media (max-width:1000px) and (min-width:701px) {
	.kb-maq .kb-accueil .trust-grid {
		gap:24px;
	}

	.kb-maq .kb-accueil .trust-point+.trust-point {
		padding-left:24px;
	}

	.kb-maq .kb-accueil .trust-point h3 {
		font-size:1.05rem;
	}

	.kb-maq .kb-accueil .trust-point>p:not(.trust-proof) {
		font-size:.9375rem;
	}

	.kb-maq .kb-accueil .trust-proof {
		padding:8px 10px;
	}
}

@media (max-width:700px) {
	.kb-maq .kb-accueil .home-hero-photo {
		height:200px;
	}

	.kb-maq .kb-accueil .home-hero .home-intro {
		padding-top:23px;
	}

	.kb-maq .kb-accueil .home-hero .eyebrow {
		margin-bottom:10px;
	}

	.kb-maq .kb-accueil .home-hero h1 {
		margin-bottom:13px;
	}

	.kb-maq .kb-accueil .home-sections {
		padding-top:21px;
	}

	.kb-maq .kb-accueil .trust-section {
		margin-top:36px;
		padding:30px 0;
	}

	.kb-maq .kb-accueil .section-heading {
		text-align:left;
		margin-bottom:25px;
	}

	.kb-maq .kb-accueil .section-heading h2 {
		font-size:1.65rem;
		margin-bottom:15px;
	}

	.kb-maq .kb-accueil .section-heading p {
		font-size:.9375rem;
	}

	.kb-maq .kb-accueil .trust-grid {
		grid-template-columns:1fr;
		gap:22px;
	}

	.kb-maq .kb-accueil .trust-point {
		display:grid;
		grid-template-columns:54px minmax(0,1fr);
		column-gap:18px;
		padding:0;
	}

	.kb-maq .kb-accueil .trust-point+.trust-point {
		border-left:0;
		border-top:1px solid var(--line);
		padding:22px 0 0;
	}

	.kb-maq .kb-accueil .trust-point img {
		width:54px;
		height:54px;
		grid-row:1/4;
		margin:0;
	}

	.kb-maq .kb-accueil .trust-point h3 {
		font-size:1.1rem;
		margin-bottom:9px;
	}

	.kb-maq .kb-accueil .trust-point>p:not(.trust-proof) {
		font-size:.9375rem;
		margin-bottom:13px;
	}

	.kb-maq .kb-accueil .trust-proof {
		font-size:.875rem;
		justify-self:start;
		margin:0;
		padding:7px 12px;
	}
}

@media (min-width:701px) and (max-width:1000px) {
	.kb-maq .kb-accueil .home-hero {
		height:auto;
		min-height:400px;
	}

	.kb-maq .kb-accueil .hero-content {
		min-height:400px;
	}

	.kb-maq .kb-accueil .home-hero .home-intro {
		max-width:58%;
		padding:32px 0;
	}

	.kb-maq .kb-accueil .home-hero h1 {
		font-size:2.2rem;
	}
}

/* Référentiel des LP : même grille de 1280 px, polices et rythme. */

:root {
	--content-gutter:max(clamp(20px,6vw,80px),calc(50vw - 640px));
	--paper:#FFFFFF;
	--soft-aqua:#EDF6F5;
	--title:#203244;
}

.kb-maq .kb-accueil {
	background:var(--paper);
}

.kb-maq .kb-accueil .wrap {
	max-width:none;
	padding-left:var(--content-gutter);
	padding-right:var(--content-gutter);
}

.kb-maq .kb-accueil .home-hero h1 {
	font-size:clamp(28px,calc(1.8vw + 20px),44px);
	line-height:1.2;
	letter-spacing:normal;
	text-wrap:balance;
}

.kb-maq .kb-accueil h1 span, .kb-maq .kb-accueil h1 mark {
	text-decoration:none;
	background:linear-gradient(transparent 72%,var(--apricot) 72%);
	-webkit-box-decoration-break:clone;
	box-decoration-break:clone;
	color:inherit;
}

.kb-maq .kb-accueil .eyebrow {
	font-size:.8125rem;
	line-height:1.4;
	letter-spacing:.12em;
	color:var(--muted);
}

.kb-maq .kb-accueil .home-hero .home-intro>p:last-child {
	font-size:1.125rem;
	line-height:1.5556;
}

.kb-maq .kb-accueil .project-link {
	border-radius:24px;
	padding:28px;
	box-shadow:none;
}

.kb-maq .kb-accueil .project-link h2 {
	font-size:1.5rem;
	line-height:1.25;
	letter-spacing:normal;
	margin-bottom:12px;
}

.kb-maq .kb-accueil .project-description {
	font-size:1rem;
	line-height:1.5;
	color:var(--muted);
}

.kb-maq .kb-accueil .project-cta {
	font-size:1rem;
	line-height:1.5;
	text-decoration-color:var(--aqua);
	text-decoration-thickness:3px;
}

.kb-maq .kb-accueil .project-grid {
	gap:24px;
}

.kb-maq .kb-accueil .trust-section {
	margin-top:64px;
	padding-top:56px;
	padding-bottom:48px;
}

.kb-maq .kb-accueil .section-heading {
	margin-bottom:40px;
}

.kb-maq .kb-accueil .section-heading h2 {
	font-size:2.5rem;
	line-height:1.15;
	letter-spacing:normal;
	margin-bottom:16px;
	text-wrap:balance;
}

.kb-maq .kb-accueil .section-heading p {
	font-size:1.0625rem;
	line-height:1.5882;
}

.kb-maq .kb-accueil .trust-grid {
	gap:32px;
}

.kb-maq .kb-accueil .trust-point h3 {
	font-size:1.375rem;
	line-height:1.2727;
	letter-spacing:normal;
}

.kb-maq .kb-accueil .trust-point>p:not(.trust-proof) {
	font-size:1rem;
	line-height:1.5;
}

.kb-maq .kb-accueil .trust-proof {
	font-size:.9375rem;
	line-height:1.4;
	padding:10px 16px;
	background:var(--soft-aqua);
}

@media (min-width:701px) and (max-width:1000px) {
	.kb-maq .kb-accueil .home-hero .home-intro {
		max-width:60%;
	}

	.kb-maq .kb-accueil .home-hero .home-intro>p:last-child {
		font-size:1rem;
		line-height:1.625;
	}

	.kb-maq .kb-accueil .project-grid {
		gap:16px;
	}

	.kb-maq .kb-accueil .project-link {
		padding:24px 20px;
	}

	.kb-maq .kb-accueil .project-link h2 {
		font-size:1.375rem;
	}

	.kb-maq .kb-accueil .project-cta {
		font-size:.9375rem;
	}

	.kb-maq .kb-accueil .trust-grid {
		gap:24px;
	}

	.kb-maq .kb-accueil .trust-point+.trust-point {
		padding-left:24px;
	}

	.kb-maq .kb-accueil .section-heading h2 {
		font-size:2rem;
	}
}

@media (max-width:700px) {
	.kb-maq .kb-accueil .home-hero h1 {
		font-size:1.75rem;
		color:var(--title);
	}

	.kb-maq .kb-accueil .home-hero .home-intro>p:last-child {
		font-size:1rem;
		line-height:1.5;
	}

	.kb-maq .kb-accueil .eyebrow {
		font-size:.75rem;
	}

	.kb-maq .kb-accueil .project-grid {
		gap:16px;
	}

	.kb-maq .kb-accueil .project-link {
		padding:20px;
		border-radius:20px;
	}

	.kb-maq .kb-accueil .project-link h2 {
		font-size:1.375rem;
	}

	.kb-maq .kb-accueil .project-description {
		font-size:.9375rem;
		line-height:1.4667;
	}

	.kb-maq .kb-accueil .project-cta {
		font-size:.9375rem;
	}

	.kb-maq .kb-accueil .trust-section {
		margin-top:40px;
		padding-top:40px;
		padding-bottom:40px;
	}

	.kb-maq .kb-accueil .section-heading {
		margin-bottom:24px;
	}

	.kb-maq .kb-accueil .section-heading h2 {
		font-size:1.625rem;
		line-height:1.2;
	}

	.kb-maq .kb-accueil .section-heading p {
		font-size:1rem;
		line-height:1.5;
	}

	.kb-maq .kb-accueil .trust-point img {
		width:56px;
		height:56px;
	}

	.kb-maq .kb-accueil .trust-point h3 {
		font-size:1.1875rem;
		line-height:1.3158;
	}

	.kb-maq .kb-accueil .trust-point>p:not(.trust-proof) {
		font-size:.9375rem;
		line-height:1.4667;
	}

	.kb-maq .kb-accueil .trust-proof {
		font-size:.875rem;
		padding:8px 12px;
	}
}

/* Pas de séparateurs horizontaux entre les sections de la homepage. */

.kb-maq .kb-accueil .trust-section {
	border-top:0;
	border-bottom:0;
}

@media (max-width:700px) {
	.kb-maq .kb-accueil .trust-point+.trust-point {
		border-top:0;
	}
}

/* Pied de page repris des LP avec les liens Guides de la LP maison. */

.kb-maq .kb-accueil ul,
.kb-maq .kb-accueil figure) {
	margin:0;
}

/* Un seul espacement entre chaque section, sans cumul marge + padding. */

.kb-maq .kb-accueil.home-main {
	padding-bottom:64px;
}

.kb-maq .kb-accueil .trust-section {
	margin-top:64px;
	padding-top:0;
	padding-bottom:0;
}

.kb-maq .kb-accueil .home-sections .reviews-section {
	margin-top:64px;
}

.kb-maq .kb-accueil .section-heading {
	margin-bottom:32px;
}

.kb-maq .kb-accueil .reviews-heading {
	display:block;
	margin-bottom:24px;
}

.kb-maq .kb-accueil .reviews-heading .eyebrow {
	margin-bottom:12px;
}

.kb-maq .kb-accueil .reviews-heading h2 {
	margin-bottom:0;
}

@media (min-width:701px) and (max-width:1000px) {
	.kb-maq .kb-accueil.home-main {
		padding-bottom:56px;
	}

	.kb-maq .kb-accueil .trust-section {
		margin-top:56px;
	}

	.kb-maq .kb-accueil .home-sections .reviews-section {
		margin-top:56px;
	}
}

@media (max-width:700px) {
	.kb-maq .kb-accueil.home-main {
		padding-bottom:40px;
	}

	.kb-maq .kb-accueil .trust-section {
		margin-top:40px;
		padding-top:0;
		padding-bottom:0;
	}

	.kb-maq .kb-accueil .home-sections .reviews-section {
		margin-top:40px;
	}

	.kb-maq .kb-accueil .section-heading {
		margin-bottom:24px;
	}

	.kb-maq .kb-accueil .reviews-heading {
		margin-bottom:24px;
	}

	.kb-maq .kb-accueil .reviews-heading .eyebrow {
		margin-bottom:12px;
	}

	.kb-maq .kb-accueil .reviews-heading h2 {
		margin-bottom:0;
	}
}

/*
 * Alignement sur les LP (3 octobre 2026) : cartes de choix aux bordures des cartes
 * du classement (16 px, filet 1 px, survol = contour nuit 2 px et ombre floue de la
 * carte « Meilleur choix »), bloc confiance des LP (composition kelborne/confiance),
 * avis sur un bandeau crème pleine largeur, titres aux réglages des LP, bandeau final.
 */

.kb-maq .kb-accueil .project-link,
.kb-maq .kb-accueil .home-sections .project-link {
	border-radius:16px;
	box-shadow:none;
}

.kb-maq .kb-accueil .home-sections .project-link:hover,
.kb-maq .kb-accueil .home-sections .project-link:focus-visible {
	border-color:var(--ink);
	box-shadow:0 0 0 1px var(--ink),0 12px 32px rgba(45,64,87,.10);
}

.kb-maq .kb-accueil .home-sections {
	padding-bottom:8px;
}

.kb-maq .kb-accueil.home-avis {
	background:var(--cream);
	padding:64px 0;
}

.kb-maq .kb-accueil.home-avis .reviews-section {
	margin-top:0;
}

.kb-maq .kb-accueil .reviews-heading h2 {
	letter-spacing:normal;
}

@media (max-width:700px) {
	.kb-maq .kb-accueil .project-link,
	.kb-maq .kb-accueil .home-sections .project-link {
		border-radius:16px;
		box-shadow:none;
	}

	.kb-maq .kb-accueil.home-avis {
		padding:40px 0;
	}
}

/* Photo pleine largeur (hero-accueil-recharge, 3 octobre 2026) : sur mobile, cadrage
   décalé vers la droite pour garder la personne et la borne murale. */
@media (max-width:700px) {
	.kb-maq .kb-accueil .home-hero-photo {
		object-position:62% 18%;
	}
}

/* Mobile (3 octobre 2026) : le fond crème du hero ne s'arrête plus net sous le
   texte. Il se prolonge et la première carte le chevauche, comme les cartes
   chevauchent la photo sur grand écran. */
@media (max-width:700px) {
	.kb-maq .kb-accueil .home-hero {
		padding-bottom:56px;
	}

	.kb-maq .kb-accueil .home-sections {
		position:relative;
		z-index:1;
		margin-top:-32px;
		padding-top:0;
	}
}

/* Avis Google (maquettes du 8 octobre 2026) : bloc kelborne/avis-google, avis saisis dans
   Réglages > Avis Kelborne. */
.kb-maq .kb-accueil .kb-avis-g__tete {
	display:flex;
	justify-content:space-between;
	align-items:flex-end;
	gap:24px 40px;
	margin-bottom:32px;
}

.kb-maq .kb-accueil .kb-avis-g__surtitre {
	margin:0 0 10px;
	font:700 13px/18px 'Kelborne Noto', sans-serif;
	letter-spacing:.12em;
	text-transform:uppercase;
	color:#53667A;
}

.kb-maq .kb-accueil .kb-avis-g h2 {
	margin:0;
	font:700 40px/1.1 'Kelborne Rubik', sans-serif;
	letter-spacing:normal;
	color:#203244;
}

.kb-maq .kb-accueil .kb-avis-g__note {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:10px 14px;
	margin:16px 0 0;
	color:#2D4057;
}

.kb-maq .kb-accueil .kb-avis-g__note img {
	display:block;
	width:36px;
	height:36px;
}

.kb-maq .kb-accueil .kb-avis-g__source {
	font-size:20px;
	line-height:28px;
}

.kb-maq .kb-accueil .kb-avis-g__sep {
	width:1px;
	height:32px;
	margin:0 4px;
	background:#D5DEE4;
}

.kb-maq .kb-accueil .kb-avis-g__note strong {
	font:700 44px/1 'Kelborne Rubik', sans-serif;
	color:#203244;
}

.kb-maq .kb-accueil .kb-avis-g__note strong small {
	margin-left:2px;
	font-size:20px;
	font-weight:700;
}

.kb-maq .kb-accueil .kb-avis-g__etoiles {
	display:inline-flex;
	gap:4px;
}

.kb-maq .kb-accueil .kb-avis-g__etoiles svg {
	display:block;
	flex:none;
}

.kb-maq .kb-accueil .kb-avis-g__etoiles .is-pleine {
	fill:#FFC073;
}

.kb-maq .kb-accueil .kb-avis-g__etoiles .is-vide {
	fill:#D5DEE4;
}

.kb-maq .kb-accueil .kb-avis-g__tous {
	display:inline-flex;
	flex:none;
	align-items:center;
	justify-content:center;
	gap:8px;
	min-height:48px;
	padding:0 26px;
	border:1.5px solid #80ADC9;
	border-radius:999px;
	background:#fff;
	font:700 16px/1.2 'Kelborne Noto', sans-serif;
	color:#2D4057;
	text-decoration:none;
}

.kb-maq .kb-accueil .kb-avis-g__tous:hover {
	border-color:#2D4057;
	background:#EDF6F5;
	color:#2D4057;
}

.kb-maq .kb-accueil .kb-avis-g__tous:focus-visible,
.kb-maq .kb-accueil .kb-avis-g__suite:focus-visible {
	outline:3px solid #1C6870;
	outline-offset:2px;
}

.kb-maq .kb-accueil .kb-avis-g__bas {
	display:none;
}

.kb-maq .kb-accueil .kb-avis-g__liste {
	display:grid;
	grid-template-columns:repeat(3, minmax(0, 1fr));
	gap:20px;
	margin:0;
	padding:0;
	list-style:none;
}

.kb-maq .kb-accueil .kb-avis-g__carte {
	display:flex;
	flex-direction:column;
	gap:16px;
	padding:30px 28px;
	border:1px solid #D5DEE4;
	border-radius:16px;
	background:#fff;
}

.kb-maq .kb-accueil .kb-avis-g__auteur {
	position:relative;
	display:flex;
	align-items:center;
	gap:16px;
	padding-right:40px;
}

.kb-maq .kb-accueil .kb-avis-g__photo {
	display:flex;
	flex:none;
	align-items:center;
	justify-content:center;
	width:52px;
	height:52px;
	border-radius:50%;
	object-fit:cover;
}

.kb-maq .kb-accueil .kb-avis-g__photo.is-initiales {
	background:#EDF6F5;
	font:700 18px/1 'Kelborne Rubik', sans-serif;
	color:#2D4057;
}

.kb-maq .kb-accueil .kb-avis-g__nom {
	margin:0;
	font:700 19px/26px 'Kelborne Noto', sans-serif;
	color:#203244;
}

.kb-maq .kb-accueil .kb-avis-g__date {
	margin:2px 0 0;
	font-size:16px;
	line-height:22px;
	color:#53667A;
}

.kb-maq .kb-accueil .kb-avis-g__logo {
	position:absolute;
	top:-6px;
	right:0;
	width:28px;
	height:28px;
}

.kb-maq .kb-accueil .kb-avis-g__carte .kb-avis-g__etoiles {
	margin:8px 0 0;
}

.kb-maq .kb-accueil .kb-avis-g__texte {
	margin:0;
	font-size:17px;
	line-height:28px;
	color:#2D4057;
}

.kb-maq .kb-accueil .kb-avis-g__suite {
	align-self:flex-start;
	margin-top:-6px;
	font-size:16px;
	line-height:24px;
	color:#53667A;
	text-decoration:underline;
	text-underline-offset:3px;
}

@media (max-width:1000px) {
	.kb-maq .kb-accueil .kb-avis-g__liste {
		grid-template-columns:minmax(0, 1fr);
		gap:14px;
	}
}

@media (max-width:700px) {
	.kb-maq .kb-accueil .kb-avis-g__tete {
		display:block;
		margin-bottom:20px;
	}

	.kb-maq .kb-accueil .kb-avis-g__tete .kb-avis-g__tous {
		display:none;
	}

	.kb-maq .kb-accueil .kb-avis-g h2 {
		font-size:34px;
	}

	.kb-maq .kb-accueil .kb-avis-g__note {
		gap:8px 10px;
		margin-top:14px;
	}

	.kb-maq .kb-accueil .kb-avis-g__note img {
		width:28px;
		height:28px;
	}

	.kb-maq .kb-accueil .kb-avis-g__source {
		font-size:17px;
	}

	.kb-maq .kb-accueil .kb-avis-g__sep {
		height:28px;
	}

	.kb-maq .kb-accueil .kb-avis-g__note strong {
		font-size:36px;
	}

	.kb-maq .kb-accueil .kb-avis-g__note strong small {
		font-size:17px;
	}

	.kb-maq .kb-accueil .kb-avis-g__note .kb-avis-g__etoiles svg {
		width:20px;
		height:20px;
	}

	.kb-maq .kb-accueil .kb-avis-g__carte {
		gap:12px;
		padding:20px 18px;
	}

	.kb-maq .kb-accueil .kb-avis-g__photo {
		width:46px;
		height:46px;
	}

	.kb-maq .kb-accueil .kb-avis-g__nom {
		font-size:17px;
		line-height:24px;
	}

	.kb-maq .kb-accueil .kb-avis-g__date {
		font-size:15px;
	}

	.kb-maq .kb-accueil .kb-avis-g__texte {
		font-size:16px;
		line-height:26px;
	}

	.kb-maq .kb-accueil .kb-avis-g__bas {
		display:block;
		margin-top:16px;
	}

	.kb-maq .kb-accueil .kb-avis-g__bas .kb-avis-g__tous {
		width:100%;
	}
}

.kb-maq .kb-accueil .kb-avis-g__carte .kb-avis-g__etoiles > span[aria-hidden] {
	display:inline-flex;
	gap:4px;
}

/* Bandeau final de l'accueil (maquette du 8 octobre 2026) : « Un installateur adapté à votre projet »,
   bouton aqua « Trouver un installateur » avec flèche, vers l'annuaire. */
.kb-maq .kb-bandeau--accueil{gap:24px 40px;padding:36px 48px 36px 40px;border-radius:24px}
.kb-maq .kb-bandeau--accueil .kb-bandeau__volty img{width:104px;height:104px}
.kb-maq .kb-bandeau--accueil .kb-bandeau__texte{gap:10px}
.kb-maq .kb-bandeau--accueil .kb-bandeau__titre{font:700 32px/40px 'Kelborne Rubik';color:#FFFFFF}
.kb-maq .kb-bandeau--accueil .kb-bandeau__desc{font:400 19px/29px 'Kelborne Noto';color:#B8C7D3}
.kb-maq .kb-bandeau--accueil .wp-block-button__link{gap:14px;min-height:72px;padding:0 44px;border:0;background:#BEE4E1;color:#2D4057;font:700 20px/1 'Kelborne Noto'}
.kb-maq .kb-bandeau--accueil .wp-block-button__link:hover{background:#A8D5D1;color:#2D4057}
.kb-maq .kb-bandeau--accueil .wp-block-button__link::after{content:"";width:22px;height:22px;flex:none;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6l-6 6'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6l-6 6'/%3E%3C/svg%3E") center/contain no-repeat}
@media (max-width:1023px){
.kb-maq .kb-bandeau--accueil{padding:32px}
.kb-maq .kb-bandeau--accueil .kb-bandeau__titre{font-size:28px;line-height:34px}
.kb-maq .kb-bandeau--accueil .kb-bandeau__boutons{width:100%}
}
@media (max-width:700px){
.kb-maq .kb-bandeau--accueil{padding:28px 20px;gap:16px}
.kb-maq .kb-bandeau--accueil .kb-bandeau__volty img{width:72px;height:72px}
.kb-maq .kb-bandeau--accueil .kb-bandeau__titre{font-size:24px;line-height:30px}
.kb-maq .kb-bandeau--accueil .kb-bandeau__desc{font-size:16px;line-height:25px}
.kb-maq .kb-bandeau--accueil .wp-block-button__link{min-height:56px;padding:0 24px;font-size:17px}
}

/* Texte SEO de l'accueil (audit du 8 octobre 2026) : installation, prix, borne IRVE ou prise renforcée, villes. */
.kb-maq .kb-accueil.home-seo{padding:72px 0 8px;background:#FFFFFF}
.kb-maq .kb-accueil .home-seo__texte>*{max-width:820px}
.kb-maq .kb-accueil .home-seo__texte.is-layout-flow>*{margin-block-start:0}
.kb-maq .kb-accueil.home-seo h2{margin:0 0 16px;font:700 34px/42px 'Kelborne Rubik',sans-serif;color:#203244}
.kb-maq .kb-accueil.home-seo .home-seo__texte h3{margin:32px 0 10px;font:700 22px/30px 'Kelborne Rubik',sans-serif;color:#203244}
.kb-maq .kb-accueil.home-seo p{font:400 17px/28px 'Kelborne Noto',sans-serif;color:#40556B}
.kb-maq .kb-accueil.home-seo a{color:#2D4057;font-weight:700;text-decoration:underline;text-decoration-color:#BEE4E1;text-decoration-thickness:3px;text-underline-offset:4px}
.kb-maq .kb-accueil.home-seo a:hover{color:#1C6870}
@media (max-width:700px){
.kb-maq .kb-accueil.home-seo{padding:48px 0 0}
.kb-maq .kb-accueil.home-seo h2{font-size:26px;line-height:32px}
.kb-maq .kb-accueil.home-seo .home-seo__texte h3{margin-top:24px;font-size:19px;line-height:26px}
.kb-maq .kb-accueil.home-seo p{font-size:16px;line-height:26px}
}

/* H1 de l'accueil plus long (requête « bornes de recharge pour véhicules électriques », 8 octobre 2026) :
   taille réduite pour rester sur 3 lignes compactes sans masquer la photo. */
.kb-maq .kb-accueil .home-hero .home-intro h1{font-size:40px;line-height:1.16;max-width:600px}
@media (max-width:1180px){
.kb-maq .kb-accueil .home-hero .home-intro h1{font-size:36px}
}
@media (max-width:1023px){
.kb-maq .kb-accueil .home-hero .home-intro h1{font-size:30px;max-width:none}
.kb-maq .kb-accueil .home-hero .home-intro{max-width:66%}
.kb-maq .kb-accueil .project-link h2{font-size:21px;line-height:27px}
}
@media (max-width:700px){
.kb-maq .kb-accueil .home-hero .home-intro h1{font-size:26px;line-height:1.2;max-width:none}
.kb-maq .kb-accueil .home-hero .home-intro{max-width:none}
}

/* Avis de l'accueil sans logo Google (8 octobre 2026) : la source reste écrite après les étoiles. */
.kb-maq .kb-accueil .kb-avis-g__note .kb-avis-g__source{font:400 17px/24px 'Kelborne Noto',sans-serif;color:#53667A}
.kb-maq .kb-accueil .kb-avis-g__tete{margin-bottom:28px}
/* Avis de l'accueil : badge « Avis vérifié » après les étoiles, rosette cochée après chaque nom. */
.kb-maq .kb-accueil .kb-avis-g__note .kb-verifie{margin-left:10px;font-size:19px;line-height:26px;gap:10px;color:#1C6870}
.kb-maq .kb-accueil .kb-avis-g__nom{display:flex;align-items:center;gap:8px}
.kb-maq .kb-accueil .kb-avis-g__verifie{display:inline-flex;color:#1C6870}
@media (max-width:767px){.kb-maq .kb-accueil .kb-avis-g__note .kb-verifie{margin-left:0;font-size:16px}}
