/* ===================================================
   NEW POOJA JEWELLER — MOBILE REDESIGN
   Fixes: Collections grid, hero-product overlap in shop
   Mobile-first. Applied at ≤768px.
   =================================================== */

/* ── SMOOTH BASE ── */
* { -webkit-tap-highlight-color: transparent; }

/* ============================================================
   INDEX PAGE — COLLECTIONS GRID (Image 1 Fix)
   Desktop: 4-col grid → Mobile: Full-width stacked cards
   with horizontal swipe carousel feel
   ============================================================ */
@media (max-width: 768px) {

  /* Section padding */
  .coll-section-wrap {
    padding: 32px 0 !important;
    background: var(--cream);
    overflow: hidden;
  }

  .coll-section-wrap .sec-title,
  .coll-section-wrap .sec-div {
    padding: 0 18px;
  }

  /* Horizontal scroll carousel */
  .coll-grid {
    display: flex !important;
    flex-direction: row !important;
    overflow-x: auto;
    overflow-y: visible;
    gap: 14px !important;
    padding: 8px 18px 20px !important;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    margin: 0 !important;
    max-width: none !important;
  }

  .coll-grid::-webkit-scrollbar {
    display: none;
  }

  /* Each card: fixed width so 1.2 cards visible → hints scroll */
  .coll-card {
    flex: 0 0 72vw !important;
    min-width: 72vw !important;
    max-width: 280px !important;
    height: 340px !important;
    border-radius: 18px !important;
    scroll-snap-align: start;
    box-shadow: 0 8px 28px rgba(0,0,0,0.13);
  }

  .coll-inner {
    padding: 20px 18px !important;
  }

  .coll-sub {
    font-size: 10px !important;
    letter-spacing: 2px !important;
    color: var(--gold-light) !important;
  }

  .coll-name {
    font-size: 24px !important;
    line-height: 1.2 !important;
  }

  .coll-arrow {
    width: 36px !important;
    height: 36px !important;
    top: 14px !important;
    right: 14px !important;
  }

  /* Scroll indicator dots */
  .coll-scroll-dots {
    display: flex;
    justify-content: center;
    gap: 6px;
    padding: 6px 0 0;
  }

  .coll-scroll-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #ddd;
  }

  .coll-scroll-dot.active {
    background: var(--gold);
    width: 18px;
    border-radius: 3px;
  }

  /* ── HERO SLIDER on mobile ── */
  .hero-slider {
    height: 60vh !important;
    min-height: 350px !important;
    max-height: 480px !important;
  }

  .slide-content {
    left: 18px !important;
    max-width: 75% !important;
  }

  .slide-content .tag {
    font-size: 10px;
    letter-spacing: 2px;
  }

  .slide-content h1 {
    font-size: clamp(20px, 6vw, 30px) !important;
    margin-bottom: 10px;
  }

  .slide-content p {
    display: none;
  }

  .btn-gold {
    padding: 9px 16px !important;
    font-size: 11px !important;
  }

  /* ── TRUST BAR ── */
  .trust-bar {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 0 !important;
    padding: 0 !important;
  }

  .trust-item {
    border-right: 1px solid #e0dbd3 !important;
    border-bottom: 1px solid #e0dbd3 !important;
    padding: 14px 12px !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    min-width: unset !important;
    gap: 6px !important;
  }

  .trust-item:nth-child(2n) {
    border-right: none !important;
  }

  .trust-item:nth-child(3),
  .trust-item:nth-child(4) {
    border-bottom: none !important;
  }

  .trust-item svg {
    width: 20px !important;
    height: 20px !important;
    color: var(--gold) !important;
  }

  .trust-text strong {
    font-size: 12px;
  }

  .trust-text span {
    font-size: 10px;
  }

  /* ── BEST SELLERS ── */
  .bsell {
    padding: 32px 0 !important;
  }

  .bsell .sec-title,
  .bsell .sec-div {
    padding: 0 18px;
  }

  .cat-tabs {
    padding: 0 18px !important;
    gap: 0 !important;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .cat-tabs::-webkit-scrollbar { display: none; }

  .tab-btn {
    flex-shrink: 0;
    font-size: 11px !important;
    padding: 10px 14px !important;
  }

  /* Product row: horizontal carousel on mobile */
  .prod-row {
    display: flex !important;
    flex-direction: row !important;
    overflow-x: auto !important;
    gap: 12px !important;
    padding: 12px 18px 16px !important;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    max-width: none !important;
    margin: 0 !important;
  }

  .prod-row::-webkit-scrollbar { display: none; }

  .prod-card {
    flex: 0 0 44vw !important;
    min-width: 160px !important;
    max-width: 190px !important;
    scroll-snap-align: start;
  }

  .prod-name {
    font-size: 12px !important;
  }

  .price-cur {
    font-size: 13px !important;
  }

  .price-old {
    font-size: 11px !important;
  }

  /* ── STICKY SECTION ── */
  .sticky-section {
    flex-direction: column !important;
  }

  .sticky-left {
    position: relative !important;
    top: auto !important;
    height: 55vw !important;
    min-height: 200px;
    max-height: 280px;
    width: 100% !important;
    flex: none !important;
  }

  .sticky-img-div {
    padding: 24px !important;
  }

  .st-label {
    font-size: 24px !important;
  }

  .sticky-right {
    display: flex !important;
    flex-direction: row !important;
    overflow-x: auto !important;
    gap: 12px !important;
    padding: 14px 18px !important;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    width: 100% !important;
    scroll-snap-type: x mandatory;
  }

  .sticky-right::-webkit-scrollbar { display: none; }

  .sticky-right .prod-card {
    flex: 0 0 44vw !important;
    min-width: 155px !important;
    max-width: 185px !important;
    scroll-snap-align: start;
  }

  /* ── RELEASES GRID ── */
  .releases-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    padding: 0 16px 28px !important;
  }

  .rel-card:first-child {
    grid-row: auto !important;
    grid-column: auto !important;
    height: 54vw !important;
  }

  .rel-card {
    height: 44vw !important;
    min-height: 160px;
  }

  /* ── STORE SECTION ── */
  .store-sec {
    flex-direction: column !important;
  }

  .store-left {
    padding: 28px 18px !important;
  }

  .store-right {
    min-width: auto !important;
    padding: 28px 18px !important;
  }

  /* ── LINKS BAR ── */
  .links-bar {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 0 !important;
    padding: 0 !important;
  }

  .link-item {
    border: none !important;
    border-right: 1px solid #eee !important;
    border-bottom: 1px solid #eee !important;
    padding: 16px 12px !important;
  }

  .link-item:nth-child(2n) {
    border-right: none !important;
  }

  /* ── INSTAGRAM GRID ── */
  .ig-section {
    padding: 28px 0 !important;
  }

  .ig-section .ig-header {
    padding: 0 18px;
  }

  .ig-grid {
    display: flex !important;
    overflow-x: auto !important;
    gap: 8px !important;
    padding: 0 18px 8px !important;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    max-width: none !important;
  }

  .ig-grid::-webkit-scrollbar { display: none; }

  .ig-card {
    flex: 0 0 38vw !important;
    min-width: 130px !important;
    max-width: 160px !important;
    border-radius: 10px !important;
  }
}


