/* Services Page - Categories */
/* === PAGE: SERVICES === */
/* ===== SERVICE CATEGORIES ===== */
.categories-section {
    background: var(--navy-deep);
}

.categories-intro {
    max-width: var(--category-intro-max);
    margin-bottom: var(--category-intro-gap);
}

.categories-intro p {
    font-size: var(--category-copy-size);
    color: var(--text);
    opacity: var(--category-copy-opacity);
}

.category-block {
    margin-bottom: var(--category-block-gap);
}

.category-block:last-child {
    margin-bottom: 0;
}

.category-header {
    display: flex;
    align-items: flex-start;
    gap: var(--category-header-gap);
    margin-bottom: var(--category-header-bottom-gap);
    padding-bottom: var(--category-header-pad-bottom);
    border-bottom: 1px solid var(--card-border);
}

.category-icon {
    width: var(--category-icon-size);
    height: var(--category-icon-size);
    background: linear-gradient(135deg, var(--teal), var(--cyan));
    border-radius: var(--category-icon-radius);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.category-icon svg {
    width: var(--category-icon-glyph);
    height: var(--category-icon-glyph);
    stroke: var(--text);
    stroke-width: 2;
    fill: none;
}

.category-title h3 {
    font-size: var(--category-title-size);
    color: var(--text);
    margin-bottom: var(--category-title-gap);
}

.category-title span {
    font-size: var(--category-eyebrow-size);
    color: var(--teal);
    letter-spacing: var(--category-eyebrow-tracking);
}

.services-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--service-card-gap);
}

.service-card {
    background: var(--service-card-bg);
    border: 1px solid var(--card-border);
    padding: var(--service-card-pad-y) var(--service-card-pad-x);
    border-radius: var(--service-card-radius);
    transition: background var(--transition-slow),
                border-color var(--transition-base),
                transform var(--transition-base);
    position: relative;
}

.service-card:hover {
    border-color: var(--teal);
    background: var(--card-hover);
    transform: translateY(var(--service-card-lift));
}

.service-card h4 {
    font-size: var(--feature-card-title-size);
    color: var(--text);
    margin-bottom: var(--space-tag-gap);
    font-weight: 600;
}

.service-card p {
    font-size: var(--service-card-copy-size);
    line-height: var(--service-card-copy-line-height);
    margin-bottom: var(--space-sm);
}

.service-provider {
    font-size: var(--service-provider-size);
    color: var(--teal);
    letter-spacing: var(--service-provider-tracking);
    opacity: var(--service-provider-opacity);
}

/* ===== FEATURED PLATFORM ===== */
.platform-section {
    background: var(--grad-dark-teal);
}

.platform-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--platform-grid-gap);
    align-items: center;
}

.platform-content .tag {
    color: var(--platform-tag-color);
}

.platform-content h2 {
    color: var(--text);
}

.platform-content .line {
    background: var(--platform-line-color);
}

.platform-content p {
    color: var(--platform-copy-color);
    font-size: var(--platform-copy-size);
}

.platform-stats {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--platform-stats-gap);
}

.platform-stat {
    background: var(--platform-stat-bg);
    padding: var(--platform-stat-pad);
    text-align: center;
    border-radius: var(--platform-stat-radius);
}

.platform-stat-value {
    font-size: var(--platform-stat-value-size);
    font-weight: 800;
    color: var(--text);
    margin-bottom: var(--platform-stat-value-gap);
}

.platform-stat-label {
    font-size: var(--platform-stat-label-size);
    color: var(--platform-stat-label-color);
    font-weight: 500;
}

@media (max-width: 1024px) {
    .services-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .platform-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .category-header {
        gap: var(--category-header-gap-mobile);
    }

    .services-grid {
        grid-template-columns: 1fr;
    }

    .platform-stats {
        grid-template-columns: 1fr;
    }
}
