/* Catalog2 parity layer for the custom Livego header. */

body.livego-shell {
  --catalog2-brand-red: #f00613;
  --catalog2-brand-blue: #2f2f83;
  --catalog2-ink: #262626;
  --catalog2-text: #4a4a4a;
  --catalog2-muted: #6f7280;
  --catalog2-paper: #ffffff;
  --catalog2-surface: #faf8f6;
  --catalog2-border: #ebe7e4;
  --catalog2-line-strong: #d5d2ca;
  --catalog2-shell-max: 1500px;
  --catalog2-shell-gutter: 32px;
  --catalog2-search-max: 700px;
  --catalog2-shell: min(var(--catalog2-shell-max), calc(100vw - (var(--catalog2-shell-gutter) * 2)));
  --catalog2-focus: 0 0 0 3px rgba(47, 47, 131, .18);
}

.lt-ph-utility-shell,
.lt-production-header {
  color: var(--catalog2-ink) !important;
  font-family: Manrope, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  letter-spacing: 0 !important;
}

.lt-ph-utility-shell {
  border-bottom: 1px solid var(--catalog2-border) !important;
  background: var(--catalog2-paper) !important;
}

.lt-ph-utility-shell .lt-ph-container,
.lt-production-header .lt-ph-container {
  width: var(--catalog2-shell) !important;
  max-width: none !important;
  margin-inline: auto !important;
}

.lt-ph-utility-shell .lt-ph-utility {
  min-height: 38px !important;
  gap: 18px !important;
}

.lt-ph-utility-shell .lt-ph-nav {
  gap: 6px 12px !important;
}

.lt-ph-utility-shell .lt-ph-nav a {
  display: inline-flex !important;
  min-height: 30px !important;
  padding: 5px 8px !important;
  align-items: center !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: transparent !important;
  color: var(--catalog2-text) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.1 !important;
  letter-spacing: 0 !important;
}

.lt-ph-utility-shell .lt-ph-nav a:nth-child(1) {
  background: #f0f0f8 !important;
  color: var(--catalog2-brand-blue) !important;
  box-shadow: inset 0 -2px 0 rgba(47, 47, 131, .35) !important;
  font-style: italic !important;
  font-weight: 700 !important;
}

.lt-ph-utility-shell .lt-ph-nav a:nth-child(2) {
  background: #fdf0f1 !important;
  color: #ba1623 !important;
  box-shadow: inset 0 -2px 0 rgba(240, 6, 19, .28) !important;
  font-style: italic !important;
  font-weight: 700 !important;
}

.lt-ph-utility-shell .lt-ph-nav a:nth-child(5) {
  color: var(--catalog2-ink) !important;
  font-weight: 700 !important;
}

.lt-ph-utility-shell .lt-ph-nav a:hover,
.lt-ph-utility-shell .lt-ph-nav a:focus-visible {
  background: var(--catalog2-surface) !important;
  color: var(--catalog2-brand-red) !important;
  outline: 0 !important;
}

.lt-ph-utility-shell .lt-ph-contact {
  gap: 8px !important;
}

.lt-ph-utility-shell .lt-ph-contact-link {
  min-width: 28px !important;
  min-height: 28px !important;
}

.lt-production-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 10000 !important;
  min-height: 64px !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.lt-production-header .lt-ph-main {
  display: grid !important;
  min-height: 64px !important;
  padding: 8px 22px !important;
  grid-template-columns: 40px 176px minmax(420px, var(--catalog2-search-max)) minmax(0, 1fr) 174px !important;
  gap: 14px !important;
  align-items: center !important;
  border: 1px solid var(--catalog2-border) !important;
  border-top: 0 !important;
  border-radius: 0 0 12px 12px !important;
  background: var(--catalog2-paper) !important;
  box-shadow: 0 8px 22px rgba(38, 38, 38, .06) !important;
}

.lt-production-header .lt-ph-brand {
  grid-column: 2 !important;
  width: 176px !important;
  max-width: 176px !important;
  min-height: 44px !important;
}

