
/* =====================================================
   AUDIT FINAL — 2026-05-28
   Objectifs : affichage mobile propre, 3 CTA rapides partout,
   blocs tarifs lisibles, titres respirants, sans toucher aux scripts.
   ===================================================== */
:root{
  --cb-gold:#d9bd73;
  --cb-gold-dark:#b99a4e;
  --cb-black:#0b0a08;
  --cb-cream:#fffaf0;
  --cb-text:#151515;
  --cb-muted:#4b5563;
  --cb-radius:24px;
  --header-h:96px;
}
html{scroll-behavior:smooth;}
body{overflow-x:hidden;background:#fff!important;color:var(--cb-text)!important;}
.site-header{background:linear-gradient(90deg,#050505,#16120d)!important;border-bottom:1px solid rgba(217,189,115,.25)!important;}
.site-header .header-inner{min-height:92px!important;padding:12px 22px!important;grid-template-columns:auto minmax(0,1fr) auto!important;}
.site-header .brand-logo{height:64px!important;width:64px!important;max-width:64px!important;object-fit:contain!important;}
.site-header .header-center{min-width:0!important;overflow:hidden!important;padding:0 8px!important;}
.site-header .header-center .tagline{font-family:'Cinzel',serif!important;font-size:clamp(18px,3.4vw,31px)!important;line-height:1.08!important;letter-spacing:.9px!important;color:var(--cb-gold)!important;text-transform:uppercase!important;white-space:normal!important;text-align:center!important;overflow:visible!important;}
.site-header .header-center .subline{font-family:'Cinzel',serif!important;font-size:clamp(12px,2.2vw,18px)!important;letter-spacing:3px!important;color:#fff!important;text-transform:uppercase!important;text-align:center!important;}
.site-header .header-actions{min-width:max-content!important;}
.site-header .menu-btn{flex:0 0 auto!important;display:flex!important;align-items:center!important;justify-content:center!important;background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.16)!important;}
.site-header .menu-btn span{background:#fff!important;}
@media(max-width:991px){
  :root{--header-h:86px;}
  body{padding-top:var(--header-h)!important;}
  .site-header .header-inner{min-height:86px!important;padding:10px 14px!important;gap:8px!important;}
  .site-header .brand-logo{height:58px!important;width:58px!important;max-width:58px!important;}
  .site-header .header-center .tagline{font-size:clamp(17px,5vw,24px)!important;letter-spacing:.4px!important;white-space:normal!important;}
  .site-header .header-center .subline{font-size:clamp(11px,3vw,14px)!important;letter-spacing:2.4px!important;}
  .site-header .menu-btn{width:58px!important;height:58px!important;border-radius:18px!important;}
  .desktop-nav,.header-phone-pill{display:none!important;}
}
@media(max-width:380px){
  .site-header .brand-logo{height:50px!important;width:50px!important;max-width:50px!important;}
  .site-header .header-center .tagline{font-size:clamp(15px,4.7vw,20px)!important;}
  .site-header .menu-btn{width:54px!important;height:54px!important;}
}

/* 3 onglets rapides — identiques sur toutes les pages intérieures */
.global-quick-actions,
.hero-quick-actions{
  width:min(1160px,calc(100% - 32px));
  margin:18px auto 0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  z-index:5;
  position:relative;
}
.hero-quick-actions{margin-top:0;padding:0;}
.global-quick-actions__btn,
.hero-quick-actions__btn{
  min-height:62px;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  padding:14px 18px!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,#fff1b6 0%,#d9bd73 50%,#f5df9f 100%)!important;
  color:#0b0b0b!important;
  border:1px solid rgba(122,88,24,.28)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.14)!important;
  font-weight:800!important;
  font-size:clamp(15px,2vw,20px)!important;
  line-height:1.15!important;
  text-align:center!important;
  text-decoration:none!important;
  white-space:normal!important;
}
.global-quick-actions__btn i,.hero-quick-actions__btn i{font-size:1.05em!important;line-height:1!important;}
.global-quick-actions__btn span,.hero-quick-actions__btn span{display:inline-block!important;}
.global-quick-actions__btn:hover,.hero-quick-actions__btn:hover{transform:translateY(-1px);filter:brightness(1.03);}
@media(max-width:700px){
  .global-quick-actions,.hero-quick-actions{
    width:calc(100% - 28px);
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin-top:14px;
  }
  .global-quick-actions__btn,.hero-quick-actions__btn{
    min-height:58px;
    padding:13px 10px!important;
    font-size:clamp(15px,4.2vw,18px)!important;
  }
  .global-quick-actions__btn--contact,.hero-quick-actions__btn--contact{grid-column:1 / -1;}
}

/* Hero accueil : garde la présentation propre au-dessus de l'image */
body.home-page .hero-quick-actions{position:absolute;top:26px;left:50%;transform:translateX(-50%);}
@media(max-width:700px){
  body.home-page .hero-img{height:clamp(580px,86vh,720px)!important;}
  body.home-page .hero-quick-actions{top:24px;}
  body.home-page .hero-text{top:58%!important;width:calc(100% - 28px)!important;max-width:650px!important;border-radius:18px!important;padding:20px 16px!important;}
}

/* Pages intérieures : respiration et lisibilité */
main{background:#fff!important;color:var(--cb-text)!important;}
main > section{padding:clamp(28px,4vw,58px) clamp(16px,4vw,32px)!important;}
main > section.hero,
.service-hero{
  margin-top:0!important;
  text-align:center!important;
  background:linear-gradient(180deg,#fffaf0,#ffffff)!important;
  border-bottom:1px solid rgba(217,189,115,.25)!important;
}
main h1{font-family:'Cinzel',serif!important;font-size:clamp(34px,7.2vw,62px)!important;line-height:1.08!important;letter-spacing:-.02em!important;overflow-wrap:break-word!important;hyphens:auto!important;}
main h2{font-family:'Cinzel',serif!important;font-size:clamp(26px,5.6vw,44px)!important;line-height:1.12!important;overflow-wrap:break-word!important;hyphens:auto!important;}
main h3{line-height:1.25!important;overflow-wrap:break-word!important;}
main p,main li{font-size:clamp(16px,3.6vw,19px)!important;line-height:1.72!important;color:#263241!important;}
main a.btn,.btn,.cta-devis-premium,.cta-contact-premium{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
  min-height:52px!important;padding:13px 20px!important;border-radius:999px!important;
  background:linear-gradient(135deg,#e7cb82,#c5a455)!important;color:#111!important;
  font-weight:800!important;text-decoration:none!important;border:0!important;box-shadow:0 10px 26px rgba(0,0,0,.12)!important;
}
.btn.btn-outline{background:#fff!important;border:1px solid rgba(197,164,85,.55)!important;color:#111!important;}

/* Tables tarifs : pas de texte collé, scroll propre sur mobile */
table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;background:#fff!important;border:1px solid rgba(0,0,0,.10)!important;border-radius:18px!important;overflow:hidden!important;}
th,td{padding:14px 16px!important;vertical-align:top!important;line-height:1.45!important;white-space:normal!important;}
th{background:#111!important;color:#fff!important;font-weight:800!important;}
td{border-top:1px solid rgba(0,0,0,.08)!important;}
section div[style*="overflow-x:auto"]{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;border-radius:18px!important;}
@media(max-width:640px){
  table{font-size:14px!important;min-width:680px!important;}
  th,td{padding:12px 12px!important;}
}

/* Cartes et blocs : empêche les collisions visuelles */
.cards{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))!important;gap:18px!important;align-items:stretch!important;}
.card{max-width:none!important;width:100%!important;border-radius:20px!important;}
.card p:last-child{margin-bottom:0!important;}
.service-map-actions,.page-visual-points,.listing-cta-wrap{gap:12px!important;}
.service-map-actions a,.listing-cta-wrap a{margin:5px!important;}

/* Bloc tarif ajouté et contrôlé */
.cb-tarif-cards{max-width:1100px;margin:22px auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px;}
.cb-tarif-card{background:#fff;border:1px solid rgba(217,189,115,.45);border-radius:22px;padding:18px;box-shadow:0 14px 34px rgba(0,0,0,.08);}
.cb-tarif-card strong{display:block;font-size:18px;line-height:1.25;color:#0f1115;margin-bottom:8px;}
.cb-tarif-card span{display:block;font-size:17px;line-height:1.45;color:#263241;}
.cb-cta-row{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:20px;}

/* Boutons flottants : ne pas masquer les titres en bas de viewport */
.floating-call,.floating-whatsapp,.call-floating,.whatsapp-floating{z-index:999!important;}
@media(max-width:700px){
  main{padding-bottom:74px!important;}
  .floating-call,.call-floating{left:18px!important;bottom:22px!important;}
  .floating-whatsapp,.whatsapp-floating{right:18px!important;bottom:22px!important;}
}
