@import url("https://fonts.googleapis.com/css2?family=Jura:wght@300;400;500;600;700&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap");
.banner {
  display: flex;
  position: relative;
  background-color: #161616;
  color: #fff;
  padding: 2rem 4rem 3rem;
  align-items: center;
  column-gap: 20px;
  border-radius: 4px;
  min-height: 200px;
  justify-content: space-evenly;
  width: 85%;
  margin: auto; }
  @media (max-width: 600px) {
    .banner {
      flex-direction: column; } }
  .banner .logo_ms {
    width: 165px;
    height: 42px; }
    @media (min-width: 854px) and (max-width: 954px) {
      .banner .logo_ms {
        width: 150px; } }
    @media (min-width: 769px) and (max-width: 853px) {
      .banner .logo_ms {
        width: 125px;
        height: 30px; } }
    @media (max-width: 768px) {
      .banner .logo_ms {
        width: 100px;
        height: 30px; } }
  .banner .vl {
    height: 73px;
    margin-left: 20px;
    margin-right: 20px; }
    @media (min-width: 854px) and (max-width: 954px) {
      .banner .vl {
        margin-left: 5px;
        margin-right: 5px; } }
    @media (max-width: 768px) {
      .banner .vl {
        height: 50px;
        margin-left: 5px;
        margin-right: 5px; } }
  .banner .logo_membership {
    width: 195px;
    height: 71px; }
    @media (min-width: 854px) and (max-width: 954px) {
      .banner .logo_membership {
        width: 190px; } }
    @media (min-width: 769px) and (max-width: 853px) {
      .banner .logo_membership {
        width: 125px;
        height: 50px; } }
    @media (max-width: 768px) {
      .banner .logo_membership {
        width: 110px;
        height: 50px; } }
  .banner .banner-logo {
    max-width: 85px;
    height: 135px;
    width: 85px;
    min-height: 4em;
    min-width: 4em; }
  .banner .banner-logo-mobile {
    position: absolute;
    /* Extra small devices (phones, less than 768px) */
    /* No media query since this is the default in Bootstrap */
    /* XS Small devices (Phones, 600px and up) */
    display: none; }
    @media (min-width: 320px) and (max-width: 768px) {
      .banner .banner-logo-mobile {
        top: 0;
        left: 70%;
        display: block;
        width: 30%;
        height: 30%; } }
  .banner h2 {
    color: #fff;
    font-family: "Jura", "Helvetica", sans-serif;
    font-weight: 700;
    vertical-align: middle;
    margin-bottom: 10px; }
    @media screen and (max-width: 990px) {
      .banner h2 {
        font-size: 22px;
        line-height: 28px;
        text-align: center; } }
    @media (min-width: 768px) and (max-width: 991px) {
      .banner h2 {
        padding-left: 2em; } }
  .banner .cta-container {
    margin-top: 30%; }
    @media (max-width: 768px) {
      .banner .cta-container {
        margin-top: 0; } }
    .banner .cta-container a {
      border: 1px solid #fff;
      color: #fff;
      width: 165px;
      min-width: 155px;
      padding: 1rem 3rem;
      border-radius: 50px;
      margin-left: auto;
      margin-right: auto;
      text-align: center;
      white-space: nowrap;
      display: block; }
      .banner .cta-container a:hover, .banner .cta-container a:focus {
        background: #fff;
        color: #161616;
        text-decoration: none; }
        .banner .cta-container a:hover svg path, .banner .cta-container a:focus svg path {
          stroke: #161616; }
      @media (max-width: 768px) {
        .banner .cta-container a {
          margin-top: 2rem; } }
  .banner p {
    font-family: "Roboto", "Helvetica", sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 15px;
    line-height: 20px;
    color: #fff;
    /* Medium devices (desktops, 992px and up) */
    /* XS Small devices (Phones, 600px and up) */ }
    @media (max-width: 990px) {
      .banner p {
        padding-top: 50pt;
        padding-bottom: 25pt;
        text-align: center; } }
    @media (min-width: 768px) and (max-width: 991px) {
      .banner p {
        padding-left: 2em; } }
    @media (min-width: 320px) and (max-width: 600px) {
      .banner p {
        padding-top: 5pt;
        padding-bottom: 0pt;
        text-align: left; } }
  .banner .multi-color-border {
    position: absolute;
    bottom: -1px;
    left: 0;
    right: 0;
    width: 100%; }
    @media (min-width: 320px) and (max-width: 600px) {
      .banner .multi-color-border {
        display: none; } }
  .banner .multi-color-border-mobile {
    position: absolute;
    bottom: -1px;
    left: 0;
    right: 0;
    width: 100%;
    display: none; }
    @media (min-width: 320px) and (max-width: 600px) {
      .banner .multi-color-border-mobile {
        display: block; } }
