body.md-calculators-page {
  --calc-ink: var(--md-public-ink,#10243A);
  --calc-copy: var(--md-public-body,#65758A);
  --calc-purple: var(--md-public-accent,#4353E8);
  --calc-purple-dark: var(--md-public-hover,#3038A8);
  --calc-line: var(--md-public-line,#DDE5EC);
  --calc-warm: var(--md-public-mist,#F4F7FA);
  margin: 0;
  background: var(--calc-warm);
  color: var(--calc-ink);
  font-family: "DM Sans", "Avenir Next", Avenir, sans-serif;
}

body.md-calculators-page *,
body.md-calculators-page *::before,
body.md-calculators-page *::after { box-sizing: border-box; letter-spacing: 0; }

.md-calculators-page .container { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.md-calculators-page .calcs-hero { padding: 88px 0 66px; background: #fff; border-bottom: 1px solid var(--calc-line); text-align: left; }
.md-calculators-page .calcs-eyebrow { margin: 0 0 12px; color: var(--calc-purple-dark); font-size: 12px; font-weight: 800; text-transform: uppercase; }
.md-calculators-page .calcs-title { max-width: 820px; margin: 0; color: var(--calc-ink); font-size: 58px; line-height: 1.05; font-weight: 800; }
.md-calculators-page .calcs-lead { max-width: 720px; margin: 20px 0 0; color: var(--calc-copy); font-size: 18px; line-height: 1.6; }
.md-calculators-page .calcs-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.md-calculators-page .calcs-hero-actions a { min-height: 48px; display: inline-flex; align-items: center; padding: 11px 17px; border: 1px solid var(--md-public-line,#cfcad5); border-radius: 6px; color: var(--calc-ink); background: #fff; font-size: 14px; font-weight: 800; text-decoration: none; }
.md-calculators-page .calcs-hero-actions a.calcs-primary { border-color: var(--calc-purple); color: #fff; background: var(--calc-purple); }
.md-calculators-page .calcs-filter-wrap { padding: 24px 0 0; background: var(--calc-warm); }
.md-calculators-page .calcs-filter-wrap .container { justify-content: flex-start; }
.md-calculators-page .calcs-filter { justify-content: flex-start; padding: 4px; border: 1px solid var(--calc-line); border-radius: 7px; background: #fff; }
.md-calculators-page .calcs-pill { min-height: 40px; border-radius: 5px; font-family: inherit; }
.md-calculators-page .calcs-pill.active { background: var(--calc-ink); color: #fff; }
.md-calculators-page .calcs-grid-section { padding: 34px 0 78px; }
.md-calculators-page .calcs-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.md-calculators-page .calcs-card { min-height: 300px; display: flex; flex-direction: column; padding: 24px; border: 1px solid var(--calc-line); border-radius: 8px; background: #fff; box-shadow: none; }
.md-calculators-page .calcs-card:hover { border-color: var(--md-public-sky,#b9afed); box-shadow: 0 14px 34px rgba(16,26,58,.09); transform: translateY(-3px); }
.md-calculators-page .calcs-card-top { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 40px; color: var(--calc-purple-dark); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.md-calculators-page .calcs-card-top b { color: var(--md-public-body,#aaa3b8); font-size: 12px; font-variant-numeric: tabular-nums; }
.md-calculators-page .calcs-card h3 { margin: 0; color: var(--calc-ink); font-size: 21px; line-height: 1.2; }
.md-calculators-page .calcs-card p { margin: 13px 0 28px; color: var(--calc-copy); font-size: 13px; line-height: 1.58; }
.md-calculators-page .calcs-arrow { position: static; width: 36px; height: 36px; display: grid; place-items: center; margin-top: auto; border: 1px solid var(--calc-line); border-radius: 50%; color: var(--calc-purple); }
.md-calculators-page .calcs-assumptions { padding: 76px 0; border-top: 1px solid var(--calc-line); border-bottom: 1px solid var(--calc-line); background: #fff; }
.md-calculators-page .calcs-assumptions > .container { display: grid; grid-template-columns: .8fr 1.2fr; gap: 80px; }
.md-calculators-page .calcs-assumptions h2 { max-width: 450px; margin: 0; color: var(--calc-ink); font-size: 36px; line-height: 1.1; }
.md-calculators-page .calcs-assumption-list { border-top: 1px solid var(--calc-line); }
.md-calculators-page .calcs-assumption-list p { display: grid; grid-template-columns: 170px minmax(0,1fr); gap: 22px; margin: 0; padding: 19px 0; border-bottom: 1px solid var(--calc-line); }
.md-calculators-page .calcs-assumption-list strong { color: var(--calc-ink); font-size: 13px; }
.md-calculators-page .calcs-assumption-list span { color: var(--calc-copy); font-size: 13px; }

@media (max-width: 1000px) {
  .md-calculators-page .calcs-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 700px) {
  .md-calculators-page .container { width: min(100% - 32px, 1180px); }
  .md-calculators-page .calcs-hero { padding: 62px 0 50px; }
  .md-calculators-page .calcs-title { font-size: 40px; }
  .md-calculators-page .calcs-lead { font-size: 16px; }
  .md-calculators-page .calcs-filter { width: 100%; justify-content: flex-start; overflow-x: auto; }
  .md-calculators-page .calcs-pill { flex: 0 0 auto; }
  .md-calculators-page .calcs-grid { grid-template-columns: 1fr; }
  .md-calculators-page .calcs-card { min-height: 250px; }
  .md-calculators-page .calcs-assumptions > .container { grid-template-columns: 1fr; gap: 35px; }
  .md-calculators-page .calcs-assumption-list p { grid-template-columns: 1fr; gap: 6px; }
}
