/* Shared SOW header + mobile burger menu */

.sow-nav-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: 1px solid #ddd;
  background: #fff;
  cursor: pointer;
  flex-shrink: 0;
  -webkit-appearance: none;
  appearance: none;
}

.sow-nav-toggle-bars,
.sow-nav-toggle-bars::before,
.sow-nav-toggle-bars::after {
  display: block;
  width: 18px;
  height: 2px;
  background: #111;
  position: relative;
  transition: transform 180ms ease, opacity 180ms ease, background-color 180ms ease;
}

.sow-nav-toggle-bars::before,
.sow-nav-toggle-bars::after {
  content: "";
  position: absolute;
  left: 0;
}

.sow-nav-toggle-bars::before { top: -6px; }
.sow-nav-toggle-bars::after { top: 6px; }

.sow-nav.is-open .sow-nav-toggle-bars {
  background: transparent;
}

.sow-nav.is-open .sow-nav-toggle-bars::before {
  top: 0;
  transform: rotate(45deg);
  background: #fd473a;
}

.sow-nav.is-open .sow-nav-toggle-bars::after {
  top: 0;
  transform: rotate(-45deg);
  background: #fd473a;
}

.sow-nav.is-open .sow-nav-toggle {
  border-color: #fd473a;
}

@media (max-width: 1024px) {
  .sow-nav-inner {
    flex-wrap: wrap !important;
    padding: 0.75rem 1rem !important;
    gap: 0.65rem !important;
    align-items: center !important;
  }

  .sow-nav-logo {
    order: 1;
  }

  .sow-nav-toggle {
    display: inline-flex !important;
    order: 2;
    margin-left: auto !important;
  }

  .sow-nav-actions {
    order: 3;
    margin-left: 0 !important;
  }

  .sow-nav-logo img {
    height: 36px !important;
  }

  .sow-nav-links,
  nav.sow-nav-links {
    display: none !important;
    order: 4 !important;
    width: 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0.35rem 0 0.5rem !important;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
    overflow: visible !important;
  }

  .sow-nav.is-open .sow-nav-links,
  .sow-nav.is-open nav.sow-nav-links {
    display: flex !important;
  }

  .sow-nav-links a {
    display: block !important;
    padding: 0.9rem 0.15rem !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    white-space: normal !important;
    font-size: 1.05rem !important;
  }

  .sow-nav-links a:last-child {
    border-bottom: 0;
  }

  #cart-countdown-closed {
    display: none !important;
  }

  body.sow-nav-lock {
    overflow: hidden !important;
  }
}
