/* ============================================================
   Brand — override theme primary color to black
   ============================================================ */

:root {
  --bs-primary: #111827;
  --bs-primary-rgb: 17, 24, 39;
  --bs-link-color: #111827;
  --bs-link-color-rgb: 17, 24, 39;
  --bs-link-hover-color: #000000;
  --bs-link-hover-color-rgb: 0, 0, 0;
}

.btn-primary {
  --bs-btn-bg: #111827;
  --bs-btn-border-color: #111827;
  --bs-btn-hover-bg: #000000;
  --bs-btn-hover-border-color: #000000;
  --bs-btn-active-bg: #000000;
  --bs-btn-active-border-color: #000000;
  --bs-btn-focus-shadow-rgb: 17, 24, 39;
  --bs-btn-disabled-bg: #374151;
  --bs-btn-disabled-border-color: #374151;
}

.btn-outline-primary {
  --bs-btn-color: #111827;
  --bs-btn-border-color: #111827;
  --bs-btn-hover-bg: #111827;
  --bs-btn-hover-border-color: #111827;
  --bs-btn-active-bg: #111827;
  --bs-btn-active-border-color: #111827;
  --bs-btn-focus-shadow-rgb: 17, 24, 39;
}

/* ============================================================
   Header — dark top bar + refined main bar
   ============================================================ */

/* ── Header wrapper ────────────────────────────────────────── */

.header {
  top: var(--mnv-demo-notice-h, 45px) !important;
  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.08) !important;
  border-bottom: none !important;
}

/* Notice bar turi dengti header-top kai šis slenka po juo (tik desktop) */
.mnv-demo-notice {
  z-index: 1025 !important;
}

/* Mobile: notice fiksuotas apačioje */
@media (max-width: 767.98px) {
  .mnv-demo-notice {
    position: fixed !important;
    top: auto !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 1025 !important;
  }

  body {
    padding-top: 0 !important;
    padding-bottom: var(--mnv-demo-notice-h, 76px) !important;
  }

  .header {
    top: 0 !important;
  }
}

/* ── Navigation: compact menu items, arrow closer to label ── */

.ps-mainmenu--desktop .ps-mainmenu__tree {
  gap: 0.25rem 0.5rem !important;
}

.ps-mainmenu--desktop .ps-mainmenu__tree-link {
  padding: 0.5rem 0.125rem 0.5rem 0.625rem !important;
  font-size: 0.875rem;
}

.ps-mainmenu--desktop .ps-mainmenu__tree-dropdown-toggle {
  padding: 0.5rem 0.5rem 0.5rem 0.125rem !important;
}

/* ── Navigation: remove focus outline (black border on click/tab) ── */

.ps-mainmenu__tree-link:focus,
.ps-mainmenu__tree-link:focus-visible,
.ps-mainmenu__tree-dropdown-toggle:focus,
.ps-mainmenu__tree-dropdown-toggle:focus-visible,
.submenu__left-item:focus,
.submenu__left-item:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}

/* ── Account + cart in header-bottom (moved from header-top) ── */

.header-bottom__actions .header-block__action-btn,
.header-bottom__actions .header-top__right a,
.header-bottom__actions a {
  color: #374151 !important;
  font-size: 0.875rem !important;
  cursor: pointer !important;
}

.header-bottom__actions .header-block__action-btn:hover,
.header-bottom__actions .header-top__right a:hover,
.header-bottom__actions a:hover {
  color: #111827 !important;
}

.header-bottom__actions .header-block__badge {
  background-color: #111827 !important;
  color: #ffffff !important;
  font-size: 0.6rem !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 0 !important;
  line-height: 16px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.header-bottom__actions .dropdown-toggle {
  color: #374151 !important;
  font-size: 0.8125rem !important;
}

/* ── Hide inline desktop search bar — using offcanvas instead ── */

#_desktop_ps_searchbar {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  max-width: 0 !important;
  height: 0 !important;
  max-height: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
  flex: 0 0 0 !important;
}

/* ── Search panel ─────────────────────────────────────────────── */

.ps-search-panel {
  position: fixed;
  top: -100vh;
  left: 0;
  right: 0;
  z-index: 1045;
  background: #fff;
  overflow: hidden;
  max-height: 0;
  border-bottom: 1px solid transparent;
  box-shadow: none;
  transition: max-height 0.22s cubic-bezier(0, 1, 0.5, 1);
}