/* ============================================================
   SHOP PAGE — FIX HERO + PRODUCT OVERLAP (Image 2 Fix)
   The page-hero sits above the product grid. On mobile the
   hero has extra bottom padding that creates visual overlap.
   We also restyle the shop hero banner for mobile.
   ============================================================ */
@media (max-width: 768px) {

  /* Shop page hero banner — clean and compact */
  .page-hero {
    padding: 36px 18px 28px !important;
    min-height: auto !important;
    text-align: left !important;
    position: relative !important;
    /* Ensure it does NOT overlap what's below */
    overflow: hidden !important;
    z-index: 0 !important;
  }

  .page-hero h1 {
    font-size: 28px !important;
    margin-bottom: 6px !important;
  }

  /* Product grid in shop */
  .prod-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
    /* NO overflow, NO negative margins that cause overlap */
    position: relative !important;
    z-index: 1 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  /* CRITICAL: ensure .shop-main has clear stacking */
  .shop-main {
    padding: 14px 12px !important;
    position: relative !important;
    z-index: 1 !important;
    background: #fff !important;
    /* Remove any top negative margin/offset */
    margin-top: 0 !important;
  }

  /* Layout: remove grid, stack vertically */
  .shop-layout {
    display: block !important;
    position: relative !important;
  }

  /* Shop mobile: attractive horizontal banner strip */
  .shop-hero-strip {
    background: linear-gradient(135deg, #1a1a2e 0%, #2d1a0e 100%);
    padding: 18px 18px 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    position: relative;
    overflow: hidden;
  }

  .shop-hero-strip::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at 80% 50%, rgba(201,168,76,0.18) 0%, transparent 70%);
    pointer-events: none;
  }

  .shop-hero-strip-text {
    font-size: 16px;
    color: #fff;
    line-height: 1.3;
  }

  .shop-hero-strip-badge {
    background: var(--gold);
    color: #fff;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 6px 14px;
    border-radius: 20px;
    white-space: nowrap;
    flex-shrink: 0;
  }

  /* Shop header: filter + sort on same row */
  .shop-header {
    flex-direction: row !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-bottom: 14px !important;
    padding-bottom: 10px;
    border-bottom: 1px solid #f0ece5;
  }

  .shop-title {
    font-size: 18px !important;
  }

  .prod-count {
    font-size: 11px !important;
  }

  .sort-sel {
    font-size: 12px !important;
    padding: 7px 10px !important;
  }

  /* Mobile filter button — styled */
  .mob-filter-btn {
    background: var(--cream) !important;
    border: 1px solid var(--border) !important;
    border-radius: 20px !important;
    padding: 7px 14px !important;
    font-size: 12px !important;
    color: #444 !important;
    font-weight: 500 !important;
    letter-spacing: 0.5px !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
  }

  /* Product cards in shop page */
  .shop-main .prod-card {
    flex: none !important;
    min-width: unset !important;
    max-width: unset !important;
    width: 100% !important;
    scroll-snap-align: unset !important;
  }

  /* Pagination */
  .pagination {
    gap: 6px !important;
    margin-top: 24px !important;
    flex-wrap: wrap;
  }

  .page-btn {
    width: 32px !important;
    height: 32px !important;
    font-size: 12px !important;
  }
}

/* ============================================================
   EXTRA SMALL — ≤ 400px
   ============================================================ */
@media (max-width: 400px) {

  .coll-card {
    flex: 0 0 80vw !important;
    min-width: 80vw !important;
  }

  .prod-card {
    flex: 0 0 48vw !important;
    min-width: 150px !important;
  }

  .sticky-right .prod-card {
    flex: 0 0 48vw !important;
    min-width: 145px !important;
  }

  .ig-card {
    flex: 0 0 40vw !important;
  }
}

/* ============================================================
   SCROLL-SNAP MOMENTUM — cross-browser
   ============================================================ */
.coll-grid,
.prod-row,
.sticky-right,
.ig-grid {
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
}
