/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

/* ============================================================
   CORRECTION — Titre du bloc auteur
   <h2 class="widget-title box-header-title"> hérite des styles
   de titres de section → trop grand.
============================================================ */

h2.box-header-title,
.widget-title.box-header-title {
  font-size: 0.75rem !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: #888 !important;
  margin: 0 0 12px !important;
  line-height: 1.4 !important;
}

/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

/* ── Variables globales + Header custom ── */
:root {
  --accent:      #D4AF37;
  --accent-dark: #B8941F;
  --dark:        #14261C;
  --text:        #3a4a42;
  --muted:       #4F5655;
  --bg:          #ffffff;
  --bg-alt:      #F3F6F3;
  --border:      #e2e8e4;
  --radius:      6px;
  --shadow:      0 4px 14px rgba(0,0,0,.07);
  --shadow-lg:   0 10px 36px rgba(0,0,0,.12);
  --font-head:   'Montserrat', system-ui, sans-serif;
  --font-body:   'Source Sans 3', system-ui, sans-serif;
  --header-h:    72px;
}

.container  { max-width: 1200px; margin: 0 auto; padding: 0 24px; }
.sr-only    { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; border-radius: 4px; }

.site-header {
  position: sticky; top: 0; z-index: 1000;
  height: var(--header-h);
  background: rgba(255,255,255,.96);
  backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--border);
  display: flex; align-items: center;
  transition: box-shadow .25s ease;
}
.site-header.scrolled { box-shadow: 0 4px 20px rgba(0,0,0,.08); }

.header-inner {
  display: flex; align-items: center;
  justify-content: space-between; width: 100%; gap: 16px;
}
.site-logo { display: flex; align-items: center; gap: 12px; }
.site-logo img { height: 48px; width: auto; }
.logo-text  { font-family: var(--font-head); font-weight: 700; font-size: 1.2rem; color: var(--dark); }

.site-nav   { display: flex; align-items: center; gap: 8px; }
#main-menu  { list-style: none; display: flex; align-items: center; gap: 4px; }
#main-menu > li > a {
  display: block; padding: 8px 14px;
  font-family: var(--font-head); font-size: 1rem; font-weight: 600;
  letter-spacing: .06em; text-transform: uppercase;
  border-radius: 6px; color: var(--dark); white-space: nowrap;
  transition: background .18s, color .18s;
}
#main-menu > li > a:hover,
#main-menu > li.current-menu-item > a,
#main-menu > li.current_page_item > a {
  background: rgba(212,175,55,.1); color: var(--accent);
}
.nav-cta {
  background: var(--accent) !important; color: #fff !important;
  padding: 11px 22px !important; border-radius: 999px !important;
  margin-left: 10px; font-weight: 700 !important;
  font-size: 1rem !important; letter-spacing: .06em !important;
  box-shadow: 0 4px 14px rgba(212,175,55,.35) !important;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease !important;
}
.nav-cta:hover {
  filter: brightness(.93) !important; transform: translateY(-2px) !important;
  box-shadow: 0 8px 22px rgba(212,175,55,.45) !important;
}

.burger {
  display: none; flex-direction: column; justify-content: center; gap: 5px;
  background: none; border: 1px solid var(--border); border-radius: 8px;
  cursor: pointer; padding: 9px 10px; width: 42px; height: 42px; flex-shrink: 0;
}
.burger span {
  display: block; width: 22px; height: 2px;
  background: var(--dark); border-radius: 2px;
  transition: transform .28s cubic-bezier(.4,0,.2,1), opacity .2s;
  transform-origin: center;
}
.burger.active span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.burger.active span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.burger.active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

@media (max-width: 900px) {
  .burger { display: flex; }
  #main-menu {
    position: fixed; top: var(--header-h); left: 0; right: 0; bottom: 0;
    background: rgba(255,255,255,.98);
    backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
    flex-direction: column; align-items: stretch; gap: 0;
    padding: 16px 20px 32px; overflow-y: auto;
    transform: translateX(105%);
    transition: transform .3s cubic-bezier(.4,0,.2,1);
    border-top: 1px solid var(--border); z-index: 999;
  }
  #main-menu.active { transform: none; }
  #main-menu > li > a {
    padding: 15px 8px; border-bottom: 1px solid var(--border);
    font-size: 1.05rem; border-radius: 0;
  }
  #main-menu > li:last-child > a { border-bottom: none; }
  .nav-cta { margin: 16px 0 0; display: block; border-radius: 12px !important; text-align: center; }
  body.menu-open { overflow: hidden; }
}

/* ── Harmonise le header Astra avec le style de la page d'accueil ── */

#masthead {
  position: sticky !important;
  top: 0 !important;
  z-index: 1000 !important;
  background: rgba(255,255,255,.96) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  border-bottom: 1px solid var(--border) !important;
  box-shadow: none !important;
  transition: box-shadow .25s ease !important;
}
#masthead.ast-header-sticked { box-shadow: 0 4px 20px rgba(0,0,0,.08) !important; }

#masthead .custom-logo,
#masthead .ast-site-identity img { height: 48px !important; width: auto !important; }

#masthead .main-header-menu > li > a,
#masthead .ast-nav-menu > li > a {
  font-family: var(--font-head) !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  color: var(--dark) !important;
  border-radius: 6px !important;
  transition: background .18s, color .18s !important;
}
#masthead .main-header-menu > li > a:hover,
#masthead .main-header-menu > li.current-menu-item > a,
#masthead .main-header-menu > li.current_page_item > a,
#masthead .ast-nav-menu > li > a:hover,
#masthead .ast-nav-menu > li.current-menu-item > a {
  background: rgba(212,175,55,.1) !important;
  color: var(--accent) !important;
}

/* Bouton Contact — ajouter la classe CSS "nav-cta" dans WP Admin → Menus */
#masthead .main-header-menu .nav-cta,
#masthead .ast-nav-menu .nav-cta {
  background: var(--accent) !important;
  color: #fff !important;
  padding: 11px 22px !important;
  border-radius: 999px !important;
  margin-left: 10px !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 14px rgba(212,175,55,.35) !important;
}
#masthead .main-header-menu .nav-cta:hover,
#masthead .ast-nav-menu .nav-cta:hover {
  filter: brightness(.93) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 22px rgba(212,175,55,.45) !important;
}

/* ── Colonnes du footer ── */
.site-above-footer-wrap .ast-builder-grid-row {
    justify-content: space-between;
    align-items: center;
}
.site-above-footer-wrap .site-footer-section {
    width: auto !important;
    max-width: none !important;
    flex: 0 1 auto !important;
}
.site-above-footer-wrap .site-footer-section:empty {
    display: none !important;
}
