/**
 * FORESEON COMPONENT: SPATIAL ARRANGEMENT & HAIRLINE STRUCTURAL BOUNDARIES
 */

/* Structural Layout Line Rules via Cascade Weighting */
body .site-header {
    border-bottom: 1px solid var(--color-border);
}

.hero-manifesto .manifesto-subgrid {
    border-top: 1px solid var(--color-border);
    margin-top: calc(var(--grid-gap) * 2);
    padding-top: calc(var(--grid-gap) * 1.5);
}

.grid-matrix .matrix-card {
    border-top: 1px solid var(--color-border);
    padding-bottom: var(--grid-gap);
}

.ledger-stack .ledger-row {
    border-top: 1px solid var(--color-border);
    padding-top: calc(var(--grid-gap) * 1.5);
    padding-bottom: calc(var(--grid-gap) * 1.5);
}

.ledger-stack .ledger-row:first-of-type {
    border-top: 1px solid var(--color-border-heavy);
}

.ledger-content .ledger-metrics-strip {
    border-top: 1px solid var(--color-border);
    margin-top: calc(var(--grid-gap) * 1);
}

.form-instructions .location-context {
    border-top: 1px solid var(--color-border);
}

/* Macro Spacing Controls */
body .hero-manifesto {
    padding-top: clamp(8rem, 12vw, 14rem);
    padding-bottom: clamp(4rem, 8vw, 10rem);
}

body .page-intro-section {
    padding-top: clamp(8rem, 10vw, 12rem);
    padding-bottom: clamp(3rem, 5vw, 6rem);
    border-bottom: 1px solid var(--color-border);
}

/* Gutter Framework Balancing */
.manifesto-subgrid .grid-left {
    padding-right: var(--grid-gap);
}

.grid-left .body-lead {
    letter-spacing: -0.015em;
    max-width: 48rem;
}

/* Viewport Scale Collapses */
@media (max-width: 1024px) {
    :root {
        --grid-gap: 1.25rem;
    }
    
    body .hero-manifesto {
        padding-top: 7rem;
        padding-bottom: 3rem;
    }

    body .page-intro-section {
        padding-top: 7rem;
        padding-bottom: 2rem;
    }

    .grid-matrix .matrix-card {
        gap: 1.5rem;
    }
    
    .ledger-stack .ledger-row {
        gap: 1rem;
    }
}