/* ============================================================
   CECH — custom.css (Helix + SP Page Builder 6 Pro)
   ============================================================ */
:root{
  --cech-blue-dark:#0D1B2A;
  --cech-blue:#1B263B;
  --cech-gold:#CBA135;
  --cech-white:#FFFFFF;
  --cech-gray-100:#F7F8FB;
  --cech-text:#0D1B2A;

  --container-max:1140px;
  --radius-sm:8px;
  --radius-md:14px;
  --radius-lg:20px;

  --space-1:6px;
  --space-2:10px;
  --space-3:14px;
  --space-4:18px;
  --space-5:24px;
  --space-6:32px;
  --space-7:40px;
  --space-8:60px;
  --space-9:120px;
}

/* Polices */
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;500;700&family=Montserrat:wght@600;700;800&display=swap');
body{
  font-family:'Lato',sans-serif;
  color:var(--cech-text);
  font-size:16px;
  line-height:1.6;
  background:#fff;
}
h1,h2,h3,h4,h5,h6,.sppb-addon-title{
  font-family:'Montserrat',sans-serif;
  color:var(--cech-blue-dark);
  font-weight:700;
  line-height:1.2;
  margin-top:0;
}
h1{font-size:clamp(34px,4vw,56px);}
h2{font-size:clamp(26px,3vw,36px);}
h3{font-size:clamp(20px,2.2vw,24px);}

/* Conteneur & sections */
.sppb-container,.container{ max-width:var(--container-max); }
.sppb-section, section{ padding-top:var(--space-8); padding-bottom:var(--space-8); }
.section-compact{ padding-top:var(--space-6)!important; padding-bottom:var(--space-6)!important; }
.section-hero{ padding-top:var(--space-9)!important; padding-bottom:var(--space-9)!important; }

