
/* =========================================================
   HAKNPRESTIGE — Correctif final mobile / SEO / CTA
   Date : 2026-05-28
   Objectif : sécuriser l'affichage de toutes les pages sans toucher aux scripts.
   ========================================================= */
:root{
  --hakn-black:#0b0907;
  --hakn-gold:#d8ba72;
  --hakn-gold-2:#f1dda1;
  --hakn-cream:#fffaf0;
  --hakn-text:#151515;
  --hakn-muted:#46515f;
  --hakn-radius:24px;
  --header-h:96px;
}
html{scroll-behavior:smooth;overflow-x:hidden;}
body{overflow-x:hidden!important;background:#fff!important;color:var(--hakn-text)!important;padding-top:var(--header-h)!important;}
.site-header{position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:1000!important;background:linear-gradient(90deg,#050505,#16120d)!important;border-bottom:1px solid rgba(216,186,114,.30)!important;}
.site-header .header-inner{min-height:96px!important;padding:10px 22px!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;gap:14px!important;}
.site-header .brand{min-width:0!important;display:flex!important;align-items:center!important;}
.site-header .brand-logo{width:64px!important;height:64px!important;max-width:64px!important;object-fit:contain!important;display:block!important;}
.site-header .header-center{min-width:0!important;overflow:hidden!important;text-align:center!important;padding:0 8px!important;}
.site-header .header-center .tagline{display:block!important;font-family:'Cinzel',Georgia,serif!important;color:var(--hakn-gold)!important;text-transform:uppercase!important;font-size:clamp(18px,3.3vw,30px)!important;line-height:1.08!important;letter-spacing:.8px!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;}
.site-header .header-center .subline{display:block!important;font-family:'Cinzel',Georgia,serif!important;color:#fff!important;text-transform:uppercase!important;font-size:clamp(12px,2.1vw,17px)!important;line-height:1.2!important;letter-spacing:3px!important;}
.site-header .header-actions{min-width:max-content!important;display:flex!important;align-items:center!important;gap:10px!important;}
.site-header .menu-btn{display:flex!important;align-items:center!important;justify-content:center!important;width:66px!important;height:66px!important;border-radius:22px!important;background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.18)!important;box-shadow:inset 0 0 18px rgba(255,255,255,.05),0 8px 22px rgba(0,0,0,.26)!important;}
.site-header .menu-btn span{display:block!important;width:30px!important;height:3px!important;background:#fff!important;border-radius:6px!important;margin:4px 0!important;}
@media(max-width:991px){
  :root{--header-h:86px;}
  .site-header .header-inner{min-height:86px!important;padding:9px 14px!important;gap:9px!important;}
  .site-header .brand-logo{width:56px!important;height:56px!important;max-width:56px!important;}
  .site-header .header-center .tagline{font-size:clamp(17px,5.1vw,24px)!important;letter-spacing:.25px!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:370px){
  :root{--header-h:82px;}
  .site-header .brand-logo{width:50px!important;height:50px!important;max-width:50px!important;}
  .site-header .header-center .tagline{font-size:clamp(15px,4.8vw,19px)!important;}
  .site-header .header-center .subline{font-size:10.5px!important;letter-spacing:2px!important;}
  .site-header .menu-btn{width:52px!important;height:52px!important;}
}

/* Accès rapide : téléphone / tarif / contact — même rendu partout */
.global-quick-actions,.hero-quick-actions{width:min(1160px,calc(100% - 32px))!important;margin:18px auto 0!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;position:relative!important;z-index:5!important;}
.hero-quick-actions{margin-top:0!important;}
.global-quick-actions__btn,.hero-quick-actions__btn{min-height:62px!important;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%,#d8ba72 52%,#f5dfa2 100%)!important;color:#0b0b0b!important;border:1px solid rgba(122,88,24,.30)!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;display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:1em!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)!important;filter:brightness(1.03)!important;}
@media(max-width:700px){
  .global-quick-actions,.hero-quick-actions{width:calc(100% - 28px)!important;grid-template-columns:1fr 1fr!important;gap:12px!important;margin-top:14px!important;}
  .global-quick-actions__btn,.hero-quick-actions__btn{min-height:58px!important;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!important;}
}
body.home-page .hero-quick-actions{position:absolute!important;top:26px!important;left:50%!important;transform:translateX(-50%)!important;}
@media(max-width:700px){
  body.home-page .hero-img{height:clamp(580px,86vh,720px)!important;}
  body.home-page .hero-quick-actions{top:24px!important;}
  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;}
}

/* Titres, sections et respiration */
main{background:#fff!important;color:var(--hakn-text)!important;}
main > section{padding:clamp(30px,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(216,186,114,.25)!important;}
main h1{font-family:'Cinzel',Georgia,serif!important;font-size:clamp(32px,8.4vw,58px)!important;line-height:1.08!important;letter-spacing:-.02em!important;overflow-wrap:break-word!important;hyphens:auto!important;}
main h2{font-family:'Cinzel',Georgia,serif!important;font-size:clamp(25px,6.4vw,42px)!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;}

/* Tarifs : cartes toujours lisibles, jamais collées */
.cb-tarif-summary{background:#fff!important;}
.cb-tarif-cards{max-width:1100px!important;margin:22px auto!important;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))!important;gap:16px!important;}
.cb-tarif-card{display:block!important;background:#fff!important;border:1px solid rgba(216,186,114,.48)!important;border-radius:22px!important;padding:18px!important;box-shadow:0 14px 34px rgba(0,0,0,.08)!important;}
.cb-tarif-card strong{display:block!important;font-size:18px!important;line-height:1.25!important;color:#0f1115!important;margin-bottom:8px!important;}
.cb-tarif-card span{display:block!important;font-size:17px!important;line-height:1.45!important;color:#263241!important;}
.cb-cta-row{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:12px!important;margin-top:20px!important;}

/* Tables : 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!important;}}

/* Cartes et grilles */
.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 sémantique accueil */
.home-semantic-seo{background:linear-gradient(180deg,#fff,#fff8ea)!important;border-top:1px solid rgba(216,186,114,.25)!important;}
.home-semantic-seo__inner{max-width:1050px;margin:0 auto;padding:clamp(8px,2vw,12px) 0;}
.home-semantic-seo h2,.home-semantic-seo h3{color:#111!important;}
.home-semantic-seo h2{margin-bottom:18px!important;}
.home-semantic-seo h3{margin-top:22px!important;margin-bottom:10px!important;font-family:'Cinzel',Georgia,serif!important;}
.home-semantic-seo p{max-width:1000px!important;}
.home-semantic-seo a{font-weight:800;color:#111;text-decoration:underline;text-decoration-color:rgba(216,186,114,.85);text-underline-offset:3px;}

/* Flottants : séparés et non superposés */
.floating-call,.floating-phone,.call-floating{left:18px!important;right:auto!important;bottom:22px!important;z-index:999!important;}
.floating-whatsapp,.whatsapp-floating{right:18px!important;left:auto!important;bottom:22px!important;z-index:999!important;}
.floating-phone__label{display:none!important;}
@media(max-width:700px){main{padding-bottom:78px!important;}.floating-call,.floating-phone,.call-floating{left:15px!important;bottom:18px!important;}.floating-whatsapp,.whatsapp-floating{right:15px!important;bottom:18px!important;}}
