/*
 Theme Name:   Kadence - CMA Like (Child)
 Theme URI:    https://www.kadencewp.com/
 Description:  Child theme to mimic the visual style of cmaformation-bfc.fr (colors, fonts, containers, cards).
 Author:       ChatGPT
 Author URI:   https://openai.com
 Template:     kadence
 Version:      1.0.0
 Text Domain:  kadence-cma-like-child
*/

/* =========================================================
   0) RESET / BASE
   ========================================================= */
html, body {
  margin: 0;
  padding: 0;
}

/* Palette officielle ABFC (Bordeaux / Marine / Blanc) */
:root{
  /* Couleurs de marque */
  --brand-primary:   #8A1538; /* bordeaux */
  --brand-secondary: #0B1E3D; /* bleu marine */
  --brand-accent:    #F3B61F; /* or chaud, accents (facultatif) */

  /* Neutres / surfaces */
  --surface:   #ffffff;
  --surface-alt:#f6f7fb;
  --border:    #e5e7eb;

  /* Texte */
  --brand-text:  #0B1E3D;
  --brand-muted: #6b7280;

  /* Alias (évite les vars manquantes utilisées plus bas) */
  --brand-dark: var(--brand-text);

  /* Gabarits */
  --container-max: 1180px;
  --gutter: 24px;
  --radius: 16px;
  --shadow: 0 10px 30px rgba(11,30,61,.08);

  /* Typos */
  --font-headings: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
  --font-body:     -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;

  /* (Kadence override) */
  --global-palette1: var(--brand-primary) !important;
  --global-palette2: var(--brand-secondary) !important;
}

/* =========================================================
   1) LAYOUT / CONTAINERS
   ========================================================= */
.kadence-container {
  max-width: var(--container-max);
}

.site {
  max-width: 100%;
  width: 100%;
}

/* Conteneurs Kadence usuels */
.wrap, .content-area, .site-main, .entry-content > .alignwide {
  max-width: var(--container-max);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--gutter);
  padding-right: var(--gutter);
}

/* Utilitaire container */
.container {
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--gutter);
}

/* Grilles utilitaires */
.grid {
  display: grid;
  gap: 24px;
}
.grid.cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid.cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }

@media (max-width: 900px) {
  .grid.cols-2, .grid.cols-3 { grid-template-columns: 1fr; }
}

/* =========================================================
   2) TYPOGRAPHY / LINKS
   ========================================================= */
body {
  font-family: var(--font-body);
  color: var(--brand-dark);
  line-height: 1.6;
}

h1,h2,h3,h4,h5,h6,.entry-title {
  font-family: var(--font-headings);
  color: var(--brand-primary);
  line-height: 1.25;
  letter-spacing: .2px;
}

a { color: var(--brand-primary); }
a:hover, a:focus { color: var(--brand-secondary); }

/* Breadcrumbs (RankMath/Yoast common) */
.rank-math-breadcrumb, .breadcrumbs, .yoast-breadcrumb {
  font-size: .95rem;
  color: var(--brand-muted);
  margin: .5rem 0 1rem;
}
.rank-math-breadcrumb a, .breadcrumbs a, .yoast-breadcrumb a { color: var(--brand-muted); }
.rank-math-breadcrumb a:hover, .breadcrumbs a:hover, .yoast-breadcrumb a:hover { color: var(--brand-primary); }

/* =========================================================
   3) UI BASE : CARDS / BUTTONS / FORMS / TABLES
   ========================================================= */
/* Cards / encarts */
.wp-block-group.is-style-card, .cma-card, .wp-block-media-text.is-style-card {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding: 1.25rem;
}
.cma-card--highlight {
  background: var(--surface-alt);
  border-color: color-mix(in oklab, var(--brand-primary) 12%, var(--border));
}

/* Buttons */
.wp-block-button__link, .button, button, input[type=submit] {
  background: var(--brand-primary);
  border-radius: calc(var(--radius) - 2px);
  border: none;
  padding: .75rem 1.25rem;
  font-weight: 600;
}
.wp-block-button__link:hover, .button:hover, button:hover, input[type=submit]:hover {
  background: var(--brand-secondary);
}

