/* AC staging: categorías fijas, edición visual de octubre 2026. */
.ac2-home .ac22-categories {
  position: relative; isolation: isolate; overflow: hidden;
  width: 100%; padding: 38px 0 46px; scroll-margin-top: 24px;
  background: #e9f5ff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1672 1200' preserveAspectRatio='none'%3E%3Cpath fill='%23d7ebff' fill-opacity='.72' d='M0 450C440 680 960 870 1672 390V1200H0Z'/%3E%3Cpath fill='%23ecf7ff' fill-opacity='.8' d='M0 625C550 740 1010 1060 1672 610V770C1050 1160 610 900 0 770Z'/%3E%3Cpath fill='%23c6e3ff' fill-opacity='.6' d='M0 920C430 955 1010 1225 1672 845V1200H0Z'/%3E%3Cpath fill='%23f4faff' fill-opacity='.75' d='M0 1040C420 1060 1080 1340 1672 1010V1100C1030 1410 420 1150 0 1160Z'/%3E%3C/svg%3E");
  background-size: 100% 100%; background-repeat: no-repeat;
}
.ac2-home .ac22-shell { width: min(1280px, calc(100% - 64px)) !important; margin: 0 auto !important; position: relative; }
.ac2-home .ac22-heading { text-align: center; margin-bottom: 25px; }
.ac2-home .ac22-eyebrow {
  display: flex; align-items: center; justify-content: center; gap: 13px;
  color: #075ee3; font-family: "AC Institutional Montserrat", Montserrat, sans-serif !important;
  font-weight: 600 !important; font-size: 10px !important; line-height: 1.5 !important;
  letter-spacing: 2.3px !important; margin: 0 0 8px !important;
}
.ac2-home .ac22-eyebrow::before,.ac2-home .ac22-eyebrow::after { content: ""; width: 32px; height: 1px; background: #80b6f5; }
.ac2-home .ac22-heading h2 {
  color: #103467; font-family: "AC Institutional Montserrat", Montserrat, sans-serif !important;
  font-weight: 600 !important; font-size: 32px !important; line-height: 1.2 !important;
  letter-spacing: -.8px !important; margin: 0 0 8px !important;
}
.ac2-home .ac22-heading h2 a { display: inline-block; color: inherit !important; border-radius: 4px; }
.ac2-home .ac22-intro {
  color: #234e80; font-family: "AC Institutional Inter", Inter, sans-serif !important;
  font-weight: 400; font-size: 14px; line-height: 1.6; margin: 0 !important;
}
.ac2-home .ac22-grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 18px 22px; }
.ac2-home .ac22-card {
  display: flex; flex-direction: column; min-width: 0; overflow: hidden;
  border: 1px solid #c6dff9; border-radius: 8px; background: #fff;
  box-shadow: 0 6px 17px rgba(33,86,142,.09);
  color: #fff !important; text-decoration: none !important;
  transition: border-color .18s ease, box-shadow .18s ease;
}
.ac2-home .ac22-image { display: flex; align-items: center; justify-content: center; height: 100px; padding: 9px 18px; background: linear-gradient(150deg,#fff 12%,#f1f7ff 100%); }
.ac2-home .ac22-image img { display: block; width: auto !important; height: auto !important; max-width: 100% !important; max-height: 82px !important; object-fit: contain; }
.ac2-home .ac22-footer {
  display: grid; grid-template-columns: minmax(0,1fr) 28px; align-items: center; gap: 10px;
  flex: 1; min-height: 58px; padding: 9px 12px 9px 14px;
  background: linear-gradient(115deg,#104a8a 0%,#07396f 100%); color: #fff;
}
.ac2-home .ac22-copy { min-width: 0; }
.ac2-home .ac22-card h3 {
  font-family: "AC Institutional Montserrat", Montserrat, sans-serif !important;
  font-size: 13px !important; line-height: 1.3 !important; font-weight: 600 !important;
  letter-spacing: -.12px !important; color: #fff !important; margin: 0 0 3px !important;
  overflow-wrap: normal;
}
.ac2-home .ac22-caption {
  display: block; font-family: "AC Institutional Inter", Inter, sans-serif !important;
  font-size: 10.5px; line-height: 1.4; font-weight: 400; color: #e0eeff;
}
.ac2-home .ac22-arrow { display: flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%; background: #fff; color: #104a8a; }
.ac2-home .ac22-arrow svg { display: block; width: 16px; height: 16px; }
.ac2-home .ac22-card:hover { border-color: #82b8f2; box-shadow: 0 8px 22px rgba(33,86,142,.16); }
.ac2-home .ac22-card:focus-visible,.ac2-home .ac22-heading h2 a:focus-visible { outline: 3px solid #0065e8 !important; outline-offset: 4px !important; }
@media (min-width:1101px) {
  .ac2-home .ac22-card:nth-child(21) { grid-column: 2; }
}
@media (max-width:1100px) {
  .ac2-home .ac22-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
  .ac2-home .ac22-image { height: 112px; }
  .ac2-home .ac22-image img { max-height: 94px !important; }
  .ac2-home .ac22-card h3 { font-size: 14px !important; }
  .ac2-home .ac22-caption { font-size: 11px; }
}
@media (max-width:600px) {
  .ac2-home .ac22-categories { padding: 31px 0 36px; }
  .ac2-home .ac22-shell { width: calc(100% - 32px) !important; }
  .ac2-home .ac22-heading { margin-bottom: 21px; }
  .ac2-home .ac22-heading h2 { font-size: 28px !important; }
  .ac2-home .ac22-eyebrow { font-size: 9px !important; letter-spacing: 1.8px !important; gap: 9px; }
  .ac2-home .ac22-eyebrow::before,.ac2-home .ac22-eyebrow::after { width: 25px; }
  .ac2-home .ac22-intro { font-size: 13px; line-height: 1.55; max-width: 330px; margin: 0 auto !important; }
  .ac2-home .ac22-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px 12px; }
  .ac2-home .ac22-image { height: 96px; padding: 10px 12px; }
  .ac2-home .ac22-image img { max-height: 76px !important; }
  .ac2-home .ac22-footer { padding: 9px 9px 9px 11px; min-height: 68px; grid-template-columns: minmax(0,1fr) 24px; gap: 6px; }
  .ac2-home .ac22-card h3 { font-size: 12px !important; line-height: 1.32 !important; }
  .ac2-home .ac22-caption { font-size: 9.5px; }
  .ac2-home .ac22-arrow { width: 24px; height: 24px; }
  .ac2-home .ac22-arrow svg { width: 14px; height: 14px; }
  .ac2-home .ac22-card:last-child:nth-child(odd) { grid-column: 1 / -1; width: calc((100% - 12px)/2); justify-self: center; }
}
@media (max-width:360px) {
  .ac2-home .ac22-footer { padding: 9px 8px; grid-template-columns: minmax(0,1fr) 20px; gap: 5px; }
  .ac2-home .ac22-card h3 { font-size: 11.5px !important; }
  .ac2-home .ac22-arrow { width: 20px; height: 20px; }
}
@media (prefers-reduced-motion:reduce) { .ac2-home .ac22-card { transition: none; } }