.lt-production-header .lt-ph-brand img {
  width: 100% !important;
  max-width: 176px !important;
  max-height: 48px !important;
}

.lt-production-header .lt-ph-search-composite {
  position: relative !important;
  display: grid !important;
  grid-column: 3 !important;
  width: min(100%, var(--catalog2-search-max)) !important;
  min-width: 0 !important;
  height: 42px !important;
  grid-template-columns: 132px minmax(0, 1fr) !important;
  align-items: stretch !important;
  justify-self: start !important;
  border: 1px solid var(--catalog2-line-strong) !important;
  border-radius: 10px !important;
  background: var(--catalog2-paper) !important;
  overflow: visible !important;
}

.lt-production-header .lt-ph-catalog {
  width: 132px !important;
  min-width: 0 !important;
  min-height: 40px !important;
  height: 40px !important;
  padding: 0 14px !important;
  gap: 9px !important;
  border: 0 !important;
  border-radius: 9px 0 0 9px !important;
  background: var(--catalog2-brand-blue) !important;
  color: var(--catalog2-paper) !important;
  box-shadow: none !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

.lt-production-header .lt-ph-catalog:hover,
.lt-production-header .lt-ph-catalog:focus-visible,
.lt-production-header .lt-ph-catalog[aria-expanded="true"] {
  background: #24246d !important;
  color: #fff !important;
  transform: none !important;
  outline: 0 !important;
}

.lt-production-header .lt-ph-search-composite:focus-within {
  border-color: var(--catalog2-brand-blue) !important;
  box-shadow: var(--catalog2-focus) !important;
}

.lt-production-header .lt-ph-search {
  position: relative !important;
  display: grid !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  min-height: 40px !important;
  height: 40px !important;
  grid-template-columns: minmax(0, 1fr) 42px !important;
  border: 0 !important;
  border-radius: 0 9px 9px 0 !important;
  background: var(--catalog2-paper) !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.lt-production-header .lt-ph-search:focus-within {
  border-color: transparent !important;
  box-shadow: none !important;
}

.lt-production-header .lt-ph-search-input {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 40px !important;
  padding: 0 14px !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: var(--catalog2-ink) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}

.lt-production-header .lt-ph-search-input::placeholder {
  color: #747988 !important;
  opacity: 1 !important;
}

.lt-production-header .lt-ph-search-submit {
  grid-column: 2 !important;
  grid-row: 1 !important;
  width: 42px !important;
  height: 40px !important;
  border: 0 !important;
  border-left: 1px solid var(--catalog2-border) !important;
  border-radius: 0 9px 9px 0 !important;
  background: transparent !important;
  color: var(--catalog2-ink) !important;
}

.lt-production-header .lt-ph-search-submit:hover,
.lt-production-header .lt-ph-search-submit:focus-visible {
  background: var(--catalog2-surface) !important;
  color: var(--catalog2-brand-blue) !important;
  outline: 0 !important;
}

.lt-production-header .lt-ph-search-suggestions {
  top: calc(100% + 9px) !important;
  right: 0 !important;
  left: -132px !important;
  width: auto !important;
  border-color: var(--catalog2-border) !important;
  border-radius: 12px !important;
  box-shadow: 0 16px 38px rgba(38, 38, 38, .12) !important;
}

.lt-production-header .lt-ph-spacer {
  grid-column: 4 !important;
}

.lt-production-header .lt-ph-actions {
  display: grid !important;
  grid-column: 5 !important;
  grid-template-columns: repeat(3, 52px) !important;
  gap: 6px !important;
  justify-content: end !important;
}

.lt-production-header .lt-ph-action {
  display: grid !important;
  width: 52px !important;
  min-width: 52px !important;
  min-height: 44px !important;
  padding: 4px !important;
  place-items: center !important;
  gap: 2px !important;
  border-radius: 8px !important;
  color: var(--catalog2-ink) !important;
  font-size: 10px !important;
  font-weight: 650 !important;
}

.lt-production-header .lt-ph-action:hover,
.lt-production-header .lt-ph-action:focus-visible {
  background: var(--catalog2-surface) !important;
  color: var(--catalog2-brand-blue) !important;
  outline: 0 !important;
}

.lt-production-header .lt-ph-count {
  top: 0 !important;
  right: 4px !important;
  background: var(--catalog2-brand-blue) !important;
}

@media (min-width: 1920px) {
  body.livego-shell {
    --catalog2-shell-max: 1760px;
    --catalog2-search-max: 760px;
  }
}

@media (min-width: 2560px) {
  body.livego-shell {
    --catalog2-shell-max: 2240px;
    --catalog2-search-max: 840px;
  }
}

@media (min-width: 3200px) {
  body.livego-shell {
    --catalog2-shell-max: 2880px;
    --catalog2-shell-gutter: 48px;
    --catalog2-search-max: 960px;
  }
}

@media (max-width: 1400px) and (min-width: 992px) {
  body.livego-shell {
    --catalog2-shell-gutter: 20px;
  }

  .lt-production-header .lt-ph-main {
    grid-template-columns: 40px 156px minmax(360px, 1fr) 156px !important;
    gap: 12px !important;
    padding-inline: 16px !important;
  }

  .lt-production-header .lt-ph-brand {
    width: 156px !important;
    max-width: 156px !important;
  }

  .lt-production-header .lt-ph-search-composite {
    grid-column: 3 !important;
    width: 100% !important;
  }

  .lt-production-header .lt-ph-spacer {
    display: none !important;
  }

  .lt-production-header .lt-ph-actions {
    grid-column: 4 !important;
    grid-template-columns: repeat(3, 48px) !important;
    gap: 4px !important;
  }

  .lt-production-header .lt-ph-action {
    width: 48px !important;
    min-width: 48px !important;
  }
}

@media (max-width: 1100px) and (min-width: 992px) {
  .lt-production-header .lt-ph-main {
    grid-template-columns: 40px 142px minmax(300px, 1fr) 150px !important;
    gap: 9px !important;
  }

  .lt-production-header .lt-ph-brand {
    width: 142px !important;
    max-width: 142px !important;
  }

  .lt-production-header .lt-ph-search-composite {
    grid-template-columns: 112px minmax(0, 1fr) !important;
  }

  .lt-production-header .lt-ph-catalog {
    width: 112px !important;
    padding-inline: 10px !important;
  }
}

@media (max-width: 991px) {
  body.livego-shell {
    --catalog2-shell-gutter: 10px;
  }

  .lt-ph-utility-shell {
    display: none !important;
  }

  .lt-production-header {
    min-height: 64px !important;
  }

  .lt-production-header .lt-ph-container {
    width: var(--catalog2-shell) !important;
  }

  .lt-production-header .lt-ph-mobile-main {
    min-height: 64px !important;
    padding: 8px 10px !important;
    border: 1px solid var(--catalog2-border) !important;
    border-top: 0 !important;
    border-radius: 0 0 12px 12px !important;
    background: var(--catalog2-paper) !important;
    box-shadow: 0 8px 22px rgba(38, 38, 38, .06) !important;
  }

  .lt-production-header .lt-ph-mobile-main .lt-ph-brand {
    width: min(176px, 48vw) !important;
    max-width: min(176px, 48vw) !important;
  }

  .lt-production-header .lt-ph-mobile-icon,
  .lt-production-header .lt-ph-mobile-actions a {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    min-height: 40px !important;
    border-radius: 8px !important;
  }

  .lt-production-header .lt-ph-mobile-search {
    background: var(--catalog2-paper) !important;
  }

  .lt-production-header .lt-ph-mobile-search-form {
    padding-block: 10px !important;
  }

  .lt-production-header .lt-ph-mobile-search-form input,
  .lt-production-header .lt-ph-mobile-search-form button {
    min-height: 44px !important;
    border-radius: 8px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lt-ph-utility-shell *,
  .lt-production-header * {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* LIVASTACK / SiteHeader.dc.html adapter. Native Bitrix state and routes stay intact. */
:root {
  --ls-header-blue: #163074;
  --ls-header-red: #de0d1a;
  --ls-header-action: #2f2f83;
  --ls-header-ink: #262626;
  --ls-header-text: #4a4a4a;
  --ls-header-muted: #6f7280;
  --ls-header-surface: #faf8f6;
  --ls-header-border: #ebe7e4;
  --ls-header-line: #d5d2ca;
  --ls-header-page: 1760px;
  --ls-header-pad: 52px;
}

.lt-ph-utility-shell,
.lt-production-header {
  font-family: Inter, system-ui, -apple-system, sans-serif !important;
  color: var(--ls-header-ink) !important;
}

.lt-ph-utility-shell {
  border-bottom: 1px solid var(--ls-header-border) !important;
  background: var(--ls-header-surface) !important;
}

.lt-ph-utility-shell .lt-ph-container,
.lt-production-header .lt-ph-container {
  width: min(var(--ls-header-page), calc(100% - (var(--ls-header-pad) * 2))) !important;
  max-width: none !important;
  margin-inline: auto !important;
}

.lt-ph-utility-shell .lt-ph-utility {
  display: flex !important;
  min-height: 38px !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 22px !important;
}

.lt-ph-utility-shell .lt-ph-nav,
.lt-ph-utility-shell .lt-ph-contact {
  display: flex !important;
  align-items: center !important;
}

.lt-ph-utility-shell .lt-ph-nav { gap: 22px !important; }
.lt-ph-utility-shell .lt-ph-nav a,
.lt-ph-utility-shell .lt-ph-city {
  display: inline-flex !important;
  min-height: 38px !important;
  padding: 0 !important;
  align-items: center !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--ls-header-text) !important;
  font-size: 12.5px !important;
  font-style: normal !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
}
.lt-ph-utility-shell .lt-ph-nav a:nth-child(2),
.lt-ph-utility-shell .lt-ph-nav a:nth-child(3),
.lt-ph-utility-shell .lt-ph-nav a:nth-child(4) {
  background: transparent !important;
  box-shadow: none !important;
  color: var(--ls-header-text) !important;
  font-style: normal !important;
  font-weight: 500 !important;
}
.lt-ph-utility-shell .lt-ph-city { gap: 7px !important; }
.lt-ph-utility-shell .lt-ph-city i {
  width: 7px !important;
  height: 7px !important;
  border-radius: 50% !important;
  background: #879a87 !important;
}
.lt-ph-utility-shell .lt-ph-nav a:hover,
.lt-ph-utility-shell .lt-ph-nav a:focus-visible { color: var(--ls-header-blue) !important; }
.lt-ph-utility-shell .lt-ph-contact { gap: 14px !important; }
.lt-ph-utility-shell .lt-ph-contact-phone { color: var(--ls-header-ink) !important; font-weight: 700 !important; }

.lt-production-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 10000 !important;
  min-height: 116px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--ls-header-border) !important;
  background: rgba(255,255,255,.96) !important;
  box-shadow: none !important;
}

.lt-production-header .lt-ph-main {
  display: grid !important;
  min-height: 76px !important;
  padding: 0 !important;
  grid-template-columns: 44px 172px 132px minmax(320px, 520px) minmax(18px, 1fr) auto !important;
  gap: 20px !important;
  align-items: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.lt-production-header .lt-ph-burger {
  display: grid !important;
  width: 44px !important;
  height: 44px !important;
  padding: 0 !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: #fff !important;
  color: var(--ls-header-muted) !important;
}
.lt-production-header .lt-ph-burger:hover,
.lt-production-header .lt-ph-burger:focus-visible { background: var(--ls-header-surface) !important; color: var(--ls-header-ink) !important; }
.lt-production-header .lt-ph-burger svg { width: 21px !important; height: 21px !important; }

.lt-production-header .lt-ph-brand {
  grid-column: 2 !important;
  width: 172px !important;
  max-width: 172px !important;
}
.lt-production-header .lt-ph-brand img { width: 100% !important; max-width: 172px !important; max-height: 52px !important; }
.lt-production-header .lt-ph-search-composite { display: contents !important; }

.lt-production-header .lt-ph-catalog {
  grid-column: 3 !important;
  display: inline-flex !important;
  width: 132px !important;
  height: 44px !important;
  padding: 0 14px !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  border: 1.5px solid rgba(47,47,131,.28) !important;
  border-radius: 8px !important;
  background: var(--ls-header-surface) !important;
  color: var(--ls-header-ink) !important;
  font-size: 14.5px !important;
  font-weight: 800 !important;
}
.lt-production-header .lt-ph-catalog:hover,
.lt-production-header .lt-ph-catalog:focus-visible,
.lt-production-header .lt-ph-catalog[aria-expanded="true"] {
  border-color: var(--ls-header-action) !important;
  background: var(--ls-header-action) !important;
  color: #fff !important;
  transform: none !important;
}
.lt-production-header .lt-ph-dots {
  display: grid !important;
  grid-template-columns: repeat(3, 5px) !important;
  grid-auto-rows: 5px !important;
  gap: 3px !important;
}
.lt-production-header .lt-ph-dots i { width: 5px !important; height: 5px !important; background: var(--ls-header-blue) !important; }
.lt-production-header .lt-ph-catalog[aria-expanded="true"] .lt-ph-dots i,
.lt-production-header .lt-ph-catalog:hover .lt-ph-dots i { background: #fff !important; }

.lt-production-header .lt-ph-search {
  grid-column: 4 !important;
  width: 100% !important;
  max-width: 520px !important;
  height: 44px !important;
  min-height: 44px !important;
  grid-template-columns: minmax(0,1fr) 44px !important;
  border: 1px solid var(--ls-header-line) !important;
  border-radius: 8px !important;
}
.lt-production-header .lt-ph-search:focus-within { border-color: var(--ls-header-blue) !important; box-shadow: 0 0 0 3px rgba(49,85,231,.14) !important; }
.lt-production-header .lt-ph-search-input { height: 42px !important; padding: 0 15px !important; font-size: 14.5px !important; }
.lt-production-header .lt-ph-search-submit { width: 42px !important; height: 42px !important; }
.lt-production-header .lt-ph-spacer { grid-column: 5 !important; }
.lt-production-header .lt-ph-actions {
  grid-column: 6 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 14px !important;
}
.lt-production-header .lt-ph-action {
  position: relative !important;
  display: grid !important;
  min-width: 44px !important;
  min-height: 44px !important;
  padding: 2px 0 !important;
  justify-items: center !important;
  gap: 4px !important;
  border-radius: 8px !important;
  color: var(--ls-header-text) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
}
.lt-production-header .lt-ph-action:hover { background: var(--ls-header-surface) !important; color: var(--ls-header-blue) !important; }
.lt-production-header .lt-ph-action svg { width: 21px !important; height: 21px !important; color: var(--ls-header-ink) !important; }
.lt-production-header .lt-ph-count { top: -3px !important; right: 4px !important; background: var(--ls-header-red) !important; }

.lt-production-header .lt-ph-quickbar { display: block !important; min-height: 40px !important; background: var(--ls-header-blue) !important; }
.lt-production-header .lt-ph-quickbar .lt-ph-container {
  display: flex !important;
  min-height: 40px !important;
  align-items: center !important;
  gap: 22px !important;
  overflow-x: auto !important;
  scrollbar-width: none !important;
}
.lt-production-header .lt-ph-quickbar a {
  flex: none !important;
  padding: 6px 0 !important;
  color: rgba(255,255,255,.72) !important;
  font-size: 12.5px !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
}
.lt-production-header .lt-ph-quickbar a:hover,
.lt-production-header .lt-ph-quickbar a:focus-visible { color: #fff !important; }

.lt-production-header .lt-ph-mobile-bottom { display: none !important; }
.lt-production-header :is(a,button,input):focus-visible { outline: 2px solid var(--ls-header-blue) !important; outline-offset: 2px !important; }

body.lt-ph-compact .lt-ph-utility-shell { display: none !important; }
body.lt-ph-compact .lt-production-header { min-height: 58px !important; box-shadow: 0 6px 18px rgba(38,38,38,.06) !important; }
body.lt-ph-compact .lt-production-header .lt-ph-main { min-height: 58px !important; }
body.lt-ph-compact .lt-production-header .lt-ph-quickbar { display: none !important; }
body.lt-ph-compact .lt-production-header .lt-ph-brand { width: 132px !important; max-width: 132px !important; }
body.lt-ph-compact .lt-production-header .lt-ph-brand img { max-width: 132px !important; }
body.lt-ph-compact .lt-production-header .lt-ph-action > span { display: none !important; }

.lt-production-header .lt-ph-mega {
  position: fixed !important;
  inset: 0 !important;
  z-index: 140 !important;
  overflow-y: auto !important;
  padding: 88px 0 40px !important;
  background: #fff !important;
}
.lt-production-header .lt-ph-mega-panel { width: min(var(--ls-header-page), calc(100% - (var(--ls-header-pad) * 2))) !important; padding: 0 !important; }
.lt-production-header .lt-ph-mega-panel::before { display: none !important; }
.lt-production-header .lt-ph-mega-close { position: fixed !important; top: 18px !important; right: var(--ls-header-pad) !important; width: auto !important; min-width: 44px !important; height: 44px !important; border: 1px solid var(--ls-header-border) !important; background: #fff !important; color: var(--ls-header-ink) !important; }
.lt-production-header .lt-ph-mega-layout { grid-template-columns: minmax(0,1fr) 340px !important; gap: 34px !important; }
.lt-production-header .lt-ph-mega-type-grid { display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap: 0 26px !important; }
.lt-production-header .lt-ph-category-card { min-height: 38px !important; padding: 7px 0 !important; border: 0 !important; border-bottom: 1px solid transparent !important; border-radius: 0 !important; background: #fff !important; box-shadow: none !important; }
.lt-production-header .lt-ph-category-card:hover { border-bottom-color: var(--ls-header-border) !important; }
.lt-production-header .lt-ph-category-card img { display: none !important; }
.lt-production-header .lt-ph-category-card a { position: static !important; display: block !important; padding: 0 24px 0 0 !important; color: var(--ls-header-ink) !important; font-size: 14px !important; text-shadow: none !important; }

.lt-production-header .lt-ph-mobile-backdrop,
.lt-production-header .lt-ph-mobile-drawer { display: block !important; }
.lt-production-header .lt-ph-mobile-backdrop { position: fixed !important; inset: 0 !important; z-index: 10003 !important; opacity: 0 !important; pointer-events: none !important; }
.lt-production-header .lt-ph-mobile-drawer { position: fixed !important; z-index: 10004 !important; top: 0 !important; right: 0 !important; bottom: 0 !important; left: auto !important; width: min(360px, 92vw) !important; transform: translateX(102%) !important; }
.lt-production-header.is-menu-open .lt-ph-mobile-backdrop { opacity: 1 !important; pointer-events: auto !important; }
.lt-production-header.is-menu-open .lt-ph-mobile-drawer { transform: translateX(0) !important; }

/*
 * Menu drawer repair — 2026-08-12
 *
 * The catalog header rules above were exposing the mobile drawer at desktop
 * widths but retained neither its panel styling nor its left-hand entrance.
 * Keep one consistent, scoped drawer on every breakpoint.  This deliberately
 * follows the existing .lt-ph-* header contract and does not alter ASPro's
 * stock mobile menu.
 */
.lt-production-header .lt-ph-mobile-backdrop {
  display: block !important;
  position: fixed !important;
  z-index: 10020 !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: rgba(20, 21, 33, 0.34) !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity 0.2s ease !important;
}

.lt-production-header .lt-ph-mobile-drawer {
  display: flex !important;
  position: fixed !important;
  z-index: 10021 !important;
  top: 0 !important;
  right: auto !important;
  bottom: auto !important;
  left: 0 !important;
  width: min(390px, calc(100% - 24px)) !important;
  height: 100dvh !important;
  padding: 18px !important;
  flex-direction: column !important;
  overflow-y: auto !important;
  border: 0 !important;
  border-radius: 0 18px 18px 0 !important;
  background: #fff !important;
  box-shadow: 20px 0 50px rgba(20, 21, 33, 0.16) !important;
  transform: translateX(-104%) !important;
  transition: transform 0.24s ease !important;
  visibility: hidden !important;
}

.lt-production-header.is-menu-open .lt-ph-mobile-backdrop {
  opacity: 1 !important;
  pointer-events: auto !important;
}

.lt-production-header.is-menu-open .lt-ph-mobile-drawer {
  visibility: visible !important;
  transform: translateX(0) !important;
}

.lt-production-header .lt-ph-drawer-head {
  display: flex !important;
  min-height: 54px !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid var(--lt-color-line) !important;
}

.lt-production-header .lt-ph-drawer-head .lt-ph-brand,
.lt-production-header .lt-ph-drawer-head .lt-ph-brand img {
  width: 176px !important;
  max-width: 176px !important;
}

.lt-production-header .lt-ph-drawer-close {
  display: grid !important;
  width: 44px !important;
  height: 44px !important;
  flex: 0 0 44px !important;
  place-items: center !important;
  padding: 0 !important;
  border: 1px solid var(--lt-color-line) !important;
  border-radius: 50% !important;
  background: #fff !important;
  color: var(--lt-color-ink) !important;
}

.lt-production-header .lt-ph-drawer-close span {
  display: block !important;
  font-size: 30px !important;
  font-weight: 300 !important;
  line-height: 1 !important;
}

.lt-production-header .lt-ph-drawer-nav {
  display: grid !important;
  margin-top: 20px !important;
  gap: 3px !important;
}

.lt-production-header .lt-ph-drawer-nav a {
  display: flex !important;
  min-height: 48px !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 0 12px !important;
  border-radius: 12px !important;
  color: var(--lt-color-ink) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
}

.lt-production-header .lt-ph-drawer-nav a::after {
  content: "→" !important;
  color: var(--lt-color-muted) !important;
  font-weight: 500 !important;
}

.lt-production-header .lt-ph-drawer-nav a:hover,
.lt-production-header .lt-ph-drawer-nav a:focus-visible {
  background: var(--lt-color-canvas) !important;
}

.lt-production-header .lt-ph-drawer-contact {
  display: grid !important;
  margin-top: auto !important;
  padding: 20px 12px 4px !important;
  gap: 7px !important;
  border-top: 1px solid var(--lt-color-line) !important;
  color: var(--lt-color-muted) !important;
  font-size: 13px !important;
}

.lt-production-header .lt-ph-drawer-contact > a {
  color: var(--lt-color-ink) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
}

.lt-production-header .lt-ph-drawer-social {
  display: flex !important;
  gap: 10px !important;
  margin-top: 7px !important;
}

.lt-production-header .lt-ph-drawer-social a {
  display: grid !important;
  width: 44px !important;
  height: 44px !important;
  place-items: center !important;
  padding: 0 !important;
  border: 1px solid var(--lt-color-line) !important;
  border-radius: 12px !important;
  color: var(--lt-color-ink) !important;
}

.lt-production-header .lt-ph-drawer-social svg {
  display: block !important;
  width: 21px !important;
  height: 21px !important;
  max-width: 21px !important;
  max-height: 21px !important;
}

body.lt-ph-menu-lock {
  overflow: hidden !important;
}

@media (min-width: 1900px) { :root { --ls-header-page: 2160px; } }
@media (min-width: 2400px) { :root { --ls-header-page: 2360px; } }

@media (max-width: 1500px) {
  :root { --ls-header-pad: 28px; }
  .lt-production-header .lt-ph-main { grid-template-columns: 44px 156px 118px minmax(280px,1fr) auto !important; gap: 14px !important; }
  .lt-production-header .lt-ph-brand { width: 156px !important; max-width: 156px !important; }
  .lt-production-header .lt-ph-brand img { max-width: 156px !important; }
  .lt-production-header .lt-ph-search { max-width: none !important; }
  .lt-production-header .lt-ph-spacer { display: none !important; }
  .lt-production-header .lt-ph-actions { grid-column: 5 !important; gap: 8px !important; }
}

@media (max-width: 1180px) and (min-width: 1025px) {
  .lt-production-header .lt-ph-main { grid-template-columns: 44px 142px 108px minmax(260px,1fr) 184px !important; gap: 10px !important; }
  .lt-production-header .lt-ph-brand { width: 142px !important; max-width: 142px !important; }
  .lt-production-header .lt-ph-catalog { width: 108px !important; padding-inline: 10px !important; }
  .lt-production-header .lt-ph-action > span { display: none !important; }
  .lt-production-header .lt-ph-actions { gap: 2px !important; }
}

@media (max-width: 1024px) {
  :root { --ls-header-pad: 28px; }
  .lt-production-header { min-height: 64px !important; }
  .lt-production-header .lt-ph-desktop,
  .lt-production-header .lt-ph-quickbar { display: none !important; }
  .lt-production-header .lt-ph-mobile { display: block !important; }
  .lt-production-header .lt-ph-mobile-main { width: min(var(--ls-header-page), calc(100% - (var(--ls-header-pad) * 2))) !important; min-height: 64px !important; padding: 8px 0 !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
  .lt-production-header .lt-ph-mobile-main .lt-ph-brand { grid-column: 2 !important; width: min(172px,40vw) !important; max-width: min(172px,40vw) !important; }
  .lt-production-header .lt-ph-mobile-actions { grid-column: 3 !important; width: auto !important; }
  body.lt-ph-compact .lt-ph-utility-shell { display: block !important; }
}

@media (max-width: 759px) {
  :root { --ls-header-pad: 16px; }
  html { overflow-x: hidden !important; }
  body.livego-shell { padding-bottom: 56px !important; }
  .lt-ph-utility-shell { display: none !important; }
  .lt-production-header .lt-ph-mobile-main { width: calc(100% - 32px) !important; }
  .lt-production-header .lt-ph-mobile-main .lt-ph-brand { width: min(172px,46vw) !important; max-width: min(172px,46vw) !important; }
  .lt-production-header .lt-ph-mobile-bottom {
    position: fixed !important;
    z-index: 10005 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    display: flex !important;
    min-height: 56px !important;
    border-top: 1px solid var(--ls-header-border) !important;
    background: rgba(255,255,255,.97) !important;
    box-shadow: 0 -6px 20px rgba(38,38,38,.06) !important;
  }
  .lt-production-header .lt-ph-mobile-bottom :is(a, button) {
    position: relative !important;
    display: grid !important;
    flex: 1 !important;
    min-width: 0 !important;
    min-height: 56px !important;
    padding: 5px 2px !important;
    place-items: center !important;
    align-content: center !important;
    gap: 3px !important;
    color: var(--ls-header-text) !important;
    font-size: 10.5px !important;
  }

  .lt-production-header .lt-ph-mobile-bottom button {
    border: 0 !important;
    background: transparent !important;
    font: inherit !important;
    cursor: pointer !important;
  }
  .lt-production-header .lt-ph-mobile-bottom svg { width: 22px !important; height: 22px !important; }
  .lt-production-header .lt-ph-mobile-bottom .lt-ph-count { top: 4px !important; right: 20% !important; }
}

@media (prefers-reduced-motion: reduce) {
  .lt-ph-utility-shell *, .lt-production-header * { animation: none !important; transition: none !important; }
}