.ps-search-panel.open {
  max-height: 80px;
  border-bottom-color: #e2e8f0;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
  transition: max-height 0.25s ease;
}

.ps-search-panel__row {
  display: flex;
  align-items: center;
  padding-block: 0.625rem;
  gap: 0.75rem;
}

.ps-search-panel #_mobile_ps_searchbar,
.ps-search-panel .ps-searchbar__canvas-form {
  flex: 1 1 auto;
  min-width: 0;
}

.ps-search-panel .ps-searchbar__form {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.ps-search-panel .ps-searchbar__input,
.ps-search-panel .form-control {
  height: 38px !important;
  font-size: 0.875rem !important;
  border-radius: 8px !important;
  border-color: #e2e8f0 !important;
  background-color: #f8fafc !important;
}

.ps-search-panel .ps-searchbar__input:focus,
.ps-search-panel .form-control:focus {
  border-color: #111827 !important;
  background-color: #fff !important;
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.06) !important;
}

.ps-search-panel__submit,
.ps-searchbar__submit {
  height: 38px !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 0 0.75rem !important;
  font-size: 1rem !important;
  flex-shrink: 0 !important;
}

.ps-search-panel__cancel {
  color: #64748b !important;
  font-size: 0.875rem !important;
  white-space: nowrap;
  padding-inline: 0 !important;
}

/* ── Main bar — white, refined ─────────────────────────────── */

.header-bottom {
  padding-block: 0.75rem !important;
  background-color: #fff !important;
  border-bottom: none !important;
}

/* Search bar */
.header-bottom .search-widget form,
.header-bottom .js-search-toggle {
  border-radius: 50px !important;
}

.header-bottom input[type="text"],
.header-bottom input[type="search"] {
  border-radius: 50px !important;
  background-color: #f1f5f9 !important;
  border-color: transparent !important;
  font-size: 0.875rem !important;
}

.header-bottom input[type="text"]:focus,
.header-bottom input[type="search"]:focus {
  border-color: #111827 !important;
  background-color: #fff !important;
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.08) !important;
}

/* "More Modules" CTA button */
.header-bottom__buy {
  font-size: 0.8125rem !important;
  font-weight: 600 !important;
}

/* ============================================================
   Notice bar — light
   ============================================================ */

.mnv-demo-notice {
  background-color: #d7deed !important;
  background-image: none !important;
  border-bottom: 1px solid #d7deed !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.07) !important;
  color: #1e293b !important;
}

.mnv-demo-notice__text,
.mnv-demo-notice__text strong,
.mnv-demo-notice__meta {
  color: #1e293b !important;
}

.mnv-demo-notice__text a {
  color: #111827 !important;
}

.mnv-demo-notice__text a:hover {
  color: #000000 !important;
}

.mnv-demo-notice__btn--primary {
  background: #111827 !important;
  border-color: rgba(0, 0, 0, 0.15) !important;
  box-shadow: none !important;
  color: #fff !important;
}

.mnv-demo-notice__btn--primary:hover {
  background: #000000 !important;
}

.mnv-demo-notice__btn--outline {
  background-color: #ffffffbd !important;
  border-color: transparent !important;
  color: #1e293b !important;
}

.mnv-demo-notice__btn--outline:hover {
  background-color: #fff !important;
  border-color: transparent !important;
  color: #111827 !important;
}

/* ============================================================
   Footer — light clean redesign
   ============================================================ */

/* ── Base ──────────────────────────────────────────────────── */

.footer__before {
  background-color: #111827 !important;
  border-top: none !important;
  color: #94a3b8 !important;
}

.footer__main {
  background-color: #d7deed !important;
  border-top: 0 !important;
  color: #334155 !important;
}

/* ── Columns grid — 4 across from md ──────────────────────── */

@media (min-width: 768px) {
  .footer__main-top .footer-block {
    flex: 0 0 auto;
    width: 25%;
  }
}

.footer__main-top {
  padding-block: 2rem 0.5rem !important;
  border-bottom: 1px solid #e2e8f0;
}

/* ── Column headings ───────────────────────────────────────── */

.footer-block__title {
  position: relative;
  color: #1e293b !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-size: 0.7rem !important;
  margin-block-end: 1.5rem !important;
  padding-bottom: 0.75rem;
}

.footer-block__title::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 1.5rem;
  height: 2px;
  background: #111827;
  border-radius: 2px;
}

