@media (max-width: 720px) {
  body { overflow-x: clip; }
  .header-main {
    position: relative;
    width: calc(100% - 24px);
    height: 57px;
    gap: 7px;
  }

  .northline-wordmark {
    font-size: 13px;
    letter-spacing: 1.7px;
  }

  .store-menu {
    display: flex;
    width: 34px;
    height: 34px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    border: 1px solid var(--nl-line);
    background: transparent;
    color: var(--nl-black);
    cursor: pointer;
    font-size: 0;
  }

  .store-menu::before,
  .store-menu::after {
    position: absolute;
    width: 15px;
    height: 1px;
    background: var(--nl-black);
    content: "";
  }

  .store-menu::before { transform: translateY(-3px); }
  .store-menu::after { transform: translateY(3px); }
  .store-menu[aria-expanded="true"]::before { transform: rotate(45deg); }
  .store-menu[aria-expanded="true"]::after { transform: rotate(-45deg); }

  .store-nav {
    position: absolute;
    top: 56px;
    right: 0;
    left: 0;
    z-index: 17;
    display: none;
    height: auto;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 7px 18px 12px;
    border: 1px solid var(--nl-line);
    border-top: 0;
    background: var(--nl-white);
    box-shadow: 0 14px 25px rgb(18 18 17 / 14%);
  }

  .store-nav.is-open { display: flex; }
  .store-nav a { display: flex; height: auto; min-height: 39px; justify-content: flex-start; border-bottom: 1px solid #e7e6df; font-size: 10px; }
  .store-nav a:last-child { border-bottom: 0; }
  .store-nav a::after { display: none; }
  .store-tools { flex: 0 0 auto; gap: 2px; }
  .tool-button { min-width: 27px; height: 32px; font-size: 16px; }
  .account-tool, .wishlist-tool { display: none; }
  .cart-tool { gap: 3px; padding-inline: 4px; }
  .cart-word { display: none; }
  .store-subbar { padding-inline: 12px; font-size: 5px; }
  .store-subbar span:nth-child(2) { display: none; }
  .store-subbar > a { font-size: 6px; }
  .brand-note > .content-width { gap: 10px; }
  .brand-note > .content-width > span:first-child { flex: 0 0 72px; font-size: 5px; line-height: 1.5; }
  .brand-note p { min-width: 0; font-size: 14px; }
  .note-mark { flex: 0 0 auto; font-size: 19px; }
  .content-width { width: calc(100% - 32px); }
  .store-hero { min-height: 470px; }
  .hero-copy { width: calc(100% - 32px); padding-block: 58px 76px; }
  .hero-copy h1 { font-size: clamp(42px, 12vw, 58px); letter-spacing: -1.2px; }
  .hero-copy > p { max-width: 300px; }
  .hero-caption { padding-inline: 16px; }
  .hero-side-index { right: 10px; }
  .collection-section, .catalog-section, .about-section, .faq-section { padding-block: 54px; }
  .collection-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: auto; gap: 7px; }
  .collection-card:nth-child(1) { grid-column: 1 / -1; grid-row: auto; min-height: 210px; }
  .collection-card:nth-child(n+2) { grid-column: span 1; min-height: 145px; }
  .section-top { align-items: flex-start; flex-direction: column; gap: 10px; }
  .section-top h2 { font-size: 36px; }
  .catalog-toolbar { align-items: flex-start; flex-direction: column; }
  .category-chips { width: 100%; }
  .catalog-controls { width: 100%; justify-content: flex-start; }
  .catalog-controls label { font-size: 6px; }
  .catalog-controls select { max-width: 82px; }
  .search-row { flex-wrap: wrap; }
  .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px 8px; }
  .product-image > button:first-child { height: clamp(150px, 54vw, 220px); }
  .product-details > div:first-child { align-items: flex-start; flex-direction: column; gap: 2px; }
  .product-details h3 { font-size: 9px; }
  .product-actions { align-items: stretch; flex-direction: column; }
  .product-actions button { min-height: 30px; }
  .promo-band { grid-template-columns: 1fr; }
  .promo-content { padding: 32px 20px; }
  .promo-content h2 { font-size: 42px; }
  .promo-image { min-height: 235px; }
  .about-grid { grid-template-columns: 1fr; gap: 23px; }
  .about-image { height: 270px; }
  .reviews-grid, .faq-grid { grid-template-columns: 1fr; gap: 18px; }
  .review-cards { grid-template-columns: 1fr; }
  .review-cards blockquote > p { min-height: 0; }
  .newsletter-inner { align-items: flex-start; flex-direction: column; gap: 17px; }
  .newsletter-inner form { width: 100%; }
  .footer-main { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 17px 12px; }
  .footer-main > a { grid-column: 1 / -1; }
  .footer-bottom { flex-direction: column; align-items: flex-start; }
  .product-detail { grid-template-columns: 1fr; gap: 10px; }
  .product-detail > img { height: 260px; }
  .product-dialog, .size-dialog, .account-dialog, .checkout-dialog, .order-dialog { padding: 18px 13px; }
}

@media (max-width: 390px) {
  .header-main { width: calc(100% - 18px); gap: 4px; }
  .northline-wordmark { font-size: 11px; letter-spacing: 1.2px; }
  .store-menu { width: 31px; height: 31px; }
  .tool-button { min-width: 24px; }
  .brand-note > .content-width { gap: 7px; }
  .brand-note > .content-width > span:first-child { flex-basis: 62px; }
  .intro-inner { gap: 10px; }
  .product-image > button:first-child { height: 155px; }
  .category-chips button { padding-inline: 7px; font-size: 6px; }
}
