/* Native Smoke Shop's supplied transparent logo, with its empty margins hidden. */
/* Scope everything to Native Smoke Shop; Native Bulk Smokes shares these files. */
:root[data-store="shop"] .nss-sticky-nav .brand {
  min-width: 0;
  max-width: 100%;
  line-height: 0;
}
:root[data-store="shop"] .nss-logo-frame {
  display: block;
  position: relative;
  overflow: hidden;
  width: 220px;
  max-width: 100%;
  aspect-ratio: 2895 / 991;
  flex-shrink: 0;
}
/* The original 3840 x 1281 PNG is unchanged. Its artwork starts at (462, 152)
   and occupies 2895 x 991 pixels, so only transparent canvas is clipped. */
:root[data-store="shop"] .nss-logo-frame img {
  display: block;
  position: absolute;
  width: 132.64249%;
  max-width: none;
  height: auto;
  left: -15.95855%;
  top: -15.33804%;
}
:root[data-store="shop"] .nss-footer-brand {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  line-height: 0;
}
:root[data-store="shop"] .nss-footer-brand .nss-logo-frame {
  width: 192px;
}
@media (min-width: 901px) and (max-width: 1100px) {
  :root[data-store="shop"] .nss-sticky-nav .nss-logo-frame {
    width: 187px;
  }
}
@media (max-width: 900px) {
  :root[data-store="shop"] .nss-sticky-nav .nss-logo-frame {
    width: 200px;
  }
}
@media (max-width: 620px) {
  /* Keep the logo at the left with menu, account and cart on the same row. */
  :root[data-store="shop"] .nss-sticky-nav {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto;
    justify-items: stretch;
    align-items: center;
    column-gap: 8px;
    row-gap: 0;
    padding-top: 7px;
    padding-bottom: 7px;
  }
  :root[data-store="shop"] .nss-sticky-nav .brand {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
    width: min(190px, 40vw);
    max-width: 100%;
  }
  :root[data-store="shop"] .nss-sticky-nav .nss-logo-frame {
    width: 100%;
  }
  :root[data-store="shop"] .nss-sticky-nav .nav-actions {
    grid-column: 2;
    grid-row: 1;
    width: auto;
    justify-content: flex-end;
    justify-self: end;
    margin-left: 0;
    gap: 4px;
  }
}

/* A failed catalog request can render the NSS error header before setTheme.
   Bound only its NSS-specific logo while the store marker is absent; normal
   shop styling above and the independent Bulk text mark remain untouched. */
:root:not([data-store]) .nss-logo-frame {
  display: block;
  width: min(220px, 40vw);
  max-width: 100%;
}
:root:not([data-store]) .nss-logo-frame img {
  display: block;
  width: 100%;
  height: auto;
}