/* ── Links ─────────────────────────────────────────────────── */

.footer-block a,
.footer-block__list a {
  color: #1e293b !important;
  transition: color 0.18s ease, padding-left 0.18s ease;
  font-size: 0.875rem;
}

.footer-block a:hover,
.footer-block__list a:hover {
  color: #111827 !important;
  padding-left: 5px;
}

.footer-block__list li {
  border: none !important;
}

/* ── Store information ─────────────────────────────────────── */

.footer__main address,
.ps-contactinfo address,
.ps-contactinfo p,
.footer__main .footer-block p {
  color: #334155;
  font-size: 0.875rem;
  line-height: 1.8;
}

.ps-contactinfo a {
  color: #1e293b !important;
  font-size: 0.875rem;
}
.ps-contactinfo a:hover {
  color: #111827 !important;
}

/* ── Newsletter section — dark strip ───────────────────────── */

#emailsubscription_anchor_displayFooterBefore,
.footer__before .ps-emailsubscription {
  --bs-tertiary-bg: #111827;
  --bs-tertiary-bg-rgb: 17, 24, 39;
  --bs-secondary-color: #94a3b8;
  --bs-secondary-color-rgb: 148, 163, 184;
  background-color: #111827 !important;
  border: none !important;
  padding-block: 2rem !important;
}

/* Mobile: centruoti elementai */
@media (max-width: 767.98px) {
  [id*="emailsubscription_anchor"] .row.justify-content-center {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
  }

  [id*="emailsubscription_anchor"] .h3 {
    text-align: center !important;
    max-width: 100% !important;
  }

  [id*="emailsubscription_anchor"] form {
    width: 100% !important;
  }

  [id*="emailsubscription_anchor"] .text-body-secondary {
    text-align: center !important;
  }
}

/* Horizontalus layout md+ */
@media (min-width: 768px) {
  [id*="emailsubscription_anchor"] .row.justify-content-center {
    flex-direction: row !important;
    align-items: flex-start !important;
    flex-wrap: nowrap !important;
    gap: 2rem;
  }

  [id*="emailsubscription_anchor"] .h3 {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    text-align: left !important;
    margin-bottom: 0 !important;
    /* align with center of form pill (~44px), title line-height ~24px → offset ~10px */
    padding-top: 0.625rem !important;
    white-space: nowrap;
  }

  [id*="emailsubscription_anchor"] form {
    flex: 1 1 auto !important;
    width: auto !important;
    max-width: 440px !important;
    margin-bottom: 0 !important;
  }
}

[id*="emailsubscription_anchor"] .h3 {
  color: #f8fafc !important;
  font-weight: 600 !important;
  max-width: 350px !important;
  line-height: 1.3;
  text-wrap: auto;
  font-size: 1.8rem !important;
  letter-spacing: 0;
  margin-bottom: 0.5rem;
}

[id*="emailsubscription_anchor"] .h3::before {
  display: none;
}

/* Pill form wrapper — mirrors search bar shape */
[id*="emailsubscription_anchor"] form .d-flex {
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  padding: 4px !important;
  gap: 0 !important;
  margin-bottom: 0 !important;
}

[id*="emailsubscription_anchor"] form input[type="email"] {
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  color: #f8fafc !important;
  padding-inline: 1rem !important;
  font-size: 0.875rem !important;
}

[id*="emailsubscription_anchor"] form input[type="email"]::placeholder {
  color: rgba(255, 255, 255, 0.45) !important;
}

[id*="emailsubscription_anchor"] form input[type="submit"] {
  background-color: #fff !important;
  color: #111827 !important;
  border: none !important;
  border-radius: 999px !important;
  padding-block: 0.4rem !important;
  padding-inline: 1.25rem !important;
  font-size: 0.8125rem !important;
  font-weight: 600 !important;
  white-space: nowrap;
  box-shadow: none !important;
  transition: background-color 0.15s ease, color 0.15s ease;
}

[id*="emailsubscription_anchor"] form input[type="submit"]:hover {
  background-color: #f1f5f9 !important;
}

[id*="emailsubscription_anchor"] .text-body-secondary {
  color: #94a3b8 !important;
  font-size: 0.78rem !important;
}

/* ── Copyright ─────────────────────────────────────────────── */

