/* ============================================
   Section Component
   ============================================ */

.section {
    padding: var(--spacing-3xl) 0;
    position: relative;
}

.section--gray {
    background-color: var(--color-bg-secondary);
}

.section--dark {
    background-color: var(--color-bg-dark);
    color: var(--color-text-inverse);
}

.section--contact {
    background: var(--gradient-blue);
    color: var(--color-text-inverse);
}

/* Section Header */
.section__header {
    margin-bottom: var(--spacing-2xl);
}

.section__header--center {
    text-align: center;
}

.section__header--light {
    color: var(--color-text-inverse);
}

.section__label {
    display: inline-block;
    padding: var(--spacing-xs) var(--spacing-md);
    background-color: var(--color-primary-light);
    color: var(--color-primary-dark);
    font-size: var(--font-size-sm);
    font-weight: var(--font-semibold);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    border-radius: var(--radius-full);
    margin-bottom: var(--spacing-md);
}

.section__label--light {
    background-color: rgba(255, 255, 255, 0.2);
    color: var(--color-text-inverse);
}

.section__title {
    font-size: var(--font-size-4xl);
    font-weight: var(--font-bold);
    line-height: var(--leading-tight);
    color: var(--color-text-primary);
    margin-bottom: var(--spacing-md);
}

.section__title--light {
    color: var(--color-text-inverse);
}

.section__lead {
    font-size: var(--font-size-lg);
    line-height: var(--leading-relaxed);
    color: var(--color-text-secondary);
    max-width: 800px;
    margin: 0 auto;
}

/* Responsive */
@media (max-width: 768px) {
    .section {
        padding: var(--spacing-2xl) 0;
    }

    .section__title {
        font-size: var(--font-size-3xl);
    }

    .section__lead {
        font-size: var(--font-size-base);
    }
}
