:is(rh-footer, :is(rh-footer-universal, rh-global-footer)) a {
  /* TODO remove --rh-color-link-inline-on-dark for v2 */
  /* stylelint-disable-next-line */
  color: var(--rh-color-link-inline-on-dark, var(--rh-color-interactive-blue-lighter, #92c5f9));
  text-decoration: none;
}

:is(rh-footer, :is(rh-footer-universal, rh-global-footer)) a:hover {
  /* TODO remove --rh-color-link-inline-hover-on-dark for v2 */
  /* stylelint-disable-next-line */
  color: var(--rh-color-link-inline-hover-on-dark, var(--rh-color-interactive-blue-lightest, #b9dafc));
  text-decoration: underline;
}

:is(rh-footer, :is(rh-footer-universal, rh-global-footer)) a:is(:focus, :focus-within) {
  /* TODO remove --rh-color-link-inline-focus-on-dark for v2 */
  /* stylelint-disable-next-line */
  color: var(--rh-color-link-inline-focus-on-dark, var(--rh-color-interactive-blue-lightest, #b9dafc));
  text-decoration: underline;
}

:is(rh-footer, :is(rh-footer-universal, rh-global-footer)) a:visited {
  /* TODO remove --rh-color-link-inline-visited-on-dark for v2 */
  /* stylelint-disable-next-line */
  color: var(--rh-color-link-inline-visited-on-dark, var(--rh-color-interactive-blue-lightest, #b9dafc));
  text-decoration: none;
}

/* ensure links fully wrap img tags */
:is(rh-footer, :is(rh-footer-universal, rh-global-footer)) a[slot^="logo"] {
  display: block;
}

:is(rh-footer) a[slot^="logo"] > img {
  display: block;
  width: auto;
  height: 100%;
  height: var(--rh-size-icon-04, 40px);
}

:is(rh-footer, rh-footer-universal, rh-global-footer) :is(h1, h2, h3, h4, h5, h6) {
  font-family: var(--rh-font-family-heading, RedHatDisplay, "Red Hat Display", "Noto Sans Arabic", "Noto Sans Hebrew", "Noto Sans JP", "Noto Sans KR", "Noto Sans Malayalam", "Noto Sans SC", "Noto Sans TC", "Noto Sans Thai", Helvetica, Arial, sans-serif);
  line-height: var(--rh-line-height-heading, 1.3);
}

rh-footer [slot="links"]:is(h1, h2, h3, h4, h5):nth-of-type(n+5) {
  --_link-header-margin: calc(var(--rh-space-2xl, 32px) - var(--rh-space-lg, 16px));
}

rh-footer [slot^="links"] a {
  gap: var(--rh-footer-links-gap, var(--rh-space-md, 8px));
}

:is(rh-footer, :is(rh-footer-universal, rh-global-footer)) [slot^="links"] li {
  margin: 0;
  padding: 0;
  display: contents;
}

:is(rh-footer, :is(rh-footer-universal, rh-global-footer)) [slot^="links"] a {
  display: block;
  color: var(--rh-color-text-primary-on-dark, #ffffff) !important;
  font-size: var(--rh-footer-link-font-size, var(--rh-font-size-body-text-sm, 0.875rem));
  width: fit-content;
}

:is(rh-footer-universal, rh-global-footer) [slot^="links"] a {
  font-size: inherit;
}

/**
 * Section side gap
 */
:is(rh-footer, rh-footer-universal, rh-global-footer) {
  --rh-footer-section-side-gap: var(--rh-space-lg, 16px);
}

/* (min-width: --rh-breakpoint-sm) */
@media screen and (min-width: 768px) {
  :is(rh-footer, rh-footer-universal, rh-global-footer) {
    --rh-footer-section-side-gap: var(--rh-space-2xl, 32px);
  }
}

/* (min-width: --rh-breakpoint-xl) */
@media screen and (min-width: 1440px) {
  :is(rh-footer, rh-footer-universal, rh-global-footer) {
    --rh-footer-section-side-gap: var(--rh-space-4xl, 64px);
  }
}

/**
 * No JS Experience
 */
rh-footer:not(:defined) {
  background-color: var(--rh-color-surface-darker, #1f1f1f);
  width: 100%;
  display: grid;
  grid-template-areas:
    "footer"
    "global";
  grid-template-rows: 1fr auto;
  min-height: var(--rh-footer-nojs-min-height, 750px);
}

:is(rh-footer-universal, rh-global-footer):not(:defined):before {
  grid-area: global;
}

/* Adding styles to logo */
rh-footer:not(:defined) > [slot="logo"] {
  padding: var(--rh-space-2xl, 32px) var(--_section-side-gap);
}

/* A11y hide child components */
rh-footer:not(:defined) > :not([slot="logo"], :is(rh-footer-universal, rh-global-footer)),
:is(rh-footer-universal, rh-global-footer):not(:defined) > * {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

:is(rh-footer-universal, rh-global-footer):not(:defined) {
  background-color: var(--rh-color-surface-darkest, #151515);
  display: block;
  width: 100%;
  min-height: 176px;
}

rh-footer-universal rh-footer-copyright {
  grid-column: -1/1;
}