.copyright {
  background-color: transparent !important;
  padding-block: 1.25rem !important;
  font-size: 0.78rem !important;
  color: #94a3b8 !important;
  text-align: center;
  border-top: 1px solid #00000012;
  margin-inline: 0 !important;
}

.copyright a {
  color: #94a3b8 !important;
}

.copyright a:hover {
  color: #64748b !important;
}

/* ── Mobile — collapse toggle ──────────────────────────────── */

.footer-block__title--toggle .stretched-link {
  color: #94a3b8 !important;
}

.footer-block__title--toggle {
  padding-bottom: 0.75rem;
}

/* ============================================================
   Mobile menu — offcanvas redesign (light)
   ============================================================ */

#mobileMenu {
  background-color: #ffffff !important;
  border-right: 1px solid #e2e8f0 !important;
  width: 85vw !important;
  max-width: 360px !important;
}

@media (max-width: 767.98px) {
  #mobileMenu {
    padding-bottom: var(--mnv-demo-notice-h, 76px) !important;
  }
}

/* Header — back button + close */
#mobileMenu .offcanvas-header {
  padding: 1rem 1.25rem 0.75rem !important;
  border-bottom: 1px solid #f1f5f9;
}

#mobileMenu .btn-close {
  filter: none !important;
  opacity: 0.4 !important;
}

#mobileMenu .js-back-button {
  color: #64748b !important;
  font-size: 0.875rem !important;
  gap: 0.25rem;
  display: flex;
  align-items: center;
}

/* Menu list items */
#mobileMenu .menu__list {
  list-style: none;
  padding: 0.5rem 0 !important;
  margin: 0 !important;
}

#mobileMenu .menu__list li {
  border-bottom: 1px solid #f1f5f9 !important;
  display: flex;
  align-items: center;
}

#mobileMenu .menu__list li:last-child {
  border-bottom: none !important;
}

/* Menu links — bigger, bolder */
#mobileMenu .menu__link {
  flex: 1 1 auto;
  display: block;
  padding: 1rem 1.25rem !important;
  color: #334155 !important;
  font-size: 1.0625rem !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  letter-spacing: 0.01em;
  transition: color 0.15s ease, padding-left 0.15s ease;
}

#mobileMenu .menu__link:hover,
#mobileMenu .menu__link:active {
  color: #111827 !important;
  padding-left: 1.625rem !important;
}

#mobileMenu li.current > .menu__link {
  color: #111827 !important;
}

/* Chevron button (expand child) */
#mobileMenu .menu__toggle-child {
  flex: 0 0 auto;
  color: #cbd5e1 !important;
  padding: 1rem 1.25rem !important;
  font-size: 1.25rem !important;
  border: none !important;
  background: none !important;
  transition: color 0.15s ease;
}

#mobileMenu .menu__toggle-child:hover {
  color: #111827 !important;
}

/* Submenu title */
#mobileMenu .menu__title {
  padding: 1.25rem 1.25rem 0.5rem !important;
  color: #94a3b8 !important;
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  border: none !important;
}

/* Footer area — currency, language, contact */
#mobileMenu .ps-mainmenu__additionnals {
  padding: 1.25rem 1.25rem 1.5rem !important;
  border-top: 1px solid #e2e8f0;
  background-color: #f8fafc !important;
  margin-top: auto;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 0.75rem !important;
}

#mobileMenu .ps-mainmenu__selects {
  justify-content: flex-start;
}

#mobileMenu .ps-mainmenu__additionnals a,
#mobileMenu .ps-mainmenu__additionnals button,
#mobileMenu .ps-mainmenu__additionnals .dropdown-toggle {
  color: #64748b !important;
  font-size: 0.8125rem !important;
}

#mobileMenu .ps-mainmenu__additionnals a:hover,
#mobileMenu .ps-mainmenu__additionnals button:hover {
  color: #1e293b !important;
}

/* Contact us — full-width outlined button */
#mobileMenu #_mobile_ps_contactinfo a {
  display: block;
  width: 100%;
  padding: 0.65rem 1rem !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 8px;
  text-align: center;
  font-size: 0.875rem !important;
  font-weight: 500 !important;
  color: #64748b !important;
  transition: border-color 0.15s, color 0.15s, background-color 0.15s;
}

#mobileMenu #_mobile_ps_contactinfo a:hover {
  border-color: #111827 !important;
  color: #111827 !important;
  background-color: #f3f4f6 !important;
  padding-left: 1rem !important;
}
