
/* ==========================================================
   ESTIMATION NANTES LANDING V1.1.2
   Charte reprise STRICTEMENT du Bloc Vente V1.0.6
   ========================================================== */

/* Houzez : suppression du reliquat de colonne/sidebar */
body.ensl-home-page-v117 #sidebar,
body.ensl-home-page-v117 .sidebar,
body.ensl-home-page-v117 .sidebar-wrap,
body.ensl-home-page-v117 .widget-area,
body.ensl-home-page-v117 [class*="sidebar-wrap"],
body.ensl-home-page-v117 [class*="sidebar-col"],
body.ensl-home-page-v117 [class*="col-"][class*="sidebar"]{
  display:none!important;
  width:0!important;
  max-width:0!important;
  flex:0 0 0!important;
  padding:0!important;
  margin:0!important;
}

/* Tous les conteneurs principaux de la page deviennent pleine largeur */
body.ensl-home-page-v117 .content-area,
body.ensl-home-page-v117 .main-content,
body.ensl-home-page-v117 .article-detail-wrap,
body.ensl-home-page-v117 .page-content,
body.ensl-home-page-v117 .entry-content,
body.ensl-home-page-v117 .bt-content-wrap,
body.ensl-home-page-v117 [class*="bt-content-wrap"],
body.ensl-home-page-v117 .page-main-wrap,
body.ensl-home-page-v117 .main-wrap,
body.ensl-home-page-v117 main{
  width:100%!important;
  max-width:100%!important;
  flex:0 0 100%!important;
  float:none!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* BASE EXACTE .enbv */
.ensl-v116{
  --navy:#062b59;
  --teal:#0498aa;
  --green:#08775f;
  --red:#f0333c;
  --purple:#6339b7;
  --orange:#ee9e00;
  max-width:1180px;
  margin:38px auto;
  padding:0 16px;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  color:#0b1f43;
  background:#fff;
}
.ensl-v116 *{box-sizing:border-box}
.ensl-v116 .ensl-wrap{width:100%;margin:0 auto}

/* En-tête */
.ensl-v116 .ensl-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin:0 0 20px;
}
.ensl-v116 .ensl-brand img{
  display:block;
  max-width:260px;
  max-height:52px;
  width:auto;
  height:auto;
}
.ensl-v116 .ensl-brand strong{
  color:var(--navy);
  font-size:12px;
  font-weight:800;
}
.ensl-v116 .ensl-free{
  padding:8px 11px;
  border:1px solid #dde4ec;
  border-radius:8px;
  background:#fff;
  box-shadow:0 8px 24px rgba(0,20,50,.06);
}
.ensl-v116 .ensl-free strong,
.ensl-v116 .ensl-free span{display:block}
.ensl-v116 .ensl-free strong{
  color:var(--navy);
  font-size:11px;
  font-weight:800;
}
.ensl-v116 .ensl-free span{
  color:#657186;
  font-size:10px;
}

/* Exactement la hiérarchie .enbv-heading */
.ensl-v116 .ensl-main-intro{text-align:center;padding:0 0 18px}
.ensl-v116 .ensl-main h1{
  font-size:clamp(30px,4vw,50px);
  line-height:1.05;
  margin:0 0 12px;
  font-weight:800;
  color:#0b1f43;
}
.ensl-v116 .ensl-main h1 span{color:var(--teal)}
.ensl-v116 .ensl-lead{
  font-size:17px;
  line-height:1.45;
  margin:0;
  color:#0b1f43;
}

/* Zone image conservée, plus discrète */
.ensl-v116 .ensl-visual-zone{
  padding:28px 24px 18px;
  border-radius:14px;
  background:
    linear-gradient(rgba(255,255,255,.50),rgba(255,255,255,.50)),
    var(--ensl-hero);
  background-size:cover;
  background-position:center;
}

