.content-page { max-width: 780px; }
.content-page h2 { font-size: 22px; margin: 40px 0 14px; }
.content-page h2:first-child { margin-top: 0; }
.content-page p { margin-bottom: 16px; font-size: 15px; line-height: 1.8; color: var(--fg-soft); }
.content-page ul { margin: 0 0 16px; padding-left: 20px; }
.content-page li { font-size: 15px; line-height: 1.8; color: var(--fg-soft); margin-bottom: 6px; }

.milestone-row { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; margin: 36px 0 48px; }
.milestone-card { border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 22px 20px; background: #fff; }
.milestone-year { font-family: 'Libre Franklin', sans-serif; font-size: 26px; font-weight: 700; color: var(--accent); margin-bottom: 6px; }
.milestone-label { font-size: 13px; color: var(--fg-soft); line-height: 1.5; }

.terms-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; margin: 32px 0 48px; }
.terms-card { border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 26px 22px; background: #fff; text-align: center; }
.terms-card-label { font-size: 12.5px; color: var(--fg-soft); text-transform: uppercase; letter-spacing: .03em; margin-bottom: 8px; }
.terms-card-value { font-family: 'Libre Franklin', sans-serif; font-size: 25px; font-weight: 700; color: var(--accent); margin-bottom: 10px; }
.terms-card-note { font-size: 13px; color: var(--fg-soft); line-height: 1.5; }

@media (max-width: 900px) {
  .milestone-row, .terms-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .milestone-row, .terms-grid { grid-template-columns: 1fr; }
}
