/* Catalog and comparison pages share the approved homepage palette and surfaces. */
.inner-page :is(.cat-page, .pc-page) { color:#526995; }
.inner-page :is(.cat-hub-hero, .pc-hero) {
  max-width:none;
  margin:18px 0 28px;
  padding:32px 36px;
  border:1px solid #e1edf5;
  border-radius:12px;
  background:#edf7fd;
}
.inner-page :is(.cat-hub-hero, .pc-hero) h1 {
  max-width:960px;
  margin-bottom:15px;
  color:#081c64;
  font-size:clamp(32px, 3.65vw, 46px);
  line-height:1.2;
  letter-spacing:-.045em;
}
.inner-page :is(.cat-hub-hero, .pc-hero) > p:not(.eyebrow) { max-width:880px; color:#526995; font-size:16px; line-height:1.75; }
.inner-page .cat-hub-hero .eyebrow, .inner-page .pc-hero .eyebrow { color:#007f83; }
.inner-page :is(.cat-category-links, .pc-jump-links) { gap:10px; }
.inner-page :is(.cat-category-links a, .pc-jump-links a, .cat-filter) {
  min-height:46px;
  border-color:#d8e3f1;
  border-radius:6px;
  background:#fff;
  color:#081c64;
}
.inner-page :is(.cat-category-links a, .pc-jump-links a, .cat-filter):hover { border-color:#a8cbdb; background:#f3fafc; }
.inner-page .cat-category-links a[aria-current="page"], .inner-page .cat-filter.is-active {
  border-color:#b9dfdf;
  background:#eaf8f8;
  color:#006e74;
  box-shadow:inset 0 -2px #007f83;
}
.inner-page :is(.cat-grid, .pc-grid) { gap:20px; }
.inner-page :is(.cat-card, .pc-card, .ns-result) {
  border-color:#e3ebf4;
  border-radius:9px;
  background:#fff;
  box-shadow:0 5px 16px #314b7a05;
}
.inner-page :is(.cat-card, .pc-card) { padding:23px 22px 18px; }
.inner-page .cat-card-title { color:#081c64; font-size:25px; }
.inner-page .pc-card h3 { color:#081c64; font-size:24px; letter-spacing:-.035em; }
.inner-page :is(.cat-provider strong, .cat-card-facts dd strong, .cat-card-conditions h4, .cat-card-conditions summary) { color:#081c64; }
.inner-page :is(.cat-description, .cat-provider, .cat-card-facts dt, .cat-card-facts dd span, .cat-card-conditions p, .cat-entry-kind, .cat-checked, .pc-kind, .pc-card dt) { color:#526995; }
.inner-page :is(.cat-card-facts dd, .pc-card dd) { color:#173873; }
.inner-page :is(.cat-card-facts > div, .pc-known-fee) { border-color:#e8eef5; }
.inner-page .cat-art { background:radial-gradient(ellipse at 50% 75%, #eaf5f8 0, #f6fafd 51%, #fff 73%); }
.inner-page .cat-card-link:not([aria-disabled="true"]), .inner-page [data-pick-link]:not([aria-disabled="true"]), .inner-page .ns-next {
  min-height:48px;
  border-color:#007f83;
  border-radius:6px;
  background:linear-gradient(110deg,#007f83,#007779);
  color:#fff;
}
.inner-page .cat-card-link:not([aria-disabled="true"]):hover, .inner-page [data-pick-link]:not([aria-disabled="true"]):hover, .inner-page .ns-next:hover {
  border-color:#006d72;
  background:#006d72;
}
.inner-page :is(.cat-card-secondary, .pc-detail-link, .cat-category-link, .cat-text-link, .cat-guide-jump, .cat-guide-links a, .cat-compare-detail, .cat-comparison-return a) { color:#006bd6; }
.inner-page :is(.cat-card-secondary, .pc-detail-link):hover { color:#0054aa; }
.inner-page .pc-detail-link:hover { background:#f3fafc; }
.inner-page :is(.cat-more-button, .cat-referral-copy, .pc-broker-action, .dining-bank-link) { border-color:#b9d7dd; border-radius:6px; color:#006e74; background:#fff; }
.inner-page :is(.cat-more-button, .cat-referral-copy, .pc-broker-action, .dining-bank-link):hover { background:#eaf8f8; }
.inner-page :is(.cat-hub-products h2, .cat-hub-guide h2, .cat-hub-guide h3, .cat-comparison-heading h2, .pc-group h2, .pc-broker h3, .dining-comparison h2, .dining-comparison h3, .need-selector h2, .need-selector h3, .need-selector h4, .need-selector legend) { color:#081c64; letter-spacing:-.035em; }
.inner-page :is(.cat-group-intro, .cat-comparison-heading > p:last-child, .cat-hub-guide p, .cat-hub-guide ul, .pc-group-heading p, .cat-guide-note, .pc-group-note, .cat-table-hint) { color:#526995; }
.inner-page :is(.cat-hub-guide, .dining-comparison, .pc-broker) { border-color:#e3ebf4; border-radius:10px; background:#fff; }
.inner-page .cat-hub-guide { padding:28px 30px; }
.inner-page :is(.cat-decision-grid > div, .cat-related-links li, .cat-verified-facts, .cat-verified-facts > div, .pc-group, .pc-methodology, .cat-comparison-return) { border-color:#e3ebf4; }
.inner-page :is(.cat-referral, .cat-compare-controls, .cat-tool-banner, .pc-comparison-links, .need-selector) { border-color:#cce7e7; border-radius:10px; background:#eff9f9; }
.inner-page .cat-referral { color:#081c64; }
.inner-page .cat-referral-code-row code { border-color:#cce7e7; color:#081c64; }
.inner-page .cat-compare-controls { padding:20px 22px; }
.inner-page .cat-compare-controls legend { color:#081c64; }
.inner-page .cat-compare-choices label { border-color:#c9dce5; border-radius:6px; color:#173873; }
.inner-page .cat-compare-choices label:has(input:checked) { border-color:#71b9b9; background:#fff; box-shadow:inset 0 -2px #007f83; }
.inner-page :is(.cat-compare-choices input, [data-pick-option] input) { accent-color:#007f83; }
.inner-page :is(.cat-compare-reset, [data-pick-reset], .pc-comparison-links a, .cat-verified-facts dt, .cat-verified-facts dd > strong) { color:#081c64; }
.inner-page :is(.cat-compare-scroll, .pc-broker-table-wrap) { border-color:#e3ebf4; border-radius:9px; }
.inner-page .cat-compare-table { color:#526995; }
.inner-page .cat-compare-table :is(th, td) { border-color:#e3ebf4; }
.inner-page .cat-compare-table thead th, .inner-page .cat-compare-table thead th:first-child { background:#edf7fd; color:#081c64; }
.inner-page .cat-compare-table thead a { color:#081c64; }
.inner-page .cat-compare-date { color:#526995; }
.inner-page .cat-compare-table tbody th { background:#f6fafd; color:#173873; }
.inner-page .cat-compare-table td > strong { color:#081c64; }
.inner-page :is(.cat-compare-table caption, .cat-editorial-note, .pc-methodology, .pc-broker .pc-broker-sources, .dining-checked, .dining-provenance, .dining-product dt) { color:#526995; }
.inner-page :is(.cat-fact-sources a, .cat-source-number) { color:#006e74; }
.inner-page :is(.cat-pick-bar, [data-pick-summary]) { border-color:#b9dede; border-radius:10px; background:#eff9f9; color:#081c64; box-shadow:0 8px 28px #314b7a1a; }
.inner-page [data-pick-option] { color:#526995; }
.inner-page .dining-product { border-color:#e3ebf4; background:#f6fafd; }
.inner-page :is(.dining-product dl > div, .dining-table th, .dining-table td, .dining-conditions, .dining-actions, .dining-provenance) { border-color:#e3ebf4; }
.inner-page .dining-table thead th { color:#081c64; background:#edf7fd; }
.inner-page .dining-table tbody th { color:#173873; background:#f6fafd; }
.inner-page .dining-table tbody td { color:#081c64; }
.inner-page :is(.dining-unit-note, .pc-broker-result) { border-color:#007f83; border-radius:0 6px 6px 0; background:#eff9f9; color:#173873; }
.inner-page .dining-fee-summary { background:#f3f8fc; }
.inner-page .need-selector { padding:28px 30px; }
.inner-page :is(.ns-option, .ns-result) { border-radius:8px; }
.inner-page .ns-option { border-color:#d8e3f1; color:#081c64; }
.inner-page .ns-option:hover { border-color:#80bebe; }
.inner-page .ns-option[aria-pressed="true"] { border-color:#007f83; background:#eaf8f8; box-shadow:inset 0 0 0 1px #007f83; }
.inner-page :is(.ns-intro, .ns-progress, .ns-status, .ns-option small, .ns-scope, .ns-result dt, .ns-result dd span) { color:#526995; }
.inner-page .ns-button { border-radius:6px; }
.inner-page :is(.cat-page, .pc-page, .need-selector, .cat-verified-facts) :is(a, button, input, select, summary):focus-visible,
.inner-page .cat-compare-scroll:focus-visible { outline:3px solid #008887; outline-offset:4px; }

@media (max-width:960px) {
  .inner-page :is(.cat-hub-hero, .pc-hero) { padding:28px; }
  .inner-page :is(.cat-grid, .pc-grid) { gap:16px; }
  .inner-page :is(.cat-card, .pc-card) { padding:20px 18px 16px; }
  .inner-page .cat-card-title { font-size:23px; }
}
@media (max-width:640px) {
  .inner-page :is(.cat-hub-hero, .pc-hero) { margin-top:14px; margin-bottom:24px; padding:23px 20px; }
  .inner-page :is(.cat-hub-hero, .pc-hero) h1 { font-size:clamp(28px, 7vw, 36px); }
  .inner-page :is(.cat-hub-hero, .pc-hero) > p:not(.eyebrow) { font-size:15px; }
  .inner-page :is(.cat-category-links, .pc-jump-links) { gap:8px; }
  .inner-page .cat-category-links a { flex:1 1 auto; justify-content:center; padding-inline:12px; }
  .inner-page :is(.cat-card, .pc-card) { padding:21px 20px 16px; }
  .inner-page :is(.cat-card-title, .pc-card h3) { font-size:24px; }
  .inner-page :is(.cat-hub-guide, .need-selector) { padding:23px 18px; }
  .inner-page .cat-compare-controls { padding:18px 16px; }
}
@media (max-width:620px) {
  .inner-page :is(.cat-pick-bar, [data-pick-summary]) { border-radius:0; }
}
