/* ═══════════════════════════════════════════════════════════
   GITANA DESIGN SYSTEM — Layout
   
   Container, Grid, Section, and structural utilities.
   ═══════════════════════════════════════════════════════════ */

/* ─── Container ─── */
.container {
    width: 100%;
    max-width: var(--container-max);
    margin: 0 auto;
    padding-left: var(--container-padding);
    padding-right: var(--container-padding);
}

.container--wide {
    max-width: var(--container-wide);
}

.container--narrow {
    max-width: var(--container-narrow);
}

/* ─── Section ─── */
.section {
    padding-top: var(--section-padding);
    padding-bottom: var(--section-padding);
    position: relative;
}

.section__label {
    font-family: var(--font-primary);
    font-size: var(--text-sm);
    font-weight: var(--weight-semibold);
    text-transform: uppercase;
    letter-spacing: var(--tracking-widest);
    color: var(--color-primary-teal);
    margin-bottom: var(--space-4);
}

.section__title {
    font-family: var(--font-display);
    font-size: var(--text-4xl);
    font-weight: var(--weight-bold);
    color: var(--color-text-primary);
    margin-bottom: var(--space-4);
    max-width: 720px;
}

.section__subtitle {
    font-size: var(--text-lg);
    color: var(--color-text-secondary);
    max-width: 600px;
    margin-bottom: var(--space-10);
}

.section__cta {
    margin-top: var(--space-10);
    text-align: center;
}

/* ─── Alternating section backgrounds ─── */
.section--belief {
    background: var(--color-bg-secondary);
}

.section--dna {
    background: var(--color-bg-primary);
}

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

.section--solutions {
    background: var(--color-bg-primary);
    overflow: hidden;
}

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

.section--projects {
    background: var(--color-bg-primary);
}

.section--tana {
    background: var(--gradient-brand-subtle);
    border-top: 1px solid var(--color-border);
    border-bottom: 1px solid var(--color-border);
}

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

.section--cta {
    background: var(--gradient-brand);
    text-align: center;
}

.section--cta .cta__headline,
.section--cta .cta__text {
    color: #fff;
}

/* ─── Grid Utilities ─── */
.grid {
    display: grid;
    gap: var(--space-6);
}

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

/* ─── Flex Utilities ─── */
.flex { display: flex; }
.flex-center { display: flex; align-items: center; justify-content: center; }
.flex-between { display: flex; align-items: center; justify-content: space-between; }
.flex-col { flex-direction: column; }
.flex-wrap { flex-wrap: wrap; }
.gap-2 { gap: var(--space-2); }
.gap-4 { gap: var(--space-4); }
.gap-6 { gap: var(--space-6); }
.gap-8 { gap: var(--space-8); }

/* ─── Main Content ─── */
.main-content {
    min-height: 100vh;
    padding-top: var(--navbar-height);
}
