
/* V8 — correctifs réels CTA + titres premium */
:root{
  --premium-gold:#d6b471;
  --premium-gold-soft:#f1deb2;
  --premium-dark:#0f1a30;
  --premium-dark-2:#16223c;
  --premium-text:#18120f;
  --premium-muted:#4f4337;
}

/* CTA devis/contact : visible partout, sans transparence */
a.cta-devis-premium,
a.cta-contact-premium,
.service-map-actions a[href*="/demande-de-devis/"],
.service-map-actions a[href*="/contact/"],
main section a.btn[href*="/demande-de-devis/"],
main section a.btn[href*="/contact/"]{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:58px !important;
  padding:16px 24px !important;
  border-radius:999px !important;
  text-align:center !important;
  text-decoration:none !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  -webkit-text-fill-color:inherit !important;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease !important;
}

a.cta-devis-premium,
.service-map-actions a[href*="/demande-de-devis/"],
main section a.btn[href*="/demande-de-devis/"]{
  background:linear-gradient(135deg,var(--premium-dark) 0%, var(--premium-dark-2) 100%) !important;
  color:#fff !important;
  border:1px solid rgba(214,180,113,.68) !important;
  box-shadow:0 16px 34px rgba(13,22,42,.24) !important;
  text-shadow:none !important;
}

a.cta-contact-premium,
.service-map-actions a[href*="/contact/"],
main section a.btn[href*="/contact/"]{
  background:linear-gradient(135deg,#f8efe0 0%, #efe1c5 100%) !important;
  color:#1b1713 !important;
  border:1px solid rgba(214,180,113,.72) !important;
  box-shadow:0 14px 28px rgba(117,90,38,.14) !important;
}

a.cta-devis-premium:hover,
a.cta-contact-premium:hover,
.service-map-actions a[href*="/demande-de-devis/"]:hover,
.service-map-actions a[href*="/contact/"]:hover,
main section a.btn[href*="/demande-de-devis/"]:hover,
main section a.btn[href*="/contact/"]:hover{
  transform:translateY(-1px) !important;
}

/* neutralise les anciens outlines pâles */
a.cta-devis-premium.btn-outline,
a.cta-contact-premium.btn-outline,
.service-map-actions .btn.btn-outline[href*="/demande-de-devis/"],
.service-map-actions .btn.btn-outline[href*="/contact/"],
main section .btn.btn-outline[href*="/demande-de-devis/"],
main section .btn.btn-outline[href*="/contact/"]{
  background:linear-gradient(135deg,var(--premium-dark) 0%, var(--premium-dark-2) 100%) !important;
  color:#fff !important;
  border:1px solid rgba(214,180,113,.68) !important;
  box-shadow:0 16px 34px rgba(13,22,42,.24) !important;
}

main section .btn.cta-contact-premium.btn-outline,
.service-map-actions .btn.cta-contact-premium.btn-outline,
main section a[href*="/contact/"].btn.btn-outline{
  background:linear-gradient(135deg,#f8efe0 0%, #efe1c5 100%) !important;
  color:#1b1713 !important;
}

.service-map-actions{gap:14px !important;}
.service-map-actions .btn,
.service-map-actions .btn.btn-outline{flex:1 1 260px !important;}

/* Titres premium réels */
main > section.hero:not(.hero-home) > h1,
main > section > h2,
.service-badges-head h2,
.service-map-head h2,
.service-semantic-head h2,
.page-visual-copy h2,
.quote-head h2,
.services-showcase-header h2,
.services-summary-final h2,
.partenaires h2,
.partenaires h3,
.section-title,
h2.main-title,
.premium-section-title,
.reservation-title{
  font-family:"Cinzel","Cormorant Garamond",Georgia,serif !important;
  font-weight:600 !important;
  letter-spacing:.01em !important;
  line-height:1.12 !important;
  color:var(--premium-text) !important;
  text-wrap:balance;
}

main > section.hero:not(.hero-home) > h1{
  font-size:clamp(2.3rem,6vw,4.2rem) !important;
  margin-bottom:14px !important;
  text-shadow:0 10px 28px rgba(0,0,0,.16) !important;
}

main > section > h2,
.service-badges-head h2,
.service-map-head h2,
.service-semantic-head h2,
.page-visual-copy h2,
.quote-head h2,
.services-showcase-header h2,
.services-summary-final h2,
.partenaires h2,
.partenaires h3,
.reservation-title{
  font-size:clamp(2rem,4.4vw,3.05rem) !important;
  margin:0 0 16px !important;
  padding:0 0 16px !important;
  position:relative !important;
}

main > section > h2::after,
.service-badges-head h2::after,
.service-map-head h2::after,
.service-semantic-head h2::after,
.page-visual-copy h2::after,
.quote-head h2::after,
.services-showcase-header h2::after,
.services-summary-final h2::after,
.partenaires h2::after,
.partenaires h3::after,
.premium-section-title::after,
.reservation-title::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:88px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--premium-gold) 0%, var(--premium-gold-soft) 100%) !important;
  box-shadow:0 8px 18px rgba(214,180,113,.22) !important;
}

main > section > h2,
.partenaires h2,
.partenaires h3,
.premium-section-title,
.services-showcase-header h2,
.services-summary-final h2,
.reservation-title{
  text-align:center !important;
}
main > section > h2::after,
.partenaires h2::after,
.partenaires h3::after,
.premium-section-title::after,
.services-showcase-header h2::after,
.services-summary-final h2::after,
.reservation-title::after{
  left:50% !important;
  transform:translateX(-50%) !important;
}

.service-map-head p,
.service-badges-head p,
.service-semantic-head p,
.page-visual-copy p,
main > section > h2 + p,
.partenaires-intro{
  color:var(--premium-muted) !important;
}

.partenaires h3,
.partenaires h2{
  max-width: 12ch;
  margin-left:auto !important;
  margin-right:auto !important;
}

@media (max-width: 760px){
  .service-map-actions .btn,
  .service-map-actions .btn.btn-outline,
  main section a.btn[href*="/demande-de-devis/"],
  main section a.btn[href*="/contact/"]{
    width:100% !important;
    max-width:100% !important;
  }
  main > section > h2,
  .service-badges-head h2,
  .service-map-head h2,
  .service-semantic-head h2,
  .page-visual-copy h2,
  .quote-head h2,
  .services-showcase-header h2,
  .services-summary-final h2,
  .partenaires h2,
  .partenaires h3,
  .premium-section-title,
  .reservation-title{
    font-size:clamp(1.85rem,8vw,2.45rem) !important;
  }
}
