*{box-sizing:border-box}body.ah{margin:0;background:white;color:#172e3d;font:16px/1.6 Inter,Arial,sans-serif}.ah a{color:inherit}.wrap{width:min(1150px,calc(100% - 42px));margin:auto}.top{background:#112b3c;color:white}.topin{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px 0}.logo{font-weight:900;text-decoration:none;letter-spacing:.04em}.logo span{color:#e4ba72}.phone{border:1px solid #be984f;border-radius:9px;padding:8px 13px;text-decoration:none;color:#f2c77b!important;font-weight:800}.hero{background:linear-gradient(120deg,#102839,#1a4058);color:white;padding:66px 0}.cols{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start}.kicker,.eyebrow{color:#d3a552;font-size:12px;letter-spacing:.14em;font-weight:800}.hero h1{font-size:clamp(34px,4.2vw,55px);line-height:1.12;letter-spacing:-.03em;margin:20px 0}.intro>p:not(.kicker):not(.fine){font-size:18px;color:#dce6ed}.btn{display:inline-block;margin-top:14px;padding:14px 23px;border-radius:10px;background:#d6a957;color:#122839!important;text-decoration:none;font-weight:900}.fine{font-size:12px!important;color:#dce4eb}.sim{background:white;color:#173040;border-radius:17px;overflow:hidden;box-shadow:0 20px 50px #081a2860}.simhead{display:grid;gap:6px;background:#102b40;color:white;padding:23px 25px}.simhead small{color:#ebbf72;letter-spacing:.14em}.simhead strong{font-size:21px}.simb{padding:24px}.simb h2{font-size:21px;margin:0 0 17px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:11px}.choices button{font:600 14px/1.5 Arial,sans-serif;text-align:left;padding:15px 11px;border:1px solid #dce5eb;background:#f8fafb;border-radius:10px;cursor:pointer;color:#152e3d}.choices button:hover,.choices button.active{background:#fff7e8;border-color:#c79a49}.result{margin-top:18px;background:#eef3f6;padding:18px;border-radius:12px}.result h3{margin:0 0 9px}.result p{margin:8px 0}.result a{display:inline-block;font-weight:800;margin-top:8px}.dark{color:#677682}.section{padding:64px 0}.section.soft{background:#f3f6f9}.section h2,.cta h2{font-size:clamp(26px,3vw,36px);line-height:1.25;margin:8px 0 23px;letter-spacing:-.025em}.section p{max-width:940px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:21px}.cards article{background:white;border:1px solid #dce5e9;border-radius:14px;padding:24px;box-shadow:0 4px 18px #0e293508}.cards h3{margin:0 0 10px;font-size:19px}.cards strong{font-size:36px;color:#b68b3e}.cards p{color:#526876;font-size:14px}.steps{grid-template-columns:repeat(4,1fr)}.steps b{color:#c19548;font-size:26px}.two{grid-template-columns:1fr 1fr}.note{margin-top:18px;font-size:13px;color:#657786}.section details{padding:16px 0;border-bottom:1px solid #dce5ea}.section summary{font-weight:800;cursor:pointer}.cta{background:#14334a;color:white;text-align:center;padding:61px 0}.cta p{color:#d3e0e8}footer{padding:25px 0;background:#0b2130;color:#d0dce4}.foot{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}footer a{color:#ebc480!important}@media(max-width:850px){.cols,.cards,.two{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.hero{padding:42px 0}.section{padding:45px 0}}@media(max-width:520px){.wrap{width:calc(100% - 30px)}.choices,.steps{grid-template-columns:1fr}.simb{padding:19px}.logo{font-size:13px}.phone{font-size:12px;white-space:nowrap}}

/* sgl-habitat-wizard-217 : parcours interactif */
.ah .ah-step {
  display:inline-block;
  font-size:11px;
  font-weight:800;
  letter-spacing:.1em;
  color:#ac7a27;
  margin-bottom:9px;
}
.ah .ah-stage h3 {
  margin:0 0 12px;
  color:#142f41;
  font-size:21px;
}
.ah .ah-stage h4 {
  margin:18px 0 5px;
  font-size:14px;
  color:#142f41;
}
.ah .ah-stage p {
  margin:7px 0;
  font-size:14px;
  line-height:1.6;
}
.ah .ah-answer-buttons {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:17px;
}
.ah .ah-answer-buttons button,
.ah .ah-final-actions button {
  cursor:pointer;
  border:1px solid #ccdae2;
  border-radius:9px;
  padding:12px;
  background:#fff;
  color:#193549;
  font-weight:700;
}
.ah .ah-answer-buttons button:hover,
.ah .ah-final-actions button:hover {
  border-color:#c39540;
  background:#fff7e8;
}
.ah .ah-warning {
  background:#fff6e5;
  border-left:3px solid #d1a24e;
  border-radius:5px;
  padding:12px;
}
.ah .ah-final-actions {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}
.ah .ah-final-call {
  display:inline-flex!important;
  align-items:center;
  padding:12px 15px;
  border-radius:9px;
  text-decoration:none;
  background:#d3a14c;
  color:#132c3d!important;
  font-size:13px;
  font-weight:800;
}
@media(max-width:520px){
  .ah .ah-answer-buttons{grid-template-columns:1fr}
}


/* sgl-comparateurs-220 */
.ah .ah-provider-grid{
 display:grid;
 grid-template-columns:repeat(4,minmax(0,1fr));
 gap:18px;
 margin:26px 0 32px;
}
.ah .ah-provider-card{
 background:#fff;
 border:1px solid #dce5eb;
 border-radius:15px;
 padding:22px;
 box-shadow:0 6px 22px rgba(16,40,57,.05);
 display:flex;
 flex-direction:column;
 gap:14px;
}
.ah .ah-provider-head{
 display:flex;
 align-items:center;
 gap:13px;
 min-height:64px;
}
.ah .ah-provider-head img{
 width:58px;
 height:58px;
 object-fit:contain;
 background:#fff;
 border:1px solid #ebeff2;
 border-radius:12px;
 padding:7px;
 flex-shrink:0;
}
.ah .ah-provider-head h3{
 margin:0;
 font-size:18px;
 line-height:1.25;
}
.ah .ah-provider-card p{
 margin:0;
 font-size:14px;
 line-height:1.65;
 flex-grow:1;
 color:#435768;
}
.ah .ah-provider-card a{
 font-size:13px;
 font-weight:800;
 color:#185a80;
}
.ah .ah-logo-fallback{
 display:grid;
 place-items:center;
 width:58px;
 height:58px;
 background:#173c56;
 color:white;
 border-radius:12px;
 font-weight:800;
}
.ah .ah-card-heading{margin-top:42px!important}
@media(max-width:1020px){
 .ah .ah-provider-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:570px){
 .ah .ah-provider-grid{grid-template-columns:1fr}
}

/* sgl-habitat-wizard-221 */
.ah .ah-protection-choices{grid-template-columns:1fr}
.ah .ah-protection-choices button{text-align:left}
.ah .ah-stage h4{margin:17px 0 5px}
.ah .ah-final-actions{align-items:center}


/* sgl-maillage-local-227 */
.ah .ah-local-grid{
 display:grid;
 grid-template-columns:repeat(4,minmax(0,1fr));
 gap:11px;
 margin:16px 0 28px;
}
.ah .ah-local-grid a{
 display:block;
 padding:12px 14px;
 background:#fff;
 border:1px solid #dbe6ed;
 border-radius:10px;
 color:#174768;
 font-weight:700;
 text-decoration:none;
 font-size:14px;
}
.ah .ah-local-grid a:hover{
 border-color:#c99b49;
 color:#102e43;
 background:#fff9ee;
}
@media(max-width:950px){
 .ah .ah-local-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
 .ah .ah-local-grid{grid-template-columns:1fr 1fr;gap:8px}
 .ah .ah-local-grid a{font-size:12px;padding:10px}
}


/* sgl-extensions-230 */
.ah .ah-provider-card[hidden]{display:none!important}
.ah .ah-compare-toggle{display:block;margin:0 auto 32px;padding:12px 22px;border:1px solid #c99b49;border-radius:10px;background:#fff8e9;color:#173c56;font-weight:800;cursor:pointer}
.ah .ah-compare-toggle:hover{background:#f4e5c9}


/* sgl-premium-cards-234 */
.ah .ah-provider-grid{
 display:grid;
 grid-template-columns:repeat(3,minmax(0,1fr));
 gap:20px;
 align-items:stretch;
 margin-top:28px;
 margin-bottom:24px;
}
.ah .ah-provider-card{
 min-width:0;
 display:flex;
 flex-direction:column;
 gap:16px;
 padding:24px;
 border:1px solid #dce5eb;
 border-radius:16px;
 background:#fff;
 box-shadow:0 5px 20px rgba(17,46,65,.045);
 transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease;
}
.ah .ah-provider-card:hover{
 border-color:#d3b06c;
 box-shadow:0 12px 30px rgba(17,46,65,.09);
 transform:translateY(-2px);
}
.ah .ah-provider-head{
 display:flex;
 align-items:center;
 gap:15px;
 min-height:70px;
}
.ah .ah-provider-head img{
 box-sizing:border-box;
 flex:0 0 68px;
 width:68px;
 height:68px;
 padding:9px;
 object-fit:contain;
 border:1px solid #e7ecf0;
 background:#fff;
 border-radius:13px;
}
.ah .ah-logo-fallback{
 flex:0 0 68px;
 width:68px;
 height:68px;
 border-radius:13px;
}
.ah .ah-provider-head h3{
 margin:0;
 font-size:18px;
 line-height:1.3;
 font-weight:800;
 overflow-wrap:anywhere;
 color:#17374a;
}
.ah .ah-provider-card p{
 margin:0;
 color:#43596a;
 font-size:14px;
 line-height:1.8;
 flex:1;
 overflow-wrap:break-word;
}
.ah .ah-provider-card>a{
 align-self:flex-start;
 display:inline-flex;
 align-items:center;
 min-height:38px;
 padding:8px 12px;
 margin-top:auto;
 border:1px solid #d5e3ed;
 border-radius:9px;
 background:#f6fafc;
 color:#175270;
 font-size:13px;
 line-height:1.35;
 font-weight:800;
 text-decoration:none;
 transition:background .2s ease,border-color .2s ease;
}
.ah .ah-provider-card>a:hover{
 background:#e9f4fa;
 border-color:#9bc3d8;
}
.ah .ah-provider-card>a:focus-visible,
.ah .ah-compare-toggle:focus-visible{
 outline:3px solid #c99b49;
 outline-offset:3px;
}
.ah .ah-provider-card[hidden]{display:none!important}
.ah .ah-compare-toggle{
 display:block;
 margin:10px auto 38px;
 padding:13px 23px;
 min-height:44px;
 border:1px solid #d1a14c;
 border-radius:11px;
 background:#fff8e9;
 color:#17374a;
 font-size:14px;
 font-weight:800;
 cursor:pointer;
}
.ah .ah-compare-toggle:hover{
 background:#f8e9cc;
}
@media(max-width:1020px){
 .ah .ah-provider-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
 .ah .ah-provider-grid{grid-template-columns:1fr;gap:14px}
 .ah .ah-provider-card{padding:19px;gap:12px}
 .ah .ah-provider-head{min-height:62px}
 .ah .ah-provider-head img,
 .ah .ah-logo-fallback{width:60px;height:60px;flex-basis:60px}
 .ah .ah-provider-head h3{font-size:17px}
 .ah .ah-provider-card p{font-size:14px;line-height:1.7}
 .ah .ah-compare-toggle{width:100%;max-width:340px}
}
@media(prefers-reduced-motion:reduce){
 .ah .ah-provider-card,
 .ah .ah-provider-card>a{transition:none}
 .ah .ah-provider-card:hover{transform:none}
}



/* sgl-wizard-design-235 : simulateur premium */
.ah #ah-result{
 min-width:0;
 overflow-wrap:anywhere;
}
.ah #ah-result .ah-stage{
 font-size:15px;
 line-height:1.65;
 color:#354f60;
}
.ah #ah-result .ah-step{
 display:inline-flex;
 align-items:center;
 padding:6px 10px;
 margin-bottom:14px;
 border-radius:999px;
 background:#f7ecd8;
 color:#855d19;
 font-size:11px;
 font-weight:800;
 letter-spacing:.08em;
}
.ah #ah-result .ah-stage h3{
 margin:0 0 14px;
 font-size:clamp(19px,2vw,23px);
 line-height:1.35;
 color:#112f43;
}
.ah #ah-result .ah-stage h4{
 margin:21px 0 8px;
 padding-left:12px;
 border-left:3px solid #cca052;
 font-size:15px;
 line-height:1.45;
 color:#16374c;
}
.ah #ah-result .ah-stage p{
 margin:9px 0;
 font-size:14px;
 line-height:1.75;
 color:#415b6b;
 overflow-wrap:anywhere;
}
.ah #ah-result .ah-answer-buttons{
 display:grid;
 grid-template-columns:repeat(2,minmax(0,1fr));
 gap:10px;
 margin-top:18px;
}
.ah #ah-result .ah-protection-choices{
 grid-template-columns:1fr;
}
.ah #ah-result .ah-answer-buttons button{
 min-width:0;
 min-height:48px;
 padding:12px 14px;
 border:1px solid #d5e1e8;
 border-radius:10px;
 background:#fff;
 color:#17394e;
 font:inherit;
 font-size:13px;
 font-weight:750;
 line-height:1.5;
 text-align:left;
 cursor:pointer;
 transition:background .15s ease,border-color .15s ease;
}
.ah #ah-result .ah-answer-buttons button:hover{
 background:#fff7e7;
 border-color:#c99b49;
}
.ah #ah-result .ah-answer-buttons button:focus-visible,
.ah #ah-result .ah-final-actions button:focus-visible,
.ah #ah-result .ah-final-call:focus-visible{
 outline:3px solid #c99b49;
 outline-offset:3px;
}
.ah #ah-result .ah-warning{
 margin-top:22px;
 padding:14px 16px;
 border-left:4px solid #c99b49;
 border-radius:9px;
 background:#fff6e6;
 color:#55452c;
 font-size:13px;
 line-height:1.7;
}
.ah #ah-result .ah-final-actions{
 display:grid;
 grid-template-columns:minmax(0,1fr);
 gap:10px;
 margin-top:20px;
}
.ah #ah-result .ah-final-call{
 display:flex!important;
 justify-content:center;
 align-items:center;
 width:100%;
 min-height:48px;
 padding:13px 16px;
 box-sizing:border-box;
 border-radius:10px;
 background:#d3a14c;
 color:#102b3c!important;
 font-size:14px;
 font-weight:800;
 text-align:center;
 text-decoration:none;
}
.ah #ah-result .ah-final-actions button{
 min-height:44px;
 border:1px solid #d7e2e9;
 border-radius:9px;
 background:#f7fafc;
 color:#21465c;
 font-size:13px;
 font-weight:700;
 cursor:pointer;
}
@media(max-width:600px){
 .ah #ah-result .ah-stage h3{font-size:19px}
 .ah #ah-result .ah-answer-buttons{grid-template-columns:1fr}
 .ah #ah-result .ah-stage h4{margin-top:18px}
 .ah #ah-result .ah-final-actions{gap:9px}
}
@media(prefers-reduced-motion:reduce){
 .ah #ah-result .ah-answer-buttons button{transition:none}
}



