/* RESET BODY BACKGROUND */
body,
body.home,
html,
.elementor-kit-9,
.elementor-default {
  background-color: #F8F8F6 !important;
}

/* VARIABLES PAR PRACTICE */
:root {
  --fair-header-bg: #FFFFFF;
  --fair-header-color: #0A0A0A;
}
[data-practice="entrepreneurs"] { --fair-header-bg: #7A1A28; --fair-header-color: #FFFFFF; --fair-practice-color: #7A1A28; }
[data-practice="sales"]         { --fair-header-bg: #7A6800; --fair-header-color: #FFFFFF; --fair-practice-color: #7A6800; }
[data-practice="transformation"]{ --fair-header-bg: #420A8A; --fair-header-color: #FFFFFF; --fair-practice-color: #420A8A; }
[data-practice="gestion"]       { --fair-header-bg: #606060; --fair-header-color: #FFFFFF; --fair-practice-color: #606060; }
[data-practice="coaching"]      { --fair-header-bg: #1AA8A0; --fair-header-color: #FFFFFF; --fair-practice-color: #1AA8A0; }
[data-practice="sustainability"] { --fair-header-bg: #2D5A27; --fair-header-color: #FFFFFF; --fair-practice-color: #2D5A27; }
[data-practice="resilience"]    { --fair-header-bg: #6A1A22; --fair-header-color: #FFFFFF; --fair-practice-color: #6A1A22; }
[data-practice="telecom"]       { --fair-header-bg: #0A1A8C; --fair-header-color: #FFFFFF; --fair-practice-color: #0A1A8C; }

/* HEADER BASE */
#fair-header {
  position: sticky;
  top: 0; left: 0; right: 0;
  z-index: 999;
  background: var(--fair-header-bg);
  border-bottom: 1px solid #E8E8E8;
  transition: background 0.5s ease;
  pointer-events: all;
  overflow: visible;
}
#fair-header.is-home {
  pointer-events: none;
}
#fair-header.is-home .fair-header-inner {
  pointer-events: all;
}
.fair-header-inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 40px;
  height: 96px;
  display: flex;
  align-items: flex-end;
  padding-bottom: 25px;
  gap: 60px;
}

/* LOGO */
.fair-logo {
  display: flex;
  flex-direction: column;
  text-decoration: none;
  line-height: 1;
}
.fair-logo-text {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 700;
  font-size: 2rem;
  color: var(--fair-header-color, #0A0A0A);
  letter-spacing: 2px;
  text-transform: uppercase;
}
.fair-slash {
  font-weight: 300;
  opacity: 0.7;
}
.fair-logo-img {
  height: 150px;
  width: auto;
  display: block;
  position: relative;
  z-index: 1000;
  margin-top: 50px;
  margin-bottom: -50px;
}
.fair-baseline {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 400;
  font-size: 0.7rem;
  color: rgba(0,0,0,0.45);
  letter-spacing: 3px;
  text-transform: lowercase;
  /* ANIMATION */
  opacity: 0;
  transform: translateY(6px);
  animation: baselineIn 0.4s ease 0.2s forwards;
}
@keyframes baselineIn {
  to { opacity: 1; transform: translateY(0); }
}

/* NAV */
.fair-nav { flex: 1; }
.fair-nav > ul {
  display: flex;
  gap: 40px;
  list-style: none;
  margin: 0; padding: 0;
}
.fair-nav a {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 600;
  font-size: 0.9rem;
  color: var(--fair-header-color, #0A0A0A);
  opacity: 0.7;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  text-decoration: none;
  transition: color 0.2s, opacity 0.2s;
}
.fair-nav a:hover { opacity: 1; }
.fair-nav > ul > li > span[role="button"] {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 0.9rem;
  font-weight: 600;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--fair-header-color, #0A0A0A);
  opacity: 0.7;
  cursor: pointer;
  transition: opacity 0.2s;
}
.fair-nav > ul > li > span[role="button"]:hover { opacity: 1; }
.fair-nav-separator {
  color: var(--fair-header-color, rgba(0,0,0,0.2));
  opacity: 0.3;
  pointer-events: none;
  padding: 0;
}

/* DROPDOWN */
.has-dropdown { position: relative; padding-bottom: 20px; margin-bottom: -20px; pointer-events: all; }
.dropdown {
  display: none;
  position: absolute;
  top: calc(100% + 1px);
  left: 0;
  background: var(--fair-header-bg);
  min-width: 220px;
  padding: 0;
  margin-top: 0;
  list-style: none;
  border-top: 2px solid #E8E8E8;
  box-shadow: 0 8px 24px rgba(0,0,0,0.08);
}
.has-dropdown:hover .dropdown { display: block; }
.dropdown li a {
  display: block;
  padding: 10px 20px;
  font-size: 0.85rem;
  letter-spacing: 1px;
  opacity: 0.8;
}
.dropdown li a:hover { opacity: 1; padding-left: 28px; }
.dropdown li a[href*="entrepreneurs"] { background: #7A1A28; color: #FFFFFF; opacity: 1; }
.dropdown li a[href*="sales"] { background: #7A6800; color: #FFFFFF; opacity: 1; }
.dropdown li a[href*="transformation"] { background: #420A8A; color: #FFFFFF; opacity: 1; }
.dropdown li a[href*="gestion"] { background: #606060; color: #FFFFFF; opacity: 1; }
.dropdown li a[href*="coaching"] { background: #1AA8A0; color: #FFFFFF; opacity: 1; }
.dropdown li a[href*="sustainability"] { background: #2D5A27; color: #FFFFFF; opacity: 1; }
.dropdown li a[href*="resilience"] { background: #6A1A22; color: #FFFFFF; opacity: 1; }
.dropdown li a[href*="telecom"] { background: #0A1A8C; color: #FFFFFF; opacity: 1; }
.dropdown li a[href*="entrepreneurs"]:hover,
.dropdown li a[href*="sales"]:hover,
.dropdown li a[href*="transformation"]:hover,
.dropdown li a[href*="gestion"]:hover,
.dropdown li a[href*="coaching"]:hover,
.dropdown li a[href*="sustainability"]:hover,
.dropdown li a[href*="resilience"]:hover,
.dropdown li a[href*="telecom"]:hover { opacity: 0.85; color: #FFFFFF; }

/* MEGA MENU */
.mega-menu {
  display: none;
  position: fixed;
  top: 96px;
  left: 290px;
  background: #FFFFFF;
  padding: 0;
  box-shadow: 0 8px 24px rgba(0,0,0,0.08);
  z-index: 10000;
  flex-direction: row;
  align-items: flex-start;
  margin-top: -2px;
}
/* géré en JS */
.mega-menu .mega-item-desc {
  color: rgba(0,0,0,0.55) !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.82rem !important;
  text-decoration: none !important;
}
.mega-menu .mega-item-title {
  color: #0A0A0A !important;
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  text-decoration: none !important;
}
.mega-menu a {
  text-decoration: none !important;
  color: inherit !important;
}
.mega-menu::before {
  content: '';
  position: absolute;
  top: -20px;
  left: 0;
  right: 0;
  height: 20px;
}
.mega-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  padding: 20px 24px;
  text-decoration: none;
  border-right: 1px solid #F0F0F0;
  min-width: 200px;
  width: 200px;
  transition: background 0.25s ease;
}
.mega-item:last-child { border-right: none; }
.mega-item:hover { background: #F8F8F6; }
.mega-item img {
  width: 64px;
  height: 64px;
  object-fit: cover;
  border-radius: 4px;
}
.mega-item-text {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.mega-item-title {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #0A0A0A;
}
.fair-nav .mega-item .mega-item-desc {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.82rem;
  color: rgba(0,0,0,0.5);
  line-height: 1.4;
  text-transform: none;
  letter-spacing: 0;
  font-weight: 400;
}

/* CTA */
.fair-cta {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 600;
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: var(--fair-header-color, #0A0A0A);
  border: 1px solid;
  border-color: var(--fair-header-color, rgba(0,0,0,0.3));
  opacity: 0.8;
  padding: 10px 24px;
  text-decoration: none;
  border-radius: 2px;
  transition: all 0.3s;
  white-space: nowrap;
}
.fair-cta:hover {
  background: #0A0A0A;
  color: #FFFFFF;
  border-color: #0A0A0A;
}

/* BURGER */
.fair-burger {
  display: none;
  flex-direction: column;
  gap: 5px;
  background: none;
  border: none;
  cursor: pointer;
  margin-left: auto;
}
.fair-burger span {
  display: block;
  width: 24px;
  height: 2px;
  background: var(--fair-header-color, #0A0A0A);
  transition: all 0.3s;
}

/* MOBILE */
@media (max-width: 768px) {
  .fair-nav, .fair-cta { display: none; }
  .fair-burger { display: flex; }
  .fair-header-inner { padding: 0 20px; }
  /* Nav mobile open */
  .fair-nav.open {
    display: flex;
    flex-direction: column;
    position: fixed;
    top: 80px; left: 0; right: 0; bottom: 0;
    background: var(--fair-header-bg);
    padding: 40px 20px;
  }
  .fair-nav.open > ul { flex-direction: column; gap: 20px; }
  .fair-nav.open .dropdown { display: block; position: static; border: none; padding: 8px 0 0 16px; }
  .fair-nav.open .fair-cta { display: block; margin-top: 40px; text-align: center; }
}



/* PAGE TRANSITION */
body {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.5s ease, transform 0.5s ease;
}
body.fair-fade-out {
  opacity: 0;
  transform: translateY(-12px);
}
@keyframes fairFadeIn {
  from { 
    opacity: 0; 
    transform: translateY(12px); 
  }
  to { 
    opacity: 1; 
    transform: translateY(0); 
  }
}
body.fair-fade-in {
  animation: fairFadeIn 0.5s ease forwards;
}

/* RESET FOOTER ELEMENTOR */
.elementor-location-footer,
footer.elementor-section,
.site-footer {
  background: #F8F8F6 !important;
  color: rgba(0,0,0,0.5) !important;
}

/* RESET COULEURS ELEMENTOR PAR DEFAUT */
:root {
  --e-global-color-accent: #0A0A0A !important;
}
.elementor-location-footer {
  background-color: #F8F8F6 !important;
}
.elementor-location-footer * {
  color: rgba(0,0,0,0.5) !important;
}

/* FOOTER RESET */
.elementor-location-footer,
[data-elementor-type="footer"] {
  background: #F8F8F6 !important;
}

.fair-home {
  width: 100%;
  overflow: hidden;
}

/* RESET H1 ELEMENTOR */
#fair-main h1,
#fair-main .fair-hero h1 {
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}

/* RESET MAIN ELEMENTOR */
#fair-main,
.site-main,
main {
  padding: 0 !important;
  margin: 0 !important;
}

/* Compensation barre admin WP */
body.admin-bar #fair-header {
    top: 32px;
}
@media screen and (max-width: 782px) {
    body.admin-bar #fair-header {
        top: 46px;
    }
}
