/* =========================================
   LE TOP NOTCH — MOBILE FIXES
   ========================================= */

/* ---------- Header dropdown image cards ---------- */
@media (max-width: 980px) {
  .ltn-img-card {
    position: relative !important;
    overflow: hidden !important;
  }

  .ltn-img-wrap {
    position: relative !important;
  }

  .ltn-img-info {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 14px !important;
    background: linear-gradient(to top, rgba(0,0,0,.24), rgba(0,0,0,.08)) !important;
  }

  .ltn-img-title,
  .ltn-img-sub {
    width: 100% !important;
    text-align: center !important;
    white-space: normal !important;
    overflow: visible !important;
    word-break: break-word !important;
  }

  .ltn-img-title {
    font-size: 12px !important;
    line-height: 1.25 !important;
    letter-spacing: .06em !important;
  }

  .ltn-img-sub {
    font-size: 11px !important;
    line-height: 1.25 !important;
    margin-top: 4px !important;
  }

  /* make sure mobile menu can actually scroll */
  .ltn-mob-nav {
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .ltn-mob-links {
    overflow-y: auto !important;
    max-height: calc(100vh - 90px) !important;
  }

  .ltn-burger {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .ltn-mob-overlay.on {
    display: block !important;
  }

  .ltn-mob-nav.on {
    transform: translateX(0) !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }
}

/* ---------- Shop / collection mosaic tiles ---------- */
@media (max-width: 980px) {
  .tile,
  .category-card,
  .img-tile {
    position: relative !important;
    overflow: hidden !important;
  }

  .tile-label,
  .category-label,
  .img-tile-lbl {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    z-index: 2 !important;
    width: 88% !important;
    text-align: center !important;
    white-space: normal !important;
    word-break: break-word !important;
    line-height: 1.15 !important;
    padding: 0 6px !important;
  }
}

@media (max-width: 640px) {
  .ltn-img-title {
    font-size: 11px !important;
    line-height: 1.2 !important;
  }

  .ltn-img-sub {
    font-size: 10px !important;
  }

  .tile-label,
  .category-label,
  .img-tile-lbl {
    font-size: clamp(12px, 4.2vw, 18px) !important;
    letter-spacing: .04em !important;
  }
}
