/* eb5inc.com — shared chrome: header, wordmark, primary nav, footer, mobile CTA bar. */

/* ---------- Header (HFE "EB5Inc · Header") ---------- */
body.ehf-header #masthead { /* beats HFE's .ehf-header #masthead { position: relative } */
	position: sticky; top: var(--wp-admin--admin-bar--height, 0px); z-index: 20;
	background: #FFFFFF; box-shadow: 0 1px 0 rgba(27, 36, 44, .08);
}

/* Wordmark: Heading widget with class .wm; the gold rule is decorative. */
.wm .elementor-heading-title a { display: inline-flex; flex-direction: column; gap: 5px; text-decoration: none; color: inherit; line-height: 1; }
.wm .elementor-heading-title a::after {
	content: ""; display: block; height: 2px; width: 34px; background: var(--eb-accent);
	transition: width 200ms var(--eb-ease);
}
.wm .elementor-heading-title a:hover::after { width: 52px; }

/* Primary nav (HFE Navigation Menu): underline grows from the left; current page keeps it. */
.eb-nav .hfe-nav-menu > li > a.hfe-menu-item { position: relative; white-space: nowrap; }
.eb-nav .hfe-nav-menu > li > a.hfe-menu-item::after {
	content: ""; position: absolute; left: 0; right: 0; bottom: 6px; height: 2px; background: var(--eb-accent);
	transform: scaleX(0); transform-origin: left center; transition: transform 200ms var(--eb-ease);
}
.eb-nav .hfe-nav-menu > li > a.hfe-menu-item:hover::after,
.eb-nav .hfe-nav-menu > li > a[aria-current="page"]::after { transform: scaleX(1); }
#masthead .eb-nav .hfe-nav-menu > li > a[aria-current="page"] { font-weight: 600; color: var(--eb-primary); } /* above the widget's typography rule */
/* Menu button: 44px touch target. */
@media (max-width: 1000px) {
	.eb-nav.elementor-widget .hfe-nav-menu__toggle { /* HFE sets display:block at the breakpoint */
		display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0;
		border: 1px solid var(--eb-line); border-radius: 6px; color: var(--eb-primary);
	}
}
.eb-nav .hfe-nav-menu__toggle .hfe-nav-menu-icon { display: flex; align-items: center; justify-content: center; padding: 0; border: 0; }
.eb-nav .hfe-nav-menu__toggle svg { stroke: currentColor; fill: none; }
.eb-nav nav.hfe-dropdown .hfe-nav-menu > li > a.hfe-menu-item::after { display: none; }
.eb-nav nav.hfe-dropdown a.hfe-menu-item { min-height: 44px; display: flex; align-items: center; }

/* ---------- Footer (HFE "EB5Inc · Footer") ---------- */
/* Footer link lists (Icon List without icons): 44px rows, underline on hover/focus. */
.ftr-links .elementor-icon-list-item a { min-height: 44px; display: flex; align-items: center; text-decoration: none; } /* 44px touch target */
.ftr-links .elementor-icon-list-item a:hover .elementor-icon-list-text,
.ftr-links .elementor-icon-list-item a:focus-visible .elementor-icon-list-text { text-decoration: underline; text-underline-offset: 3px; }

/* ---------- Mobile sticky CTA bar (in the footer template, shown ≤600px) ---------- */
@media (max-width: 600px) {
	.mbar {
		position: fixed; left: 0; right: 0; bottom: 0; z-index: 30;
		box-shadow: 0 -6px 18px rgba(27, 36, 44, .08);
	}
	body:has(.mbar) { padding-bottom: 84px; }
	.mbar .elementor-button { width: 100%; }
}

/* HFE switches its menu to the toggle at 1024px (fixed in the plugin); the kit's
   tablet breakpoint is 1000px. Between the two, hide the header CTA too so the
   header shows the same state as on tablets. */
@media (max-width: 1024px) {
	#masthead .hdr-cta { display: none; }
}
