
/*
 * Kelborne : pages Installateurs (hub /installateurs/ et fiche /installateurs/<nom>/).
 * Styles propres à ces pages, préfixe .kbi-, chargés après ceux du thème.
 * En-tête, pied de page, polices et jetons : ceux du thème, inchangés.
 */
.kbi{--kbi-g:max(clamp(20px,6vw,80px),calc(50vw - 640px));display:block;margin:0;padding:0;background:#fff;color:#2D4057;font:400 16px/26px 'Kelborne Noto',system-ui,-apple-system,'Segoe UI',sans-serif}
.kbi *,.kbi *::before,.kbi *::after{box-sizing:border-box}
.kbi :focus-visible{outline:3px solid #1C6870;outline-offset:3px}
.kbi p,.kbi ul,.kbi ol,.kbi dl,.kbi dd,.kbi figure{margin:0}
.kbi ul,.kbi ol{padding:0;list-style:none}
.kbi ul li,.kbi ol li{margin:0}
.kbi a{color:#2D4057}
.kbi a:hover{color:#1C6870}
.kbi .kbi-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.kbi [hidden]{display:none!important}

/* Titres */
.kbi .kbi-h1{max-width:900px;margin:8px 0 12px;font:700 44px/1.2 'Kelborne Rubik',sans-serif;letter-spacing:0;color:#203244}
.kbi .kbi-surligne{padding:0;background:linear-gradient(transparent 72%,#FFC073 72%);color:inherit}
.kbi .kbi-h2{margin:0;font:700 32px/40px 'Kelborne Rubik',sans-serif;letter-spacing:-.01em;color:#2D4057}
.kbi .kbi-h2--s{font-size:24px;line-height:32px}
.kbi .kbi-h3{margin:0 0 12px;font:700 20px/28px 'Kelborne Rubik',sans-serif;color:#2D4057}

/* Fil d'Ariane */
.kbi .kbi-ariane ol{display:flex;flex-wrap:wrap;align-items:center;font-size:14px;line-height:20px;color:#53667A}
.kbi .kbi-ariane li{display:flex;align-items:center}
.kbi .kbi-ariane li+li::before{content:"›";margin:0 10px}
.kbi .kbi-ariane a{display:inline-flex;align-items:center;min-height:44px;color:#53667A;text-decoration:underline;text-underline-offset:2px}
.kbi .kbi-ariane [aria-current]{color:#2D4057;font-weight:700}

/* Bandeau titre */
.kbi .kbi-tete{padding:4px var(--kbi-g) 48px;background:#FCF8EE}
.kbi .kbi-chapo{max-width:720px;font-size:18px;line-height:28px;color:#53667A}

/* Boutons, liens, pastilles */
.kbi .kbi-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:10px 28px;border:2px solid #2D4057;border-radius:999px;background:#2D4057;color:#fff;font:700 16px/1.25 'Kelborne Noto',sans-serif;text-align:center;text-decoration:none;cursor:pointer}
.kbi .kbi-btn:hover{background:#203244;color:#fff}
.kbi .kbi-btn svg{flex:none}
.kbi .kbi-btn--large{min-height:56px}
.kbi .kbi-lien{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:#2D4057;text-decoration:underline;text-decoration-color:#BEE4E1;text-decoration-thickness:3px;text-underline-offset:5px}
.kbi .kbi-lien--fort{font-weight:700}
.kbi .kbi-pastille{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:999px;background:#BEE4E1;color:#2D4057;font:700 12px/1 'Kelborne Noto',sans-serif;letter-spacing:.08em;text-transform:uppercase}
.kbi .kbi-lp{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:6px;background:#FFF0DE;color:#2D4057;font:700 12px/1 'Kelborne Noto',sans-serif}

/* Recherche et filtres (hub) */
.kbi .kbi-filtres{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:20px 24px;max-width:1080px;margin:32px 0 0}
.kbi .kbi-label{display:block;margin:0 0 8px;padding:0;font:700 14px/20px 'Kelborne Noto',sans-serif;color:#2D4057}
.kbi .kbi-rech__champ{display:flex;height:60px;border:2px solid #2D4057;border-radius:999px;background:#fff;overflow:hidden}
.kbi .kbi-rech__champ:focus-within{outline:3px solid #1C6870;outline-offset:3px}
.kbi .kbi-rech__champ input{flex:1;min-width:0;height:100%;margin:0;border:0;border-radius:0;padding:0 24px;background:transparent;box-shadow:none;font:400 17px/1 'Kelborne Noto',sans-serif;color:#2D4057;outline:none;-webkit-appearance:none;appearance:none}
.kbi .kbi-rech__champ input::placeholder{color:#53667A;opacity:1}
.kbi .kbi-rech__champ input::-webkit-search-cancel-button{-webkit-appearance:none}
.kbi .kbi-rech__champ button{display:flex;align-items:center;margin:0;padding:0 28px;border:0;border-radius:0;background:#2D4057;color:#fff;font:700 16px/1 'Kelborne Noto',sans-serif;white-space:nowrap;cursor:pointer}
.kbi .kbi-rech__champ button:hover{background:#203244}
.kbi .kbi-rech__champ button:focus-visible{outline:3px solid #BEE4E1;outline-offset:-6px;border-radius:999px}
.kbi .kbi-select{position:relative}
.kbi .kbi-select select{width:100%;height:60px;margin:0;padding:0 52px 0 24px;border:2px solid #2D4057;border-radius:999px;background:#fff;font:400 17px/1 'Kelborne Noto',sans-serif;color:#2D4057;-webkit-appearance:none;appearance:none;cursor:pointer}
.kbi .kbi-select svg{position:absolute;right:22px;top:50%;transform:translateY(-50%);pointer-events:none}
.kbi .kbi-types{grid-column:1/-1;min-width:0;margin:0;padding:0;border:0}
.kbi .kbi-types__liste{display:flex;flex-wrap:wrap;gap:10px}
.kbi .kbi-type{display:inline-flex;align-items:center;gap:8px;height:44px;margin:0;padding:0 18px;border:2px solid #2D4057;border-radius:999px;background:#fff;color:#2D4057;font:700 15px/1 'Kelborne Noto',sans-serif;cursor:pointer}
.kbi .kbi-type:hover{background:#EDF6F5}
.kbi .kbi-type svg{display:none}
.kbi .kbi-type[aria-pressed="true"]{background:#BEE4E1}
.kbi .kbi-type[aria-pressed="true"] svg{display:block}

/* Filtres actifs */
.kbi .kbi-actifs{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;max-width:1080px;margin-top:20px}
.kbi .kbi-actifs__titre{margin-right:4px;font:700 14px/20px 'Kelborne Noto',sans-serif}
.kbi .kbi-actifs__liste{display:contents}
.kbi .kbi-puce{display:inline-flex;align-items:center;height:44px;padding:0 2px 0 16px;border:1px solid #2D4057;border-radius:999px;background:#fff;font:700 14px/1 'Kelborne Noto',sans-serif}
.kbi .kbi-puce button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;margin:0;padding:0;border:0;border-radius:50%;background:none;color:#2D4057;cursor:pointer}
.kbi .kbi-puce button:hover{background:#EDF6F5}
.kbi .kbi-effacer{min-height:44px;margin:0;padding:0 6px;border:0;background:none;font:700 15px/24px 'Kelborne Noto',sans-serif;color:#1C6870;text-decoration:underline;text-underline-offset:3px;cursor:pointer}

/* Liste (hub) */
.kbi .kbi-liste{padding:48px var(--kbi-g) 64px}
.kbi .kbi-liste__tete{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 24px}
.kbi .kbi-compte{font-size:15px;color:#53667A}
.kbi .kbi-transp{display:flex;align-items:flex-start;gap:10px;margin:20px 0 24px;padding:12px 16px;border-radius:10px;background:#FCF8EE;font-size:14px;line-height:22px}
.kbi .kbi-transp svg{flex:none;margin-top:2px}
.kbi .kbi-transp a,.kbi .kbi-transp-fiche a{color:#1C6870;font-weight:700;text-decoration:underline;text-underline-offset:2px}
.kbi .kbi-grille{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.kbi .kbi-grille--4{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:20px}

/* Carte installateur */
.kbi .kbi-carte{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr);gap:16px;padding:20px;border:1px solid #D5DEE4;border-radius:16px;background:#fff;transition:border-color .15s,box-shadow .15s}
.kbi .kbi-carte:hover{border-color:#2D4057;box-shadow:0 12px 32px rgba(45,64,87,.1)}
.kbi .kbi-logo{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border:1px solid #D5DEE4;border-radius:10px;background:repeating-linear-gradient(45deg,#fff 0 8px,#FCF8EE 8px 16px);font:400 11px/1 'Kelborne Noto',sans-serif;color:#53667A}
.kbi .kbi-carte__corps{display:flex;flex-direction:column;gap:4px;min-width:0}
.kbi .kbi-carte__nom{margin:0;font:700 20px/28px 'Kelborne Noto',sans-serif;letter-spacing:0}
.kbi .kbi-carte__nom a{color:#2D4057;text-decoration:underline;text-decoration-color:#BEE4E1;text-decoration-thickness:3px;text-underline-offset:4px}
.kbi .kbi-carte__nom a::after{content:"";position:absolute;inset:0;border-radius:16px}
.kbi .kbi-carte__nom a:focus-visible{outline:none}
.kbi .kbi-carte__nom a:focus-visible::after{outline:3px solid #1C6870;outline-offset:3px}
.kbi .kbi-carte__zone{display:flex;gap:6px;margin-top:2px;font-size:15px;line-height:22px;color:#53667A}
.kbi .kbi-carte__zone svg{flex:none;margin-top:3px}
.kbi .kbi-carte__types{font-size:15px;line-height:22px}
.kbi .kbi-carte__pied{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:8px}
.kbi .kbi-note{display:inline-flex;align-items:center;gap:6px;font-size:14px;line-height:20px;color:#53667A}
.kbi .kbi-note img{display:block;width:16px;height:16px}
.kbi .kbi-note strong{color:#2D4057}
.kbi .kbi-grille--4 .kbi-carte{grid-template-columns:56px minmax(0,1fr);gap:14px;padding:18px}
.kbi .kbi-grille--4 .kbi-logo{width:56px;height:56px}
.kbi .kbi-grille--4 .kbi-carte__nom{font-size:18px;line-height:26px}

/* Aucun résultat */
.kbi .kbi-vide{display:flex;flex-direction:column;align-items:center;gap:8px;padding:48px 24px;border-radius:16px;background:#FCF8EE;text-align:center}
.kbi .kbi-vide__titre{font:700 24px/32px 'Kelborne Rubik',sans-serif}
.kbi .kbi-vide p{color:#53667A}
.kbi .kbi-vide .kbi-vide__titre{color:#2D4057}
.kbi .kbi-vide .kbi-btn{margin-top:16px}

/* Pagination */
.kbi .kbi-pagi{margin-top:40px}
.kbi .kbi-pagi ul{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px}
.kbi .kbi-pagi a{display:flex;align-items:center;justify-content:center;gap:8px;min-width:44px;height:44px;padding:0 12px;border-radius:999px;font:700 16px/1 'Kelborne Noto',sans-serif;color:#2D4057;text-decoration:none}
.kbi .kbi-pagi a:hover{background:#EDF6F5}
.kbi .kbi-pagi a[aria-current]{background:#2D4057;color:#fff}
.kbi .kbi-pagi__ell{display:block;min-width:24px;text-align:center;color:#53667A}
.kbi .kbi-pagi .kbi-pagi__suiv{padding:0 20px;border:2px solid #2D4057}

/* Régions */
.kbi .kbi-regions{padding:56px var(--kbi-g) 64px;border-top:1px solid #D5DEE4}
.kbi .kbi-regions .kbi-h2{font-size:24px;line-height:32px}
.kbi .kbi-regions ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px 24px;margin-top:20px}

/* Fiche : en-tête */
.kbi .kbi-tete--fiche{padding-bottom:56px}
.kbi .kbi-fiche__grille{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:32px 64px;align-items:start;margin-top:12px}
.kbi .kbi-id{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-bottom:16px}
.kbi .kbi-logo--l{width:120px;height:80px}
.kbi-fiche .kbi-h1{max-width:820px;margin:0 0 20px}
.kbi .kbi-meta{display:flex;flex-direction:column;gap:12px}
.kbi .kbi-meta>li{display:flex;align-items:flex-start;gap:10px;font-size:17px;line-height:26px}
.kbi .kbi-meta svg{flex:none;margin-top:5px}
.kbi .kbi-meta__lib{color:#53667A}
.kbi .kbi-tags{display:flex;flex-wrap:wrap;gap:8px}
.kbi .kbi-tag{display:inline-flex;align-items:center;height:30px;padding:0 12px;border:1px solid #BEE4E1;border-radius:999px;background:#fff;font:700 14px/1 'Kelborne Noto',sans-serif}

/* Fiche : panneau d'action */
.kbi .kbi-panneau{display:flex;flex-direction:column;gap:16px;padding:28px;border:1px solid #D5DEE4;border-radius:16px;background:#fff;box-shadow:0 12px 32px rgba(45,64,87,.1)}
.kbi .kbi-gnote{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.kbi .kbi-gnote img{display:block;width:24px;height:24px}
.kbi .kbi-gnote__val{font:700 32px/1 'Kelborne Rubik',sans-serif}
.kbi .kbi-gnote__sur{margin-left:-6px;font:700 16px/1 'Kelborne Noto',sans-serif;color:#53667A}
.kbi .kbi-etoiles{display:flex;gap:2px}
.kbi .kbi-etoile{fill:#FFC073;stroke:#FFC073}
.kbi .kbi-etoile.is-vide{fill:none}
.kbi .kbi-gnote__nb{flex-basis:100%;font-size:14px;line-height:20px;color:#53667A}
.kbi .kbi-mention{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin-top:-4px;font-size:13px;line-height:20px;color:#53667A}
.kbi .kbi-transp-fiche{padding-top:16px;border-top:1px solid #D5DEE4;font-size:14px;line-height:22px}

/* Fiche : sections */
.kbi .kbi-sec{padding:64px var(--kbi-g) 0}
.kbi .kbi-bref{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px 48px;max-width:1080px;margin-top:28px}
.kbi .kbi-bref.is-seul{grid-template-columns:minmax(0,1fr);max-width:640px}
.kbi .kbi-points{display:flex;flex-direction:column;gap:12px}
.kbi .kbi-points li{display:flex;gap:12px;font-size:17px;line-height:26px}
.kbi .kbi-points img{flex:none;width:20px;height:20px;margin-top:3px}
.kbi .kbi-infos{border:1px solid #D5DEE4;border-radius:12px;overflow:hidden}
.kbi .kbi-infos div{display:grid;grid-template-columns:200px minmax(0,1fr);gap:4px 16px;padding:14px 20px}
.kbi .kbi-infos div+div{border-top:1px solid #D5DEE4}
.kbi .kbi-infos dt{font-size:15px;line-height:24px;color:#53667A}
.kbi .kbi-infos dd{font-weight:700;line-height:24px}
.kbi .kbi-infos__note{margin-top:10px;font-size:13px;line-height:20px;color:#53667A}
.kbi .kbi-avis{max-width:1080px;margin-top:28px;padding:32px;border-radius:16px;background:#EDF6F5}
.kbi .kbi-avis__indice{display:flex;align-items:center;gap:16px;margin-bottom:16px}
.kbi .kbi-avis__indice img{display:block;width:100px;height:34px}
.kbi .kbi-avis__lib{display:block;font-size:13px;line-height:18px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#53667A}
.kbi .kbi-avis__val{display:block;font:700 22px/28px 'Kelborne Rubik',sans-serif}
.kbi .kbi-avis__sans{margin-bottom:12px;font-size:14px;line-height:22px;color:#53667A}
.kbi .kbi-avis__texte{font-size:17px;line-height:28px}
.kbi .kbi-avis__sign{margin-top:16px;font-size:14px;line-height:22px;color:#53667A}

/* Fiche : bas de page */
.kbi .kbi-bas{padding:64px var(--kbi-g) 72px}
.kbi .kbi-rappel{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 32px;padding:16px 24px;border:1px solid #D5DEE4;border-radius:16px}
.kbi .kbi-rappel__site{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px}
.kbi .kbi-autres{margin-top:48px}
.kbi .kbi-autres__vide{margin-top:12px;color:#53667A}

/* Tablette */
@media (max-width:1100px){
.kbi .kbi-grille{grid-template-columns:repeat(2,minmax(0,1fr))}
.kbi .kbi-grille--4{grid-template-columns:repeat(2,minmax(0,1fr))}
.kbi .kbi-regions ul{grid-template-columns:repeat(3,minmax(0,1fr))}
.kbi .kbi-fiche__grille{grid-template-columns:minmax(0,1fr) 340px;gap:32px 40px}
}
@media (max-width:900px){
.kbi .kbi-fiche__grille{grid-template-columns:minmax(0,1fr)}
}
/* Mobile */
@media (max-width:700px){
.kbi .kbi-tete{padding-bottom:32px}
.kbi .kbi-h1{font-size:28px;line-height:1.2}
.kbi .kbi-chapo{font-size:16px;line-height:26px}
.kbi .kbi-h2{font-size:22px;line-height:28px}
.kbi .kbi-h2--s,.kbi .kbi-regions .kbi-h2{font-size:20px;line-height:28px}
.kbi .kbi-h3{font-size:18px;line-height:26px}
.kbi .kbi-filtres{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:24px}
.kbi .kbi-rech__champ{height:56px}
.kbi .kbi-rech__champ input{padding:0 18px;font-size:16px}
.kbi .kbi-rech__champ button{padding:0 18px}
.kbi .kbi-select select{height:56px;font-size:16px}
.kbi .kbi-liste{padding:32px var(--kbi-g) 48px}
.kbi .kbi-grille,.kbi .kbi-grille--4{grid-template-columns:minmax(0,1fr);gap:12px}
.kbi .kbi-carte{grid-template-columns:56px minmax(0,1fr);gap:14px;padding:16px}
.kbi .kbi-logo{width:56px;height:56px}
.kbi .kbi-carte__nom{font-size:18px;line-height:26px}
.kbi .kbi-pagi .kbi-pagi__suiv{padding:0 12px}
.kbi .kbi-pagi__suiv span{display:none}
.kbi .kbi-regions{padding:40px var(--kbi-g) 48px}
.kbi .kbi-regions ul{grid-template-columns:minmax(0,1fr)}
.kbi .kbi-logo--l{width:96px;height:64px}
.kbi-fiche .kbi-h1{margin-bottom:16px}
.kbi .kbi-meta>li{font-size:16px;line-height:24px}
.kbi .kbi-panneau{padding:20px}
.kbi .kbi-btn{width:100%}
.kbi .kbi-sec{padding:40px var(--kbi-g) 0}
.kbi .kbi-bref{grid-template-columns:minmax(0,1fr);gap:28px;margin-top:20px}
.kbi .kbi-points li{font-size:16px;line-height:24px}
.kbi .kbi-infos div{grid-template-columns:minmax(0,1fr);gap:0;padding:12px 16px}
.kbi .kbi-avis{margin-top:20px;padding:24px 20px}
.kbi .kbi-avis__texte{font-size:16px;line-height:26px}
.kbi .kbi-bas{padding:40px var(--kbi-g) 48px}
.kbi .kbi-rappel{flex-direction:column;align-items:flex-start;padding:12px 16px}
.kbi .kbi-autres{margin-top:36px}
}


/* Écarts voulus (3 octobre 2026) : pas de fil d'Ariane visible (le JSON-LD BreadcrumbList reste) ;
   le titre garde sa position (4 px + 44 px du fil d'Ariane). Logo d'installateur dans son cadre. */
.kbi .kbi-tete{padding-top:48px}
.kbi .kbi-logo.has-logo{background:#fff;overflow:hidden;padding:8px}
.kbi .kbi-logo--l.has-logo{padding:10px}
.kbi .kbi-logo img{display:block;max-width:100%;max-height:100%;object-fit:contain}
.kbi .kbi-avis__auteur{display:flex;align-items:center;gap:16px;margin-top:28px}
.kbi .kbi-avis__photo{flex:none;display:flex;align-items:center;justify-content:center;width:60px;height:60px;border:2px solid #fff;border-radius:50%;background:#2D4057;box-shadow:0 2px 10px rgba(45,64,87,.14);color:#fff;font:700 20px/1 'Kelborne Rubik',sans-serif;object-fit:cover}
.kbi .kbi-avis__auteur .kbi-avis__sign{margin-top:0}
.kbi .kbi-avis__nom{display:block;font-size:18px;line-height:24px;font-weight:700;color:#2D4057}
.kbi .kbi-avis__type{display:block;font-size:15px;line-height:22px;color:#53667A}

/*
 * Blocs de contenu SEO du hub et des régions (maquettes Claude Design du 7 octobre 2026,
 * design-source/installateurs/kelborne-installateurs-hub.html et
 * kelborne-installateurs-region-normandie.html). Composants existants réutilisés :
 * .kb-s (guide des LP), .kb-encart, .kb-faq, .kbi-pastille, .kbi-tag, .kbi-lien.
 */

/* ---------- Liste sans mention de transparence ---------- */
.kbi .kbi-liste__tete+.kbi-grille{margin-top:24px}

/* ---------- Chiffres clés (régions) ---------- */
.kbi .kbi-chiffres{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 0}
.kbi .kbi-chiffre{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 18px;border:1px solid #D5DEE4;border-radius:999px;background:#fff;font-size:15px;line-height:22px;color:#53667A}
.kbi .kbi-chiffre strong{font:700 18px/22px 'Kelborne Rubik',sans-serif;color:#2D4057}
.kbi .kbi-chiffre img{display:block;width:16px;height:16px}

/* ---------- Bloc de contenu ---------- */
.kbi .kbi-contenu{padding:64px var(--kbi-g) 16px;border-top:1px solid #D5DEE4}
.kbi .kbi-guide{max-width:760px;min-width:0}
.kbi .kbi-guide__intro{margin-top:12px;font-size:18px;line-height:28px;color:#53667A}
.kbi .kbi-guide>.kb-s:first-of-type{border-top:0;padding-top:32px}
.kbi .kbi-guide .kb-s:last-child{padding-bottom:48px}
.kbi .kb-s a:not(.kbi-lien){color:#2D4057;text-decoration:underline;text-decoration-color:#BEE4E1;text-decoration-thickness:3px;text-underline-offset:4px}
.kbi .kb-s a:not(.kbi-lien):hover{color:#1C6870}

/* Listes à puces dans le guide (bloc Liste de WordPress) */
.kbi .kb-s ul.kbi-puces{display:flex;flex-direction:column;gap:10px}
.kbi .kb-s ul.kbi-puces li{position:relative;padding-left:24px;font-size:17px;line-height:28px;color:#40556B}
.kbi .kb-s ul.kbi-puces li::before{content:"";position:absolute;left:4px;top:11px;width:8px;height:8px;border-radius:50%;background:#80ADC9}
.kbi .kb-s ul.kbi-puces strong{color:#2D4057}

/* Coûts : liste de liens d'information (pistes A et C) */
.kbi .kbi-couts{border-top:1px solid #D5DEE4}
.kbi .kbi-couts li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 24px;padding:14px 0;border-bottom:1px solid #D5DEE4}
.kbi .kbi-couts__type{display:block;font-weight:700;font-size:17px;line-height:26px}
.kbi .kbi-couts__prix{display:block;font-size:15px;line-height:22px;color:#53667A}

/* Coûts : cartes (piste B) */
.kbi .kbi-cout-cartes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.kbi .kbi-cout-carte{position:relative;display:flex;flex-direction:column;gap:6px;padding:20px;border:1px solid #D5DEE4;border-radius:16px;background:#fff;transition:border-color .15s,box-shadow .15s}
.kbi .kbi-cout-carte:hover{border-color:#2D4057;box-shadow:0 12px 32px rgba(45,64,87,.1)}
.kbi .kbi-cout-carte img{display:block;width:56px;height:56px;margin-bottom:6px}
.kbi .kbi-cout-carte__type{font:700 17px/24px 'Kelborne Noto',sans-serif}
.kbi .kbi-cout-carte__prix{font:700 22px/28px 'Kelborne Rubik',sans-serif;color:#203244}
.kbi .kbi-cout-carte__det{font-size:14px;line-height:22px;color:#53667A}
.kbi .kbi-cout-carte a{margin-top:auto;padding-top:8px;font-weight:700;font-size:15px;line-height:22px;color:#2D4057;text-decoration:underline;text-decoration-color:#BEE4E1;text-decoration-thickness:3px;text-underline-offset:4px}
.kbi .kbi-cout-carte a::after{content:"";position:absolute;inset:0;border-radius:16px}

/* Sommaire (piste B) */
.kbi .kbi-guide-grille.is-sommaire{display:grid;grid-template-columns:240px minmax(0,760px);gap:32px 72px;align-items:start}
.kbi .kbi-sommaire{padding:20px 20px 12px;border-radius:16px;background:#FCF8EE}
.kbi .kbi-sommaire__titre{font:700 12px/16px 'Kelborne Noto',sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#53667A}
.kbi .kbi-sommaire ol{margin-top:8px}
.kbi .kbi-sommaire .kbi-lien{min-height:44px;font-size:15px;line-height:22px;padding:6px 0}
.kbi .kbi-faq.is-decale .kbi-faq__col{margin-left:312px}

/* Repères (piste C) : composant .kb-aide des LP */
.kbi .kbi-reperes{max-width:1080px;margin:24px 0 8px}
.kbi .kbi-reperes .kb-aide{gap:6px}

/* FAQ : composant .kb-faq des LP, colonne de lecture */
.kbi .kbi-faq__col{max-width:760px;display:flex;flex-direction:column;gap:24px}
.kbi .kbi-faq .kb-faq__contact a{color:#1C6870;font-weight:700;text-decoration:underline;text-underline-offset:2px}

/* Villes couvertes (régions) */
.kbi .kbi-villes{border-top:1px solid #D5DEE4}
.kbi .kbi-villes>div{display:grid;grid-template-columns:200px minmax(0,1fr);gap:8px 24px;padding:14px 0;border-bottom:1px solid #D5DEE4}
.kbi .kbi-villes dt{font-weight:700;line-height:30px}
.kbi .kbi-villes dt span{font-weight:400;color:#53667A}

/* Régions voisines */
.kbi .kbi-voisines{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0 48px}
.kbi .kbi-voisine{display:flex;flex-direction:column;padding:12px 20px;border:1px solid #D5DEE4;border-radius:16px}
.kbi .kbi-voisine span{font-size:14px;line-height:20px;color:#53667A}

/* Tablette */
@media (max-width:1100px){
.kbi .kbi-voisines{grid-template-columns:repeat(2,minmax(0,1fr))}
.kbi .kbi-guide-grille.is-sommaire{grid-template-columns:minmax(0,1fr)}
.kbi .kbi-faq.is-decale .kbi-faq__col{margin-left:0}
}
/* Mobile */
@media (max-width:700px){
.kbi .kbi-contenu{padding:40px var(--kbi-g) 8px}
.kbi .kbi-guide__intro{font-size:16px;line-height:26px}
.kbi .kb-s ul.kbi-puces li{font-size:16px;line-height:26px}
.kbi .kbi-couts li{grid-template-columns:minmax(0,1fr)}
.kbi .kbi-cout-cartes{grid-template-columns:minmax(0,1fr);gap:12px}
.kbi .kbi-cout-carte{display:grid;grid-template-columns:48px minmax(0,1fr);gap:2px 14px;padding:16px}
.kbi .kbi-cout-carte img{grid-row:1/span 4;width:48px;height:48px;margin:0}
.kbi .kbi-chiffre{font-size:14px;padding:6px 14px}
.kbi .kbi-villes>div{grid-template-columns:minmax(0,1fr);gap:6px}
.kbi .kbi-voisines{grid-template-columns:minmax(0,1fr);margin-bottom:36px}
}

/* Guide et FAQ du hub en blocs natifs (groupes) : pas de marge de mise en page entre
   leurs enfants, comme dans la maquette. */
.kbi .kbi-contenu.is-layout-flow>*,.kbi .kbi-guide-grille.is-layout-flow>*,.kbi .kbi-guide.is-layout-flow>.kb-s,.kbi .kbi-faq__col.is-layout-flow>*{margin-block-start:0}
.kbi ul.wp-block-list.kbi-puces{padding:0;list-style:none}

/* ---------- Fiche : en-tête (maquette « Tohmo », 7 octobre 2026) ---------- */
.kbi .kbi-fiche__grille{grid-template-columns:minmax(0,1fr) 480px;gap:32px 80px}
.kbi .kbi-fiche__intro{min-width:0}
.kbi-fiche .kbi-id{margin-bottom:10px}
.kbi-fiche .kbi-h1{max-width:none;margin:0 0 12px;font-size:46px;line-height:52px}
.kbi .kbi-fiche__chapo{max-width:640px;margin:0 0 17px;font-size:18px;line-height:28px;color:#40556B}
.kbi .kbi-fiche__zone{display:flex;align-items:flex-start;gap:10px;margin:0 0 17px;font-size:17px;line-height:26px;color:#40556B}
.kbi .kbi-fiche__zone svg{flex:none;width:22px;height:22px;margin-top:2px;color:#2D4057}
.kbi .kbi-insec{white-space:nowrap}
.kbi .kbi-projets{display:flex;flex-wrap:wrap;align-items:center;margin:0 0 24px;padding:0;list-style:none}
.kbi .kbi-projet{display:flex;align-items:center;gap:14px;padding:0 40px;border-left:1.5px solid #BEE4E1;font-weight:700;font-size:16px;line-height:24px;color:#2D4057}
.kbi .kbi-projet:first-child{padding-left:0;border-left:0}
.kbi .kbi-projet__icone{display:block;flex:none;width:40px;height:40px}
.kbi .kbi-fiche__ancre{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:16px;line-height:24px;color:#2D4057;text-decoration:underline;text-decoration-color:#BEE4E1;text-decoration-thickness:3px;text-underline-offset:5px}
.kbi .kbi-fiche__ancre:hover{color:#1C6870}
.kbi .kbi-fiche__ancre svg{flex:none}
.kbi-fiche #analyse{scroll-margin-top:24px}
.kbi-fiche .kbi-panneau{gap:0;margin-top:18px;padding:36px}
.kbi .kbi-panneau__titre{margin:0 0 16px;font:700 32px/38px 'Kelborne Rubik',sans-serif;color:#203244}
.kbi .kbi-panneau__texte{margin:0 0 28px;font-size:18px;line-height:26px;color:#40556B}
.kbi .kbi-panneau .kbi-gnote{margin:-8px 0 24px}
.kbi .kbi-panneau .kbi-gnote img{width:20px;height:20px}
.kbi .kbi-panneau .kbi-gnote__val{font-size:24px}
.kbi .kbi-panneau .kbi-gnote__nb{flex-basis:auto}
.kbi .kbi-panneau .kbi-btn{width:100%;font-size:17px}
.kbi .kbi-panneau .kbi-transp-fiche{margin-top:20px}
.kbi .kbi-panneau .kbi-transp-fiche .kbi-lp{margin-right:4px}
.kbi-fiche .kbi-tete--fiche{padding-bottom:32px}
.kbi-fiche .kbi-tete--fiche+.kbi-sec{padding-top:40px}
@media (max-width:1100px){
.kbi .kbi-fiche__grille{grid-template-columns:minmax(0,1fr) 380px;gap:32px 48px}
.kbi-fiche .kbi-h1{font-size:40px;line-height:46px}
.kbi-fiche .kbi-panneau{padding:32px 28px}
.kbi .kbi-panneau__titre{font-size:26px;line-height:32px}
.kbi .kbi-projet{padding:0 20px;gap:10px}
.kbi .kbi-projet__icone{width:32px;height:32px}
}
@media (max-width:900px){
.kbi .kbi-fiche__grille{grid-template-columns:minmax(0,1fr)}
.kbi-fiche .kbi-panneau{max-width:560px;margin-top:0}
.kbi-fiche .kbi-bref{grid-template-columns:minmax(0,1fr);gap:28px}
}
/* Mobile : types en trois colonnes (pictogramme au-dessus), carte d'action pleine largeur. */
@media (max-width:700px){
.kbi-fiche .kbi-h1{font-size:30px;line-height:1.2}
.kbi .kbi-fiche__chapo{margin-bottom:20px;font-size:17px;line-height:26px}
.kbi .kbi-fiche__zone{margin-bottom:20px;font-size:16px;line-height:24px}
.kbi .kbi-projets{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:start;margin-bottom:24px;padding:0}
.kbi .kbi-projet,.kbi .kbi-projet:first-child{flex-direction:column;gap:8px;padding:0 6px;font-size:15px;line-height:20px;text-align:center}
.kbi .kbi-projet:first-child{border-left:0}
.kbi .kbi-projet__icone{width:28px;height:28px}
.kbi .kbi-fiche__ancre{font-size:16px}
.kbi-fiche .kbi-panneau{padding:24px 20px}
.kbi .kbi-panneau .kbi-btn{padding:10px 20px;font-size:16px}
.kbi .kbi-panneau__titre{margin-bottom:10px;font-size:24px;line-height:1.25}
.kbi .kbi-panneau__texte{margin-bottom:20px;font-size:16px;line-height:24px}
.kbi-fiche .kbi-tete--fiche{padding-bottom:28px}
.kbi-fiche .kbi-tete--fiche+.kbi-sec{padding-top:36px}
}

/* ---------- Fiche : version mobile resserrée (7 octobre 2026) ---------- */
@media (max-width:700px){
.kbi-fiche .kbi-tete{padding-top:24px}
.kbi-fiche .kbi-id{margin-bottom:12px}
.kbi-fiche .kbi-logo--l{width:84px;height:56px}
.kbi-fiche .kbi-logo--l.has-logo{padding:6px}
.kbi-fiche .kbi-h1{margin-bottom:10px;font-size:28px;line-height:32px}
.kbi .kbi-fiche__chapo{margin-bottom:14px;font-size:16px;line-height:24px}
.kbi .kbi-fiche__zone{gap:8px;margin-bottom:12px;font-size:15px;line-height:22px}
.kbi .kbi-fiche__zone svg{width:20px;height:20px;margin-top:1px}
.kbi .kbi-projets{display:flex;flex-wrap:wrap;gap:8px 16px;margin-bottom:16px;padding:0;border:0}
.kbi .kbi-projet,.kbi .kbi-projet:first-child{flex-direction:row;gap:5px;padding:0;border:0;font-size:14px;line-height:20px;text-align:left}
.kbi .kbi-projet__icone{width:26px;height:26px}
.kbi .kbi-fiche__ancre{display:none}
.kbi-fiche .kbi-panneau{padding:20px 16px}
.kbi .kbi-panneau__titre{margin-bottom:12px;font-size:22px;line-height:28px}
.kbi .kbi-panneau__texte{display:none}
.kbi .kbi-panneau .kbi-gnote{margin:0 0 14px}
.kbi .kbi-panneau .kbi-gnote__val{font-size:20px}
.kbi .kbi-panneau .kbi-btn{min-height:50px}
.kbi .kbi-panneau .kbi-transp-fiche{margin-top:12px;padding-top:12px;font-size:13px;line-height:19px}
.kbi-fiche .kbi-tete--fiche{padding-bottom:24px}
.kbi-fiche .kbi-sec,.kbi-fiche .kbi-tete--fiche+.kbi-sec{padding-top:32px}
.kbi-fiche .kbi-h2{font-size:21px;line-height:27px}
.kbi-fiche .kbi-bref{gap:20px;margin-top:14px}
.kbi-fiche .kbi-h3{margin-bottom:8px;font-size:16px;line-height:22px}
.kbi-fiche .kbi-points{gap:8px}
.kbi-fiche .kbi-points li{gap:10px;font-size:15px;line-height:22px}
.kbi-fiche .kbi-points img{width:18px;height:18px;margin-top:2px}
.kbi-fiche .kbi-infos div{grid-template-columns:minmax(0,42%) minmax(0,1fr);gap:0 12px;padding:10px 14px}
.kbi-fiche .kbi-infos dt{font-size:13px;line-height:20px}
.kbi-fiche .kbi-infos dd{font-size:14px;line-height:20px}
.kbi-fiche .kbi-infos__note{font-size:12px;line-height:18px}
.kbi-fiche .kbi-avis{margin-top:14px;padding:18px 16px}
.kbi-fiche .kbi-avis__indice{gap:12px;margin-bottom:12px}
.kbi-fiche .kbi-avis__indice img{width:80px;height:27px}
.kbi-fiche .kbi-avis__lib{font-size:11px;line-height:16px}
.kbi-fiche .kbi-avis__val{font-size:18px;line-height:24px}
.kbi-fiche .kbi-avis__texte{font-size:15px;line-height:23px}
.kbi-fiche .kbi-avis__auteur{gap:12px;margin-top:16px}
.kbi-fiche .kbi-avis__photo{width:48px;height:48px}
.kbi-fiche .kbi-avis__nom{font-size:16px;line-height:22px}
.kbi-fiche .kbi-avis__type{font-size:14px;line-height:20px}
.kbi-fiche .kbi-bas{padding:32px var(--kbi-g) 36px}
.kbi-fiche .kbi-rappel{gap:6px;padding:12px 14px}
.kbi-fiche .kbi-autres{margin-top:28px}
/* Autres installateurs : défilement horizontal au lieu d'une colonne de cartes. */
.kbi-fiche .kbi-autres .kbi-grille{display:flex;gap:12px;margin:12px calc(-1 * var(--kbi-g)) 0;padding:0 var(--kbi-g) 6px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 var(--kbi-g);scrollbar-width:none}
.kbi-fiche .kbi-autres .kbi-grille::-webkit-scrollbar{display:none}
.kbi-fiche .kbi-autres .kbi-carte{flex:0 0 82%;scroll-snap-align:start}
.kbi-fiche .kbi-autres .kbi-carte:only-child{flex-basis:100%}
}

/* ---------- Hub et régions : en-tête « Affinez votre recherche » (maquette du 8 octobre 2026) ---------- */
.kbi .kbi-tete--hub{padding:56px var(--kbi-g) 48px}
.kbi .kbi-hub__grille{display:grid;grid-template-columns:minmax(0,1fr) 600px;gap:32px 60px;align-items:start}
.kbi .kbi-hub__intro{min-width:0}
.kbi-hub .kbi-h1{max-width:none;margin:0 0 24px;font-size:46px;line-height:52px}
.kbi-hub .kbi-chapo{max-width:none;margin:0 0 32px;font-size:18px;line-height:28px;color:#40556B}
.kbi .kbi-stats{display:flex;flex-wrap:wrap;gap:16px 40px;margin:0;padding:0;list-style:none}
.kbi .kbi-stat{display:flex;align-items:center;gap:10px;font-size:16px;line-height:24px;color:#53667A}
.kbi .kbi-stat strong{font:700 24px/1 'Kelborne Rubik',sans-serif;color:#203244}
.kbi .kbi-stat__icone{display:block;flex:none;width:38px;height:38px}
.kbi .kbi-affiner{margin-top:4px;padding:36px;border:1px solid #D5DEE4;border-radius:16px;background:#fff;box-shadow:0 12px 32px rgba(45,64,87,.1)}
.kbi .kbi-affiner__titre{margin:0 0 22px;font:700 32px/38px 'Kelborne Rubik',sans-serif;color:#203244}
.kbi .kbi-affiner__lieux{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.kbi .kbi-affiner .kbi-label{font-size:16px;line-height:22px}
.kbi .kbi-affiner .kbi-select select{height:52px;padding:0 48px 0 22px;border:2px solid #2D4057;border-radius:999px;font-size:17px}
.kbi .kbi-affiner .kbi-select select:focus-visible{outline:3px solid #1C6870;outline-offset:2px}
.kbi .kbi-affiner .kbi-select svg{right:20px}
.kbi .kbi-choix{margin:22px 0 0;padding:0;border:0}
.kbi .kbi-choix__liste{display:flex;flex-wrap:wrap;gap:8px}
.kbi .kbi-pilule{position:relative;display:inline-flex;cursor:pointer}
.kbi .kbi-pilule input{position:absolute;inset:0;margin:0;opacity:0;cursor:pointer}
.kbi .kbi-pilule span{display:inline-flex;align-items:center;height:42px;padding:0 22px;border:1.5px solid #2D4057;border-radius:999px;background:#fff;font:700 16px/1 'Kelborne Noto',sans-serif;color:#2D4057}
.kbi .kbi-pilule:hover span{background:#EDF6F5}
.kbi .kbi-pilule input:checked+span{background:#2D4057;color:#fff}
.kbi .kbi-pilule input:focus-visible+span{outline:3px solid #1C6870;outline-offset:2px}
.kbi .kbi-affiner__btn{width:100%;min-height:52px;margin-top:24px;font-size:17px}
.kbi-hub .kbi-liste{padding-top:40px}
.kbi-hub .kbi-liste__tete{align-items:flex-end;gap:16px 32px;margin-bottom:28px}
.kbi-hub .kbi-liste__tete .kbi-h2{font-size:34px;line-height:42px}
.kbi .kbi-liste__resume{margin:4px 0 0;font-size:17px;line-height:26px;color:#53667A}
.kbi .kbi-liste__effacer{margin-left:8px;font-weight:700;color:#2D4057;text-decoration:underline;text-decoration-color:#BEE4E1;text-decoration-thickness:3px;text-underline-offset:5px}
.kbi .kbi-cherche{width:346px;max-width:100%}
.kbi .kbi-cherche .kbi-label{font-size:15px}
.kbi .kbi-cherche__champ{position:relative}
.kbi .kbi-cherche__champ svg{position:absolute;left:20px;top:50%;transform:translateY(-50%);color:#53667A;pointer-events:none}
.kbi .kbi-cherche__champ input{width:100%;height:52px;margin:0;padding:0 22px 0 50px;border:2px solid #2D4057;border-radius:999px;background:#fff;font:400 16px/1 'Kelborne Noto',sans-serif;color:#2D4057}
.kbi .kbi-cherche__champ input::placeholder{color:#53667A}
.kbi .kbi-cherche__champ input:focus-visible{outline:3px solid #1C6870;outline-offset:2px}
.kbi-hub .kbi-liste__tete+.kbi-grille{margin-top:0}
@media (max-width:1100px){
.kbi .kbi-hub__grille{grid-template-columns:minmax(0,1fr) 460px;gap:32px 40px}
.kbi-hub .kbi-h1{font-size:40px;line-height:46px}
.kbi .kbi-affiner{padding:28px 24px}
.kbi .kbi-affiner__titre{font-size:26px;line-height:32px}
.kbi .kbi-pilule span{padding:0 18px}
}
@media (max-width:1100px) and (min-width:901px){
.kbi .kbi-affiner__lieux{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:900px){
.kbi .kbi-hub__grille{grid-template-columns:minmax(0,1fr)}
.kbi .kbi-affiner{max-width:640px;margin-top:0}
}
@media (max-width:700px){
.kbi .kbi-tete--hub{padding:28px var(--kbi-g) 32px}
.kbi-hub .kbi-h1{margin-bottom:14px;font-size:28px;line-height:32px}
.kbi-hub .kbi-chapo{margin-bottom:18px;font-size:16px;line-height:24px}
.kbi .kbi-stats{gap:10px 24px}
.kbi .kbi-stat{gap:8px;font-size:15px;line-height:22px}
.kbi .kbi-stat strong{font-size:20px}
.kbi .kbi-stat__icone{width:32px;height:32px}
.kbi .kbi-affiner{padding:20px 16px}
.kbi .kbi-affiner__titre{margin-bottom:16px;font-size:22px;line-height:28px}
.kbi .kbi-affiner__lieux{grid-template-columns:minmax(0,1fr);gap:12px}
.kbi .kbi-affiner .kbi-label{font-size:15px}
.kbi .kbi-affiner .kbi-select select{height:52px;font-size:16px}
.kbi .kbi-choix{margin-top:16px}
.kbi .kbi-choix__liste{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.kbi .kbi-pilule span{justify-content:center;width:100%;height:40px;padding:0 12px;font-size:15px}
.kbi .kbi-affiner__btn{margin-top:18px;font-size:16px}
.kbi-hub .kbi-liste{padding-top:28px}
.kbi-hub .kbi-liste__tete{flex-direction:column;align-items:stretch;gap:16px;margin-bottom:16px}
.kbi-hub .kbi-liste__tete .kbi-h2{font-size:24px;line-height:30px}
.kbi .kbi-liste__resume{font-size:15px;line-height:22px}
.kbi .kbi-cherche{width:100%}
}

/* ---------- Fiche : bloc « L'avis de Kelborne » (maquettes du 8 octobre 2026) ---------- */
.kbi-fiche .kbi-avis{display:grid;grid-template-columns:176px minmax(0,1fr);padding:44px 40px 36px 36px}
.kbi-fiche .kbi-avis__indice{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin:0;padding-right:36px;border-right:1px solid rgba(128,173,201,.55)}
.kbi-fiche .kbi-avis__indice img{display:block;width:110px;height:37px}
.kbi-fiche .kbi-avis__lib{font-size:13px;line-height:18px;color:#2D4057}
.kbi-fiche .kbi-avis__val{font:700 26px/30px 'Kelborne Rubik',sans-serif;color:#203244}
.kbi-fiche .kbi-avis__val.is-sans{font:700 18px/24px 'Kelborne Noto',sans-serif;color:#53667A}
.kbi-fiche .kbi-avis__corps{min-width:0;padding-left:40px}
.kbi-fiche .kbi-avis__texte{margin:0;padding:0;border:0;font-size:20px;line-height:30px;color:#2D4057}
.kbi-fiche .kbi-avis__texte p+p{margin-top:16px}
.kbi-fiche .kbi-avis__auteur{margin-top:26px}
@media (max-width:700px){
.kbi-fiche .kbi-avis{grid-template-columns:minmax(0,1fr);padding:26px 20px 24px}
.kbi-fiche .kbi-avis__indice{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 20px;align-items:center;margin-bottom:22px;padding:0 0 22px;border-right:0;border-bottom:1px solid rgba(128,173,201,.55)}
.kbi-fiche .kbi-avis__indice img{grid-row:1/3;grid-column:1;width:104px;height:35px}
.kbi-fiche .kbi-avis__lib{grid-column:2;align-self:end;font-size:12px;line-height:16px}
.kbi-fiche .kbi-avis__val{grid-column:2;align-self:start;font-size:24px;line-height:28px}
.kbi-fiche .kbi-avis__val.is-sans{grid-column:1/3;font-size:16px;line-height:22px}
.kbi-fiche .kbi-avis__lib:has(+.is-sans){grid-column:1/3}
.kbi-fiche .kbi-avis__corps{padding-left:0}
.kbi-fiche .kbi-avis__texte{font-size:17px;line-height:27px}
.kbi-fiche .kbi-avis__texte p+p{margin-top:14px}
.kbi-fiche .kbi-avis__auteur{margin-top:22px}
}

/* Fiche : plus de rappel « Visiter le site / Voir tous les installateurs » en bas (8 octobre 2026). */
.kbi-fiche .kbi-bas .kbi-autres{margin-top:0}

/* ---------- Cartes d'installateurs (maquette « Tohmo », 8 octobre 2026) ---------- */
.kbi .kbi-carte{display:flex;flex-direction:column;gap:16px;padding:24px;border:1px solid #D5DEE4;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(45,64,87,.06)}
.kbi .kbi-carte:hover{border-color:#2D4057;box-shadow:0 12px 32px rgba(45,64,87,.1)}
.kbi .kbi-carte__tete{display:flex;align-items:center;gap:16px;min-width:0}
.kbi .kbi-logo--carte{flex:none;width:112px;height:60px;border-radius:10px}
.kbi .kbi-logo--carte.has-logo{padding:10px}
.kbi .kbi-logo--carte.is-initiales{background:#EDF6F5;border-color:#BEE4E1;font:700 22px/1 'Kelborne Rubik',sans-serif;color:#2D4057}
.kbi .kbi-carte__id{min-width:0}
.kbi .kbi-carte__nom{margin:0;font:700 22px/26px 'Kelborne Rubik',sans-serif;color:#203244}
.kbi .kbi-carte__nom a{color:inherit;text-decoration:none}
.kbi .kbi-carte__nom a::after{content:none}
.kbi .kbi-carte__nom a:hover{text-decoration:underline;text-decoration-color:#BEE4E1;text-decoration-thickness:3px;text-underline-offset:4px}
.kbi .kbi-carte__nom a:focus-visible{outline:3px solid #1C6870;outline-offset:2px;border-radius:4px}
.kbi .kbi-carte__zone{display:flex;align-items:flex-start;gap:6px;margin:6px 0 0;font-size:16px;line-height:22px;color:#40556B}
.kbi .kbi-carte__zone svg{flex:none;width:18px;height:18px;margin-top:2px;color:#2D4057}
.kbi .kbi-carte__types{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.kbi .kbi-carte__types li{display:inline-flex;align-items:center;height:30px;padding:0 14px;border-radius:999px;background:#FCF8EE;font:700 14px/1 'Kelborne Noto',sans-serif;color:#2D4057}
.kbi .kbi-carte__usp{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}
.kbi .kbi-carte__usp li{display:flex;align-items:center;gap:12px;font-weight:700;font-size:15px;line-height:22px;color:#2D4057}
.kbi .kbi-carte__coche{flex:none;display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:rgba(190,228,225,.55);color:#2D4057}
.kbi .kbi-carte__bas{display:flex;flex-direction:column;gap:14px;margin-top:auto;padding-top:16px;border-top:1px solid #D5DEE4}
.kbi .kbi-carte__note{display:flex;align-items:center;gap:8px;margin:0;font-size:17px;line-height:24px;color:#2D4057}
.kbi .kbi-carte__note img{display:block;width:22px;height:22px}
.kbi .kbi-carte__source{font-weight:700}
.kbi .kbi-carte__etoile{flex:none;margin-left:8px;fill:#FFC073}
.kbi .kbi-carte__note strong{font-weight:700}
.kbi .kbi-carte__btn{width:100%;min-height:48px;padding:10px 20px;font-size:16px}
/* Bouton plus doux que l'action principale : fond aqua, texte encre (comme le bouton du champ code postal des LP). */
.kbi .kbi-carte__btn{border-color:#BEE4E1;background:#BEE4E1;color:#2D4057}
.kbi .kbi-carte__btn:hover{border-color:#A8D5D1;background:#A8D5D1;color:#2D4057}
.kbi .kbi-carte__btn:focus-visible{outline:3px solid #1C6870;outline-offset:2px}
.kbi .kbi-grille{align-items:stretch}
@media (max-width:700px){
.kbi .kbi-carte{gap:14px;padding:18px}
.kbi .kbi-carte__tete{align-items:flex-start;gap:14px}
.kbi .kbi-logo--carte{width:88px;height:48px}
.kbi .kbi-logo--carte.has-logo{padding:6px}
.kbi .kbi-logo--carte.is-initiales{font-size:18px}
.kbi .kbi-carte__nom{font-size:20px;line-height:24px}
.kbi .kbi-carte__zone{font-size:15px}
.kbi-fiche .kbi-autres .kbi-carte{flex:0 0 86%}
}

/* Cartes : moins de gras pour une lecture plus légère (8 octobre 2026). Seuls le nom, la note et le bouton restent en gras. */
.kbi .kbi-carte__zone{font-size:15px;line-height:21px;color:#53667A}
.kbi .kbi-carte__types li{height:28px;padding:0 12px;font:400 13px/1 'Kelborne Noto',sans-serif;color:#40556B}
.kbi .kbi-carte__usp{gap:8px}
.kbi .kbi-carte__usp li{gap:10px;font-weight:400;font-size:15px;line-height:22px;color:#40556B}
.kbi .kbi-carte__coche{width:24px;height:24px}
.kbi .kbi-carte__coche svg{width:13px;height:13px}
.kbi .kbi-carte__note{gap:6px;font-size:15px;line-height:22px;color:#53667A}
.kbi .kbi-carte__note img{width:18px;height:18px}
.kbi .kbi-carte__source{font-weight:400}
.kbi .kbi-carte__etoile{width:16px;height:16px;margin-left:6px}
.kbi .kbi-carte__note strong{color:#2D4057}
.kbi .kbi-carte__btn{min-height:44px;font-size:15px}

/* Fiche : espace entre « Autres installateurs dans la même région » et les cartes. */
.kbi-fiche .kbi-autres .kbi-h2+.kbi-grille,.kbi-fiche .kbi-autres .kbi-h2+.kbi-autres__vide{margin-top:24px}
@media (max-width:700px){
.kbi-fiche .kbi-autres .kbi-h2+.kbi-grille,.kbi-fiche .kbi-autres .kbi-h2+.kbi-autres__vide{margin-top:16px}
}

/* ---------- Page « Partenariats et transparence » (8 octobre 2026) : base du guide du hub ---------- */
.kbi-transparence .kbi-tete--transparence{padding:56px var(--kbi-g) 56px}
.kbi-transparence .kbi-tete--transparence.is-layout-flow>*,.kbi-transparence .kbi-guide .kb-s.is-layout-flow>*{margin-block-start:0}
.kbi-transparence .kbi-h1{max-width:none;margin:16px 0 20px;font-size:46px;line-height:52px}
.kbi-transparence .kbi-chapo{max-width:760px;margin:0;color:#40556B}
.kbi-transparence .kbi-chapo a,.kbi-transparence .kb-s a:not(.wp-element-button){color:#2D4057;font-weight:700;text-decoration:underline;text-decoration-color:#BEE4E1;text-decoration-thickness:3px;text-underline-offset:4px}
.kbi-transparence .kbi-bref{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:40px 0 0;padding:0;list-style:none}
.kbi-transparence .kbi-bref li{display:flex;flex-direction:column;gap:6px;padding:72px 20px 22px;border:1px solid #D5DEE4;border-radius:16px;background:#fff no-repeat 20px 20px/40px 40px;font-size:15px;line-height:23px;color:#53667A}
.kbi-transparence .kbi-bref strong{font:700 17px/23px 'Kelborne Rubik',sans-serif;color:#203244}
.kbi-transparence .kbi-bref .is-gratuit{background-image:url(../images/picto-gratuit.svg)}
.kbi-transparence .kbi-bref .is-remunere{background-image:url(../images/icone-accompagnement.svg)}
.kbi-transparence .kbi-bref .is-comparateur{background-image:url(../images/icone-borne.svg)}
.kbi-transparence .kbi-bref .is-annuaire{background-image:url(../images/picto-installateurs-verifies.svg)}
.kbi-transparence .kbi-sommaire{position:sticky;top:24px}
.kbi-transparence .kb-s h3{margin-top:28px}
.kbi-transparence .kb-s code{padding:1px 6px;border-radius:6px;background:#EDF6F5;font-size:14px}
.kbi-transparence .kbi-contact{margin:24px 0;padding:28px;border-radius:16px;background:#EDF6F5}
.kbi-transparence .kbi-contact.is-layout-flow>*{margin-block-start:0}
.kbi-transparence .kbi-contact__titre{font:700 22px/28px 'Kelborne Rubik',sans-serif;color:#203244}
.kbi-transparence .kbi-contact__texte{margin-top:6px !important;color:#40556B}
.kbi-transparence .kbi-contact__boutons{margin-top:18px !important}
.kbi-transparence .kbi-contact .wp-element-button{display:inline-flex;align-items:center;min-height:52px;padding:0 28px;border:0;border-radius:999px;background:#2D4057;color:#fff;font:700 16px/1 'Kelborne Noto',sans-serif;text-decoration:none}
.kbi-transparence .kbi-contact .wp-element-button:hover{background:#203244;color:#fff}
@media (max-width:1100px){
.kbi-transparence .kbi-bref{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:1023px){
.kbi-transparence .kbi-sommaire{position:static}
.kbi-transparence .kbi-h1{font-size:40px;line-height:46px}
}
@media (max-width:700px){
.kbi-transparence .kbi-tete--transparence{padding:28px var(--kbi-g) 32px}
.kbi-transparence .kbi-h1{margin:12px 0 14px;font-size:30px;line-height:36px}
.kbi-transparence .kbi-bref{grid-template-columns:minmax(0,1fr);gap:10px;margin-top:24px}
.kbi-transparence .kbi-bref li{padding:16px 16px 16px 72px;background-position:16px 18px;background-size:40px 40px}
.kbi-transparence .kbi-contact{padding:22px 20px}
.kbi-transparence .kbi-contact .wp-element-button{width:100%;justify-content:center}
}
.kbi-transparence .kbi-tete--transparence.is-layout-flow>.kbi-h1{margin:0 0 20px}
.kbi-transparence .kbi-tete--transparence.is-layout-flow>.kbi-bref{max-width:none;width:100%;margin-top:40px}
.kbi-transparence .kb-s .kbi-contact a.wp-element-button{color:#fff;text-decoration:none}
@media (max-width:700px){
.kbi-transparence .kbi-tete--transparence.is-layout-flow>.kbi-h1{margin:0 0 14px}
.kbi-transparence .kbi-tete--transparence.is-layout-flow>.kbi-bref{margin-top:24px}
}

/* ---------- Pages département (8 octobre 2026) : liens vers les autres départements de la région ---------- */
.kbi .kbi-deps__region{margin:24px 0 56px}
@media (max-width:700px){
.kbi .kbi-deps__region{margin:16px 0 40px}
}
/* Grandes villes (pages ville) : espace avant « Installateurs par région ». */
.kbi .kbi-regions .kbi-villes-fr{margin-bottom:48px}
@media (max-width:700px){
.kbi .kbi-regions .kbi-villes-fr{margin-bottom:32px}
}

/* ---------- Page « Mentions légales » (8 octobre 2026) : base de la page transparence ---------- */
.kbi-mentions .kbi-legal>.kb-s:first-of-type{border-top:0;padding-top:0}
.kbi-mentions .kbi-legal__liste{display:grid;gap:0;margin:16px 0 0;border:1px solid #D5DEE4;border-radius:16px;overflow:hidden}
.kbi-mentions .kbi-legal__liste>div{display:grid;grid-template-columns:220px minmax(0,1fr);gap:16px;padding:14px 20px;border-top:1px solid #D5DEE4}
.kbi-mentions .kbi-legal__liste>div:first-child{border-top:0}
.kbi-mentions .kbi-legal__liste dt{font-weight:700;color:#203244}
.kbi-mentions .kbi-legal__liste dd{margin:0;color:#40556B;overflow-wrap:anywhere}
.kbi-mentions .kbi-legal__rappel{margin:0 0 24px;padding:14px 18px;border-radius:12px;background:#FFF1DC;color:#203244;font-size:15px;line-height:23px}
.kbi-mentions .kbi-legal__rappel a{font-weight:700;color:#203244}
@media (max-width:700px){
.kbi-mentions .kbi-legal__liste>div{grid-template-columns:minmax(0,1fr);gap:2px;padding:12px 16px}
}
.kbi-mentions .kbi-guide>.kbi-legal~.kb-s:first-of-type{border-top:1px solid #D5DEE4;padding-top:72px}
.kbi-mentions .kbi-legal>.kb-s:last-child{padding-bottom:72px}
@media (max-width:700px){
.kbi-mentions .kbi-guide>.kbi-legal~.kb-s:first-of-type{padding-top:40px}
.kbi-mentions .kbi-legal>.kb-s:last-child{padding-bottom:40px}
}

/* ---------- Page « Données personnelles » (8 octobre 2026) : base des mentions légales ---------- */
.kbi-donnees .kbi-legal--responsable>.kb-s{padding-bottom:72px}
@media (max-width:700px){
.kbi-donnees .kbi-legal--responsable>.kb-s{padding-bottom:40px}
}
.kbi-transparence .kbi-bref .is-donnees{background-image:url(../images/picto-donnees-protegees.svg)}

/* ---------- Guides (8 octobre 2026) : base de la page transparence ---------- */
.kbi-transparence .kbi-contact a.wp-element-button{color:#fff;text-decoration:none}
.kbi-guide-page .kbi-guide>.kb-s:last-child{padding-bottom:8px}
.kbi-guide-page .kbi-etapes{display:flex;flex-direction:column;gap:12px;margin:0;padding-left:24px}
.kbi-guide-page .kbi-etapes li{padding-left:6px;font-size:17px;line-height:28px;color:#40556B}
.kbi-guide-page .kbi-etapes li::marker{font-weight:700;color:#2D4057}
.kbi-guide-page .kbi-etapes strong{color:#2D4057}
.kbi-guide-page .kbi-guide-faq details{border-bottom:1px solid #D5DEE4;padding:16px 0}
.kbi-guide-page .kbi-guide-faq details:first-of-type{border-top:1px solid #D5DEE4}
.kbi-guide-page .kbi-guide-faq summary{cursor:pointer;font-weight:700;color:#203244;font-size:17px;line-height:26px}
.kbi-guide-page .kbi-guide-faq details p{margin-top:10px;color:#40556B}
.kbi-guides .kbi-guides__liste{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none}
.kbi-guides .kbi-guides__carte{padding:28px;border:1px solid #D5DEE4;border-radius:16px;background:#fff}
.kbi-guides .kbi-guides__carte h2{margin:0 0 10px;font:700 21px/28px 'Kelborne Rubik',sans-serif}
.kbi-guides .kbi-guides__carte h2 a{color:#203244;text-decoration:underline;text-decoration-color:#BEE4E1;text-decoration-thickness:3px;text-underline-offset:5px}
.kbi-guides .kbi-guides__carte p{color:#53667A}
.kbi-guides .kbi-guides__suite{margin:40px 0 72px;color:#40556B}
.kbi-guides .kbi-guides__suite a{font-weight:700;color:#2D4057;text-decoration:underline;text-decoration-color:#BEE4E1;text-decoration-thickness:3px;text-underline-offset:4px}
@media (max-width:1023px){
.kbi-guides .kbi-guides__liste{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:700px){
.kbi-guide-page .kbi-guide>.kb-s:last-child{padding-bottom:0}
}
.kbi-guide-page .kbi-etapes{list-style:decimal outside}
.kbi-guide-page .kbi-etapes li{display:list-item}
.kbi-guides .kbi-guides__liste{margin-bottom:40px !important}
.kbi-guides .kbi-guides__suite{margin-top:0}

/* Guides : bandeau final de l'accueil (kelborne/bandeau-accueil) après le guide, même largeur que sur l'accueil. */
/* Code technique (rel="sponsored") dans les pages éditoriales : police du texte, pastille aqua très clair. */
.kb-maq .kbi-transparence code,.kb-maq .kbi-mentions code{padding:1px 6px;border-radius:6px;background:#EDF6F5;font:inherit;font-size:.94em;color:#2D4057}

/* Survol des encarts cliquables, le même partout (8 octobre 2026) : contour encre et ombre légère,
   d'une épaisseur de 2 px, comme les cartes de choix de l'accueil et la carte « Meilleur choix ». */
.kbi .kbi-carte,.kbi .kbi-voisine,.kbi-guides .kbi-guides__carte,.kbi .kbi-cout-carte{transition:border-color .15s,box-shadow .15s}
.kbi .kbi-carte:hover,.kbi .kbi-cout-carte:hover,.kbi .kbi-voisine:hover,.kbi-guides .kbi-guides__carte:hover{border-color:#2D4057;box-shadow:0 0 0 1px #2D4057,0 12px 32px rgba(45,64,87,.1)}
/* Pas de filet entre les sections (8 octobre 2026) : contenu SEO du hub, des régions, départements et villes, guides, pages éditoriales. */
.kbi .kbi-contenu,.kbi .kbi-regions,.kbi-mentions .kbi-guide>.kbi-legal~.kb-s:first-of-type{border-top:0}
.kbi-guide-page .kbi-guide>.kbi-guide-faq{border-top:1px solid #D5DEE4}
/* Encarts cliquables en entier (9 octobre 2026), comme les cartes de choix de l'accueil : le lien principal s'étend à
   toute la carte (pseudo-élément) ; le nom de l'installateur garde son propre lien vers la fiche. */
.kbi .kbi-carte,.kbi .kbi-guides__carte,.kbi .kbi-voisine{position:relative}
.kbi .kbi-carte__btn::before,.kbi .kbi-guides__carte h2 a::before,.kbi .kbi-voisine>a::before{content:"";position:absolute;inset:0;border-radius:16px}
.kbi .kbi-carte__nom a{position:relative;z-index:1}
/* Fiche : indice en libellé (« EXCELLENT »), jauge et note Kelborne sur 5 (maquette du 9 octobre 2026). */
.kbi-fiche .kbi-avis__note{display:flex;align-items:center;gap:10px;margin:6px 0 0;font:400 24px/30px 'Kelborne Noto',sans-serif;color:#53667A}
.kbi-fiche .kbi-avis__note strong{font:700 38px/40px 'Kelborne Rubik',sans-serif;color:#203244}
.kbi-fiche .kbi-avis__etoile{flex:none;fill:#FFC073}
@media (max-width:700px){
.kbi-fiche .kbi-avis__indice{grid-template-columns:auto minmax(0,1fr);gap:12px 28px}
.kbi-fiche .kbi-avis__lib{grid-column:1/3;grid-row:1}
.kbi-fiche .kbi-avis__indice img{grid-row:2;grid-column:1;width:110px;height:37px}
.kbi-fiche .kbi-avis__note{grid-row:2;grid-column:2;margin:0}
.kbi-fiche .kbi-avis__note strong{font-size:34px;line-height:36px}
}
/* Logos des installateurs sans marge intérieure (9 octobre 2026) : l'image remplit son cadre (cartes de l'annuaire, fiches). */
.kbi .kbi-logo.has-logo,.kbi .kbi-logo--l.has-logo,.kbi .kbi-logo--carte.has-logo,.kbi-fiche .kbi-logo--l.has-logo{padding:0}
.kbi .kbi-logo.has-logo img{width:100%;height:100%}
/* Logos au format des fichiers fournis (600 × 160 px, 15:4, 10 octobre 2026) : cadre de même proportion, le logo le remplit
   (même rendu pour tous les installateurs). Cartes : logo au-dessus du nom ; fiches : 210 × 56 px. */
.kbi .kbi-carte__tete{flex-direction:column;align-items:flex-start;gap:14px}
.kbi .kbi-logo--carte{width:180px;height:48px}
.kbi .kbi-logo--l,.kbi-fiche .kbi-logo--l{width:210px;height:56px}
.kbi .kbi-logo.has-logo img{object-fit:contain}
@media (max-width:700px){
.kbi .kbi-carte__tete{gap:12px}
.kbi .kbi-logo--carte{width:150px;height:40px}
.kbi .kbi-logo--l,.kbi-fiche .kbi-logo--l{width:150px;height:40px}
}

/* Transparence : encadré tant qu'aucun partenariat rémunéré n'est conclu (kelborne_partenariats_actifs()). */
.kbi-transparence .kbi-provisoire{margin-top:16px;padding:14px 18px;border-radius:12px;background:#EDF6F5;color:#2D4057;font-size:16px;line-height:26px}
/* En-tête du hub, des régions, départements et villes (maquette du 23 octobre 2026,
   design-source/installateurs/maquette-hub-lieu.webp) : titre, chapô, champ « Ville, code postal ou
   département » (pastille du type de lieu), projet en trois boutons ; puis titre de la liste,
   « Lieu · Projet » et « Rechercher par nom ». Remplace chiffres et « Affinez votre recherche ». */
.kbi .kbi-tete--lieu{padding:48px var(--kbi-g) 40px}
.kbi-tete--lieu .kbi-h1{max-width:560px;margin:0 0 12px;font-size:44px;line-height:1.15}
.kbi-tete--lieu .kbi-chapo{margin:0 0 36px;font-size:18px;line-height:28px}
.kbi .kbi-lieu{display:grid;grid-template-columns:minmax(260px,440px) minmax(0,1fr);gap:24px 32px;align-items:start;max-width:1010px;margin:0}
.kbi .kbi-lieu__label{display:block;margin:0 0 10px;padding:0;font:700 16px/22px 'Kelborne Noto',sans-serif;color:#203244}
.kbi .kbi-lieu__label span{margin-left:8px;font-size:13px;font-weight:400;color:#53667A}
.kbi .kbi-lieu__champ{position:relative;display:flex;align-items:center;gap:12px;height:50px;padding:0 14px 0 18px;border:1.5px solid #2D4057;border-radius:14px;background:#fff}
.kbi .kbi-lieu__champ:focus-within{outline:3px solid #1C6870;outline-offset:2px}
.kbi .kbi-lieu__champ>svg{flex:none;width:22px;height:22px;color:#2D4057}
.kbi .kbi-lieu__champ input{flex:1 1 auto;min-width:0;height:100%;padding:0;border:0;background:none;font:400 17px/1 'Kelborne Noto',sans-serif;color:#2D4057;outline:0}
.kbi .kbi-lieu__champ.has-type input{flex:0 1 auto;width:auto;field-sizing:content;min-width:2ch;max-width:60%}
.kbi .kbi-lieu__champ input::placeholder{color:#53667A}
.kbi .kbi-lieu__champ input::-webkit-calendar-picker-indicator{display:none!important}
.kbi .kbi-lieu__type{flex:none;padding:3px 10px;border-radius:999px;background:#BEE4E1;color:#2D4057;font:400 14px/20px 'Kelborne Noto',sans-serif}
.kbi .kbi-lieu__effacer{flex:none;display:flex;margin-left:auto;padding:4px;color:#2D4057}
.kbi .kbi-lieu__ko{margin:8px 0 0;font-size:14px;line-height:20px;color:#9B2C2C}
.kbi .kbi-lieu__projets{min-width:0;margin:0;padding:0;border:0}
.kbi .kbi-lieu__tete{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.kbi .kbi-lieu__tete legend{float:left}
.kbi .kbi-lieu__tous{margin:0 0 10px;padding:0;border:0;background:none;font:400 14px/22px 'Kelborne Noto',sans-serif;color:#53667A;cursor:pointer}
.kbi .kbi-lieu__tous[aria-pressed="false"]{text-decoration:underline;text-decoration-color:#BEE4E1;text-decoration-thickness:2px;text-underline-offset:3px;color:#2D4057}
.kbi .kbi-lieu__choix{clear:both;display:flex;flex-wrap:wrap;gap:8px}
.kbi .kbi-lieu__projet{flex:1 1 auto;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:50px;padding:0 18px 0 14px;border:1px solid #D5DEE4;border-radius:10px;background:#fff;font:700 15px/1 'Kelborne Noto',sans-serif;color:#2D4057;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.kbi .kbi-lieu__projet img{flex:none;width:32px;height:32px}
.kbi .kbi-lieu__projet:hover{border-color:#2D4057}
.kbi .kbi-lieu__projet[aria-pressed="true"]{border-color:#2D4057;box-shadow:0 0 0 1px #2D4057;background:#EDF6F5}
.kbi .kbi-lieu__projet:focus-visible,.kbi .kbi-lieu__tous:focus-visible{outline:3px solid #1C6870;outline-offset:2px}
.kbi-hub .kbi-liste__tete--lieu{align-items:flex-end;margin-bottom:28px}
.kbi-hub .kbi-liste__tete--lieu .kbi-h2{font-size:30px;line-height:38px}
.kbi-hub .kbi-liste__tete--lieu .kbi-liste__resume{margin-top:2px;font-size:17px;line-height:26px}
.kbi .kbi-nom{position:relative}
.kbi .kbi-nom summary{display:inline-flex;align-items:center;gap:8px;color:#2D4057;font-size:16px;line-height:24px;cursor:pointer;list-style:none}
.kbi .kbi-nom summary::-webkit-details-marker{display:none}
.kbi .kbi-nom summary span{text-decoration:underline;text-decoration-color:#2D4057;text-decoration-thickness:1px;text-underline-offset:4px}
.kbi .kbi-nom__champ{display:flex;gap:8px;margin-top:10px}
.kbi .kbi-nom__champ input{flex:1 1 auto;min-width:0;height:44px;padding:0 16px;border:1.5px solid #2D4057;border-radius:999px;font:400 16px 'Kelborne Noto',sans-serif;color:#2D4057;background:#fff}
.kbi .kbi-nom__ok{flex:none;height:44px;padding:0 18px;border:0;border-radius:999px;background:#2D4057;color:#fff;font:700 15px 'Kelborne Noto',sans-serif;cursor:pointer}
@media (max-width:1000px){
	.kbi .kbi-lieu{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:700px){
	.kbi .kbi-tete--lieu{padding:28px var(--kbi-g) 28px}
	.kbi-tete--lieu .kbi-h1{margin-bottom:12px;font-size:32px;line-height:1.13}
	.kbi-tete--lieu .kbi-chapo{margin-bottom:28px;font-size:18px;line-height:26px}
	.kbi .kbi-lieu{gap:24px}
	.kbi .kbi-lieu__champ{height:52px}
	.kbi .kbi-lieu__tous{font-size:13px}
	.kbi .kbi-lieu__choix{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
	.kbi .kbi-lieu__projet{flex-direction:column;justify-content:center;gap:8px;height:96px;padding:8px 4px;border-radius:8px;font-size:14px}
	.kbi .kbi-lieu__projet img{width:40px;height:40px}
	.kbi-hub .kbi-liste__tete--lieu{align-items:flex-start;gap:12px;margin-bottom:20px}
	.kbi-hub .kbi-liste__tete--lieu .kbi-h2{font-size:26px;line-height:32px}
	.kbi-hub .kbi-liste__tete--lieu .kbi-liste__resume{font-size:17px}
}

/* Logos sans cadre (23 octobre 2026) : plus de bordure autour des logos des installateurs ; les initiales gardent leur cadre. */
.kbi .kbi-logo.has-logo{border:0;border-radius:0;background:none}
.kbi .kbi-logo.has-logo img{object-position:left center}
