.thepro-home-products {
    width: 100%;
}

.thepro-home-products__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
}

.thepro-home-products__item {
    display: flex;
    flex-direction: column;
}

.thepro-home-products__image-link {
    display: block;
    line-height: 0;
}

.thepro-home-products__image {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    border-radius: 8px;
}

.thepro-home-products__image--placeholder {
    background: #e9e9e9;
    min-height: 260px;
}

.thepro-home-products__title {
    margin: 16px 0 8px;
    font-size: 1.2rem;
    line-height: 1.3;
}

.thepro-home-products__title a {
    color: inherit;
    text-decoration: none;
}

.thepro-home-products__short-description {
    margin: 0 0 10px;
    color: #5f5f5f;
    line-height: 1.5;
}

.thepro-home-products__description {
    margin-bottom: 18px;
}

.thepro-home-products__description p {
    margin: 0;
}

.thepro-home-products__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-height: 44px;
    padding: 10px 20px;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 600;
    letter-spacing: 0.03em;
    background: #903a28;
    color: #ffffff;
}

.thepro-home-products__button:hover,
.thepro-home-products__button:focus {
    opacity: 0.92;
    color: #ffffff;
}

.package-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
      gap: 2px; max-width: 1060px; margin: 0 auto;
    }
    .package-card {
      background: var(--white);
      padding: 52px 38px;
      position: relative; overflow: hidden;
      border: 1px solid var(--cream-dk);
    }
    .package-card.featured {
      background: var(--black);
      border: 1px solid rgba(144,58,40,0.3);
    }
    .package-card.featured::after {
      content: '';
      position: absolute; top: 0; left: 0; right: 0; height: 3px;
      background: linear-gradient(90deg, transparent, var(--amber), transparent);
    }
    .package-card.bespoke {
      background: #1A1210;
      border: 1px solid rgba(211,177,137,0.2);
    }
    .package-card.bespoke::after {
      content: '';
      position: absolute; top: 0; left: 0; right: 0; height: 3px;
      background: linear-gradient(90deg, transparent, var(--brown), transparent);
    }

    .pkg-tag {
      font-family: 'Marcellus', serif;
      font-size: 0.58rem; letter-spacing: 0.25em;
      text-transform: uppercase;
      display: inline-block; padding: 4px 14px;
      margin-bottom: 24px;
    }
    .pkg-tag.light { color: var(--muted); border: 1px solid var(--cream-dk); }
    .pkg-tag.amber { background: var(--amber); color: var(--cream); }
    .pkg-tag.brown { background: var(--brown); color: var(--black); }

    .pkg-name {
      font-family: 'Playfair Display', serif;
      font-size: 2.2rem; font-weight: 400;
      color: var(--black); margin-bottom: 6px;
    }
    .pkg-name.light { color: var(--cream); }
    .pkg-tagline {
      font-family: 'Playfair Display', serif;
      font-size: 0.85rem; font-style: italic;
      color: var(--muted); margin-bottom: 36px;
    }
    .pkg-tagline.light { color: rgba(243,236,232,0.45); }

    .pkg-prices {
      border-top: 1px solid rgba(144,58,40,0.12);
      border-bottom: 1px solid rgba(144,58,40,0.12);
      padding: 28px 0; margin-bottom: 32px;
    }
    .pkg-prices.light {
      border-color: rgba(243,236,232,0.1);
    }
    .price-row {
      display: flex; justify-content: space-between;
      align-items: baseline; padding: 6px 0;
    }
    .price-pax {
      font-family: 'Marcellus', serif;
      font-size: 0.7rem; letter-spacing: 0.1em;
      text-transform: uppercase; color: var(--muted);
    }
    .price-pax.light { color: rgba(243,236,232,0.4); }
    .price-val {
      font-family: 'Playfair Display', serif;
      font-size: 1.5rem; color: var(--amber);
    }
    .price-val.brown { color: var(--brown); }
    .price-val small {
      font-family: 'Marcellus', serif;
      font-size: 0.7rem; color: var(--muted);
    }

    .pkg-list {
      list-style: none; margin-bottom: 40px;
    }
    .pkg-list li {
      font-family: 'Marcellus', serif;
      font-size: 0.78rem; color: var(--text);
      padding: 8px 0;
      border-bottom: 1px solid rgba(58,46,43,0.06);
      display: flex; align-items: flex-start; gap: 10px;
    }
    .pkg-list li::before {
      content: '◆'; color: var(--amber);
      font-size: 0.38rem; flex-shrink: 0; margin-top: 5px;
    }
    .pkg-list.light li { color: rgba(243,236,232,0.75); border-color: rgba(243,236,232,0.06); }
    .pkg-list.light li::before { color: var(--brown); }
    .pkg-list li.na { color: var(--muted); opacity: 0.5; }
    .pkg-list li.na::before { color: rgba(144,58,40,0.2); }

    .pkg-btn {
      display: block; text-align: center;
      font-family: 'Marcellus', serif;
      font-size: 0.68rem; letter-spacing: 0.2em;
      text-transform: uppercase; text-decoration: none;
      padding: 14px; transition: all 0.3s;
    }

@media (max-width: 1023px) {
    .thepro-home-products__grid {
        gap: 22px;
    }
}

@media (max-width: 767px) {
    .thepro-home-products__grid {
        grid-template-columns: 1fr;
    }
}
