.seaching_results__container {
    /* overflow removed — was clipping dashed border */
}

/* ── Section header ("✦ Search Results") ── */
.search-results__section-header {
    width: 100%;
    margin: 16px;
    text-align: center;
}

.search-results__section-name {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: var(--font-family-2);
    font-size: 32px;
    font-weight: 400;
    color: var(--brand-black);
    text-transform: uppercase;
    letter-spacing: 2px;
}

/* ── Result count paragraph ── */
.seaching_results_parragraph {
    padding: 0 1rem;
    font-family: var(--font-family-1);
}

/* ── Dashed border wrapping the cards grid ── */
.search-results__cards-wrapper {
    border-radius: 8px;
    padding: 24px;
}

/* ── Individual result card (Bootstrap column) ── */
.seaching_results__container .wrapper-content-results .result-card {
    text-align: justify;
    padding: 1rem;
    display: none;
    opacity: 0;
}

/* ── Card inner wrapper ── */
.seaching_results__container .wrapper-content-results .result-card .wrapper-card {
    transition: box-shadow .5s ease-in-out;
    display: flex;
    flex-direction: column;
    max-width: 100%;
    width: 100%;
    background: var(--brand-white, #fff);
    overflow: hidden;
}

.seaching_results__container .wrapper-content-results .result-card .wrapper-card:hover {
    box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.15);
}

/* ── Image container (always rendered, acts as placeholder when empty) ── */
.seaching_results__container .wrapper-content-results .result-card .img-container {
    width: 100%;
    overflow: hidden;
    flex-shrink: 0;
}

/* ── Card image — aspect-ratio on the img itself is the reliable fix ── */
.seaching_results__container .wrapper-content-results .result-card .img-responsive {
    width: 100%;
    height: auto;
    aspect-ratio: 450 / 254;
    object-fit: cover;
    object-position: center;
    display: block;
}

.seaching_results__container .wrapper-content-results .result-card .img-responsive.img-models {
    object-fit: contain;
}

/* ── Text content area ── */
.seaching_results__container .wrapper-content-results .result-card .text-content {
    padding: 7%;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    flex: 1;
    background: #EFEFEF;
}

/* ── "Read more" link ── */
.seaching_results__container .wrapper-content-results .result-card .search_button {
    color: var(--brand, #7b2d8b);
    font-family: var(--font-family-1);
    font-size: var(--text-base);
    font-weight: var(--weight-semibold);
    text-decoration: underline;
    border: 0;
    background-color: transparent;
    transition: opacity .3s ease-in-out;
    padding-right: .5rem;
    display: flex;
    gap: 0.3rem;
    align-items: end;
    flex: 1;
}

.seaching_results__container .wrapper-content-results .result-card .search_button:hover {
    opacity: 0.75;
}

.seaching_results__container .row > p {
    font-family: var(--font-family-1);
}

/* ── Card title ── */
.title-search {
    font-family: var(--font-family-1) !important;
    font-size: 28px !important;
    font-weight: var(--weight-semibold);
    color: var(--brand-black);
    text-transform: uppercase;
}

/* ── Truncated description ── */
.truncated-text {
    font-size: 18px;
    color: var(--gray-dark-1);
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    letter-spacing: 0;
    font-family: var(--font-family-1);
    font-weight: var(--weight-smeibold);
}

/* ── Responsive ── */
@media (min-width: 768px) {
    .seaching_results_parragraph {
        padding: 0;
    }
}

@media (max-width: 500px) {
    .seaching_results__container .wrapper-content-results .result-card {
        padding: 1rem 2rem;
    }
    .title-search {
        font-size: 25px;
    }
}
