/* Mohsin Header Builder */
.mhb { --mhb-text:#111; --mhb-line:#e6e6e6; width:100%; background:#fff; color:var(--mhb-text); position:relative; z-index:999; box-sizing:border-box; }
.mhb *, .mhb *::before, .mhb *::after { box-sizing:border-box; }
.mhb--sticky { position:sticky; top:0; }
.admin-bar .mhb--sticky { top:32px; }

/* Make the widget fill the whole row (Elementor flex containers shrink widgets to their content by default) */
.elementor .elementor-widget-mohsin-header,
.elementor-widget-mohsin-header{--container-widget-width:100%;--container-widget-flex-grow:1;width:100%;max-width:100%;flex:1 1 100%;align-self:stretch}
.elementor-widget-mohsin-header > .elementor-widget-container{width:100%}

/* Top bar */
.mhb__top { display:flex; align-items:center; justify-content:space-between; min-height:45px; padding:0 60px; background:#fff; border-top:0; border-bottom:1px solid var(--mhb-line,#e6e6e6); }
.mhb__top-left, .mhb__top-right { display:flex; align-items:center; gap:40px; }
.mhb__top-right { gap:28px; }
.mhb__top-link { display:inline-flex; align-items:center; gap:12px; font-size:16px; color:var(--mhb-text); text-decoration:none; line-height:1; }
a.mhb__top-link { transition:color .2s; }
a.mhb__top-link:hover, a.mhb__top-link:focus-visible, .mhb__top-link a:hover { color:#1e9e3a; }
.mhb__icon { display:inline-flex; font-size:16px; line-height:1; }
.mhb__icon svg { width:1em; height:1em; fill:currentColor; }
.mhb__cart { display:inline-flex; align-items:center; color:var(--mhb-text); }
.mhb__cart a { color:inherit; transition:color .2s; }
.mhb__cart a:hover, .mhb__cart a:focus-visible { color:#1e9e3a; }
.mhb__cart-empty { font-size:12px; opacity:.5; }

/* Main row */
.mhb__main { display:flex; align-items:center; gap:56px; min-height:86px; padding:0 60px; background:#fff; border-bottom:1px solid var(--mhb-line,#e6e6e6); }
.mhb__toggle { position:relative; display:inline-flex; flex-direction:column; justify-content:center; align-items:flex-start; gap:5px; width:22px; padding:0; margin:0; background:none; border:0; cursor:pointer; flex:none; }
.mhb__toggle::after { content:""; position:absolute; inset:-14px -12px; }
.mhb__toggle span { display:block; width:100%; height:2px; background:#111; transition:background-color .2s; }
.mhb__toggle span:nth-child(2) { width:70%; }
.mhb__logo { display:inline-flex; flex:none; }
.mhb__logo img { display:block; height:48px; width:auto; max-width:none; }

.mhb__nav ul { display:flex; align-items:center; gap:48px; margin:0; padding:0; list-style:none; }
.mhb__nav li { margin:0; padding:0; }
.mhb__nav a { position:relative; display:inline-block; padding:6px 0; font-size:16px; font-weight:500; color:#111; text-decoration:none; transition:color .2s; }
.mhb__nav a::after { content:""; position:absolute; left:0; bottom:0; width:100%; height:1px; background:currentColor; transform:scaleX(0); transform-origin:left; transition:transform .25s ease; }
.mhb__nav a:hover, .mhb__nav a:focus-visible { color:#1e9e3a; }
.mhb__nav a:hover::after, .mhb__nav a:focus-visible::after { transform:scaleX(1); }

/* Search */
.mhb__search { display:flex; align-items:center; gap:18px; width:272px; height:46px; margin:0 0 0 auto; padding:0 22px; background:#f4f2ef; border:0; flex:none; }
.mhb__search button { display:inline-flex; padding:0; margin:0; background:none; border:0; color:#555; font-size:15px; cursor:pointer; line-height:1; }
.mhb__search button svg { width:1em; height:1em; fill:currentColor; }
.mhb__search input[type="search"] { flex:1; min-width:0; width:100%; height:100%; padding:0; margin:0; background:transparent; border:0; outline:0; box-shadow:none; font-size:14px; color:#111; -webkit-appearance:none; appearance:none; }
.mhb__search input::placeholder { color:#7b7b7b; opacity:1; }
.mhb__search:focus-within { outline:2px solid #111; outline-offset:2px; }

/* Off-canvas */
.mhb__overlay { position:fixed; inset:0; background:rgba(0,0,0,.45); opacity:0; transition:opacity .3s; z-index:9998; }
.mhb__overlay:not([hidden]) { opacity:1; }
.mhb__overlay[hidden] { display:none; }
/* Drawer: close X on top, menu list, contacts pinned to the bottom */
.mhb__drawer { position:fixed; top:0; bottom:0; display:flex; flex-direction:column; width:320px; max-width:88vw; padding:22px 24px 26px; overflow-y:auto; background:#fff; z-index:9999; transition:transform .35s cubic-bezier(.2,.7,.2,1); }
.mhb__drawer--left { left:0; transform:translateX(-102%); }
.mhb__drawer--right { right:0; transform:translateX(102%); }
.mhb--open .mhb__drawer { transform:none; }
.mhb__drawer-head { display:flex; align-items:center; gap:16px; flex:none; margin-bottom:22px; }
.mhb__drawer-title { font-size:18px; font-weight:600; color:#1e9e3a; }
.mhb__close { display:inline-flex; align-items:center; justify-content:center; width:32px; height:32px; margin-left:-4px; padding:0; background:none; border:0; cursor:pointer; color:#1e9e3a; line-height:1; }
.mhb__close svg { display:block; }
.mhb__drawer nav { flex:1 0 auto; }
.mhb__drawer ul { margin:0; padding:0; list-style:none; }
.mhb__drawer-list li { position:relative; margin:0; padding:0; border:0; }
.mhb__drawer-list a { display:inline; padding:0; font-size:15px; font-weight:500; line-height:1.5; color:#111; text-decoration:none; transition:color .2s; }
.mhb__drawer-list > li { padding:11px 0; }
.mhb__drawer-list > li > a { text-transform:none; }
.mhb__drawer-list a:hover, .mhb__drawer-list a:focus-visible { color:#1e9e3a; }
.mhb__sub-toggle { display:inline-flex; align-items:center; justify-content:center; width:22px; height:22px; margin:0 0 0 8px; padding:0; vertical-align:middle; background:none; border:0; cursor:pointer; color:#111; }
.mhb__sub-toggle svg { width:11px; height:11px; transition:transform .25s; }
.mhb__drawer-list li.is-open > .mhb__sub-toggle svg { transform:rotate(180deg); }
.mhb__drawer-list .sub-menu { display:none; margin:6px 0 0; padding:0 0 0 14px; border-left:1px solid #e6e6e6; }
.mhb__drawer-list li.is-open > .sub-menu { display:block; }
.mhb__drawer-list .sub-menu li { padding:8px 0; }
.mhb__drawer-list .sub-menu a { font-size:14px; font-weight:400; }
.mhb__drawer-contact { display:flex; flex-direction:column; gap:14px; flex:none; margin-top:28px; padding-top:18px; }
.mhb__drawer-social { display:flex; align-items:center; gap:18px; flex:none; margin-top:20px; font-size:14px; }
.mhb__drawer-social a, .mhb__drawer-social span { display:inline-flex; color:#111; font-size:inherit; line-height:1; text-decoration:none; transition:color .2s; }
.mhb__drawer-social a:hover { color:#1e9e3a; }
.mhb__drawer-social svg { width:1em; height:1em; fill:currentColor; }
.mhb__drawer-contact-item { display:inline-flex; align-items:center; gap:12px; font-size:13px; font-weight:500; color:#111; text-decoration:none; line-height:1.3; }
a.mhb__drawer-contact-item:hover { color:#1e9e3a; }
.mhb__drawer-contact .mhb__icon { flex:none; width:18px; justify-content:center; font-size:16px; color:#1e9e3a; }
body.mhb-lock { overflow:hidden; }

.mhb__toggle:focus-visible, .mhb__close:focus-visible, .mhb__sub-toggle:focus-visible, .mhb__top-link:focus-visible, .mhb__nav a:focus-visible { outline:2px solid #111; outline-offset:3px; }

/* Responsive */
@media (max-width:1024px) {
	.mhb__top { padding:0 24px; }
	.mhb__main { padding:0 24px; gap:28px; }
	.mhb__nav ul { gap:28px; }
	.mhb__search { width:220px; }
}
@media (max-width:767px) {
	.admin-bar .mhb--sticky { top:46px; }

	/* Mobile layout:  [hamburger] [logo] ............ [cart]
	                   [ search bar, full width ]                */
	.mhb { display:grid; grid-template-columns:auto 1fr auto; grid-template-areas:"ham logo cart" "search search search"; align-items:center; column-gap:26px; row-gap:12px; padding:12px 16px 14px; border-bottom:1px solid var(--mhb-line,#e6e6e6); }
	.mhb__top, .mhb__main, .mhb__top-right { display:contents; }
	.mhb__top-left { display:none; }
	.mhb__toggle { grid-area:ham; justify-self:start; }
	.mhb__logo { grid-area:logo; justify-self:start; }
	.mhb__logo img { height:40px; }
	.mhb__cart { grid-area:cart; justify-self:end; }
	.mhb__location { display:none; }
	.mhb__nav { display:none; }
	.mhb__search { grid-area:search; width:100%; height:46px; margin:0; padding:0 18px; gap:14px; }
	.mhb--show-loc-m .mhb__location { display:inline-flex; grid-area:cart; justify-self:end; margin-right:36px; }
	.mhb--show-topleft-m .mhb__top-left { display:flex; grid-column:1 / -1; grid-row:3; gap:18px; }
	.mhb--hide-search-m .mhb__search { display:none; }
	.mhb--show-nav-m .mhb__nav { display:block; grid-column:1 / -1; grid-row:3; }
	.mhb--show-nav-m .mhb__nav ul { gap:20px; flex-wrap:wrap; }
}
@media (prefers-reduced-motion:reduce) {
	.mhb__drawer, .mhb__overlay, .mhb__nav a::after { transition:none; }
}
