.overview-shell { width: min(1100px, calc(100% - var(--space-16))); margin-inline: auto; padding: var(--space-12) 0 var(--space-16); }
.overview-kicker { color: var(--purple); font-size: var(--text-xs); font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.overview-header-action { display: inline-flex; align-items: center; justify-content: center; min-height: 2.375rem; padding: 0 var(--space-5); border-radius: var(--radius-md); background: var(--surface-solid); color: var(--purple-strong); font-size: var(--text-sm); font-weight: 650; text-decoration: none; }
.overview-header-action:hover { color: var(--purple-strong); background: color-mix(in srgb, var(--surface-solid) 88%, var(--purple-soft)); }
.nav a.is-current { color: var(--text-on-accent); background: color-mix(in srgb, var(--text-on-accent) 16%, transparent); }

.overview-foundations { display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr); gap: clamp(var(--space-8), 7vw, var(--space-16)); align-items: start; padding: var(--space-4) 0 var(--space-12); }
.overview-section-heading { max-width: 690px; }
.overview-section-heading h2, .overview-outcome h2 { margin-top: var(--space-3); font-size: clamp(1.75rem, 3vw, 2.5rem); line-height: 1.08; letter-spacing: -.035em; }
.reference-intro { max-width: 27rem; padding-top: var(--space-3); }
.reference-intro h2 { margin-top: var(--space-3); font-size: clamp(2rem, 3.15vw, 3rem); line-height: 1.03; letter-spacing: -.045em; }
.reference-intro h2 span { color: var(--purple); }
.reference-intro > p:not(.overview-kicker) { margin-top: var(--space-5); color: var(--text-secondary); font-size: var(--text-sm); line-height: 1.65; }
.foundation-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
.foundation-card { min-width: 0; overflow: hidden; border: 1px solid var(--border); border-radius: var(--radius-xl); background: var(--surface-solid); box-shadow: var(--shadow-1); }
.foundation-card-accent { border-color: var(--purple-line); }
.foundation-card-main { min-height: 17rem; padding: var(--space-6); }
.foundation-card-accent .foundation-card-main { background: color-mix(in srgb, var(--purple-soft) 30%, var(--surface-solid)); }
.foundation-icon { display: grid; place-items: center; width: 3rem; height: 3rem; border: 1px solid var(--purple-line); border-radius: var(--radius-md); background: var(--purple-soft); color: var(--purple); }
.foundation-icon svg { width: 1.35rem; height: 1.35rem; }
.foundation-label { margin-top: var(--space-5); color: var(--purple); font-size: var(--text-2xs); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.foundation-card h3 { margin-top: var(--space-2); font-size: var(--text-xl); letter-spacing: -.03em; }
.foundation-card-main > p:not(.foundation-label):not(.foundation-note) { margin-top: var(--space-4); color: var(--text-secondary); font-size: var(--text-sm); line-height: 1.65; }
.foundation-note { display: grid; gap: .1rem; margin-top: var(--space-6); padding-top: var(--space-4); border-top: 1px solid var(--hairline); }
.foundation-note span { color: var(--text-tertiary); font-size: var(--text-2xs); font-weight: 600; text-transform: uppercase; letter-spacing: .07em; }
.foundation-note strong { color: var(--text-primary); font-size: var(--text-xs); }
.overview-explanation { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-12); margin-top: var(--space-12); padding: var(--space-8) 0; border-top: 1px solid var(--hairline); border-bottom: 1px solid var(--hairline); }
.overview-explanation p { max-width: 50ch; color: var(--text-secondary); font-size: var(--text-md); line-height: 1.75; }
.overview-explanation p:first-child { color: var(--text-primary); }
.overview-flow { margin-top: var(--space-16); }
.flow-list { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--space-4); margin: var(--space-8) 0 0; padding: 0; list-style: none; }
.flow-step { position: relative; display: grid; gap: var(--space-5); min-width: 0; padding: var(--space-6) 0 0; border-top: 1px solid var(--purple-line); }
.flow-step:not(:last-child)::after { content: ""; position: absolute; top: -.1rem; right: -.5rem; width: .35rem; height: .35rem; border-radius: 50%; background: var(--purple); }
.flow-number { color: var(--purple); font-size: var(--text-xs); font-weight: 700; letter-spacing: .1em; }
.flow-step h3 { font-size: var(--text-md); letter-spacing: -.015em; }
.flow-step p { margin-top: var(--space-2); color: var(--text-secondary); font-size: var(--text-xs); line-height: 1.6; }
.overview-outcome { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: var(--space-12); align-items: end; margin-top: var(--space-24); padding: var(--space-12); border-radius: var(--radius-xl); background: linear-gradient(120deg, var(--purple-strong), var(--purple-light)); color: var(--text-on-accent); box-shadow: var(--shadow-accent); }
.overview-outcome .overview-kicker { color: color-mix(in srgb, var(--text-on-accent) 76%, transparent); }
.overview-outcome h2 { max-width: 15ch; }
.overview-outcome > p { color: color-mix(in srgb, var(--text-on-accent) 88%, transparent); font-size: var(--text-md); line-height: 1.65; }

@media (max-width: 880px) { .overview-foundations { grid-template-columns: 1fr; gap: var(--space-8); } .reference-intro { max-width: 38rem; } .overview-explanation { grid-template-columns: 1fr; gap: var(--space-5); } .overview-explanation p { max-width: 65ch; } .flow-list { grid-template-columns: 1fr; gap: 0; } .flow-step { grid-template-columns: 3rem minmax(0, 1fr); padding: var(--space-5) 0; } .flow-step:not(:last-child)::after { display: none; } .overview-outcome { grid-template-columns: 1fr; gap: var(--space-6); } }
@media (max-width: 720px) { .overview-shell { width: calc(100% - var(--space-6)); padding: var(--space-8) 0 var(--space-12); } .foundation-grid { grid-template-columns: 1fr; } .foundation-card-main { min-height: 0; padding: var(--space-5); } .overview-header-action { display: none; } }
