/* ============================================
   COLUMNS SECTION
   ============================================ */

.columns-section {
    background: var(--color-white);
    padding-top:0;
}

/* Main heading */
.columns-heading {
    font-family: var(--font-family-heading);
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-3xl);
    color: var(--color-gray-900);
    margin: 0 0 32px;
}

/* Grid */
.columns-grid {
    display: grid;
    gap: 40px;
}

.columns-count-1 { grid-template-columns: 1fr; }
.columns-count-2 { grid-template-columns: repeat(2, 1fr); }
.columns-count-3 { grid-template-columns: repeat(3, 1fr); }
.columns-count-4 { grid-template-columns: repeat(4, 1fr); }

/* Single column */
.columns-col {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* Column title */
.columns-col-title {
    font-family: var(--font-family-text);
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-base);
    color: var(--color-gray-900);
    margin: 0;
}

/* Column content */
.columns-col-content {
    font-family: var(--font-family-text);
    font-size: var(--font-size-base);
    color: var(--color-gray-700);
    line-height: var(--line-height-relaxed);
}

.columns-col-content p {
    margin: 0 0 8px;
}

.columns-col-content p:last-child {
    margin-bottom: 0;
}

.columns-col-content a {
    color: var(--color-primary);
    text-decoration: underline;
    transition: color var(--transition-base);
}

.columns-col-content a:hover {
    color: var(--color-primary-dark);
}

/* ============================================
   RESPONSIVE
   ============================================ */

@media (max-width: 992px) {
    .columns-count-3,
    .columns-count-4 {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .columns-count-2,
    .columns-count-3,
    .columns-count-4 {
        grid-template-columns: 1fr;
    }
}
