/* Provider detail: service cards (no overlap, 3 per row) */
.provider-services {
    --sv-title: #1f2937;
    --sv-price: #111827;
    --sv-muted: #6b7280;
}

[data-bs-theme="dark"] .provider-services {
    --sv-title: #f5f5f5;
    --sv-price: #f9fafb;
    --sv-muted: #9ca3af;
}

/* Component ka search box commented hai, par uski khali jagah ~64px blank gap banati hai */
.provider-services .tab-pane>.d-flex.justify-content-end {
    display: none !important;
}

/* Grid: mobile 1, tablet 2, desktop 3 */
.provider-services .our-service>div {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    display: flex;
}

@media (min-width: 576px) {
    .provider-services .our-service>div {
        flex: 0 0 50% !important;
        width: 50% !important;
        max-width: 50% !important;
    }
}

@media (min-width: 1200px) {
    .provider-services .our-service>div {
        flex: 0 0 33.3333% !important;
        width: 33.3333% !important;
        max-width: 33.3333% !important;
    }
}

/* Card */
.provider-services .service-box-card {
    width: 100% !important;
    min-width: 0;
    padding: 8px !important;
    margin-bottom: 0 !important;
    overflow: hidden;
}

.provider-services .service-box-card .service-img {
    display: block;
}

/* 115% width yahi se card ke bahar nikalti thi */
.provider-services .service-box-card .service-image {
    display: block;
    width: 100% !important;
    height: 170px !important;
    object-fit: cover;
    border-radius: 14px;
}

.provider-services .service-box-card .service-title {
    margin: 0 0 8px !important;
    font-size: 16px !important;
    line-height: 1.35;
    color: var(--sv-title) !important;
    overflow-wrap: anywhere;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: calc(1.35em * 2);
}

/* Price + cut price + rating: ek line mein, jagah kam ho to neeche wrap */
.provider-services .service-box-card .price-row {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 4px 10px !important;
    margin-bottom: 4px !important;
}

.provider-services .service-box-card .price-section {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 2px 8px;
    min-width: 0;
}

.provider-services .service-box-card .current-price {
    font-size: 17px !important;
    font-weight: 700;
    color: var(--sv-price) !important;
    white-space: nowrap;
}

.provider-services .service-box-card .old-price {
    font-size: 13px !important;
    color: var(--sv-muted) !important;
    white-space: nowrap;
}

.provider-services .service-box-card .rating-wrapper {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    margin: 0 !important;
    line-height: 1;
    transform: none !important;
}

.provider-services .service-box-card .online-service {
    z-index: 1;
}

/* ---- Image ke neeche ka khali gap hatao ---- */
.provider-services .service-box-card>.position-relative {
    height: auto !important;
    min-height: 0 !important;
    margin-bottom: 10px !important;
}

.provider-services .service-box-card .service-img {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 0 !important;
    margin: 0 !important;
    aspect-ratio: auto !important;
}

.provider-services .service-box-card .service-image {
    height: 160px !important;
    max-height: 160px !important;
}

/* ---- Card ko flex column banao: price hamesha neeche barabar rahe ---- */
.provider-services .service-box-card {
    display: flex !important;
    flex-direction: column;
}

.provider-services .service-box-card .service-title {
    min-height: 0 !important;
    margin-bottom: 6px !important;
}

.provider-services .service-box-card .price-row {
    margin-top: auto !important;
    padding-top: 2px;
}