/*
 Theme Name: Astra Child
 Template: astra
 Version: 1.0
*/

/* ============================================================
   GOOGLE FONTS
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;600;700&family=Barlow+Condensed:wght@700;800;900&display=swap');

/* ============================================================
   HEADER — blanc, liens navy, bouton orange, sticky
   ============================================================ */
.site-header {
  background-color: #ffffff !important;
  border-bottom: 2px solid #F4F6F9 !important;
  box-shadow: 0 2px 12px rgba(27,58,107,0.08) !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 999 !important;
}
.main-header-menu .menu-item a {
  color: #1B3A6B !important;
  font-weight: 600 !important;
}
.main-header-menu .menu-item a:hover { color: #F97316 !important; }
.site-title a { color: #1B3A6B !important; }
.site-description { color: #64748b !important; }
.ast-header-button-1 .ast-custom-button {
  background-color: #F97316 !important;
  border-color: #F97316 !important;
  color: #ffffff !important;
  border-radius: 6px !important;
  font-weight: 700 !important;
}
.ast-header-html-2 { color: #1B3A6B !important; font-weight: 700 !important; }

/* ============================================================
   TYPOGRAPHIE GLOBALE
   ============================================================ */
body { font-family: 'Barlow', sans-serif !important; }
h1,h2,h3,h4,h5,h6 {
  font-family: 'Barlow Condensed', sans-serif !important;
  letter-spacing: -0.3px !important;
}

/* ============================================================
   COULEURS GLOBALES
   ============================================================ */
a { color: #F97316; }
a:hover { color: #ea6a0a; }

/* ============================================================
   BOUTONS — texte blanc au survol
   ============================================================ */
.lpp-btn-o:hover,
.lpp-btn-o:focus {
  background: #ea6a0a !important;
  color: white !important;
}
.wpforms-submit:hover,
.wpforms-submit:focus {
  background: #ea6a0a !important;
  color: white !important;
}
.ast-custom-button:hover { color: #ffffff !important; }

/* ============================================================
   WPFORMS — styles formulaire
   ============================================================ */
.wpforms-submit {
  background-color: #F97316 !important;
  border-color: #F97316 !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  padding: 12px 28px !important;
  border-radius: 6px !important;
  width: 100% !important;
}
.wpforms-field input,
.wpforms-field textarea,
.wpforms-field select {
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 6px !important;
  padding: 10px 14px !important;
  font-size: 14px !important;
  color: #1A1A1A !important;
  width: 100% !important;
}
.wpforms-field input:focus,
.wpforms-field textarea:focus { border-color: #1B3A6B !important; outline: none !important; }
.wpforms-field label { font-weight: 600 !important; color: #1A1A1A !important; font-size: 13px !important; }

/* ============================================================
   GALERIE WORDPRESS/ELEMENTOR
   ============================================================ */
.gallery-item { overflow: hidden !important; }
.gallery-icon {
  position: relative !important;
  padding-bottom: 100% !important;
  height: 0 !important;
  overflow: hidden !important;
}
.gallery-icon img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 8px !important;
}

/* ============================================================
   CPT NOS-SERVICES — pleine largeur
   ============================================================ */
.single-nos-services #content .ast-container,
.single-villes #content .ast-container {
  display: block !important;
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
.single-nos-services #primary,
.single-villes #primary {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  float: none !important;
}
.single-nos-services .ast-primary-header-bar .ast-container,
.single-villes .ast-primary-header-bar .ast-container {
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 40px !important;
  display: flex !important;
}

/* ============================================================
   CPT PLOMBIER (villes) — pleine largeur
   ============================================================ */
.single-plombier #content .ast-container {
  display: block !important;
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
.single-plombier #primary {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  float: none !important;
}
.single-plombier .ast-primary-header-bar .ast-container {
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 40px !important;
  display: flex !important;
}

/* ============================================================
   ARCHIVE NOS-SERVICES — pleine largeur
   ============================================================ */
.post-type-archive-nos-services #content .ast-container {
  display: block !important;
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
.post-type-archive-nos-services #primary {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  float: none !important;
}
.post-type-archive-nos-services .ast-primary-header-bar .ast-container {
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 40px !important;
  display: flex !important;
}

/* ============================================================
   ELEMENTOR — restaurer pleine largeur
   ============================================================ */
.elementor-template-full-width #content .ast-container {
  max-width: 100% !important;
  padding: 0 !important;
  display: block !important;
}

/* ============================================================
   CORRECTIONS TITRES
   ============================================================ */
.lpp-hero h1,
.lpp-title,
.lpp-cta h2,
.lpp-zones h2,
.lpp-card h3 {
  letter-spacing: -0.5px !important;
  font-family: 'Barlow Condensed', sans-serif !important;
}

/* ============================================================
   FOOTER
   ============================================================ */
.site-footer { background-color: #122848 !important; color: rgba(255,255,255,0.6) !important; }

/* ============================================================
   RESPONSIVE MOBILE
   ============================================================ */
@media (max-width: 768px) {
  .site-header { padding: 0 16px !important; }
}


.page-template-page-plombier #content .ast-container {
  display: block !important;
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
.page-template-page-plombier #primary {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  float: none !important;
}

/* Page template plombier — pleine largeur */
.page-template-page-plombier #content .ast-container {
  display: block !important;
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
.page-template-page-plombier #primary {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  float: none !important;
}
.page-template-page-plombier .ast-primary-header-bar .ast-container {
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 40px !important;
  display: flex !important;
}


/* Page 404 — pleine largeur */
.error404 #content .ast-container {
  display: block !important;
  max-width: 100% !important;
  padding: 0 !important;
}
.error404 #primary {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  float: none !important;
}