/* ================================================
   Listing Detail Row — Label/value with borders
   ================================================ */

.listing-detail-row {
    width: 100%;
    padding: 18px 24px;
    border-top: 1px solid var(--dark5);
    border-bottom: 1px solid var(--dark5);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.listing-detail-row--no-border {
    border: none;
}

.listing-detail-row + .listing-detail-row {
    border-top: none;
}

.listing-detail-row__label {
    display: flex;
    align-items: center;
    gap: 8px;
}

.listing-detail-row__label i {
    font-size: 16px;
    color: var(--dark1);
}

.listing-detail-row__label span {
    color: var(--dark1);
    font-family: var(--font-helvetica);
    font-size: 16px;
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-button);
}

.listing-detail-row__value {
    color: var(--dark-brown);
    font-family: var(--font-rubik);
    font-size: 16px;
    font-weight: var(--font-weight-regular);
    text-align: right;
}

/* ── Link variant ── */
.listing-detail-row__value--link {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: var(--main-color);
    text-decoration: none;
    transition: color 0.2s ease;
}

.listing-detail-row__value--link:hover {
    color: var(--main-color-orange);
}

.listing-detail-row__link-icon {
    font-size: 12px;
}

/* ── Value left-aligned ── */
.listing-detail-row--value-left .listing-detail-row__value-wrap {
    align-items: flex-start;
}

.listing-detail-row--value-left .listing-detail-row__value {
    text-align: left;
}

/* ── Colspan : pleine largeur dans le grid ── */
.listing-detail-row--colspan {
    grid-column: 1 / -1;
    border-top: 1px solid var(--dark5);
}

/* value-wrap : empile valeur + sous-lien */
.listing-detail-row__value-wrap {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 6px;
}

.listing-detail-row__sub-link {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: var(--main-color);
    font-family: var(--font-rubik);
    font-size: 13px;
    font-weight: var(--font-weight-regular);
    text-decoration: none;
    transition: color 0.2s ease;
}

.listing-detail-row__sub-link:hover {
    color: var(--main-color-orange);
}

.listing-detail-row__sub-link i:first-child {
    font-size: 13px;
}

/* ── Responsive ── */
@media (max-width: 480px) {
    .listing-detail-row {
        padding: 14px 16px;
    }

    .listing-detail-row__label span,
    .listing-detail-row__value {
        font-size: 14px;
    }
}

/* ── Mode « case » (detail_lines) : titre + détail en petit ──
   Utilisé par la literie détaillée : une seule case pleine largeur,
   « Literie » en titre et les couchages dessous (« 2 × Lits superposés 90 cm »). */
.listing-detail-row--stacked {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
}

.listing-detail-row__label--stacked-title span {
    font-size: 17px;
}

.listing-detail-row__detail-lines {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 18px;
}

.listing-detail-row__detail-line {
    color: var(--dark2, #555);
    font-family: var(--font-helvetica);
    font-size: 14px;
    line-height: 1.5;
    white-space: nowrap;
}

@media (max-width: 767px) {
    .listing-detail-row__detail-line {
        font-size: 13px;
        white-space: normal;
    }
}
