/* ==========================================================================
   Mieux Fiscal – header (Elementor template 63)
   1. Desktop submenus: readable hover (no more teal text on teal background)
   2. Mobile / tablet (<= 1024px, Elementor "dropdown-tablet" breakpoint):
      compact bar (logo left, client button + burger right) and a full-height
      menu panel under the bar. The behaviour comes from mieuxfiscal-header.js.
   ========================================================================== */
:root{
	--mf-teal:#4FAFC0;
	--mf-teal-ink:#1F7C8D;      /* teal that stays readable on white */
	--mf-teal-soft:#EEF7F9;
	--mf-ink:#1F1D20;
	--mf-muted:#5E6669;
	--mf-line:#E6EAEC;
	--mf-header-bottom:64px;    /* updated by JS */
}

/* ---------- 0. Sticky bar (desktop, tablet and mobile) ---------- */
header.elementor-location-header{position:sticky;top:var(--wp-admin--admin-bar--height,0px);z-index:1000;background:#fff}

/* ---------- 1. Desktop submenus ---------- */
header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--main ul.sub-menu.elementor-nav-menu--dropdown{
	background:#fff;
	border:1px solid var(--mf-line);
	border-radius:12px;
	box-shadow:0 12px 32px rgba(21,24,26,.12);
	padding:6px;
	min-width:260px;
}
header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--main ul.sub-menu.elementor-nav-menu--dropdown a.elementor-sub-item{
	color:var(--mf-ink);
	fill:var(--mf-ink);
	background:transparent;
	border-radius:8px;
	padding:11px 14px;
	font-size:15px;
	font-weight:500;
	line-height:1.3;
	white-space:nowrap;
	transition:background-color .15s ease,color .15s ease;
}
header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--main ul.sub-menu.elementor-nav-menu--dropdown a.elementor-sub-item:hover,
header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--main ul.sub-menu.elementor-nav-menu--dropdown a.elementor-sub-item:focus-visible,
header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--main ul.sub-menu.elementor-nav-menu--dropdown a.elementor-sub-item.highlighted,
header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--main ul.sub-menu.elementor-nav-menu--dropdown a.elementor-sub-item.elementor-item-active{
	background:var(--mf-teal-soft);
	color:var(--mf-teal-ink);
	fill:var(--mf-teal-ink);
}
header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--main ul.sub-menu.elementor-nav-menu--dropdown a.elementor-sub-item:focus{outline:none}
header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--main ul.sub-menu.elementor-nav-menu--dropdown a.elementor-sub-item:focus-visible{outline:2px solid var(--mf-teal);outline-offset:-2px}

/* ---------- 1b. Desktop bar: menu on a single line ---------- */
@media (min-width:1025px){
	header.elementor-location-header > .elementor-element-96fb793{flex-wrap:nowrap;gap:24px;padding-left:24px;padding-right:24px}
	header.elementor-location-header > .elementor-element-96fb793 > .elementor-element-3fcff3e,
	header.elementor-location-header > .elementor-element-96fb793 > .elementor-element-cc36715{width:auto;flex:0 0 auto;padding:0}
	header.elementor-location-header > .elementor-element-96fb793 > .elementor-element-5ea84e6{width:auto;flex:1 1 auto;min-width:0}
	header.elementor-location-header.elementor .elementor-element.elementor-element-e1b883f{width:auto;max-width:none;--container-widget-width:auto}
	header.elementor-location-header.elementor .elementor-element.elementor-element-e1b883f img{width:auto;max-width:none;height:52px}
	header.elementor-location-header .elementor-element-cc36715 .elementor-widget-html{transform:none}
	header.elementor-location-header .elementor-element.elementor-widget-nav-menu nav.elementor-nav-menu--main > ul.elementor-nav-menu{flex-wrap:nowrap}
	header.elementor-location-header .elementor-element.elementor-widget-nav-menu nav.elementor-nav-menu--main ul.elementor-nav-menu a.elementor-item{
		white-space:nowrap;font-size:15px;padding-left:11px;padding-right:11px
	}
}
@media (min-width:1025px) and (max-width:1279px){
	header.elementor-location-header .elementor-element.elementor-widget-nav-menu nav.elementor-nav-menu--main ul.elementor-nav-menu a.elementor-item{font-size:14px;padding-left:8px;padding-right:8px}
	header.elementor-location-header .elementor-element-cc36715 .mfx-client{width:40px;height:40px;padding:0;justify-content:center;gap:0}
	header.elementor-location-header .elementor-element-cc36715 .mfx-client .mfx-client-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
}

/* ---------- 2. Mobile & tablet ---------- */
@media (max-width:1024px){
	/* The bar: one row, 64px high (sticky at every width, see 0.). */
	header.elementor-location-header > .elementor-element-96fb793{
		flex-direction:row;
		flex-wrap:nowrap;
		align-items:center;
		gap:10px;
		min-height:64px;
		padding:0 16px;
		background:#fff;
	}
	header.elementor-location-header > .elementor-element-96fb793 > .e-con{
		width:auto;
		margin:0;
		padding:0;
		min-height:0;
		flex:0 0 auto;
	}
	/* Logo left */
	header.elementor-location-header .elementor-element-3fcff3e{order:1;margin-right:auto !important}
	header.elementor-location-header.elementor .elementor-element.elementor-element-e1b883f{width:auto;max-width:none;--container-widget-width:auto}
	header.elementor-location-header .elementor-element-e1b883f a{display:block;line-height:0}
	header.elementor-location-header.elementor .elementor-element.elementor-element-e1b883f img{width:auto;max-width:none;height:44px}
	/* Client space, then burger, on the right */
	header.elementor-location-header .elementor-element-cc36715{order:2}
	header.elementor-location-header .elementor-element-cc36715 .elementor-widget-html{transform:none}
	header.elementor-location-header .elementor-element-cc36715 .mfx-client{
		width:44px;height:44px;min-height:44px;padding:0;justify-content:center;border-radius:10px;border-color:var(--mf-line);color:var(--mf-ink)
	}
	header.elementor-location-header .elementor-element-cc36715 .mfx-client svg{width:18px;height:18px}
	header.elementor-location-header .elementor-element-cc36715 .mfx-client .mfx-client-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
	header.elementor-location-header .elementor-element-5ea84e6{order:3;position:static}
	header.elementor-location-header .elementor-widget-nav-menu{position:static;width:auto;margin:0}

	/* Burger button */
	header.elementor-location-header .elementor-widget-nav-menu div.elementor-menu-toggle{
		width:44px;height:44px;margin:0;padding:0;
		display:flex;align-items:center;justify-content:center;
		border:1px solid var(--mf-line);
		border-radius:10px;
		background:#fff;
		color:var(--mf-ink);
		--nav-menu-icon-size:22px;
		cursor:pointer;
		-webkit-tap-highlight-color:transparent;
		transition:background-color .2s ease,border-color .2s ease,color .2s ease;
	}
	header.elementor-location-header .elementor-widget-nav-menu div.elementor-menu-toggle svg{fill:currentColor;width:22px;height:22px}
	header.elementor-location-header .elementor-widget-nav-menu div.elementor-menu-toggle:hover{border-color:#C9D0D3;background:#fff;color:var(--mf-ink)}
	header.elementor-location-header .elementor-widget-nav-menu div.elementor-menu-toggle:hover svg{fill:currentColor}
	header.elementor-location-header .elementor-widget-nav-menu div.elementor-menu-toggle.elementor-active{
		background:var(--mf-teal);border-color:var(--mf-teal);color:#fff
	}
	header.elementor-location-header .elementor-widget-nav-menu div.elementor-menu-toggle.elementor-active svg{fill:#fff}
	header.elementor-location-header .elementor-widget-nav-menu div.elementor-menu-toggle:focus{outline:none}
	header.elementor-location-header .elementor-widget-nav-menu div.elementor-menu-toggle:focus-visible{outline:2px solid var(--mf-teal);outline-offset:2px}

	/* The panel: fixed under the bar, full width, fills the screen */
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container{
		position:fixed;
		top:var(--mf-header-bottom);
		left:0;right:0;
		width:auto !important;
		height:calc(100vh - var(--mf-header-bottom));
		height:calc(100dvh - var(--mf-header-bottom));
		max-height:none;
		margin:0 !important;
		padding:8px 0 calc(24px + env(safe-area-inset-bottom));
		overflow-y:auto;
		overscroll-behavior:contain;
		background:#fff;
		border-radius:0;
		border-top:1px solid var(--mf-line);
		box-shadow:0 18px 30px rgba(21,24,26,.08);
		transform:none;
		animation:none;
		z-index:999;
		transition:opacity .22s ease,transform .22s ease,visibility 0s linear .22s;
	}
	header.elementor-location-header .elementor-widget-nav-menu .elementor-menu-toggle:not(.elementor-active) + nav.elementor-nav-menu--dropdown.elementor-nav-menu__container{
		max-height:none;
		visibility:hidden;
		opacity:0;
		transform:translateY(-8px);
		pointer-events:none;
	}
	header.elementor-location-header .elementor-widget-nav-menu .elementor-menu-toggle.elementor-active + nav.elementor-nav-menu--dropdown.elementor-nav-menu__container{
		max-height:none;
		visibility:visible;
		opacity:1;
		transform:none;
		transition:opacity .22s ease,transform .22s ease,visibility 0s;
	}

	/* Items */
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown ul.elementor-nav-menu{
		display:block;margin:0;padding:0 16px;background:transparent
	}
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown li{border-bottom:1px solid var(--mf-line)}
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown ul.elementor-nav-menu > li:last-child{border-bottom:0}
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown a.elementor-item{
		display:flex;align-items:center;justify-content:space-between;gap:12px;
		min-height:56px;
		padding:0 4px;
		color:var(--mf-ink);
		fill:var(--mf-ink);
		background:transparent;
		border-radius:0 !important;
		font-size:17px;
		font-weight:500;
		line-height:1.3;
		text-align:left;
	}
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown a.elementor-item:hover,
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown a.elementor-item:focus,
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown a.elementor-item.highlighted,
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown a.elementor-item.elementor-item-active{
		background:transparent;color:var(--mf-teal-ink);fill:var(--mf-teal-ink)
	}
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown a:focus{outline:none}
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown a:focus-visible{outline:2px solid var(--mf-teal);outline-offset:-2px;border-radius:6px !important}

	/* Chevron for parents (Compétence, Actualités) */
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown .sub-arrow{
		position:static;display:flex;align-items:center;justify-content:center;
		width:32px;height:32px;margin:0 -4px 0 0;padding:0;
		border-radius:8px;background:#F4F6F7;
		transition:transform .2s ease,background-color .2s ease;
	}
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown .sub-arrow svg{width:12px;height:12px;fill:currentColor}
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown a.has-submenu.highlighted .sub-arrow{
		transform:rotate(180deg);background:var(--mf-teal-soft)
	}

	/* Sub-items */
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown ul.sub-menu{
		position:static !important;
		width:auto !important;min-width:0 !important;
		margin:0 0 12px !important;padding:6px !important;
		background:#F7F9FA;
		border:0;border-radius:12px;box-shadow:none;
	}
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown ul.sub-menu li{border:0}
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown a.elementor-sub-item{
		display:block;
		padding:12px 14px !important;
		border:0;border-radius:8px !important;
		color:#3A4144;fill:#3A4144;background:transparent;
		font-size:15px;font-weight:500;line-height:1.35;
		text-align:left;white-space:normal;
	}
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown a.elementor-sub-item:hover,
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown a.elementor-sub-item:focus,
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown a.elementor-sub-item.elementor-item-active{
		background:#fff;color:var(--mf-teal-ink);fill:var(--mf-teal-ink)
	}

	/* Call to action at the bottom of the panel (added by JS) */
	header.elementor-location-header .mf-menu-cta{display:grid;gap:10px;margin:20px 16px 0}
	header.elementor-location-header .mf-menu-cta a{
		display:flex;align-items:center;justify-content:center;gap:8px;
		min-height:50px;padding:0 18px;border-radius:10px;
		font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;font-weight:600;line-height:1.2;text-decoration:none;
	}
	header.elementor-location-header nav.elementor-nav-menu--dropdown .mf-menu-cta a.mf-menu-cta__primary,
	header.elementor-location-header nav.elementor-nav-menu--dropdown .mf-menu-cta a.mf-menu-cta__primary:focus{background:var(--mf-teal);color:#fff}
	header.elementor-location-header nav.elementor-nav-menu--dropdown .mf-menu-cta a.mf-menu-cta__primary:hover{background:#3F9EAF;color:#fff}
	header.elementor-location-header nav.elementor-nav-menu--dropdown .mf-menu-cta a.mf-menu-cta__phone,
	header.elementor-location-header nav.elementor-nav-menu--dropdown .mf-menu-cta a.mf-menu-cta__phone:focus{border:1px solid var(--mf-line);background:#fff;color:var(--mf-ink)}
	header.elementor-location-header nav.elementor-nav-menu--dropdown .mf-menu-cta a.mf-menu-cta__phone:hover{border-color:#C9D0D3;background:#fff;color:var(--mf-ink)}
	header.elementor-location-header .mf-menu-cta svg{width:18px;height:18px;flex:none}

	/* Page behind the open menu does not scroll */
	html.mf-menu-open,html.mf-menu-open body{overflow:hidden}
}
@media (max-width:1024px) and (prefers-reduced-motion:reduce){
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container,
	header.elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown .sub-arrow{transition:none}
}
