/* Footer */
.ab-footer {
  padding: 58px 0 26px;
  background: #07101e;
  color: #fff;
}

.ab-footer-grid {
  display: grid;
  grid-template-columns: 1.4fr repeat(6, 1fr);
  gap: 24px;
  align-items: start;
}

.ab-footer-brand p {
  margin: 14px 0 0;
  color: rgba(255, 255, 255, .60);
  line-height: 1.65;
  font-size: 14px;
  max-width: 340px;
}

.ab-footer h4 {
  margin: 0 0 12px;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .10em;
  color: rgba(255, 255, 255, .92);
}

.ab-footer a {
  display: block;
  color: rgba(255, 255, 255, .56);
  text-decoration: none;
  font-size: 13px;
  margin: 8px 0;
  line-height: 1.25;
}

.ab-footer a:hover {
  color: #fff;
}

.ab-footer-bottom {
  margin-top: 34px;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, .12);
  display: flex;
  justify-content: space-between;
  gap: 20px;
  color: rgba(255, 255, 255, .50);
  font-size: 12px;
}

/* Footer responsive */
@media (max-width: 1160px) {
  .ab-footer-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .ab-footer-brand {
    grid-column: span 3;
  }
}

@media (max-width: 720px) {
  .ab-footer-grid {
    grid-template-columns: 1fr 1fr;
  }

  .ab-footer-brand {
    grid-column: span 2;
  }

  .ab-footer-bottom {
    display: block;
  }

  .ab-footer-bottom span {
    display: block;
    margin: 8px 0;
  }
}

@media (max-width: 460px) {
  .ab-footer-grid {
    grid-template-columns: 1fr;
  }

  .ab-footer-brand {
    grid-column: auto;
  }
}

html[data-ab-theme="dark"] .ab-footer {
  background:
    radial-gradient(circle at 18% 14%, rgba(84, 232, 255, .16), transparent 30%),
    radial-gradient(circle at 78% 80%, rgba(117, 245, 177, .10), transparent 32%),
    linear-gradient(140deg, #05070d, #091427);
  color: #fff;
}

html[data-ab-theme="dark"] .ab-footer-brand p {
  color: var(--ab-soft);
}

.ab-footer h4,
.ab-footer-bottom {
  font-size: 12.5px;
  line-height: 1.45;
}

.ab-footer a {
  font-size: 14px;
  line-height: 1.38;
}

/* Extracted theme/layout rules from Home.css */
html[data-ab-theme="dark"] .ab-footer {
  background:
    radial-gradient(circle at 18% 14%, rgba(84, 232, 255, .16), transparent 30%),
    radial-gradient(circle at 78% 80%, rgba(117, 245, 177, .10), transparent 32%),
    linear-gradient(140deg, #05070d, #091427);
  color: #fff;
}

html[data-ab-theme="dark"] .ab-footer-brand p {
  color: var(--ab-soft);
}

html[data-ab-theme="light"] .ab-footer-brand p {
  color: #48566b;
}

html[data-ab-theme="light"] .ab-footer {
  color: #ffffff;
}

html[data-ab-theme="light"] .ab-footer a,
html[data-ab-theme="light"] .ab-footer-bottom {
  color: rgba(255, 255, 255, .76);
}

html[data-ab-theme="light"] :is(.ab-footer) {
  color: #ffffff !important;
}

html[data-ab-theme="light"] :is(.ab-footer) :is(h1, h2, h3, h4, h5, h6, b, strong, summary, label, a) {
  color: #ffffff !important;
}

html[data-ab-theme="light"] :is(.ab-footer-brand p, .ab-footer a, .ab-footer-bottom) {
  color: rgba(255, 255, 255, .78) !important;
}

html[data-ab-theme="light"] .ab-footer h4 {
  color: #ffffff !important;
}

html[data-ab-theme="light"] :is(.ab-footer) :is(.ab-chip, .ab-small-link) {
  color: #ffffff !important;
  background: rgba(255, 255, 255, .12) !important;
  border-color: rgba(255, 255, 255, .18) !important;
}

html[data-ab-theme="light"] :is(.ab-footer) {
  color: #ffffff !important;
}

html[data-ab-theme="light"] :is(.ab-footer) :is(h1, h2, h3, h4, h5, h6, b, strong, summary, label, a) {
  color: #ffffff !important;
}

html[data-ab-theme="light"] :is(.ab-footer-brand p, .ab-footer a, .ab-footer-bottom) {
  color: rgba(255, 255, 255, .82) !important;
}

html[data-ab-theme="light"] :is(.ab-footer) :is(.ab-chip, .ab-small-link, .ab-resource-type) {
  color: #ffffff !important;
  background: rgba(255, 255, 255, .13) !important;
  border-color: rgba(255, 255, 255, .20) !important;
}

/* End extracted theme/layout rules */

/* Final theme overrides for the extracted footer partial. */
html[data-ab-theme="light"] .ab-footer {
  color: #07111f !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(44, 108, 196, .13), transparent 32%),
    linear-gradient(180deg, #eef4fb 0%, #e4edf8 100%) !important;
  border-top: 1px solid rgba(7, 16, 30, .14);
}

html[data-ab-theme="dark"] .ab-footer {
  color: #ffffff !important;
  background:
    radial-gradient(circle at 18% 14%, rgba(84, 232, 255, .16), transparent 30%),
    radial-gradient(circle at 78% 80%, rgba(117, 245, 177, .10), transparent 32%),
    linear-gradient(140deg, #05070d, #091427) !important;
  border-top: 1px solid rgba(255, 255, 255, .12);
}

html[data-ab-theme="light"] .ab-footer :is(.ab-brand, h4, strong) {
  color: #07111f !important;
}

html[data-ab-theme="dark"] .ab-footer :is(.ab-brand, h4, strong) {
  color: #ffffff !important;
}

html[data-ab-theme="light"] .ab-footer :is(p, a, .ab-footer-bottom) {
  color: #45546a !important;
}

html[data-ab-theme="dark"] .ab-footer :is(p, a, .ab-footer-bottom) {
  color: rgba(255, 255, 255, .76) !important;
}

html[data-ab-theme="light"] .ab-footer a:hover {
  color: #174ea6 !important;
}

html[data-ab-theme="dark"] .ab-footer a:hover {
  color: #ffffff !important;
}

html[data-ab-theme="light"] .ab-footer-bottom {
  border-top-color: rgba(7, 16, 30, .14) !important;
}

html[data-ab-theme="dark"] .ab-footer-bottom {
  border-top-color: rgba(255, 255, 255, .12) !important;
}