/* sgl-hero-layout-237 : equilibration desktop et mobile */
@media(min-width:901px){
 .ah .hero .wrap.cols{
  display:grid;
  grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);
  align-items:center;
  gap:clamp(28px,4vw,58px);
 }
 .ah .hero .intro{
  min-width:0;
  align-self:center;
 }
 .ah .hero .sim{
  min-width:0;
  width:100%;
  align-self:stretch;
 }
 .ah .hero .intro h1{
  max-width:14ch;
  text-wrap:balance;
 }
 .ah .hero .intro>p{
  max-width:46ch;
 }
}
@media(max-width:900px){
 .ah .hero .wrap.cols{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:26px;
  align-items:stretch;
 }
 .ah .hero .intro{
  min-width:0;
  width:100%;
 }
 .ah .hero .sim{
  min-width:0;
  width:100%;
  max-width:100%;
 }
 .ah .hero .intro h1{
  max-width:18ch;
  text-wrap:balance;
 }
}
@media(max-width:540px){
 .ah .hero .wrap.cols{gap:20px}
 .ah .hero .intro h1{
  max-width:100%;
  font-size:clamp(29px,8vw,39px);
  line-height:1.15;
 }
 .ah .hero .intro .btn{
  max-width:100%;
  white-space:normal;
  text-align:center;
 }
 .ah .hero .sim{
  overflow:hidden;
 }
 .ah .hero .choices{
  display:grid;
  grid-template-columns:minmax(0,1fr);
 }
 .ah .hero .choices button{
  min-width:0;
  white-space:normal;
 }
}