/* Cartes : mêmes valeurs que .enbv-card */
.ensl-v116 .ensl-cards{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  max-width:800px;
  margin:0 auto;
}
.ensl-v116 .ensl-card{
  position:relative;
  border:1px solid #dce2e9;
  border-radius:13px;
  background:#fff;
  padding:24px 22px 20px;
  box-shadow:0 8px 25px rgba(10,25,50,.07);
  display:flex;
  flex-direction:column;
}
.ensl-v116 .ensl-icon{
  margin:5px auto 10px;
  width:62px;
  height:62px;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:34px;
  background:#eff7f3;
  color:var(--green);
}
.ensl-v116 .ensl-card-brs .ensl-icon{
  background:#f3efff;
  color:var(--purple);
}
.ensl-v116 .ensl-card h2{
  text-align:center;
  font-size:25px;
  margin:0 0 3px;
  line-height:1.15;
  font-weight:400;
}
.ensl-v116 .ensl-card-classic h2{color:var(--green)}
.ensl-v116 .ensl-card-brs h2{color:var(--purple)}
.ensl-v116 .ensl-card p{
  text-align:center;
  margin:0 0 18px;
  font-size:15px;
  line-height:1.4;
  color:#0b1f43;
}
.ensl-v116 .ensl-btn{
  display:block!important;
  text-decoration:none!important;
  color:#fff!important;
  text-align:center!important;
  border-radius:7px!important;
  padding:13px 11px!important;
  font-weight:800!important;
  font-size:14px!important;
  line-height:1.3!important;
  margin-top:auto;
  border:0!important;
}
.ensl-v116 .ensl-blue{background:var(--green)!important}
.ensl-v116 .ensl-green{background:var(--purple)!important}

/* Même écriture que .enbv-now / .hand */
.ensl-v116 .ensl-note{
  font-family:"Comic Sans MS",cursive;
  color:var(--teal);
  font-size:14px;
  line-height:1.35;
  margin:13px auto 0;
  width:max-content;
  max-width:100%;
  text-shadow:none;
}

/* Réassurance = .reassure */
.ensl-v116 .ensl-trust{background:#fff}
.ensl-v116 .ensl-trust-grid{
  display:flex;
  justify-content:space-around;
  gap:12px;
  flex-wrap:wrap;
  background:#eef8fb;
  color:#08758d;
  border-radius:12px;
  padding:15px;
  margin-top:18px;
  font-size:12px;
  font-weight:600;
}
.ensl-v116 .ensl-trust-grid>div{
  flex:1 1 210px;
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
}
.ensl-v116 .ensl-trust-grid b{
  display:grid;
  place-items:center;
  width:26px;
  height:26px;
  flex:0 0 26px;
  border-radius:50%;
  background:var(--teal);
  color:#fff;
}
.ensl-v116 .ensl-trust-grid p{
  margin:0;
  color:#08758d;
  font-size:12px;
  line-height:1.35;
}

/* Pourquoi : mêmes dimensions de carte / ombre / typographie */
.ensl-v116 .ensl-why{
  padding:28px 0 0;
  background:#fff;
}
.ensl-v116 .ensl-why h2{
  text-align:center;
  font-size:22px;
  margin:0 0 12px;
  color:#0b1f43;
  font-weight:700;
}
.ensl-v116 .ensl-why h2 span{color:var(--teal)}
.ensl-v116 .ensl-why-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}
.ensl-v116 .ensl-why-grid article{
  position:relative;
  border:1px solid #dce2e9;
  border-radius:13px;
  background:#fff;
  padding:20px 16px;
  box-shadow:0 8px 25px rgba(10,25,50,.07);
  text-align:center;
}
.ensl-v116 .ensl-why-grid article>div{
  margin:5px auto 10px;
  width:44px;
  height:44px;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:20px;
  background:#eff7f3;
  color:var(--green);
}
.ensl-v116 .ensl-why-grid article:nth-child(2)>div{
  background:#fff3de;
  color:var(--orange);
}
.ensl-v116 .ensl-why-grid article:nth-child(3)>div{
  background:#f3efff;
  color:var(--purple);
}
.ensl-v116 .ensl-why-grid article:nth-child(4)>div{
  background:#eef8fb;
  color:var(--teal);
}
.ensl-v116 .ensl-why-grid h3{
  text-align:center;
  font-size:14px;
  margin:0 0 6px;
  color:#0b1f43;
  font-weight:800;
}
.ensl-v116 .ensl-why-grid p{
  text-align:center;
  font-size:12px;
  line-height:1.4;
  margin:0;
  color:#657186;
}

/* Les coordonnées/signature ne doivent jamais apparaître dans ce composant */
.ensl-v116 .ensl-advisor,
.ensl-v116 .en-landing-signature-card{display:none!important}

