.cjp-content-intro {
  max-width: 48rem !important;
  color: var(--cjp-muted);
  font-size: 1.2rem;
}

.cjp-contact-list {
  padding-left: 1.25rem;
}

.cjp-contact-list li {
  margin: .45rem 0;
}

/* Entre 960 e 1151 px, o menu móvel evita comprimir os rótulos do desktop. */
@media (min-width: 60rem) and (max-width: 71.999rem) {
  .cjp-header .cjp-menu {
    display: block !important;
  }

  .cjp-desktop-links {
    display: none !important;
  }

  .cjp-menu > summary {
    display: inline-flex !important;
  }

  .cjp-menu .cjp-nav details > summary {
    display: flex !important;
  }

  .cjp-menu:not([open]) > .cjp-nav {
    display: none !important;
  }

  .cjp-menu[open] > .cjp-nav {
    display: block !important;
    position: absolute;
    z-index: 30;
    top: 100%;
    right: 0;
    left: 0;
    width: 100%;
    max-height: calc(100vh - 5.25rem);
    overflow-y: auto;
    padding: .75rem max(1rem, calc((100% - var(--cjp-max)) / 2));
    border-top: 1px solid var(--cjp-border);
    background: var(--cjp-paper);
    box-shadow: 0 .75rem 1.5rem rgb(0 0 0 / .16);
  }

  .cjp-menu .cjp-nav > ul {
    display: grid !important;
    width: 100%;
  }

  .cjp-menu .cjp-nav details,
  .cjp-menu .cjp-nav details ul {
    position: static !important;
    min-width: 0 !important;
    box-shadow: none !important;
  }
}

@media (min-width: 72rem) {
  .cjp-desktop-links > a,
  .cjp-desktop-group > summary,
  .cjp-desktop-links .cjp-button {
    font-size: .84rem;
    line-height: 1.25;
  }

  .cjp-desktop-links > a,
  .cjp-desktop-group > summary {
    padding: .5rem .34rem;
  }

  .cjp-desktop-links .cjp-button {
    padding: .5rem .48rem;
  }
}
