.facilities-section {
    position: relative;
    padding: var(--space-20) 0;

}


/* ==================== Facilities: Feature Grid (match accommodation detail) ==================== */
.facilities-page {
    padding: var(--space-12, 3em) 0 var(--space-16, 4em);
    background: radial-gradient(circle at top left, rgba(229, 99, 99, 0.06) 0, transparent 50%),
        radial-gradient(circle at bottom right, rgba(61, 90, 128, 0.06) 0, transparent 55%),
        var(--color-neutral-0, #fff);
}

.facilities-list {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: var(--space-4, 1em);
}

@media (max-width: 1024px) {
    .facilities-list {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .facilities-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.facilities-body {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    padding: var(--space-3);
    background: var(--color-neutral-0);
    backdrop-filter: blur(12px);
    border: 1px solid var(--color-neutral-900);
    border-radius: 14px;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.facilities-body:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.12);
}

.facilities-body .rounded-cr {
    width: 28px;
    height: 28px;
    border-radius: 999px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    font-size: 0.85rem;
    font-weight: var(--font-bold, 700);
    flex-shrink: 0;
}

.facilities-body .description {
    font-size: 0.95rem;
    font-weight: var(--font-medium, 500);
    color: var(--color-neutral-800, #262626);
}