/* Mobile = comportement du Bloc Vente */
@media(max-width:900px){
  .ensl-v116 .ensl-cards{grid-template-columns:1fr}
  .ensl-v116 .ensl-why-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .ensl-v116{
    width:100%;
    max-width:100%;
    padding-left:12px;
    padding-right:12px;
    overflow:visible;
  }
  .ensl-v116 .ensl-main h1{font-size:31px}
  .ensl-v116 .ensl-lead{font-size:15px}
  .ensl-v116 .ensl-cards{grid-template-columns:minmax(0,1fr)}
  .ensl-v116 .ensl-card{padding-left:18px;padding-right:18px}
  .ensl-v116 .ensl-trust-grid{display:grid;grid-template-columns:1fr}
  .ensl-v116 .ensl-why-grid{grid-template-columns:1fr}
}


/* V1.1.3 — accueil estimation autonome :
   masque uniquement le header/menu Houzez de la page qui contient la landing.
   Les autres pages du site ne sont pas concernées. */
body.ensl-home-page-v117 header#header-section,
body.ensl-home-page-v117 #header-section,
body.ensl-home-page-v117 .header-main-wrap,
body.ensl-home-page-v117 .header-mobile,
body.ensl-home-page-v117 .mobile-header-main-wrap,
body.ensl-home-page-v117 .houzez-header-main,
body.ensl-home-page-v117 .nav-mobile,
body.ensl-home-page-v117 .header-desktop,
body.ensl-home-page-v117 [class*="header-main-wrap"],
body.ensl-home-page-v117 [class*="mobile-header"]{
  display:none!important;
}

/* Supprime un éventuel espace réservé par le header fixe/sticky. */
body.ensl-home-page-v117{
  padding-top:0!important;
}
body.ensl-home-page-v117 .page-title-wrap:first-child{
  margin-top:0!important;
}


/* V1.1.4 : le JS ajoute cette classe dès que la landing existe réellement.
   On ne dépend donc plus de la détection WordPress/Elementor du shortcode. */
html.ensl-force-landing-header-off header,
body.ensl-force-landing-header-off header,
html.ensl-force-landing-header-off #header-section,
body.ensl-force-landing-header-off #header-section,
html.ensl-force-landing-header-off .header-main-wrap,
body.ensl-force-landing-header-off .header-main-wrap,
html.ensl-force-landing-header-off .header-mobile,
body.ensl-force-landing-header-off .header-mobile,
html.ensl-force-landing-header-off .mobile-header-main-wrap,
body.ensl-force-landing-header-off .mobile-header-main-wrap,
html.ensl-force-landing-header-off .houzez-header-main,
body.ensl-force-landing-header-off .houzez-header-main,
html.ensl-force-landing-header-off .nav-mobile,
body.ensl-force-landing-header-off .nav-mobile,
html.ensl-force-landing-header-off .header-desktop,
body.ensl-force-landing-header-off .header-desktop{
  display:none!important;
}

body.ensl-force-landing-header-off{
  padding-top:0!important;
}


/* V1.1.5 — masque le titre WordPress/Houzez de la page
   ("Accueil – Estimation Nantes") uniquement quand la landing est présente. */
html.ensl-force-landing-header-off .page-title-wrap,
body.ensl-force-landing-header-off .page-title-wrap,
html.ensl-force-landing-header-off .page-title,
body.ensl-force-landing-header-off .page-title,
html.ensl-force-landing-header-off .entry-title,
body.ensl-force-landing-header-off .entry-title,
html.ensl-force-landing-header-off h1.page-title,
body.ensl-force-landing-header-off h1.page-title,
html.ensl-force-landing-header-off .page-header,
body.ensl-force-landing-header-off .page-header{
  display:none!important;
  margin:0!important;
  padding:0!important;
  height:0!important;
  min-height:0!important;
}

body.ensl-home-page-v117 .footer-wrap,body.ensl-home-page-v117 #footer-section,body.ensl-home-page-v117 .footer-bottom-wrap,body.ensl-home-page-v117 footer.site-footer{display:none!important}
.ensl-v116 .ensl-brand img{width:auto!important;height:auto!important;max-width:220px!important;max-height:46px!important;object-fit:contain!important}
