/* foundations.html: page-specific additions. Tokens and components come from site.css. */

/* hero side column: matted tile above the spec sheet */
.page--foundations .page-hero__side { display: grid; gap: var(--s-8); align-content: end; }
.page--foundations .page-hero__side figure { max-width: 440px; }
.page--foundations .page-hero .checks { margin-top: var(--s-4); max-width: var(--measure); }
@media (max-width: 900px) {
  .page--foundations .page-hero__side { margin-top: var(--s-8); }
  .page--foundations .page-hero__side .spec { max-width: 440px; }
}

/* tools strip */
.tools {
  display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: var(--s-5) var(--s-8); align-items: center;
  margin-top: var(--s-9); padding: var(--s-6) 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule);
}
.tools .logos { gap: 1rem 2rem; }
.tools__logo { display: inline-flex; align-items: center; gap: 0.65rem; color: var(--ink); font-size: var(--fs-small); letter-spacing: 0.04em; }
.tools__logo img { filter: brightness(0); opacity: .75; }
.tools__caption { grid-column: 1 / -1; font-size: var(--fs-small); color: var(--ink-muted); max-width: var(--measure); }
@media (max-width: 1100px) { .tools { grid-template-columns: 1fr; } }

/* investment: one prominent item with two prices */
.invest__prices { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: var(--s-4) var(--s-6); padding-block: var(--s-3); border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.invest__prices .invest__price small { display: block; margin-top: 0.35rem; letter-spacing: var(--track-eyebrow); text-transform: uppercase; font-size: var(--fs-eyebrow); }
.invest__item .spec { border-top: 0; }
.page--foundations .invest__prices { border-top: 0; } /* the item already carries a top hairline; avoid a doubled rule */

/* related programs: two cards */
.cards--two { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 980px; }
@media (max-width: 960px) { .cards--two { grid-template-columns: 1fr; max-width: 560px; } }
