/*
 * Official Rap Nacional logo replacement.
 * The complete uploaded artwork intentionally protrudes from the navigation bar.
 */
a.rnhub-logo-replaced {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  overflow: visible !important;
  text-decoration: none !important;
  flex-shrink: 0 !important;
  z-index: 100001 !important;
  box-sizing: border-box !important;
}

a.rnhub-logo-replaced .rnhub-official-logo-image {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: drop-shadow(0 5px 7px rgba(0, 0, 0, .42));
  position: relative !important;
  z-index: 100002 !important;
}

/* Header: a moderate badge-overhang effect with no changes to other nav items. */
a.rnhub-logo-header {
  width: var(--rnhub-logo-header-width, 242px) !important;
  min-width: var(--rnhub-logo-header-width, 242px) !important;
  flex: 0 0 var(--rnhub-logo-header-width, 242px) !important;
  align-self: stretch !important;
  min-height: 82px !important;
}

a.rnhub-logo-header .rnhub-official-logo-image {
  transform: translateY(var(--rnhub-logo-overhang, 13px));
}

/* Artist-page header. */
.rn-site-nav a.rnhub-logo-header {
  width: var(--rnhub-logo-header-width, 242px) !important;
  min-width: var(--rnhub-logo-header-width, 242px) !important;
  flex-basis: var(--rnhub-logo-header-width, 242px) !important;
  min-height: 82px !important;
}

/* Main-site and artist-page footer logos are deliberately smaller. */
a.rnhub-logo-footer {
  width: var(--rnhub-logo-footer-width, 188px) !important;
  min-width: var(--rnhub-logo-footer-width, 188px) !important;
  flex: 0 0 var(--rnhub-logo-footer-width, 188px) !important;
  min-height: 0 !important;
  align-self: flex-start !important;
}

a.rnhub-logo-footer .rnhub-official-logo-image {
  transform: none !important;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, .25));
}

a.rnhub-logo-generic {
  width: min(220px, 35vw) !important;
  min-width: var(--rnhub-logo-footer-width, 160px) !important;
}

a.rnhub-logo-generic .rnhub-official-logo-image {
  transform: none !important;
}

/* Keep the overhanging artwork above the hero, but never let it steal clicks. */
a.rnhub-logo-header .rnhub-official-logo-image {
  pointer-events: auto;
}

@media (max-width: 1050px) {
  a.rnhub-logo-header,
  .rn-site-nav a.rnhub-logo-header {
    width: var(--rnhub-logo-header-width, 184px) !important;
    min-width: var(--rnhub-logo-header-width, 184px) !important;
    flex-basis: var(--rnhub-logo-header-width, 184px) !important;
  }
  a.rnhub-logo-header .rnhub-official-logo-image {
    transform: translateY(var(--rnhub-logo-overhang, 9px));
  }
}

@media (max-width: 760px) {
  a.rnhub-logo-header,
  .rn-site-nav a.rnhub-logo-header {
    width: var(--rnhub-logo-mobile-width, 138px) !important;
    min-width: var(--rnhub-logo-mobile-width, 138px) !important;
    flex-basis: var(--rnhub-logo-mobile-width, 138px) !important;
    min-height: 60px !important;
  }
  a.rnhub-logo-header .rnhub-official-logo-image {
    transform: translateY(var(--rnhub-logo-mobile-overhang, 2px)) !important;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,.3));
  }
  a.rnhub-logo-footer {
    width: var(--rnhub-logo-footer-width, 160px) !important;
    min-width: var(--rnhub-logo-footer-width, 160px) !important;
    flex-basis: var(--rnhub-logo-footer-width, 160px) !important;
  }
}

@media (max-width: 430px) {
  a.rnhub-logo-header,
  .rn-site-nav a.rnhub-logo-header {
    width: var(--rnhub-logo-mobile-width, 112px) !important;
    min-width: var(--rnhub-logo-mobile-width, 112px) !important;
    flex-basis: var(--rnhub-logo-mobile-width, 112px) !important;
    min-height: 54px !important;
  }
  a.rnhub-logo-generic {
    width: 145px !important;
    min-width: 145px !important;
  }
}

/* In case the header has clipping defaults, allow the special overhang. */
.rn-site-nav,
.rn-site-nav-inner,
.rn-headrow,
.site-header,
header,
nav {
  overflow: visible;
}
