/*
Theme Name: Estimation Nantes Editorial
Description: Thème léger qui unifie uniquement les contenus hors plugins avec la charte du moteur de recherche.
Version: 2.3.0
Author: Estimation-Nantes.fr
Text Domain: estimation-nantes-editorial
Requires at least: 6.4
Requires PHP: 7.4
*/

:root{
  --enme-blue:#123f9f;
  --enme-blue2:#1747c9;
  --enme-teal:#0a9e9a;
  --enme-text:#17233b;
  --enme-title:#0b2f70;
  --enme-muted:#69758b;
  --enme-line:#e4e9f1;
  --enme-bg:#f6f8fc;
}

/*
 * Règle absolue de cette version :
 * aucun sélecteur CSS ne vise les classes d'un plugin.
 * Les styles s'appliquent seulement aux classes .en-site-* ajoutées
 * aux textes éditoriaux hors plugins par assets/editorial-only.js.
 */

.en-site-editorial-block{
  width:min(1180px,calc(100% - 40px))!important;
  max-width:1180px!important;
  margin:34px auto!important;
  padding:0!important;
  box-sizing:border-box!important;
  font-family:Arial,Helvetica,sans-serif!important;
}

.en-site-editorial-card{
  padding:26px 28px!important;
  background:#fff!important;
  border:1px solid var(--enme-line)!important;
  border-radius:16px!important;
  box-shadow:0 7px 22px rgba(23,40,74,.045)!important;
}

.en-site-editorial-block + .en-site-editorial-block{
  margin-top:38px!important;
}

/* Titre principal éditorial = même hiérarchie que "Trouvez un bien à Nantes". */
.en-site-title-main{
  margin:0 0 9px!important;
  color:var(--enme-title)!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(30px,3vw,42px)!important;
  line-height:1.08!important;
  font-weight:700!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

/* Sous-titres principaux hors plugins. */
.en-site-title-section{
  margin:0 0 10px!important;
  color:var(--enme-title)!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:28px!important;
  line-height:1.12!important;
  font-weight:700!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

.en-site-title-sub{
  margin:18px 0 9px!important;
  color:#172d57!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:21px!important;
  line-height:1.25!important;
  font-weight:700!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

.en-site-copy{
  margin:0 0 10px!important;
  color:var(--enme-muted)!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:15px!important;
  line-height:1.60!important;
  font-weight:400!important;
  font-style:normal!important;
  letter-spacing:0!important;
}

.en-site-copy:last-child{margin-bottom:0!important}

.en-site-copy strong{
  color:var(--enme-text)!important;
  font-weight:700!important;
}

.en-site-copy a{
  color:var(--enme-blue2)!important;
  font-weight:800!important;
  text-decoration:none!important;
}
.en-site-copy a:hover{text-decoration:underline!important}

/* Petit repère identique à la logique du kicker du moteur. */
.en-site-kicker{
  display:block!important;
  margin:0 0 7px!important;
  color:var(--enme-teal)!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:12px!important;
  line-height:1.3!important;
  font-weight:800!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}

/* Trait graphique très discret, même palette que le moteur. */
.en-site-rule{
  display:block!important;
  width:40px!important;
  height:3px!important;
  margin:0 0 15px!important;
  border-radius:999px!important;
  background:var(--enme-teal)!important;
}

/* FAQ hors plugin. */
.en-site-faq-title{
  text-align:center!important;
  padding:30px 28px!important;
  background:#fff!important;
  border:1px solid var(--enme-line)!important;
  border-radius:16px!important;
  box-shadow:0 7px 22px rgba(23,40,74,.045)!important;
}
.en-site-faq-title .en-site-rule{
  margin-left:auto!important;
  margin-right:auto!important;
}

.en-site-faq-list{
  width:min(1180px,calc(100% - 40px))!important;
  max-width:1180px!important;
  margin:0 auto 38px!important;
  box-sizing:border-box!important;
  font-family:Arial,Helvetica,sans-serif!important;
}
.en-site-faq-list details{
  margin:0!important;
  background:#fff!important;
  border:0!important;
  border-bottom:1px solid var(--enme-line)!important;
  border-radius:0!important;
}
.en-site-faq-list summary{
  padding:17px 8px!important;
  color:var(--enme-text)!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:14px!important;
  line-height:1.4!important;
  font-weight:600!important;
  cursor:pointer!important;
}
.en-site-faq-list details > *:not(summary){
  padding:0 8px 17px!important;
  color:var(--enme-muted)!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:14px!important;
  line-height:1.55!important;
}

/* Carte des liens de fin de page hors plugin. */
.en-site-bottom-links{
  width:min(1180px,calc(100% - 40px))!important;
  max-width:1180px!important;
  margin:34px auto 46px!important;
  padding:14px!important;
  box-sizing:border-box!important;
  background:#fff!important;
  border:1px solid var(--enme-line)!important;
  border-radius:14px!important;
  box-shadow:0 7px 22px rgba(23,40,74,.045)!important;
}

/* Un ancien wrapper devenu vide peut être masqué, uniquement s'il ne contient aucun plugin. */
.en-site-empty{display:none!important}

/* Fallback si le plugin Header/Footer global est désactivé. */
.en-theme-fallback-header{background:#fff;border-bottom:1px solid var(--enme-line)}
.en-theme-fallback-header-inner{
  width:min(1180px,calc(100% - 32px));
  min-height:70px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  font-family:Arial,Helvetica,sans-serif;
}
.en-theme-fallback-brand{color:var(--enme-title);text-decoration:none;font-weight:800}
.en-theme-fallback-nav{display:flex;gap:16px;flex-wrap:wrap}
.en-theme-fallback-nav a{color:var(--enme-text);text-decoration:none;font-size:13px;font-weight:700}
.en-theme-fallback-footer{
  padding:24px 16px;
  background:#fff;
  border-top:1px solid var(--enme-line);
  color:var(--enme-muted);
  text-align:center;
  font:12px/1.5 Arial,Helvetica,sans-serif;
}

@media(max-width:760px){
  .en-site-editorial-block,
  .en-site-faq-list,
  .en-site-bottom-links{
    width:calc(100% - 24px)!important;
  }
  .en-site-editorial-card{padding:20px 18px!important}
  .en-site-title-main{font-size:32px!important}
  .en-site-title-section{font-size:25px!important}
  .en-site-title-sub{font-size:19px!important}
  .en-site-copy{font-size:15px!important}
}