/* sgl-finition-238 : hero et comparateurs */
@media(min-width:901px){
 .ah .hero .wrap.cols{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(28px,3.2vw,48px);
 }
 .ah .hero .intro h1{
  max-width:100%;
  text-wrap:balance;
 }
 .ah .hero .intro>p{
  max-width:52ch;
 }
}
@media(min-width:641px) and (max-width:900px){
 .ah .hero .intro h1{max-width:24ch}
}
.ah .ah-provider-grid{
 align-items:stretch;
}
.ah .ah-compare-toggle{
 margin-top:18px;
 margin-bottom:40px;
 min-height:46px;
}
@media(max-width:640px){
 .ah .hero .intro h1{max-width:100%}
 .ah .ah-compare-toggle{
  width:100%;
  max-width:340px;
 }
}


/* sgl-titres-239 : retours a la ligne harmonises */
.ah .hero .intro h1{
 max-width:100%;
 text-wrap:balance;
 overflow-wrap:normal;
 hyphens:none;
}
.ah .hero .intro h1 .ah-question-end{
 white-space:nowrap;
}
.ah #protections-bancaires h2,
.ah #comparateur-assurance-habitation h2{
 text-wrap:balance;
 overflow-wrap:normal;
 hyphens:none;
}
@media(max-width:540px){
 .ah .hero .intro h1{
  font-size:clamp(28px,7.7vw,39px);
  line-height:1.17;
 }
 .ah #protections-bancaires h2,
 .ah #comparateur-assurance-habitation h2{
  font-size:clamp(22px,6vw,29px);
  line-height:1.25;
 }
}


/* sgl-navigation-243 : etape unique */
.ah .hero .simb.ah-flow-active > h2,
.ah .hero .simb.ah-flow-active > .choices{
 display:none!important;
}
.ah #ah-result .ah-flow-back{
 display:block;
 width:100%;
 margin-top:17px;
 min-height:44px;
 padding:11px 14px;
 border:1px solid #d3e0e7;
 border-radius:10px;
 background:#fff;
 color:#173b52;
 font-size:13px;
 font-weight:800;
 cursor:pointer;
 text-align:center;
}
.ah #ah-result .ah-flow-back:hover{
 background:#edf5f9;
}
.ah #ah-result .ah-flow-back:focus-visible{
 outline:3px solid #c99b49;
 outline-offset:2px;
}
@media(max-width:900px){
 .ah .hero .sim{
  scroll-margin-top:16px;
 }
}


/* sgl-stable-hero-244 : position gauche constante */
@media(min-width:901px){
 .ah .hero .wrap.cols{
  align-items:start;
 }
 .ah .hero .intro{
  align-self:start;
  padding-top:16px;
 }
 .ah .hero .sim{
  align-self:start;
 }
}
