/* Layout & Grid System */

/* Container */
.container {
    max-width: var(--container-max-width);
    margin: 0 auto;
    padding: 0 var(--gutter);
}

/* Grid Systems */
.services-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: var(--space-md);
}

.services-grid .service-card {
    width: 100%;
}

.services-grid .service-card:nth-child(1),
.services-grid .service-card:nth-child(2),
.services-grid .service-card:nth-child(3) {
    grid-column: span 2;
}

.services-grid .service-card:nth-child(4) {
    grid-column: 2 / 4;
}

.services-grid .service-card:nth-child(5) {
    grid-column: 4 / 6;
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: var(--space-lg);
}

.values-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: var(--space-md);
}

.benefits-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: var(--space-lg);
}

.tier-comparison {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: var(--space-xl);
}

.contact-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-xxl);
}

/* Flexbox Layouts */
.header-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--space-sm) 0;
}

.footer-content {
    display: flex;
    justify-content: space-between;
    gap: var(--space-xl);
}

.hero-cta {
    display: flex;
    gap: var(--space-sm);
    flex-wrap: wrap;
    justify-content: center;
}

/* Section Spacing */
section {
    padding: var(--space-xxl) 0;
}

.page-header {
    padding: var(--space-xl) 0;
    background: var(--color-background-alt);
    text-align: center;
}

.hero {
    min-height: 600px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);
    color: white;
    padding: var(--space-xxxl) var(--space-md);
}