/* Scope every rule to the two header templates; cart internals keep Elementor behavior. */
.qch-header { --qch-accent:#bd343b; --qch-ink:#fff; color:var(--qch-ink); }
.qch-header.qch-solid { background:#101010!important; }
.qch-header.qch-transparent { background:linear-gradient(180deg,rgba(0,0,0,.58),transparent)!important; margin-bottom:-100px!important; }
.qch-header > .elementor-container { max-width:1320px!important; min-height:100px; margin:auto; padding:10px 32px!important; display:flex; align-items:center; gap:28px; }
.qch-header .qch-left,.qch-header .qch-right { flex:1 1 0; min-width:0; width:auto!important; }
.qch-header .qch-logo { flex:0 0 108px; width:108px!important; }
.qch-header .elementor-column > .elementor-widget-wrap { padding:0!important; align-items:center; gap:20px; }
.qch-header .qch-right > .elementor-widget-wrap { flex-wrap:nowrap; justify-content:flex-end; }
.qch-header .qch-logo img { width:100px!important; height:auto; display:block; margin:auto; }
.qch-header .qch-left .elementor-nav-menu--main .elementor-nav-menu { justify-content:flex-start; flex-wrap:nowrap; gap:26px; }
.qch-header .elementor-nav-menu--main .elementor-item { padding:12px 0!important; font-size:16px!important; line-height:1.5; white-space:nowrap; }
.qch-header .elementor-nav-menu--main .elementor-item:hover,.qch-header .elementor-nav-menu--main .elementor-item-active { color:#ef7b80!important; }
.qch-header .qch-account { width:auto!important; margin:0!important; }
.qch-header .qch-account .elementor-nav-menu--main .elementor-item { padding:10px 18px!important; border:1px solid #ffffff40; border-radius:4px; background:transparent!important; }
.qch-header .qch-account .elementor-nav-menu--main .elementor-item:hover { background:#ffffff10!important; }
.qch-header .qch-scope-widget { width:auto!important; margin:0!important; }
.qch-header .qch-scope { margin:0; display:grid; gap:3px; }
.qch-header .qch-scope label { color:#c9c9c9; font:11px/1.2 Arial,sans-serif; letter-spacing:.08em; text-transform:uppercase; }
.qch-header .qch-scope select { border:0; border-bottom:1px solid #d65b61; border-radius:0; background:transparent; color:white; padding:4px 26px 6px 0; font:16px/1.4 'Oswald',sans-serif; min-height:36px; width:128px; cursor:pointer; }
.qch-header .qch-scope option { background:#151515; color:white; }
.qch-header .elementor-widget-woocommerce-menu-cart { margin:0!important; width:auto!important; }
.qch-header .elementor-menu-cart__toggle .elementor-button { min-width:44px; min-height:44px; display:flex; align-items:center; justify-content:center; padding:8px!important; }
.qch-header a:focus-visible,.qch-header button:focus-visible,.qch-header select:focus-visible,.qch-header .elementor-menu-toggle:focus-visible { outline:2px solid #fff!important; outline-offset:4px; }
.qch-header .qch-mobile-nav { display:none!important; }
@media(max-width:1100px) {
 .qch-header > .elementor-container { gap:18px; padding-inline:24px!important; }
 .qch-header .qch-left .elementor-nav-menu--main .elementor-nav-menu { gap:18px; }
}
@media(max-width:1024px) {
 .qch-header > .elementor-container { min-height:84px; padding:10px 24px!important; }
 .qch-header.qch-transparent { margin-bottom:-84px!important; }
 .qch-header .qch-desktop-nav { display:none!important; }
 .qch-header .qch-mobile-nav { display:block!important; width:100%; }
 .qch-header .qch-logo { flex-basis:84px; width:84px!important; }
 .qch-header .qch-logo img { width:80px!important; }
 .qch-header .elementor-menu-toggle { min-width:44px; min-height:44px; width:44px; padding:10px; background:transparent!important; border:1px solid #ffffff40; border-radius:4px; }
 .qch-header .qch-right > .elementor-widget-wrap { gap:12px; }
 .qch-header .qch-mobile-nav .elementor-nav-menu--dropdown { min-width:270px; border:1px solid #ffffff25; box-shadow:0 12px 30px #0004; }
}
@media(max-width:600px) {
 .qch-header > .elementor-container { padding:10px 16px!important; gap:12px; min-height:76px; }
 .qch-header.qch-transparent { margin-bottom:-76px!important; }
 .qch-header .qch-left { flex:0 0 44px; }
 .qch-header .qch-logo { flex:0 0 64px; width:64px!important; }
 .qch-header .qch-logo img { width:64px!important; }
 .qch-header .qch-right { flex:1 1 auto; }
 .qch-header .qch-right > .elementor-widget-wrap { gap:8px; }
 .qch-header .qch-scope select { width:110px; font-size:15px; }
 .qch-header .qch-scope label { font-size:9px; }
}

.qch-header .qch-scope select { appearance:auto; -webkit-appearance:menulist; }
.qch-header .qch-mobile-nav .elementor-nav-menu--dropdown a { color:#fff!important; background:#151515!important; font:16px/1.5 'Oswald',sans-serif; padding:14px 22px!important; display:block; }
.qch-header .qch-mobile-nav .elementor-nav-menu--dropdown a:hover,.qch-header .qch-mobile-nav .elementor-nav-menu--dropdown a:focus { background:#bd343b!important; }
/* One alignment baseline, with the brand logo centered independently of menu length. */
.qch-header > .elementor-container { display:grid!important; grid-template-columns:minmax(0,1fr) 100px minmax(0,1fr); align-items:center!important; max-width:1360px!important; gap:36px!important; }
.qch-header .qch-left,.qch-header .qch-right,.qch-header .qch-logo { width:100%!important; }
.qch-header .elementor-widget-wrap { align-content:center!important; }
.qch-header .elementor-widget { margin-bottom:0!important; }
.qch-header .qch-left .elementor-nav-menu--main .elementor-nav-menu { justify-content:flex-end!important; }
.qch-header .qch-right > .elementor-widget-wrap { justify-content:flex-start!important; gap:22px!important; }
.qch-header .qch-account .elementor-nav-menu--main .elementor-item { background:#bd343b!important; border:0!important; border-radius:0!important; color:white!important; padding:12px 22px!important; min-height:44px; }
.qch-header .qch-account .elementor-nav-menu--main .elementor-item:hover { background:#a52c32!important; }
.qch-header .qch-scope { display:block; }
.qch-header .qch-scope select { height:44px; padding-block:8px; text-transform:uppercase; }
.qch-header .qch-scope label.screen-reader-text { position:absolute!important; width:1px!important; height:1px!important; overflow:hidden!important; clip:rect(1px,1px,1px,1px)!important; white-space:nowrap!important; }
.qch-header .elementor-widget-search-form { width:auto!important; margin:0!important; }
@media(max-width:1024px) {
 .qch-header > .elementor-container { grid-template-columns:minmax(44px,1fr) 84px minmax(0,1fr); gap:20px!important; }
 .qch-header .qch-right > .elementor-widget-wrap { justify-content:flex-end!important; gap:12px!important; }
}
@media(max-width:600px) {
 .qch-header > .elementor-container { grid-template-columns:44px 64px minmax(0,1fr); gap:12px!important; }
 .qch-header .qch-right > .elementor-widget-wrap { gap:4px!important; }
 .qch-header .qch-scope select { width:108px; font-size:14px; }
}
@media(max-width:360px) {
 .qch-header > .elementor-container { padding-inline:10px!important; grid-template-columns:40px 54px minmax(0,1fr); gap:8px!important; }
 .qch-header .qch-logo img { width:54px!important; }
 .qch-header .qch-scope select { width:98px; }
}
@media(min-width:1025px) {
 .qch-header > .elementor-container { gap:clamp(48px,6.5vw,104px)!important; }
 .qch-header .qch-left .elementor-nav-menu--main .elementor-nav-menu { gap:clamp(20px,2.5vw,40px)!important; }
 .qch-header .qch-right > .elementor-widget-wrap { gap:clamp(20px,2.5vw,40px)!important; }
}
.qch-scope { position:relative; }
.qch-header .qch-scope-toggle { display:flex; justify-content:space-between; align-items:center; gap:16px; width:128px; height:44px; padding:8px 0; border:0; border-bottom:1px solid #bd343b; border-radius:0; background:transparent; color:#fff; font:16px/1.4 'Oswald',sans-serif; text-transform:uppercase; }
.qch-header .qch-scope-options { position:absolute; top:calc(100% + 10px); right:0; min-width:170px; padding:6px; background:#171717; border:1px solid #ffffff30; box-shadow:0 10px 25px #0005; z-index:100; }
.qch-header .qch-scope-options[hidden] { display:none!important; }
.qch-header .qch-scope-options button { display:flex; align-items:center; justify-content:space-between; width:100%; padding:12px 14px; border:0; border-radius:0; background:transparent; color:white; text-align:left; font:16px/1.4 'Oswald',sans-serif; text-transform:uppercase; }
.qch-header .qch-scope-options button:hover,.qch-header .qch-scope-options button:focus-visible { background:#bd343b; }
.qch-header .qch-scope-options button[aria-current] { color:#f18b90; }
.qch-sticky-wrapper { position:sticky!important; top:0; z-index:99!important; }
body.admin-bar .qch-sticky-wrapper { top:32px; }
.qch-header.qch-scrolled { background:#101010!important; }
@media(max-width:782px) {body.admin-bar .qch-sticky-wrapper {top:46px;}}
@media(max-width:600px) {
 body.admin-bar .qch-sticky-wrapper {top:0;}
 .qch-header .qch-scope-toggle {width:108px;font-size:14px;}
}
@media(max-width:360px) {.qch-header .qch-scope-toggle {width:98px;}}

/* Elementor clearfix pseudo-elements must not become extra flex items. */
.qch-header .elementor-nav-menu--main .elementor-nav-menu::before,
.qch-header .elementor-nav-menu--main .elementor-nav-menu::after { content:none!important; display:none!important; }
.qch-header .qch-logo .elementor-widget-container,
.qch-header .qch-logo a { line-height:0; }

/* Keep navigation reachable on short landscape screens. */
.qch-header .qch-mobile-nav .elementor-nav-menu--dropdown { max-height:calc(100dvh - 160px)!important; overflow-y:auto!important; overscroll-behavior:contain; }
.qch-header .qch-mobile-nav .elementor-nav-menu--dropdown a { text-transform:uppercase; }
/* Anchor the mobile navigation to the header, not the toggle widget. */
@media(max-width:1024px) {
 .qch-header .qch-left,
 .qch-header .qch-left > .elementor-widget-wrap,
 .qch-header .qch-mobile-nav,
 .qch-header .qch-mobile-nav > .elementor-widget-container { position:static!important; }
 .qch-header .qch-mobile-nav .elementor-nav-menu--dropdown { position:absolute!important; top:100%!important; left:0!important; width:100%!important; margin:0!important; border-top:1px solid #ffffff25; }
}
/* Single-row phone header: brand and location left, cart and menu right. */
@media(max-width:600px) {
 .qch-header > .elementor-container { grid-template-columns:64px auto minmax(0,1fr) auto auto 44px; grid-template-rows:56px; gap:0 6px!important; padding:8px 12px!important; min-height:72px; }
 .qch-header.qch-transparent { margin-bottom:-72px!important; }
 .qch-header .qch-left { grid-column:6; grid-row:1; }
 .qch-header .qch-logo { grid-column:1; grid-row:1; }
 .qch-header .qch-logo img { width:64px!important; }
 .qch-header .qch-right,.qch-header .qch-right > .elementor-widget-wrap { display:contents!important; }
 .qch-header .elementor-widget-woocommerce-menu-cart { grid-column:5; grid-row:1; justify-self:end; }
 .qch-header .qch-scope-widget { grid-column:2; grid-row:1; justify-self:start; border:0; margin-left:12px!important; }
 .qch-header .qch-scope { display:block; }
 .qch-header .qch-scope-widget > .elementor-widget-container { margin:0!important; padding:0!important; }
 .qch-header .qch-scope-toggle { width:108px; height:44px; min-height:44px; gap:8px; border-bottom:1px solid #bd343b; padding:8px 4px; font-size:14px; }
 .qch-header .qch-scope-options { top:calc(100% + 10px); left:0; right:auto; transform:none; }
 .qch-header .elementor-widget-search-form { grid-row:1; grid-column:4; justify-self:end; }
 .qch-header .elementor-menu-toggle { border:0!important; border-radius:0!important; width:44px; height:44px; box-sizing:border-box; justify-content:flex-end; padding:10px 0 10px 20px!important; color:#fff!important; }
 .qch-header .qch-mobile-nav .elementor-nav-menu--dropdown { max-height:calc(100dvh - 118px)!important; }
}
@media(max-width:360px) {
 .qch-header > .elementor-container { grid-template-columns:56px auto minmax(0,1fr) auto auto 44px; gap:0 3px!important; padding-inline:8px!important; }
 .qch-header .qch-logo img { width:56px!important; }
 .qch-header .qch-scope-toggle { width:100px; }
}
@media(max-width:1024px) {
 .qch-header .elementor-element.qch-mobile-nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container { margin-top:0!important; }
}

/* Neutralize template-specific spacing around the mobile menu button. */
@media(max-width:600px) {
 .qch-header .elementor-element.qch-mobile-nav > .elementor-widget-container { margin:0!important; padding:0!important; }
}
