.catalog-intro { padding:12px 0 25px; border-bottom:1px solid var(--line); }
.catalog-intro h1 { margin:9px 0 12px; max-width:900px; font-size:34px; }
.catalog-intro > p { max-width:800px; color:var(--muted); font-size:16px; line-height:1.65; }
.catalog-tabs { display:flex; flex-wrap:wrap; gap:0 28px; border-bottom:1px solid var(--line); margin-bottom:22px; }
.catalog-tabs a { display:flex; align-items:center; gap:9px; padding:17px 0 14px; border-bottom:3px solid transparent; font-weight:600; }
.catalog-tabs a[aria-current] { color:var(--accent); border-color:var(--accent); }
.catalog-tabs a span { background:var(--line); color:var(--muted); padding:0 6px; border-radius:3px; font-size:11px; }
.catalog-filters { display:flex; align-items:flex-end; gap:16px; padding:18px; margin-bottom:23px; }
.catalog-filters > label { display:grid; gap:6px; color:var(--muted); font-size:12px; font-weight:600; }
.catalog-filters > label:first-child { flex:1; }
.catalog-filters input,.catalog-filters select { width:100%; min-height:40px; border:1px solid var(--line); background:var(--surface); color:var(--ink); padding:8px 12px; border-radius:4px; font-size:14px; }
.catalog-filters .button { min-height:40px; }
.catalog-columns { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:26px; align-items:start; }
.catalog-main { min-width:0; }
.catalog-list-heading { display:flex; justify-content:space-between; margin-bottom:12px; font-size:13px; }
.catalog-list-heading > span { color:var(--muted); }
.catalog-list { overflow:hidden; }
.catalog-row { display:grid; grid-template-columns:62px minmax(0,1fr) 160px; gap:18px; padding:24px 20px; }
.catalog-row + .catalog-row { border-top:1px solid var(--line); }
.catalog-row-brand { display:flex; align-items:flex-start; gap:9px; }
.catalog-position { color:var(--muted); padding-top:11px; font-size:11px; }
.catalog-row .platform-monogram { width:36px; height:38px; font-size:19px; border-radius:4px; }
.catalog-row h2 { font-size:19px; letter-spacing:-.3px; }
.catalog-type { display:block; font-size:11px; color:var(--accent); margin:4px 0 9px; }
.catalog-row-description > p { color:var(--muted); font-size:13px; line-height:1.65; }
.catalog-assets { display:block; font-size:11px; margin-top:12px; }
.catalog-row-actions { display:flex; flex-direction:column; align-items:stretch; gap:15px; justify-content:center; }
.catalog-row-actions .button { padding:7px 9px; font-size:12px; white-space:normal; text-align:center; }
.catalog-row-actions .icon { width:15px; height:15px; }
.catalog-row-actions > label { display:flex; align-items:center; gap:7px; font-size:11px; cursor:pointer; }
.catalog-row-actions input { accent-color:var(--accent); flex-shrink:0; width:15px; height:15px; margin:0; }
.catalog-compare-actions { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:17px 0 26px; }
.catalog-compare-actions > span { font-size:12px; }
.catalog-note { padding:22px; margin-bottom:20px; }
.catalog-note h2 { font-size:18px; margin-bottom:13px; }
.catalog-note .tag { margin-bottom:10px; }
.catalog-note > p { color:var(--muted); font-size:13px; line-height:1.7; margin:12px 0 18px; }
.catalog-note > a:not(.button) { font-size:12px; color:var(--accent); }
.catalog-note > .button { width:100%; white-space:normal; text-align:center; font-size:12px; }
.catalog-note .icon { width:16px; height:16px; }
.catalog-comparison { padding:22px; margin-bottom:25px; }
.catalog-comparison h2 { font-size:18px; }
.catalog-comparison .comparison-table { min-width:560px; }
.catalog-comparison ul { padding-left:16px; margin:0; font-size:12px; }
.catalog-comparison li + li { margin-top:8px; }
.catalog-footnote { margin-top:18px; color:var(--muted); font-size:12px; }
.catalog-empty { padding:30px; color:var(--muted); }
.catalog-profile-header { padding:30px; border-top:3px solid var(--accent); }
.catalog-profile-heading { display:flex; align-items:center; gap:25px; }
.catalog-profile-heading h1 { font-size:36px; margin:7px 0 10px; }
.catalog-profile-heading p { max-width:760px; font-size:16px; line-height:1.65; color:var(--muted); }
.catalog-profile-monogram { width:82px; height:82px; display:flex; align-items:center; justify-content:center; background:var(--paper); color:var(--ink); font-size:43px; font-weight:700; flex-shrink:0; }
.catalog-profile-links { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-top:24px; padding-top:20px; border-top:1px solid var(--line); font-size:13px; color:var(--accent); }
.catalog-profile-links .text-button .icon { transform:rotate(180deg); }
.catalog-anchor-nav { display:flex; gap:30px; padding:17px 0; border-bottom:1px solid var(--line); margin-bottom:25px; font-size:13px; font-weight:600; }
.catalog-prose { padding:28px; margin-bottom:22px; }
.catalog-prose h2 { margin-bottom:18px; }
.catalog-prose > p { font-size:15px; line-height:1.8; margin-top:16px; }
.catalog-prose a { color:var(--accent); overflow-wrap:anywhere; }
.catalog-checklist { list-style:none; counter-reset:checks; padding:0; margin:18px 0 22px; }
.catalog-checklist li { display:flex; align-items:center; gap:15px; margin-top:14px; font-size:14px; }
.catalog-checklist li::before { counter-increment:checks; content:counter(checks,decimal-leading-zero); color:var(--accent); font-variant-numeric:tabular-nums; font-weight:700; font-size:12px; }
.catalog-facts { margin:0 0 20px; }
.catalog-facts > div { padding:12px 0; border-bottom:1px solid var(--line); }
.catalog-facts dt { font-size:11px; color:var(--muted); margin-bottom:5px; }
.catalog-facts dd { margin:0; font-size:13px; overflow-wrap:anywhere; }
.catalog-facts a { color:var(--accent); }
.catalog-guide-link { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 0; border-top:1px solid var(--line); line-height:1.5; }
.catalog-note .catalog-guide-link + .text-button { margin-top:18px; }
.catalog-faq details { border-top:1px solid var(--line); padding:15px 0; }
.catalog-faq summary { cursor:pointer; font-weight:600; line-height:1.5; }
.catalog-faq details > p { color:var(--muted); font-size:14px; line-height:1.7; padding-top:12px; }
.catalog-product-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.catalog-product { overflow:hidden; }
.catalog-product-visual { display:block; aspect-ratio:1.8; background:var(--nav); }
.catalog-product-visual > img { width:100%; height:100%; object-fit:cover; }
.catalog-monogram { display:flex; align-items:center; justify-content:center; height:100%; color:var(--nav-ink); background:linear-gradient(130deg,var(--nav),#343d43); font-size:75px; font-weight:700; letter-spacing:-4px; }
.catalog-product-body { padding:24px; }
.catalog-product-body h2 { font-size:24px; margin:8px 0 12px; }
.catalog-product-body > p { color:var(--muted); line-height:1.7; }
.catalog-product-body .catalog-checklist { margin-bottom:24px; }
.catalog-product-body .catalog-checklist li { font-size:12px; }
.catalog-product-links { display:flex; align-items:center; flex-wrap:wrap; gap:18px; font-size:12px; }
.catalog-product-links .button { font-size:12px; }
.catalog-product-hero { display:grid; grid-template-columns:minmax(0,1fr) 34%; overflow:hidden; border-top:3px solid var(--accent); }
.catalog-product-hero .catalog-profile-heading { padding:30px; }
.catalog-product-hero .catalog-product-visual { aspect-ratio:auto; min-height:250px; }
.catalog-store-row { display:grid; grid-template-columns:170px minmax(0,1fr); gap:24px; padding:25px 0; border-top:1px solid var(--line); }
.catalog-store-row .catalog-product-visual { aspect-ratio:1.3; border-radius:4px; overflow:hidden; }
.catalog-store-row h2 { margin:7px 0 11px; }
.catalog-store-row p { color:var(--muted); line-height:1.7; margin-bottom:18px; }
.catalog-store-directory { padding:0 25px; }
.catalog-store-directory .catalog-store-row:first-child { border-top:0; }
@media(max-width:1150px) {
  .catalog-columns { grid-template-columns:minmax(0,1fr) 235px; gap:20px; }
  .catalog-row { grid-template-columns:45px minmax(0,1fr); gap:14px; }
  .catalog-position { display:none; }
  .catalog-row-actions { grid-column:2; flex-direction:row; align-items:center; justify-content:flex-start; flex-wrap:wrap; }
}
@media(max-width:900px) {
  .catalog-columns { grid-template-columns:minmax(0,1fr); }
  .catalog-aside { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
  .catalog-note { margin-bottom:0; }
  .catalog-product-hero { grid-template-columns:minmax(0,1fr) 32%; }
}
@media(max-width:600px) {
  .catalog-intro h1 { font-size:28px; }
  .catalog-intro > p { font-size:14px; }
  .catalog-tabs { gap:0 18px; }
  .catalog-tabs a { font-size:12px; padding:13px 0 10px; }
  .catalog-tabs a span { font-size:10px; }
  .catalog-filters { flex-wrap:wrap; padding:15px; gap:12px; }
  .catalog-filters > label:first-child { flex-basis:100%; }
  .catalog-filters > label:nth-child(2) { flex:1; }
  .catalog-filters .button { font-size:12px; }
  .catalog-row { padding:20px 15px; grid-template-columns:34px minmax(0,1fr); gap:14px; }
  .catalog-row .platform-monogram { width:34px; height:36px; }
  .catalog-row h2 { font-size:18px; }
  .catalog-compare-actions { flex-wrap:wrap; }
  .catalog-aside { grid-template-columns:minmax(0,1fr); }
  .catalog-profile-header { padding:22px; }
  .catalog-profile-heading { gap:15px; align-items:flex-start; }
  .catalog-profile-heading h1 { font-size:28px; }
  .catalog-profile-heading p { font-size:14px; }
  .catalog-profile-monogram { width:48px; height:48px; font-size:29px; }
  .catalog-profile-links { align-items:flex-start; gap:14px; flex-wrap:wrap; font-size:12px; }
  .catalog-anchor-nav { gap:18px; flex-wrap:wrap; font-size:12px; }
  .catalog-prose { padding:22px; }
  .catalog-prose > p { font-size:14px; }
  .catalog-product-grid,.catalog-product-hero { grid-template-columns:minmax(0,1fr); }
  .catalog-product-hero .catalog-product-visual { aspect-ratio:2.2; min-height:0; grid-row:1; }
  .catalog-product-hero .catalog-profile-heading { padding:22px; }
  .catalog-store-row { grid-template-columns:minmax(0,1fr); gap:15px; }
  .catalog-store-row .catalog-product-visual { aspect-ratio:2; }
  .catalog-store-directory { padding:0 20px; }
}
.provider-decision-facts>div,.wallet-model-facts .catalog-facts>div {display:grid;grid-template-columns:minmax(110px,1fr) minmax(0,2fr);gap:16px;}
.provider-decision-facts dd,.wallet-model-facts .catalog-facts dd {text-align:left;font-weight:400;line-height:1.7;}
.provider-source-list {padding-left:20px;}
.provider-source-list li+li {margin-top:10px;}
.catalog-prose h3 {margin:24px 0 14px;font-size:18px;}
.wallet-model-facts .button {white-space:normal;line-height:1.5;}
@media(max-width:600px) {
  .provider-decision-facts>div,.wallet-model-facts .catalog-facts>div {grid-template-columns:1fr;gap:5px;}
}
