/* Feuille des sites préparés par RankX (gabarit du lot 4). Couleur du site : --c (remplacée à l'assemblage). */
:root{--c:#1B6B4E;--c-fonce:#1e3a8a;--encre:#14213d;--texte:#2b3445;--doux:#5b6475;--ligne:#e2e6ee;--fond:#f6f8fb;--blanc:#fff;--surligne:#fde68a;--r:14px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--texte);background:var(--blanc);font-size:17px;line-height:1.65}
img{max-width:100%;height:auto;display:block}
a{color:var(--c)}
a:focus-visible,button:focus-visible{outline:3px solid var(--c);outline-offset:2px}
.sx-wrap{max-width:1120px;margin:0 auto;padding:0 16px}
.sx-saut{position:absolute;left:-9999px}.sx-saut:focus{left:16px;top:8px;background:#fff;padding:8px;z-index:9}
/* entête */
.sx-tete{border-bottom:1px solid var(--ligne);background:var(--blanc)}
.sx-tete .sx-wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;flex-wrap:wrap}
.sx-logo{font-weight:800;font-size:1.15rem;color:var(--encre);text-decoration:none;display:inline-flex;align-items:center;min-height:44px;min-width:44px;padding:7px 0}
/* lot 11j : bouton Menu (sous 768 px, quand le petit script du site est actif) */
.sx-menu-btn{display:none;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0 16px;background:var(--blanc);color:var(--encre);border:2px solid var(--encre);border-radius:10px;font:inherit;font-weight:700;cursor:pointer}
.sx-menu-btn:hover{border-color:var(--c);color:var(--c)}
.sx-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 18px}
.sx-nav a{color:var(--encre);text-decoration:none;font-weight:600;font-size:.95rem;display:inline-block;padding:10px 0}
.sx-nav a:hover{color:var(--c)}
/* bandeau photo */
.sx-hero{position:relative;background:var(--encre);color:#fff}
.sx-hero img{width:100%;height:360px;object-fit:cover;opacity:.55}
.sx-hero-in{position:absolute;inset:0;display:flex;align-items:flex-end}
.sx-hero-in .sx-wrap{width:100%;padding-bottom:28px}
.sx-hero h1{color:#fff}
.sx-entete-simple{background:var(--fond);border-bottom:1px solid var(--ligne);padding:28px 0 20px}
.sx-ariane ol{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-wrap:wrap;gap:6px;font-size:.88rem;color:var(--doux)}
.sx-ariane li+li:before{content:"›";margin-right:6px}
.sx-ariane a{color:var(--doux)}
.sx-hero .sx-ariane ol,.sx-hero .sx-ariane a{color:#e5e7eb}
/* contenu */
main h1{font-size:clamp(1.7rem,4vw,2.4rem);line-height:1.2;margin:0 0 8px;color:var(--encre)}
.sx-hero main h1,.sx-hero h1{color:#fff}
main h1 mark,.sx-mark{background:linear-gradient(transparent 55%,var(--surligne) 55%);color:inherit;padding:0 2px}
.sx-contenu{padding-top:32px;padding-bottom:8px}
.sx-contenu article{max-width:760px}
.sx-contenu h2{font-size:1.45rem;line-height:1.3;margin:2em 0 .5em;color:var(--encre)}
.sx-contenu h3{font-size:1.15rem;margin:1.5em 0 .4em;color:var(--encre)}
.sx-contenu table{border-collapse:collapse;width:100%;margin:1em 0;font-size:.95rem;display:block;overflow-x:auto}
.sx-contenu th,.sx-contenu td{border:1px solid var(--ligne);padding:8px 10px;text-align:left;vertical-align:top}
.sx-figure{margin:0 0 24px}
.sx-figure img{border-radius:var(--r)}
.rx-simule{background:#fff7ed;border:1px solid #fdba74;border-radius:10px;padding:10px 14px;font-size:.95rem}
.maj{color:var(--doux);font-size:.95rem}
/* tuiles */
.sx-tuiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin:24px 0}
.sx-tuile{display:block;border:1px solid var(--ligne);border-radius:var(--r);padding:18px;text-decoration:none;color:var(--encre);background:var(--blanc)}
.sx-tuile:hover{border-color:var(--c)}
.sx-tuile b{display:block;font-size:1.05rem;margin-bottom:4px}
.sx-tuile span{color:var(--doux);font-size:.95rem}
/* appel à l'action et formulaire */
.sx-appel{background:var(--fond);border:1px solid var(--ligne);border-radius:var(--r);padding:20px;margin:32px 0;max-width:760px}
.sx-appel p{margin:0 0 12px}
.sx-btn{display:inline-block;background:var(--c);color:#fff;text-decoration:none;font-weight:700;border:0;border-radius:10px;padding:13px 22px;font-size:1rem;min-height:44px;cursor:pointer}
.sx-btn:hover{background:var(--c-fonce)}
.sx-formulaire{border:1px solid var(--ligne);border-radius:var(--r);padding:20px;margin:32px 0;max-width:760px;background:var(--blanc)}
.sx-formulaire .sx-titre-form{font-size:1.25rem;font-weight:800;color:var(--encre);margin:0 0 12px}
.sx-champ{margin:0 0 14px}
.sx-champ label{display:block;font-weight:600;margin-bottom:4px}
.sx-champ input,.sx-champ textarea{width:100%;font:inherit;padding:11px 12px;border:1px solid #b8c0cc;border-radius:8px;min-height:44px}
.sx-case{display:flex;gap:10px;align-items:flex-start;margin:0 0 14px;font-size:.95rem}
.sx-case input{width:22px;height:22px;margin-top:2px;flex:none}
.sx-piege{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.sx-mention-form{font-size:.9rem;color:var(--doux);margin:12px 0 0}
/* formulaire rédigé par la conformité (balises simples) et messages d'erreur sans script */
.sx-formulaire form p{margin:0 0 14px}
.sx-formulaire form label{font-weight:600}
.sx-formulaire form input[type=text],.sx-formulaire form input[type=email],.sx-formulaire form input[type=tel],.sx-formulaire form textarea{display:block;width:100%;font:inherit;padding:11px 12px;border:1px solid #b8c0cc;border-radius:8px;min-height:44px;margin-top:4px}
.sx-formulaire form input[type=checkbox]{width:22px;height:22px;vertical-align:middle;margin-right:6px}
.sx-formulaire form button{display:inline-block;background:var(--c);color:#fff;font-weight:700;border:0;border-radius:10px;padding:13px 22px;font-size:1rem;min-height:44px;cursor:pointer}
.sx-formulaire .form-info{font-size:.9rem;color:var(--doux)}
.sx-erreur{display:none;background:#fef2f2;border:1px solid #fca5a5;color:#7f1d1d;border-radius:10px;padding:10px 14px;margin:0 0 14px}
.sx-erreur:target{display:block}
/* lot 11j : hauteur de l'iframe du formulaire partenaire selon la largeur d'écran (formulaire du partenaire mesuré le 07/11/2026 par largeur de cadre : 790 px à 246, 753 à 301, 709 à 326, 677 de 360 à 420, 660 de 526 à 560, 617 à partir de 600 ; le cadre fait la largeur d'écran moins 74 px sous 768) ; aucun script, aucune hauteur fixe sans règle mobile */
.sx-formulaire iframe.sx-iframe-form{display:block;width:100%;max-width:100%;border:0;height:660px}
@media (max-width:700px){.sx-formulaire iframe.sx-iframe-form{height:770px}}
@media (max-width:400px){.sx-formulaire iframe.sx-iframe-form{height:850px}}
/* page Cookies : bouton Gérer mes cookies (lot 11j) */
button[data-cookies]{display:inline-flex;align-items:center;justify-content:center;background:var(--c);color:#fff;font:inherit;font-weight:700;border:0;border-radius:10px;padding:13px 22px;min-height:44px;min-width:44px;cursor:pointer}
button[data-cookies]:hover{background:var(--c-fonce)}
/* FAQ */
.sx-faq{max-width:760px;margin:40px 0}
.sx-faq details{border:1px solid var(--ligne);border-radius:10px;margin:0 0 10px;background:var(--blanc)}
.sx-faq summary{cursor:pointer;font-weight:700;padding:14px 16px;color:var(--encre);min-height:44px}
.sx-faq details>div{padding:0 16px 14px}
.sx-faq .sx-titre-faq{font-size:1.45rem;color:var(--encre);font-weight:800;margin:0 0 12px}
/* mention France Rénov' : lisible, distincte, jamais repliée (14 px au moins, opacité 1) */
.rx-france-renov{max-width:1120px;margin:24px auto;padding:14px 18px;border:1px solid #d7dce5;border-left:4px solid #000091;border-radius:6px;background:#f5f7fb;color:#1b1b35;font-size:15px;line-height:1.5;opacity:1}
.rx-france-renov p{margin:0}
.rx-france-renov a{color:#000091;font-weight:600}
/* pied de page */
.sx-pied{margin-top:48px;background:var(--encre);color:#d6dbe5;font-size:.95rem}
.sx-pied .sx-wrap{padding-top:28px;padding-bottom:28px}
.sx-pied a{color:#fff}
.sx-pied ul{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-wrap:wrap;gap:6px 18px}
.sx-pied li a{display:inline-flex;align-items:center;justify-content:center;padding:0 6px;min-height:44px;min-width:44px}
.sx-pied p{margin:6px 0}
.sx-pied p a{display:inline-flex;align-items:center;min-height:44px}
@media (max-width:640px){
  /* tableaux des pages légales empilés (rien à faire défiler de côté) */
  .sx-contenu table.vp-ptable--stack,.sx-contenu table.vp-ptable--stack tbody,.sx-contenu table.vp-ptable--stack tr,.sx-contenu table.vp-ptable--stack td{display:block;width:100%}
  .sx-contenu table.vp-ptable--stack thead{position:absolute;left:-9999px}
  .sx-contenu table.vp-ptable--stack tr{border:1px solid var(--ligne);border-radius:10px;margin:0 0 10px;padding:6px 0}
  .sx-contenu table.vp-ptable--stack td{border:0;padding:4px 12px}
  .sx-contenu table.vp-ptable--stack td[data-label]:before{content:attr(data-label) " : ";font-weight:700;color:var(--encre)}
}
@media (max-width:600px){
  body{font-size:16px}
  .sx-hero img{height:260px}
  .sx-contenu{padding-top:22px}
  .sx-btn{width:100%;text-align:center}
}
/* lot 11j : menu replié derrière un bouton sous 768 px, pour que le titre de la page tienne dans le premier écran */
@media (max-width:767px){
  .sx-tete .sx-wrap{position:relative;min-height:56px;flex-wrap:nowrap}
  .sx-js .sx-menu-btn{display:inline-flex}
  .sx-js .sx-nav ul{display:none;position:absolute;left:0;right:0;top:100%;z-index:20;flex-direction:column;flex-wrap:nowrap;gap:0;background:var(--blanc);border:1px solid var(--ligne);border-top:0;border-radius:0 0 var(--r) var(--r);box-shadow:0 12px 24px rgba(20,33,61,.12);padding:4px 16px}
  .sx-js .sx-nav ul.sx-ouvert{display:flex}
  .sx-js .sx-nav li a{display:flex;align-items:center;min-height:44px;padding:0}
  .sx-entete-simple{padding:14px 0 12px}
  .sx-ariane ol{margin:0 0 4px}
}
