/* =========================
   LAYOUT
========================= */

.section{ padding: 44px 0; }

/* alt section — always light via tokens */
.section-alt{
  background: rgba(3,7,18,0.02);
  border-top: 1px solid rgba(3,7,18,0.06);
  border-bottom: 1px solid rgba(3,7,18,0.06);
}

/* If you prefer alt to follow tokens strictly, use this instead:
.section-alt{
  background: var(--surface);
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}
*/

.section-head{
  display:flex;
  justify-content: space-between;
  align-items: end;
  gap: 12px;
  margin-bottom: 18px;
  flex-wrap: wrap;
}

.section-head h2{
  font-size: clamp(24px, 3.2vw, 32px);
  margin: 0;
}

.grid{ display:grid; gap: 14px; }

.split{
  display:grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 24px;
  align-items: start;
}

@media (max-width: 960px){
  .split{ grid-template-columns: 1fr; }
}

.center{
  display:flex;
  justify-content:center;
  margin-top: 16px;
}

.panel{
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius2);
  padding: 18px;
  box-shadow: var(--shadow);
}

/* softer panel in light */
.panel-soft{
  background: linear-gradient(
    180deg,
    rgba(3,7,18,0.04),
    rgba(3,7,18,0.02)
  );
}
