.bv-home-alert {
    display: grid;
    gap: 16px;
    /* 2026-10-17 — last Home block: cancel .bv-main bottom padding (64px; 48px ≤640px)
       + 24px so the gap to the footer (64px margin) reads 40px, matching the 40px gap above. */
    margin-bottom: -88px;
}

@media (max-width: 640px) {
    .bv-home-alert {
        margin-bottom: -72px;
    }
}

/* Section margin-top (40px) already spaces the block; drop the alert's own 24px. */
.bv-home-alert .bv-emergency-alert {
    margin-top: 0;
}

.bv-home-alert .bv-emergency-alert p:last-child {
    margin-bottom: 0;
}

.bv-home-empty-note {
    color: var(--bv-text-muted);
    font-size: 0.95rem;
}

.bv-home-services .bv-service-chip {
    background: var(--bv-secondary-light);
    border-color: transparent;
    color: #14532d;
}

.bv-home-regions .bv-region-chip {
    background: var(--bv-primary-light);
    border-color: transparent;
    color: var(--bv-primary-dark);
}

/* 2026-10-16 — Home group headings: the group name (eyebrow) is the panel title,
   the sentence below it is a smaller supporting line. Same treatment for every Home group. */
.bv-home > .bv-section > .bv-section-title {
    padding: 14px 18px;
    border-left: 4px solid var(--bv-primary);
    border-radius: var(--bv-radius-sm);
    background: var(--bv-primary-light);
}

.bv-home > .bv-section > .bv-section-title .bv-eyebrow {
    margin: 0 0 4px;
    font-size: 1.25rem;
    line-height: 1.3;
    letter-spacing: 0;
    text-transform: none;
    color: var(--bv-primary-dark);
}

.bv-home > .bv-section > .bv-section-title h2 {
    margin: 0;
    font-size: 0.95rem;
    font-weight: 500;
    line-height: 1.45;
    color: var(--bv-text-muted);
}

.bv-home > .bv-section > .bv-section-title .bv-section-title__desc {
    margin: 2px 0 0;
    font-size: 0.875rem;
    line-height: 1.45;
}

@media (max-width: 600px) {
    .bv-home > .bv-section > .bv-section-title {
        padding: 12px 14px;
    }

    .bv-home > .bv-section > .bv-section-title .bv-eyebrow {
        font-size: 1.125rem;
    }
}

/* Doc 58 §5.4: fixed "CẤP CỨU" chip, first in the specialty group. Existing danger tokens; no icon. */
.bv-specialty-chip--emergency,
.bv-specialty-chip--emergency:hover {
    border-color: var(--bv-danger);
    background: var(--bv-danger-light);
    color: var(--bv-danger);
    font-weight: 700;
    letter-spacing: 0.02em;
}

/* Doc 58 §5.3: why a card is suggested ("Được tìm nhiều" / "Mới xác minh"); absent when there is no reason. */
.bv-home-reason {
    display: inline-flex;
    align-self: flex-start;
    margin: 0;
    padding: 2px 10px;
    border-radius: 999px;
    background: var(--bv-primary-light);
    color: var(--bv-primary-dark);
    font-size: 0.75rem;
    font-weight: 600;
}
