/* ============================================================
   Header + footer custom Budget-Mariage (plugin bm-chrome).
   Autonome (palette Ardoise & Framboise) ; masque le header et le
   footer servis par Elementor / le thème. Scopé .bm-chrome-*.
   ============================================================ */

/* Masquage OBSOLÈTE retiré après la bascule sur le thème de blocs.
   bm-chrome rend désormais le header/footer CANONIQUES (.site-header /
   .site-footer) : il ne faut surtout plus les cacher (c'était la cause de
   « pas de header » sur les pages à shortcode). Elementor étant désactivé,
   son masquage (.elementor-location-*) est devenu inutile. */

/* Pages légales / contenu simple (mentions, CGU, CGV, confidentialité). */
/* Le contenu .bm-legal porte déjà son <h1> stylé : on masque le titre auto que
   le thème (page.html, wp:post-title) ajoute, sinon double titre identique. */
body:has(.bm-legal) .wp-block-post-title{display:none!important}
.bm-legal{max-width:820px;margin:0 auto;padding:0 24px 56px;font-size:16px;line-height:1.65;color:#2f3a4d}
.bm-legal h1{font-size:clamp(28px,4vw,38px);line-height:1.1;margin:0 0 8px}
.bm-legal .bm-legal-maj{font-size:13.5px;color:#8b94a0;margin:0 0 28px}
.bm-legal h2{font-size:21px;margin:30px 0 10px;color:#27395c}
.bm-legal h3{font-size:17px;margin:20px 0 6px;color:#27395c}
.bm-legal p,.bm-legal li{font-size:16px;line-height:1.65}
/* Sans cette marge, deux <p> qui se suivent dans un même article sont collés.
   Le défaut ne se voyait pas tant que chaque article tenait en un seul
   paragraphe. Moins spécifique que .bm-legal .bm-legal-maj, qui garde ses 28px,
   et la marge se fusionne avec le margin-top des h2, donc rien ne bouge entre
   deux articles. */
.bm-legal p{margin:0 0 14px}
.bm-legal ul{padding-left:20px;margin:0 0 16px}
.bm-legal li{margin-bottom:6px}
.bm-legal a{color:#c4527a}
.bm-legal .bm-legal-enbref{background:#efeaf7;border-left:4px solid #6f5aa6;border-radius:0 12px 12px 0;padding:14px 16px;margin:0 0 26px;color:#4a3a73;font-size:15px}
.bm-legal table{width:100%;border-collapse:collapse;margin:0 0 22px;font-size:14.5px}
.bm-legal th,.bm-legal td{text-align:left;padding:9px 12px;border:1px solid #e0d6c6;vertical-align:top}
.bm-legal thead th{background:#f7f5ef}

/* 2) Tokens locaux */
.bm-chrome-header,.bm-chrome-footer{
	--ink:#1b2433;--ardoise-700:#3f5b8c;--ardoise-900:#27395c;
	--framboise:#c4527a;--framboise-300:#e89ab6;
	--bg:#fbf9f5;--bg-elevated:#fff;--border:#ece4d6;--muted:#8b94a0;
	--font-display:'Bricolage Grotesque',ui-sans-serif,system-ui,sans-serif;
	--font-text:ui-sans-serif,system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
	box-sizing:border-box;
}
.bm-chrome-header *,.bm-chrome-footer *{box-sizing:border-box}

/* 3) Header (pleine largeur, sticky + flou, comme la maquette) */
.bm-chrome-header{background:rgba(251,249,245,.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--border);font-family:var(--font-text);position:sticky;top:0;z-index:1200}
.bm-chrome-bar{width:100%;padding:14px 24px;display:flex;align-items:center;gap:20px}
.bm-chrome-logo{display:inline-flex;align-items:center;gap:9px;text-decoration:none!important;flex:none}
.bm-chrome-logo__ico{flex:none;width:34px;height:22px}
.bm-chrome-wordmark{font-family:var(--font-display);font-weight:700;font-size:17px;letter-spacing:-.02em;color:var(--ink)!important}
.bm-chrome-dot{color:var(--framboise)}
.bm-chrome-panel{flex:1;display:flex;align-items:center;justify-content:space-between;gap:18px}
.bm-chrome-nav{flex:1}
.bm-chrome-menu{list-style:none;display:flex;gap:6px 22px;flex-wrap:wrap;margin:0;padding:0;justify-content:center}
.bm-chrome-menu li{margin:0}
.bm-chrome-menu a{display:inline-block;padding:6px 2px;font-size:.92rem;font-weight:500;color:#45505f!important;text-decoration:none!important;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}
.bm-chrome-menu a:hover,.bm-chrome-menu .current-menu-item>a{color:var(--framboise)!important;border-color:var(--framboise)}
.bm-chrome-actions{display:flex;align-items:center;gap:14px;flex:none}
.bm-chrome-link{font-size:.92rem;font-weight:600;color:var(--ardoise-700)!important;text-decoration:none!important;white-space:nowrap}
.bm-chrome-link:hover{color:var(--framboise)!important}
.bm-chrome-btn{display:inline-flex;align-items:center;min-height:40px;padding:9px 18px;border-radius:11px;background:var(--framboise)!important;color:#fff!important;font-weight:700;font-size:.9rem;text-decoration:none!important;border:0!important;white-space:nowrap;transition:filter .15s}
.bm-chrome-btn:hover{filter:brightness(.93);color:#fff!important}

/* Burger (mobile uniquement) : !important car le thème force display sur les <button> */
.bm-chrome-burger{display:none!important;flex:none;width:42px;height:42px;margin-left:auto;background:none!important;border:1px solid var(--border)!important;border-radius:10px;cursor:pointer;padding:0;align-items:center;justify-content:center;flex-direction:column;gap:4px}
.bm-chrome-burger span{display:block;width:18px;height:2px;background:var(--ink);border-radius:2px;transition:transform .2s,opacity .2s}

/* 4) Footer */
.bm-chrome-footer{background:var(--ardoise-900);color:#fff;font-family:var(--font-text);margin-top:40px}
.bm-chrome-fwrap{max-width:1120px;margin:0 auto;padding:26px 24px 14px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px}
.bm-chrome-fbrand{font-family:var(--font-display);font-weight:700;font-size:1.1rem;color:#fff!important}
.bm-chrome-fbrand .bm-chrome-dot{color:var(--framboise-300)}
.bm-chrome-fnav{display:flex;gap:8px 22px;flex-wrap:wrap}
.bm-chrome-fnav a{color:#d7deea!important;font-size:.86rem;text-decoration:none!important}
.bm-chrome-fnav a:hover{color:#fff!important}
.bm-chrome-copy{max-width:1120px;margin:0 auto;padding:0 24px 24px;font-size:.74rem;color:#9aa6bd}

/* 5) Responsive : menu déroulant mobile */
@media(max-width:880px){
	.bm-chrome-burger{display:inline-flex!important}
	.bm-chrome-panel{position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:0;background:var(--bg-elevated);border-bottom:1px solid var(--border);box-shadow:0 12px 24px rgba(39,57,92,.12);padding:8px 0;display:none;z-index:50}
	.bm-chrome-header{position:relative}
	.bm-chrome-header.is-open .bm-chrome-panel{display:flex}
	.bm-chrome-menu{flex-direction:column;gap:0;justify-content:flex-start}
	.bm-chrome-menu a{display:block;padding:11px 24px;border-bottom:0}
	.bm-chrome-actions{padding:12px 24px;border-top:1px solid var(--border);justify-content:flex-start}
	.bm-chrome-header.is-open .bm-chrome-burger span:nth-child(1){transform:translateY(6px) rotate(45deg)}
	.bm-chrome-header.is-open .bm-chrome-burger span:nth-child(2){opacity:0}
	.bm-chrome-header.is-open .bm-chrome-burger span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
}
@media(max-width:560px){
	.bm-chrome-fwrap{flex-direction:column;align-items:flex-start}
}
