/**
 * CODECURV GRID & ASYMMETRIC LAYOUT MATRIX
 */

.container {
  width: 100%;
  max-width: var(--container-max);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--space-6);
  padding-right: var(--space-6);
}

.container-wide {
  width: 100%;
  max-width: var(--container-wide);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--space-6);
  padding-right: var(--space-6);
}

.container-reading {
  width: 100%;
  max-width: var(--container-reading);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--space-6);
  padding-right: var(--space-6);
}

/* Structural Sections */
.section-drafting {
  position: relative;
  padding-top: var(--space-20);
  padding-bottom: var(--space-20);
  border-bottom: 1px solid var(--rule-base);
}

.section-hero {
  position: relative;
  min-height: calc(100vh - 64px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: var(--space-16);
  padding-bottom: var(--space-20);
  border-bottom: 1px solid var(--rule-base);
}

/* 12-Column Asymmetric Drafting Grid */
.grid-drafting {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: var(--space-6);
}

.col-12 { grid-column: span 12; }
.col-8  { grid-column: span 8; }
.col-7  { grid-column: span 7; }
.col-6  { grid-column: span 6; }
.col-5  { grid-column: span 5; }
.col-4  { grid-column: span 4; }
.col-3  { grid-column: span 3; }

/* The Continuous Calibrated Datum Line */
.datum-rail {
  position: relative;
  border-top: 1px solid var(--rule-base);
  padding-top: var(--space-4);
  margin-top: var(--space-8);
}

.datum-rail-vertical {
  border-left: 1px solid var(--rule-base);
  padding-left: var(--space-6);
}

@media (max-width: 992px) {
  .col-8, .col-7, .col-6, .col-5, .col-4, .col-3 {
    grid-column: span 12;
  }
  .section-drafting {
    padding-top: var(--space-12);
    padding-bottom: var(--space-12);
  }
}

@media (max-width: 640px) {
  .container, .container-wide, .container-reading {
    padding-left: var(--space-4);
    padding-right: var(--space-4);
  }
}