
    /* ===== SHOP PAGE STYLES ===== */

    .page-hero {
      min-height: 55vh;
      display: flex;
      align-items: center;
      justify-content: center;
      text-align: center;
      background: radial-gradient(ellipse 90% 80% at 50% 0%, #5C3317 0%, #2C1A0E 55%, #1A0D06 100%);
      position: relative;
      overflow: hidden;
      padding-top: 8rem;
    }

    .page-hero h1 {
      font-family: var(--font-display);
      font-size: clamp(4rem, 10vw, 8rem);
      letter-spacing: 0.2em;
      color: transparent;
      -webkit-text-stroke: 1px rgba(245, 237, 227, 0.7);
      animation: heroFadeUp 1s 0.6s var(--ease-expo) both;
    }

    .page-hero p {
      font-family: var(--font-serif);
      font-style: italic;
      font-size: clamp(1rem, 2vw, 1.5rem);
      color: var(--nude);
      font-weight: 300;
      animation: heroFadeUp 1s 0.9s var(--ease-expo) both;
    }

    @keyframes heroFadeUp {
      from {
        opacity: 0;
        transform: translateY(40px);
      }

      to {
        opacity: 1;
        transform: translateY(0);
      }
    }

    /* SHOP MAIN */
    .shop-main {
      padding: 5rem 4rem 8rem;
      background: linear-gradient(180deg, #1A0D06 0%, #2C1A0E 50%, #1A0D06 100%);
      min-height: 100vh;
    }

    /* FILTERS */
    .shop-controls {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 3.5rem;
      flex-wrap: wrap;
      gap: 1.5rem;
    }

    .filter-group {
      display: flex;
      gap: 0.7rem;
      flex-wrap: wrap;
    }

    .filter-btn {
      padding: 0.55rem 1.4rem;
      border-radius: var(--radius-pill);
      border: 1px solid rgba(200, 146, 42, 0.2);
      background: transparent;
      color: var(--nude);
      font-family: var(--font-body);
      font-size: 0.72rem;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      cursor: none;
      transition: all 0.3s var(--ease-silk);
    }

    .filter-btn:hover {
      border-color: rgba(200, 146, 42, 0.5);
      color: var(--gold-light);
    }

    .filter-btn.active {
      background: linear-gradient(135deg, var(--gold), var(--bronze));
      border-color: transparent;
      color: var(--brown-deep);
      font-weight: 500;
    }

    .sort-select {
      background: rgba(255, 255, 255, 0.04);
      border: 1px solid rgba(200, 146, 42, 0.2);
      color: var(--nude);
      padding: 0.55rem 1.2rem;
      border-radius: var(--radius-pill);
      font-family: var(--font-body);
      font-size: 0.72rem;
      outline: none;
      cursor: none;
      transition: border-color 0.3s;
    }

    .sort-select:focus {
      border-color: rgba(200, 146, 42, 0.5);
    }

    .sort-select option {
      background: #2C1A0E;
      color: var(--cream);
    }

   /* PRODUCT GRID */
.shop-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 2rem;
}

.shop-card {
  background: rgba(255, 255, 255, 0.025);
  border: 1px solid rgba(200, 146, 42, 0.1);
  border-radius: var(--radius-xl);
  overflow: hidden;
  transition: all 0.5s var(--ease-silk);
  cursor: none;
  position: relative;

  /* مهم */
  display: flex;
  flex-direction: column;
  height: 100%;
}

.card-body {
  display: flex;
  flex-direction: column;
  flex: 1;
}

/* الوصف له مساحة ثابتة */
.card-desc-wrapper {
  height: 75px;
  margin-bottom: 15px;
  overflow: hidden;
}

.card-desc {
  margin: 0;
  line-height: 1.6;

  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;

  overflow: hidden;
}

/* Read More */
.read-more-btn {
  border: none;
  background: transparent;
  padding: 0;
  margin-top: 4px;

  color: #c8922a;
  font-size: 13px;
  font-weight: 600;

  cursor: pointer;
}

.read-more-btn:hover {
  text-decoration: underline;
}

/* زرار السلة يفضل تحت */
.card-footer {
  margin-top: auto;
}

    .shop-card:hover {
      border-color: rgba(200, 146, 42, 0.35);
      transform: translateY(-8px);
      box-shadow: 0 30px 80px rgba(0, 0, 0, 0.5), 0 0 40px rgba(200, 146, 42, 0.07);
    }

    .card-img {
      aspect-ratio: 1;
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
      overflow: hidden;
    }

    .card-img::before {
      content: '';
      position: absolute;
      inset: 0;
      background: radial-gradient(ellipse at center, rgba(200, 146, 42, 0.08) 0%, transparent 70%);
      opacity: 0;
      transition: opacity 0.4s;
    }

    .shop-card:hover .card-img::before {
      opacity: 1;
    }

    .card-lens {
      width: 62%;
      transition: transform 0.6s var(--ease-silk);
      filter: drop-shadow(0 0 25px rgba(200, 146, 42, 0.25));
    }

    .shop-card:hover .card-lens {
      transform: scale(1.1) rotate(6deg);
      filter: drop-shadow(0 0 45px rgba(200, 146, 42, 0.5));
    }

    .card-badge {
      position: absolute;
      top: 1rem;
      left: 1rem;
      padding: 0.3rem 0.8rem;
      border-radius: var(--radius-pill);
      font-size: 0.6rem;
      letter-spacing: 0.2em;
      text-transform: uppercase;
      font-weight: 500;
    }

    .badge-new {
      background: linear-gradient(135deg, var(--gold), var(--bronze));
      color: var(--brown-deep);
    }

    .badge-sold {
      background: rgba(200, 146, 42, 0.15);
      color: var(--gold);
      border: 1px solid rgba(200, 146, 42, 0.3);
    }

    .badge-limited {
      background: rgba(92, 51, 23, 0.8);
      color: var(--nude);
      border: 1px solid rgba(200, 146, 42, 0.2);
    }

    .badge-sale {
      background: rgba(180, 60, 60, 0.8);
      color: #ffd;
      border: 1px solid rgba(200, 100, 100, 0.3);
    }

    .card-wish {
      position: absolute;
      top: 1rem;
      right: 1rem;
      width: 36px;
      height: 36px;
      border-radius: 50%;
      border: 1px solid rgba(200, 146, 42, 0.25);
      background: rgba(28, 16, 8, 0.7);
      backdrop-filter: blur(8px);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1rem;
      transition: all 0.3s;
      cursor: none;
    }

    .card-wish:hover {
      color: #e74c3c;
      border-color: #e74c3c;
      background: rgba(231, 76, 60, 0.1);
    }

    .card-wish.active {
      color: #e74c3c;
      border-color: #e74c3c;
    }

    /* Quick view overlay */
    .card-overlay {
      position: absolute;
      inset: 0;
      background: rgba(28, 16, 8, 0.75);
      backdrop-filter: blur(4px);
      display: flex;
      align-items: center;
      justify-content: center;
      opacity: 0;
      transition: opacity 0.4s;
    }

    .shop-card:hover .card-overlay {
      opacity: 1;
    }

    .quick-view-btn {
      background: rgba(200, 146, 42, 0.9);
      color: var(--brown-deep);
      border: none;
      padding: 0.7rem 1.5rem;
      border-radius: var(--radius-pill);
      font-family: var(--font-body);
      font-size: 0.65rem;
      letter-spacing: 0.2em;
      text-transform: uppercase;
      font-weight: 600;
      cursor: none;
      transform: translateY(10px);
      transition: transform 0.4s var(--ease-silk), background 0.3s;
    }

    .shop-card:hover .quick-view-btn {
      transform: translateY(0);
    }

    .quick-view-btn:hover {
      background: var(--gold-light);
    }

    .card-body {
      padding: 1.5rem;
    }

    .card-category {
      font-size: 0.62rem;
      letter-spacing: 0.3em;
      text-transform: uppercase;
      color: var(--gold);
      margin-bottom: 0.4rem;
    }

    .card-name {
      font-family: var(--font-serif);
      font-size: 1.25rem;
      color: var(--cream);
      margin-bottom: 0.3rem;
    }

    .card-desc {
      font-size: 0.78rem;
      color: var(--mocha);
      line-height: 1.7;
      margin-bottom: 1rem;
      font-weight: 300;
    }

    /* Color swatches */
    .card-swatches {
      display: flex;
      gap: 0.4rem;
      margin-bottom: 1.2rem;
    }

    .swatch {
      width: 18px;
      height: 18px;
      border-radius: 50%;
      cursor: none;
      border: 1px solid rgba(255, 255, 255, 0.15);
      transition: transform 0.2s;
    }

    .swatch:hover {
      transform: scale(1.3);
    }

    .swatch.active {
      outline: 2px solid var(--gold);
      outline-offset: 2px;
    }

    .card-footer {
      display: flex;
      align-items: center;
      justify-content: space-between;
    }

    /* .card-price {
      font-family: var(--font-serif);
      font-size: 1.5rem;
      color: var(--gold-light);
    } */

    .card-price {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.current-price {
    font-weight: 700;
}

.old-price {
    font-size: 14px;
    color: #999;
    text-decoration: line-through;
    opacity: 0.8;
}

    .card-price del {
      font-size: 0.85rem;
      color: var(--mocha);
      margin-left: 0.4rem;
    }

    .card-add {
      background: linear-gradient(135deg, var(--gold), var(--bronze));
      color: var(--brown-deep);
      border: none;
      padding: 0.6rem 1.3rem;
      border-radius: var(--radius-pill);
      font-family: var(--font-body);
      font-size: 0.65rem;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      font-weight: 500;
      cursor: none;
      transition: all 0.3s var(--ease-silk);
    }

    .card-add:hover {
      transform: scale(1.05);
      box-shadow: 0 6px 20px var(--gold-glow);
    }

    .card-add.added {
      background: linear-gradient(135deg, #4a7c59, #5a9a6c);
      color: white;
    }

    /* CATEGORIES BANNER */
    .categories-banner {
      padding: 5rem 4rem;
      background: #1A0D06;
      border-top: 1px solid rgba(200, 146, 42, 0.08);
    }

    .cat-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 1.5rem;
      margin-top: 3rem;
    }

    .cat-card {
      aspect-ratio: 3/4;
      border-radius: var(--radius-xl);
      overflow: hidden;
      position: relative;
      cursor: none;
      transition: transform 0.5s var(--ease-silk);
    }

    .cat-card:hover {
      transform: scale(1.03);
    }

    .cat-bg {
      width: 100%;
      height: 100%;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: transform 0.6s var(--ease-silk);
    }

    .cat-card:hover .cat-bg {
      transform: scale(1.1);
    }

    .cat-overlay {
      position: absolute;
      inset: 0;
      background: linear-gradient(to top, rgba(28, 16, 8, 0.9) 0%, rgba(28, 16, 8, 0.2) 60%, transparent 100%);
      display: flex;
      align-items: flex-end;
      padding: 2rem 1.5rem;
    }

    .cat-name {
      font-family: var(--font-serif);
      font-size: 1.3rem;
      color: var(--cream);
      display: block;
    }

    .cat-count {
      font-size: 0.65rem;
      letter-spacing: 0.3em;
      text-transform: uppercase;
      color: var(--gold);
      display: block;
      margin-top: 0.2rem;
    }

    /* PROMO BANNER */
    .promo-strip {
      padding: 5rem 4rem;
      background: radial-gradient(ellipse 80% 100% at 50% 50%, rgba(92, 51, 23, 0.5) 0%, #1A0D06 70%);
      text-align: center;
      position: relative;
      overflow: hidden;
    }

    .promo-box {
      max-width: 700px;
      margin: 0 auto;
      padding: 4rem;
      border-radius: var(--radius-xl);
      border: 1px solid rgba(200, 146, 42, 0.2);
      background: rgba(255, 255, 255, 0.02);
      backdrop-filter: blur(10px);
      position: relative;
      z-index: 1;
    }

    .promo-code {
      display: inline-block;
      background: linear-gradient(135deg, var(--gold), var(--bronze));
      color: var(--brown-deep);
      font-family: var(--font-body);
      font-size: 1.2rem;
      letter-spacing: 0.5em;
      font-weight: 600;
      padding: 0.6rem 2rem;
      border-radius: var(--radius-pill);
      margin-top: 1.5rem;
      cursor: none;
      transition: all 0.3s;
    }

    .promo-code:hover {
      transform: scale(1.05);
      box-shadow: 0 10px 30px var(--gold-glow);
    }

    .promo-note {
      font-size: 0.72rem;
      color: var(--mocha);
      letter-spacing: 0.15em;
      margin-top: 1rem;
    }

    /* QUICK VIEW MODAL */
    .modal-overlay {
      position: fixed;
      inset: 0;
      background: rgba(28, 16, 8, 0.9);
      backdrop-filter: blur(20px);
      z-index: 5000;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 2rem;
      opacity: 0;
      pointer-events: none;
      transition: opacity 0.4s;
    }

    .modal-overlay.open {
      opacity: 1;
      pointer-events: all;
    }

    .modal-box {
      background: #2C1A0E;
      border: 1px solid rgba(200, 146, 42, 0.2);
      border-radius: var(--radius-xl);
      max-width: 700px;
      width: 100%;
      padding: 3rem;
      position: relative;
      transform: translateY(30px);
      transition: transform 0.4s var(--ease-expo);
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 2.5rem;
      align-items: center;
    }

    .modal-overlay.open .modal-box {
      transform: translateY(0);
    }

    .modal-close {
      position: absolute;
      top: 1.2rem;
      right: 1.2rem;
      width: 36px;
      height: 36px;
      border-radius: 50%;
      border: 1px solid rgba(200, 146, 42, 0.25);
      background: transparent;
      color: var(--nude);
      font-size: 1.1rem;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: none;
      transition: all 0.3s;
    }

    .modal-close:hover {
      border-color: var(--gold);
      color: var(--gold);
    }

    /* RESPONSIVE */
    @media (max-width: 1024px) {
      .shop-main {
        padding: 4rem 2.5rem 6rem;
      }

      .categories-banner,
      .promo-strip {
        padding: 4rem 2.5rem;
      }

      .cat-grid {
        grid-template-columns: repeat(2, 1fr);
      }
    }

    @media (max-width: 768px) {
      .shop-main {
        padding: 3rem 1.5rem 5rem;
      }

      .categories-banner,
      .promo-strip {
        padding: 3rem 1.5rem;
      }

      .shop-controls {
        flex-direction: column;
        align-items: flex-start;
      }

      .cat-grid {
        grid-template-columns: 1fr 1fr;
      }

      .modal-box {
        grid-template-columns: 1fr;
      }

      .promo-box {
        padding: 2rem 1.5rem;
      }
    }
  