.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for html, class: .elementor-element-35b2bc0 *//* =========================================================
HEADER — ALLIANCE FOURNIL CONCEPT
========================================================= */

.afc-site-header {
  --afc-navy:#152A3A;
  --afc-blue:#225E78;
  --afc-accent:#C99645;
  --afc-cream:#F7F4EE;
  --afc-line:#E5E8EA;

  position:sticky;
  top:0;
  z-index:999;
  width:100%;

  background:rgba(255,255,255,.97);
  border-bottom:1px solid rgba(21,42,58,.08);
  box-shadow:0 5px 24px rgba(21,42,58,.045);

  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}

.afc-header-inner {
  width:min(1240px, calc(100% - 40px));
  min-height:84px;
  margin:0 auto;

  display:grid;
  grid-template-columns:245px 1fr auto;
  gap:34px;
  align-items:center;
}

/* LOGO */

.afc-brand {
  display:flex;
  align-items:center;
  text-decoration:none !important;
}

.afc-brand-logo {
  display:block;

  width:auto;
  max-width:220px;
  height:auto;
  max-height:62px;

  object-fit:contain;
}

/* NAVIGATION */

.afc-desktop-nav {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
}

.afc-desktop-nav a {
  position:relative;

  display:inline-flex;
  align-items:center;

  min-height:44px;
  padding:0 14px;

  border-radius:9px;

  color:#3D4A51 !important;

  font-size:14px;
  font-weight:750;
  text-decoration:none !important;

  transition:
    color .2s ease,
    background .2s ease;
}

.afc-desktop-nav a:hover {
  background:var(--afc-cream);
  color:var(--afc-navy) !important;
}

.afc-desktop-nav a:after {
  content:"";

  position:absolute;
  left:14px;
  right:14px;
  bottom:5px;

  height:2px;
  border-radius:2px;

  background:var(--afc-accent);

  transform:scaleX(0);
  transform-origin:center;

  transition:transform .2s ease;
}

.afc-desktop-nav a:hover:after {
  transform:scaleX(1);
}

/* CTA */

.afc-header-cta {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;

  min-height:46px;
  padding:0 19px;

  border-radius:999px;

  background:var(--afc-navy);

  color:#fff !important;

  font-size:13px;
  font-weight:850;
  text-decoration:none !important;
  white-space:nowrap;

  transition:
    background .2s ease,
    transform .2s ease,
    box-shadow .2s ease;
}

.afc-header-cta:hover {
  background:var(--afc-blue);
  transform:translateY(-1px);
  box-shadow:0 8px 20px rgba(21,42,58,.14);
}

/* MENU MOBILE */

.afc-mobile-menu {
  display:none;
  position:relative;
}

.afc-mobile-menu summary {
  list-style:none;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;

  width:46px;
  height:46px;

  border:1px solid var(--afc-line);
  border-radius:11px;

  background:#fff;
  cursor:pointer;
}

.afc-mobile-menu summary::-webkit-details-marker {
  display:none;
}

.afc-mobile-menu summary span {
  display:block;

  width:19px;
  height:2px;

  border-radius:2px;

  background:var(--afc-navy);
}

.afc-mobile-panel {
  position:absolute;
  top:57px;
  right:0;

  width:min(330px, calc(100vw - 28px));
  padding:10px;

  border:1px solid var(--afc-line);
  border-radius:16px;

  background:#fff;

  box-shadow:0 18px 45px rgba(21,42,58,.14);
}

.afc-mobile-panel > a {
  display:flex;
  align-items:center;

  min-height:48px;
  padding:0 14px;

  border-radius:9px;

  color:var(--afc-navy) !important;

  font-size:15px;
  font-weight:750;
  text-decoration:none !important;
}

.afc-mobile-panel > a:hover {
  background:var(--afc-cream);
}

.afc-mobile-panel .afc-mobile-cta {
  justify-content:center;

  margin-top:8px;

  background:var(--afc-navy);

  color:#fff !important;

  border-radius:999px;
}

/* WORDPRESS ADMIN BAR */

body.admin-bar .afc-site-header {
  top:32px;
}

/* RESPONSIVE */

@media (max-width:1050px) {

  .afc-header-inner {
    grid-template-columns:205px 1fr auto;
    gap:20px;
  }

  .afc-brand-logo {
    max-width:190px;
    max-height:57px;
  }

  .afc-desktop-nav a {
    padding:0 9px;
    font-size:13px;
  }

  .afc-header-cta {
    padding:0 15px;
  }

}

@media (max-width:850px) {

  .afc-header-inner {
    min-height:74px;
    grid-template-columns:1fr auto;
  }

  .afc-brand-logo {
    max-width:185px;
    max-height:54px;
  }

  .afc-desktop-nav,
  .afc-header-cta {
    display:none;
  }

  .afc-mobile-menu {
    display:block;
  }

}

@media (max-width:680px) {

  .afc-header-inner {
    width:calc(100% - 28px);
  }

  .afc-brand-logo {
    max-width:165px;
    max-height:49px;
  }

  body.admin-bar .afc-site-header {
    top:46px;
  }

}/* End custom CSS */