/* Boutons */
button,.btn,.sppb-btn,a.sppb-btn{ border-radius:var(--radius-sm); transition:all .2s ease; text-decoration:none; }
.btn-primary,.sppb-btn-primary,.btn.cech-primary,.sppb-btn.cech-primary{ background:var(--cech-gold); color:#fff; border:0; }
.btn-primary:hover,.sppb-btn-primary:hover,.btn.cech-primary:hover,.sppb-btn.cech-primary:hover{ background:var(--cech-blue); color:#fff; }
.btn-outline,.cech-outline,.sppb-btn.cech-outline{ background:transparent; border:2px solid var(--cech-gold); color:var(--cech-gold); }
.btn-outline:hover,.cech-outline:hover,.sppb-btn.cech-outline:hover{ background:var(--cech-gold); color:#fff; }

/* Liens */
a{ color:inherit; text-decoration:none; }
a:hover{ color:var(--cech-gold); text-decoration:none; }

/* Héro */
.k9-hero{ position:relative; color:#fff; text-align:center; padding:var(--space-9) 0; background-size:cover; background-position:center; }
.k9-hero::before{ content:""; position:absolute; inset:0; background:rgba(13,27,42,0.80); }
.k9-hero > *{ position:relative; z-index:1; }
.k9-hero .k9-cta{ margin-top:var(--space-4); }
.k9-hero .k9-cta .sppb-btn{ margin:0 var(--space-2) var(--space-2); }

/* Valeurs */
.k9-values{ display:grid; gap:var(--space-4); grid-template-columns:repeat(5,1fr); }
.k9-value{ text-align:center; }
.k9-value .k9-icon{ width:44px; height:44px; margin:0 auto var(--space-2); border-radius:10px; background:var(--cech-gold); display:flex; align-items:center; justify-content:center; color:#fff; }

/* Offres */
.k9-pricing{ background:var(--cech-gray-100); padding:var(--space-8) 0; }
.k9-pricing-grid{ display:grid; gap:var(--space-4); grid-template-columns:repeat(4,1fr); }
.k9-card{ background:#fff; border:1px solid #e6e6e6; border-radius:var(--radius-md); padding:var(--space-5); text-align:center; }
.k9-card--highlight{ border:3px solid var(--cech-gold); }
.k9-card h3{ margin-bottom:var(--space-2); }
.k9-card .price{ font-weight:700; }
.k9-card .k9-features{ list-style:none; padding:0; margin:var(--space-2) 0 var(--space-4); }
.k9-card .k9-features li{ margin:6px 0; }

/* CTA bar */
.k9-cta-bar{ background:var(--cech-blue); color:#fff; text-align:center; padding:var(--space-6) 0; }

/* Témoignages */
.k9-testimonials{ display:grid; gap:var(--space-4); grid-template-columns:repeat(3,1fr); }
.k9-testimonial{ background:#fff; border:1px solid #e6e6e6; border-radius:var(--radius-md); padding:var(--space-5); }
.k9-testimonial p{ margin-bottom:var(--space-2); }

/* Header Helix */
#sp-header{ background:#fff; border-bottom:1px solid #eee; }
#sp-header, .sp-megamenu-parent{ height:100px; line-height:100px; }
#sp-header.header-sticky{ height:70px; line-height:70px; }
#sp-logo img{ max-height:70px; transition:max-height .2s ease; }
#sp-header.header-sticky #sp-logo img{ max-height:56px; }
/* Menu */
.sp-megamenu-parent > li > a{ color:var(--cech-blue-dark); font-weight:600; }
.sp-megamenu-parent > li > a:hover, .sp-megamenu-parent > li.active > a{ color:var(--cech-gold); }

/* Formulaires */
input[type="text"],input[type="email"],input[type="tel"],textarea,select{
  border:1px solid #dcdcdc; border-radius:var(--radius-sm); padding:12px 14px; width:100%;
}
input:focus,textarea:focus,select:focus{ outline:none; border-color:var(--cech-gold); box-shadow:0 0 0 2px rgba(203,161,53,.15); }
label{ font-weight:600; margin-bottom:6px; display:block; }
.sppb-form-group{ margin-bottom:var(--space-4); }

/* Footer */
#sp-footer{ background:var(--cech-blue-dark); color:#cfd6df; }
#sp-footer a{ color:#fff; }
#sp-footer a:hover{ color:var(--cech-gold); }

/* Utilitaires grille / alignement */
.k9-grid-2{ display:grid; grid-template-columns:repeat(2,1fr); gap:var(--space-4); }
.k9-grid-3{ display:grid; grid-template-columns:repeat(3,1fr); gap:var(--space-4); }
.k9-grid-4{ display:grid; grid-template-columns:repeat(4,1fr); gap:var(--space-4); }
.k9-grid-center{ align-items:center; }
.k9-center{ text-align:center; }
.k9-mx-auto{ margin-left:auto; margin-right:auto; }

/* Helpers couleurs */
.bg-blue-dark{ background:var(--cech-blue-dark)!important; }
.bg-blue{ background:var(--cech-blue)!important; }
.bg-gold{ background:var(--cech-gold)!important; }
.bg-gray-100{ background:var(--cech-gray-100)!important; }
.text-gold{ color:var(--cech-gold)!important; }
.text-blue-dark{ color:var(--cech-blue-dark)!important; }

/* Responsive */
@media (max-width:1200px){ .k9-pricing-grid{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:992px){
  #sp-header, .sp-megamenu-parent{ height:86px; line-height:86px; }
  #sp-header.header-sticky{ height:64px; line-height:64px; }
  .k9-values{ grid-template-columns:repeat(3,1fr); }
  .k9-testimonials{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:768px){
  .k9-pricing-grid{ grid-template-columns:repeat(2,1fr); }
  .k9-values{ grid-template-columns:repeat(2,1fr); }
  .section-hero{ padding-top:80px!important; padding-bottom:80px!important; }
}
@media (max-width:576px){
  .k9-pricing-grid{ grid-template-columns:1fr; }
  .k9-testimonials{ grid-template-columns:1fr; }
  h1{ font-size:34px; }
}

/* Finitions */
.sppb-btn-group .sppb-btn{ margin-right:var(--space-2); }
.sppb-addon-container img{ max-width:100%; height:auto; display:block; }
.sppb-row-container{ max-width:var(--container-max); margin:0 auto; }
.k9-card, .k9-testimonial{ box-shadow:0 1px 2px rgba(0,0,0,.04); }
.k9-card:hover, .k9-testimonial:hover{ box-shadow:0 6px 18px rgba(0,0,0,.08); transition:box-shadow .2s ease; }

/* ======================================
   STYLE COPYRIGHT CECH
   ====================================== */
#sp-footer {
  background-color: #0B1522 !important; /* bande sombre */
}

#sp-footer .sp-copyright {
  text-align: center;
  color: #E8EEF8 !important;            /* gris clair */
  font-size: 12px;
  padding: 14px 0;
  margin: 0;
  letter-spacing: 0.3px;
  font-family: 'Lato', 'Open Sans', sans-serif;
}

#sp-footer .sp-copyright a {
  color: #CBA135 !important;            /* doré CECH */
  text-decoration: none;
}

#sp-footer .sp-copyright a:hover {
  text-decoration: underline;
  color: #FFFFFF !important;
}


/* Style CECH pour le copyright Helix */
.sp-copyright{
  display:block !important;          /* le span se comporte comme un bloc */
  text-align:center !important;
  color:#E8EEF8 !important;          /* gris clair */
  font-size:12px !important;
  line-height:1.6 !important;
  padding:14px 0 !important;
  margin:0 !important;
  letter-spacing:.3px !important;
  font-family:'Lato','Open Sans',sans-serif !important;
}

/* Fond sombre sous le footer, selon le conteneur utilisé par ton template */
#sp-footer, 
#sp-footer-wrapper,
#sp-bottom, 
#sp-bottom-wrapper {
  background:#0B1522 !important;     /* bande sombre */
}
.sp-copyright a{
  color:#CBA135 !important;          /* doré CECH */
  text-decoration:none !important;
}
.sp-copyright a:hover{
  color:#FFFFFF !important;
  text-decoration:underline !important;
}



/* Notes d'usage classes:
   - Section Héro: ajouter "k9-hero section-hero" + background-image inline si besoin.
   - Bouton doré: ajouter "cech-primary".  Bouton contour doré: "cech-outline".
   - Valeurs: conteneur "k9-values", item "k9-value", icône "k9-icon".
   - Offres: section "k9-pricing", grille "k9-pricing-grid", carte "k9-card" (+ "k9-card--highlight" pour Gold).
*/