/* Forms */
input[type=text], input[type=email], input[type=tel], textarea, select {
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: .65rem .8rem;
  width: 100%;
  background: #fff;
}
label {
  font-weight: 600;
  color: var(--brand-dark);
}

/* Notices */
.notice, .wp-block-group.is-style-note {
  background: color-mix(in oklab, var(--brand-accent) 12%, #fff);
  border-left: 4px solid var(--brand-accent);
  padding: 1rem;
  border-radius: 8px;
}

/* Header & Footer tweaks */
.site-header, .site-footer {
  background: var(--surface);
  border-bottom: 1px solid var(--border);
}
.site-footer {
  border-top: 1px solid var(--border);
  color: var(--brand-muted);
}

/* Tables / lists */
table { border-collapse: collapse; width: 100%; }
th, td { border-bottom: 1px solid var(--border); padding: .7rem; }
ul.list-checked > li::marker { content: "✓ "; }

/* =========================================================
   4) HOME — PANNEAU BLEU FIXE (desktop) + fallback mobile
   ========================================================= */
@media (min-width: 1100px) {
  .home .page-wrap {
    padding-right: calc(clamp(280px, 28vw, 360px) + 32px);
  }
  .home .cma-layout {
    grid-template-columns: 1.6fr;
  }
  .home .panel.panel--emphasis {
    position: fixed;
    top: 700px;
    right: 160px;
    left: auto;
    width: clamp(280px, 24vw, 360px);
    z-index: 30;
  }
}

@media (max-width: 1099.98px) {
  .home .panel.panel--emphasis {
    position: static;
    width: auto;
  }
}

@media (min-width: 1100px) {
  .home .panel.panel--emphasis {
    box-shadow: 0 12px 30px rgba(2, 6, 23, .28);
  }
}

/* Pour éviter que des éléments passent par dessus (z-index) */
.kadence-sticky-header, .site-header, .site-footer { z-index: 60; }

/* === FRONT-PAGE : agrandir le container rouge malgré le panneau bleu === */
.cma-layout { display: block !important; }
.cma-layout > .slab {
  max-width: 100%;
  margin-right: 0;
}
.cma-layout > aside.panel {
  position: fixed;
  top: 160px;
  right: 30px;
  width: 300px;
  z-index: 50;
}

/* =========================================================
   5) SIDEBAR PRIMAIRE — Logo + liens
   ========================================================= */
.sidebar-primary::before {
  content: "";
  display: block;
  width: 180px;
  height: 52px;
  margin: 0 0 12px 0;
  background-image: url("/wp-content/themes/kadence-cma-like-child/assets/img/logo-abfc2.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: left center;
}
@media (max-width: 1280px) {
  .sidebar-primary::before { width: 160px; height: 46px; }
}
.sidebar-primary {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 16px;
  box-shadow: var(--shadow);
}
.sidebar-primary a {
  display: block;
  padding: 10px 12px;
  margin: 4px 0;
  border-radius: 10px;
  text-decoration: none;
  color: var(--brand-text);
  border: 1px solid var(--border);
  background: #fff;
  font-weight: 700;
}
.sidebar-primary a:hover {
  background: var(--surface-alt);
  color: var(--brand-primary);
}
.sidebar-primary .wp-block-navigation__container { gap: 6px; }

/* =========================================================
   6) UTILITAIRES / COHÉRENCE
   ========================================================= */
/* Bandeau rouge désactivé partout */
.page-band{
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  opacity: 0 !important;
}

/* Titres de page unifiés */
.title--cma {
  font-size: clamp(22px, 2.2vw + 14px, 36px);
  line-height: 1.15;
  letter-spacing: -.015em;
  font-weight: 800;
  color: var(--brand-secondary);
  margin: 14px 0 10px;
}

/* Bouton fond blanc réutilisable */
.abfc-btn--white {
  background: #fff !important;
  color: var(--brand-text) !important;
  border: 1px solid var(--border) !important;
}
.abfc-btn--white:hover {
  background: var(--surface-alt) !important;
  color: var(--brand-primary) !important;
}

/* Petits pills cohérents */
.pill {
  border: 1px solid var(--border);
  border-radius: 12px;
  background: #fff;
  color: #111827;
}

/* Correction couleur titre (override) */
h1,h2,h3,h4,h5,h6,.entry-title {
  color: var(--brand-secondary);
}

/* Logo d’en-tête global (Kadence branding) */
.site-branding .custom-logo,
.site-branding img.custom-logo {
  max-height: 56px;
  height: auto;
  width: auto;
}

/* =========================================================
   7) OFFRES — GRILLE + CARDS
   ========================================================= */
.offers-grid{
  display:grid;
  gap:14px;
  margin-bottom:6px;
}

/* Desktop ≥1200px : 3 colonnes fixes */
@media (min-width:1200px){
  .offers-grid{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Tablettes 900–1199px : 2 colonnes */
@media (min-width:900px) and (max-width:1199px){
  .offers-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Mobile <900px : 1 colonne */
@media (max-width:899px){
  .offers-grid{ grid-template-columns: 1fr; }
}

/* ===== HOME — repositionner le panneau bleu plus bas ===== */
.home{
  --panel-w: 300px;
  --panel-gap: 24px;
  --panel-top: 640px;
}

@media (min-width:1200px){
  .home .page-wrap{
    max-width: 1860px !important;
    padding-right: calc(var(--panel-w) + var(--panel-gap) + 32px) !important;
  }

  .home .cma-layout{ display:block !important; }
  .home .cma-layout > .slab{
    max-width:100%;
    margin-right:0;
  }

  .home .panel.panel--emphasis{
    bottom: 40px; top: auto;
    right: var(--panel-gap);
    width: var(--panel-w);
    z-index: 50;
    box-shadow: 0 12px 30px rgba(2,6,23,.28);
  }
}

/* au cas où le thème mettrait un overflow: hidden */
.site { overflow: visible; }

.abfc-hero .home-link:hover{
  background: #f8fafc;
  border-color: #dbe2ea;
  color: var(--brand-primary, #8A1538);
}

/* Cards offres */
.of-grid{display:grid;gap:18px}
@media(min-width:900px){.of-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:600px) and (max-width:899px){.of-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.of-card{
  background:#fff;border:1px solid #e6e8ee;border-radius:16px;
  box-shadow:0 10px 30px rgba(15,23,42,.06); padding:16px 16px 14px;
  transition:transform .18s ease, box-shadow .18s ease;
}
.of-card:hover{transform:translateY(-2px); box-shadow:0 16px 40px rgba(15,23,42,.10)}
.of-card__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.of-card__author{display:flex;gap:10px;align-items:center}
.of-card__avatar{width:42px;height:42px;border-radius:999px;object-fit:cover}
.of-card__company{font-weight:700;color:#0f172a;font-size:14px;line-height:1.1}
.of-card__meta{color:#64748b;font-size:12px}
.of-card__save{background:#fff;border:1px solid #e6e8ee;border-radius:10px;padding:6px 8px;cursor:pointer}
.of-card__title{font-size:18px;margin:10px 0 6px;color:#0f172a}
.of-card__title a{text-decoration:none;color:inherit}
.of-card__title a:hover{text-decoration:underline}
.of-card__excerpt{color:#475569;font-size:14px;margin:0 0 10px;min-height:42px}
.of-card__tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.tag{background:#f1f5f9;border:1px solid #e2e8f0;color:#0f172a;font-size:12px;border-radius:999px;padding:6px 10px}
.of-card__foot{display:flex;gap:8px;justify-content:flex-end}
.of-btn{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 14px;border-radius:10px;border:1px solid #d1d5db;text-decoration:none;font-weight:700}
.of-btn--ghost{background:#fff;color:#0f172a}
.of-btn--ghost:hover{background:#f8fafc}
.of-btn--primary{background:#0f172a;color:#fff;border-color:#0f172a}
.of-btn--primary:hover{filter:brightness(1.04)}
.dark .of-card{background:#0b1220;border-color:#111a2b}
.dark .of-card__company,.dark .of-card__title{color:#f8fafc}
.dark .of-card__excerpt{color:#cbd5e1}
.dark .tag{background:#0f172a;border-color:#14233b;color:#e2e8f0}
.dark .of-btn--ghost{background:#0b1220;border-color:#14233b;color:#e2e8f0}
.dark .of-btn--primary{background:#111827;border-color:#111827}

/* =========================================================
   8) FIX FRONT-PAGE — Centrage global SANS toucher au panneau bleu
   ========================================================= */
.home .page-wrap{
  margin-left: auto !important;
  margin-right: auto !important;
  padding-right: 0 !important;
  max-width: var(--container-max);
}

@media (min-width:1100px){
  .home .page-wrap{
    max-width: min(
      var(--container-max),
      calc(100vw - (clamp(280px, 24vw, 360px) + 64px))
    ) !important;
  }
}

.home .abfc-hero__inner,
.home .abfc-about,
.home .abfc-resources,
.home .cma-layout > .slab,
.home .offers-grid,
.home .cta-row,
.home .links{
  max-width: 980px;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center;
  justify-content: center;
}

@media (max-width:1099.98px){
  .home .cma-layout{ display:block !important; }
  .home .cma-layout > .slab{ margin: 0 auto !important; }
}

/* ============================================
   OFFRES — Overrides visuels des cartes (safe)
   ============================================ */
.of-card{
  border:1px solid var(--border);
  border-radius:16px;
  background:#fff;
  box-shadow:0 6px 18px rgba(11,30,61,.08);
  transition: box-shadow .18s ease, transform .18s ease;
}
.of-card:hover{ transform: translateY(-2px); box-shadow: 0 14px 34px rgba(11,30,61,.12); }

.of-card__title{
  margin: 8px 0 6px;
  font-weight: 800;
  font-size: clamp(18px, 1rem + .5vw, 22px);
  line-height: 1.25;
  color: var(--brand-secondary);
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
  overflow: hidden;
}
.of-card__title a{ color: inherit; text-decoration: none; }
.of-card__title a:hover{ text-decoration: underline; }

.of-card__excerpt{ color:#475569; font-size: .95rem; line-height:1.45; opacity:.95; }

.of-card__tags--meta{ margin-top: 4px; }
.tag{
  display:inline-flex; align-items:center; gap:6px;
  padding:6px 10px; border-radius: 999px;
  background:#f6f8fb; border:1px solid #e7ebf0; color:#344054;
  font-weight:700; font-size:.85rem;
}
.tag--skill{ background:#e8f8ef; border-color:#d4efe1; color:#166534; }
.tag--muted{ background:#f6f8fb; border-color:#e7ebf0; color:#475467; }

.of-card__foot{ display:flex; gap:10px; align-items:center; margin-top:auto; }
.of-btn{
  display:inline-flex; align-items:center; justify-content:center;
  height:40px; padding:0 14px; border-radius:10px; text-decoration:none;
  font-weight:800; font-size:.9rem; border:1px solid transparent;
}
.of-btn--primary{
  background: var(--brand-primary);
  border-color: var(--brand-primary);
  color:#fff;
  box-shadow: 0 6px 18px color-mix(in oklab, var(--brand-primary) 35%, transparent);
}
.of-btn--primary:hover{ filter: brightness(.96); }
.of-btn--ghost{
  background:#fff; color:#111827; border:1px solid var(--border);
}
.of-btn--ghost:hover{ background: var(--surface-alt); }

.of-link-filter{
  margin-left:auto; color:#344054; text-decoration:underline; font-weight:700;
}
.of-link-filter:hover{ color: var(--brand-secondary); }

.of-card a:focus, .of-btn:focus, .of-link-filter:focus{
  outline: 2px solid color-mix(in oklab, var(--brand-primary) 60%, #fff);
  outline-offset: 2px;
}

/* =========================================================
   9) Flip-cards "Dernières offres"
   ========================================================= */
.offer-flip{
  position: relative;
  perspective: 1200px;
  height: 220px;
  display: block;
}
.offer-flip__inner{
  position: relative;
  width: 100%; height: 100%;
  transform-style: preserve-3d;
  transition: transform .6s cubic-bezier(.2,.6,.2,1);
}
.offer-flip:hover .offer-flip__inner,
.offer-flip:focus-within .offer-flip__inner,
.offer-flip.is-flipped .offer-flip__inner{
  transform: rotateY(180deg);
}

.offer-flip__face{
  position: absolute; inset: 0;
  backface-visibility: hidden;
  border-radius: 16px;
  overflow: hidden;
}

/* Face AVANT */
.offer-flip__front{
  display: grid; place-items: center;
  background:
    radial-gradient(800px 420px at 120% 10%, color-mix(in oklab, var(--brand-primary) 16%, #fff) 0%, transparent 60%),
    radial-gradient(800px 420px at -20% 110%, color-mix(in oklab, var(--brand-secondary) 14%, #fff) 0%, transparent 58%),
    #ffffff;
  border: 1px solid var(--border);
  box-shadow: var(--shadow);
}

.flip-skill{
  display:inline-flex; align-items:center; justify-content:center;
  padding: 14px 18px; border-radius: 999px;
  background: #e8f8ef; border:1px solid #d4efe1; color:#166534;
  font-weight: 800; font-size: clamp(16px, 1rem + .3vw, 20px);
  text-align: center;
  max-width: 90%;
}

/* Face ARRIÈRE */
.offer-flip__back{ transform: rotateY(180deg); }
.offer-flip__back .of-card{
  height: 100%;
  display: flex; flex-direction: column;
  margin: 0;
}

/* Mobile / tactile : montre directement le dos */
@media (hover: none), (pointer: coarse){
  .offer-flip__inner{ transform: none !important; }
  .offer-flip__front{ display: none; }
  .offer-flip__back{ position: static; transform: none; }
}

/* Ajustements hauteur + contenu */
.offer-flip{ height: 300px; }
@media (max-width: 1280px){ .offer-flip{ height: 280px; } }
@media (max-width: 1024px){ .offer-flip{ height: 260px; } }
@media (hover:none), (pointer:coarse){ .offer-flip{ height: auto; } }

.flip-skill{
  padding: 12px 16px;
  font-size: clamp(15px, 0.9rem + 0.2vw, 18px);
  line-height: 1.25;
  text-wrap: balance;
  max-width: 92%;
  text-align: center;
}

.of-card__title{
  font-size: clamp(17px, 1rem + .35vw, 21px);
  -webkit-line-clamp: 3;
}
.of-card__excerpt{
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  max-height: 4.5em;
}
.tag{ font-size: .8rem; padding: 5px 9px; }
.of-card__tags--meta{ margin-top: 2px; }
.of-card__foot{ gap: 8px; }
.of-btn{ height: 38px; padding: 0 12px; font-size: .85rem; }

/* =========================================================
   10) MOBILE/TABLET – centrage global + sécurités
   ========================================================= */
@media (max-width: 1024px){
  .wrap, .content-area, .site-main, .entry-content > .alignwide,
  .page-wrap, .container {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 16px;
    padding-right: 16px;
  }
  .slab, .abfc-hero__inner, .abfc-about, .abfc-resources,
  .offers-grid, .cta-row, .links {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 1024px){
  html, body, .site { overflow-x: hidden; }
}

@media (max-width: 899px){
  .site,
  .wrap,
  .content-area,
  .site-main,
  .entry-content > .alignwide {
    max-width: var(--container-max);
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

@media (max-width: 899px){
  html { zoom: 1 !important; font-size: 100% !important; }
}

/* HOME – centrage parfait (tous formats) */
.home .page-wrap,
.home .site-main,
.home .wrap,
.home .content-area {
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  max-width: var(--container-max) !important;
}

.home .abfc-hero__inner,
.home .abfc-about,
.home .abfc-resources,
.home .offers-grid,
.home .cta-row,
.home .links,
.home .cma-layout > .slab {
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center;
  justify-content: center;
}

@media (max-width: 1099px) {
  .home .page-wrap {
    padding-right: 0 !important;
    max-width: 100% !important;
  }
}

@media (min-width: 1100px) {
  .home .page-wrap {
    max-width: min(
      var(--container-max),
      calc(100vw - (clamp(280px, 24vw, 360px) + 64px))
    ) !important;
  }
}

/* MOBILE HARDENING (anti-coupures) */
@media (max-width: 640px){
  html, body { overflow-x: hidden; }

  .wrap, .content-area, .site-main, .page-wrap {
    padding-left: 12px !important;
    padding-right: 12px !important;
    box-sizing: border-box;
    max-width: 100% !important;
  }

  .offers-grid, .of-grid { grid-template-columns: 1fr !important; }

  img, video, canvas, iframe { max-width: 100%; height: auto; }

  .cma-layout > aside.panel,
  .home .panel.panel--emphasis {
    position: static !important;
    width: auto !important;
    right: auto !important;
    left: auto !important;
  }
}

@media (max-width: 900px){
  :where(.abfc-top-visual, .entry-hero, .kadence-hero, .wp-block-cover, .wp-block-cover-image){
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    background-position: var(--hero-pos, center 35%) !important;
  }
}

@supports (padding: max(0px)){
  .page-wrap{
    padding-left: max(var(--gutter, 16px), env(safe-area-inset-left));
    padding-right: max(var(--gutter, 16px), env(safe-area-inset-right));
  }
}

.container, .page-wrap, .wrap, .site-main { overflow: visible; }
* { min-width: 0; }
.abfc-card, .of-card { overflow: hidden; }

/* Assurez-vous que ce bouton est affecté spécifiquement dans le bloc "Actions" */
.abfc-hero .abfc-btn-primary {
  background: #fff !important;
  border: 1px solid var(--bordeaux) !important;
  color: var(--bordeaux) !important;
}

/* =========================================================
   11) HERO FULL WIDTH GLOBAL
   ========================================================= */
:root{
  --banner-h-desktop: 420px;
  --banner-h-mobile:  200px;
}

:where(.abfc-top-visual,
       .entry-hero,
       .kadence-hero,
       .wp-block-cover,
       .wp-block-cover-image){
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;

  min-height: clamp(var(--banner-h-mobile), 36vw, var(--banner-h-desktop)) !important;
  height:     clamp(var(--banner-h-mobile), 36vw, var(--banner-h-desktop)) !important;

  background-image: var(--hero);
  background-size: cover !important;
  background-position: var(--hero-pos, center 25%) !important;
  background-repeat: no-repeat !important;
}

@media (max-width: 899px){
  :where(.abfc-top-visual,
         .entry-hero,
         .kadence-hero,
         .wp-block-cover,
         .wp-block-cover-image){
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

:where(.entry-hero img,
       .kadence-hero img,
       .wp-block-cover img){
  width: 100%;
  height: inherit !important;
  max-height: inherit !important;
  object-fit: cover;
  object-position: var(--hero-pos, center 25%);
  display: block;
}

.abfc-hero .abfc-btn-primary:hover {
  background: #f8fafc !important;
  border-color: var(--bordeaux) !important;
  color: var(--bordeaux) !important;
}

/* Bouton flottant de déconnexion (toutes pages) */
.abfc-logout-floating{
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:1000;
}

.abfc-logout-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 18px;
  border-radius:999px;
  background:#ffffff;
  color:#111827;
  font-weight:700;
  font-size:14px;
  text-decoration:none;
  border:1px solid #e5e7eb;
  box-shadow:0 8px 20px rgba(15,23,42,.25);
}

.abfc-logout-btn:hover{
  background:#111827;
  color:#ffffff;
}

/* SUPPRESSION TOTALE de la bande grise Kadence sous la bannière */
.entry-hero,
.entry-header,
.kadence-hero {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  background: transparent !important;
}

.content-area,
.entry-content > *:first-child {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.site-main {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

:root {
  --global-content-top-spacing: 0px !important;
  --global-content-bottom-spacing: 0px !important;
}

.page-title-area,
.kadence-page-title {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* ===== EN-TÊTE KADENCE TRANSPARENT (plus de bande grise) ===== */
.site-header,
.kadence-sticky-header,
.site-main-header-wrap,
.site-header-main-section-inner {
  background: transparent !important;
  box-shadow: none !important;
  border-bottom: none !important;
}

.kadence-sticky-header .site-header,
.kadence-sticky-header .site-main-header-wrap,
.kadence-sticky-header .site-header-main-section-inner {
  background: transparent !important;
  box-shadow: none !important;
  border-bottom: none !important;
}

.header-navigation,
.header-row,
.nav-main,
.main-navigation {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

.site-header,
.header-top,
.header-bottom {
  border-bottom: none !important;
}
