/* Homepage category section: consistent eight-item responsive grid. */
#categories {background:#f5f7fa;}
#categories .px-cgrid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  background:transparent;
  border:0;
  border-top:0;
  align-items:stretch;
}
#categories .px-cgrid > .px-ccard--refined {
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:236px;
  padding:20px 20px 18px;
  margin:0;
  border:1px solid #e1e7ed;
  border-radius:10px;
  background:#fff;
  gap:0;
  box-shadow:0 1px 3px rgba(15,42,70,.035);
  transition:border-color .18s ease,box-shadow .18s ease;
}
#categories .px-cgrid > .px-ccard--refined:hover,
#categories .px-cgrid > .px-ccard--refined:focus-within {border-color:#a8bdd0;box-shadow:0 8px 22px rgba(15,42,70,.085)}
#categories .px-ccard__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}
#categories .px-ccard__icon{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:9px;background:#eef3f8;color:#153c63}
#categories .px-ccard__icon svg{width:22px;height:22px}
#categories .px-ccard__number{font-size:11px;font-family:'IBM Plex Mono',monospace;letter-spacing:.07em;color:#8495a5}
#categories .px-ccard--refined .px-ccard__body{
  display:flex;
  flex:1;
  flex-direction:column;
  padding:0;
  gap:0;
  min-width:0;
}
#categories .px-ccard--refined h3{margin:0 0 12px;font-size:16px;line-height:1.4;font-weight:700;overflow-wrap:normal}
#categories .px-ccard--refined h3 a{padding:0;margin:0;display:inline;text-decoration:none;color:#102f50}
#categories .px-ccard--refined h3 a:hover{text-decoration:underline;text-underline-offset:3px}
#categories .px-ccard--refined ul{display:flex;flex-direction:column;gap:0;list-style:none;padding:0;margin:0 0 13px}
#categories .px-ccard--refined li{display:block;border-top:0;padding:0;line-height:1.4;font-size:12.5px}
#categories .px-ccard--refined li a{display:block;min-height:29px;padding:5px 0;color:#365674;text-decoration:none}
#categories .px-ccard--refined li a:hover{color:#0a2d4f;text-decoration:underline}
#categories .px-ccard--refined .px-cta{display:inline-flex;align-self:flex-start;margin-top:auto;padding:9px 0 0;font-size:11px;line-height:1.4;letter-spacing:.035em;text-decoration:none}
@media(max-width:1199px){#categories .px-cgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){#categories .px-cgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
@media(max-width:560px){
  #categories .px-cgrid{grid-template-columns:1fr;gap:10px}
  #categories .px-cgrid>.px-ccard--refined{min-height:0;padding:17px}
  #categories .px-ccard__top{margin-bottom:10px}
  #categories .px-ccard--refined h3{font-size:16px}
}
@media(prefers-reduced-motion:reduce){#categories .px-ccard--refined{transition:none}}
