/*** START Generic Styles ***/
.ws-box{
    margin:0;
}

.ws-content-block{
    margin:7px 0;
}

@media (min-width: 768px) {
    .hide-xxs {
        display: block;
    }

    .show-xxs {
        display: none;
    }

    .vertical-center{
        align-items: center!important;
    }

    .ws-cta__card-link .ws-box{
        height:446px;
    }

    .ws-box.wide {
        min-height: 500px;
    }

    .ws-box.wide .ws-box__inner a {
        margin: 0 15px;
    }

    .ws-box__btn {
        min-width: 205px;
        text-align: center;
    }

    .wide .ws-box__inner a {
        margin: 0 15px;
    }

    .ws-btn-container{
        display:flex;
        flex-direction: row;
    }
  
    .ws-btn-container .ws-btn{
        margin:0 20px;
    }

    .homepage .fullwidth {
        width: 100vw;
        position: relative;
        left: 50%;
        right: 50%;
        margin-left: -50vw;
        margin-right: -50vw;
        overflow: hidden;
    }


}

@media (max-width: 767px) {    
    h2.ws-box__heading {
        display: block !important;
        clear: both !important;
    }

    .ws-box p{
        font-weight: 300;
    }

    .hide-xxs {
        display: none !important;
    }
    
    .show-xxs {
        display: block !important;
    }

    .ws-box__img {
        background-position: top center;
    }

    .ws-box.wide .ws-box__img {
        background-size: cover !important;
        max-height: 380px;
    }

    .ws-btn-container{
        width:100%;
    }

    .ws-btn,
    .ws-box__btn {
        display: block;
        width:100%;
    }

    #section-landing-page .ws-content-block a {
        text-decoration: none;
    }

}

@media (max-width: 640px) {
    .ws-box.wide .ws-box__img {
        background-size: cover;
    }
}

@media (max-width: 540px) {
    .ws-box.wide .ws-box__img {
        max-height: 290px;
    }
}

@media (max-width: 480px) {
    .ws-box.wide .ws-box__img {
        max-height: 230px;
    }
}
/*** END Generic Styles ***/


/*** START Site Content Banner/Tab Styles ***/
  .ws-cta-row {
    display: flex;
  }
  
  .ws-cta-row .ws-content-block {
      display: flex;
      flex-direction: column;
  }

  
  .ws-cta__card-link {
      flex: 1 1 auto;
      display: flex;
      flex-direction: column;
      margin-bottom:42px;
      text-decoration: none;
  }
  
  .ws-cta__card-link:hover,
  .ws-cta__card-link:focus {
      color: #758493;
  }
  
  .ws-cta__card-link:hover .ws-cta__btn:hover {
      color: white;
      background-color: #2dcb91;
  }
  
  .ws-cta {
      display:  flex;
      flex-direction: column;
      align-items: center;
      padding: 10px;
      text-align: center;
      flex: 1 1 auto;
  }
  
  .ws-cta__heading {
        margin: 0;
        margin-top: 4px;
        margin-bottom: 8px;
      font-family: 'Lato', Arial, sans-serif;
      font-weight: 400;
      font-size: x-large;
      text-transform: uppercase;
  }
  
  .ws-cta__description {
      font-weight: 300;
      font-family: "source-sans-pro", Arial, sans-serif;
      margin: 0;
      margin-bottom: 16px;
      flex-grow: 1;
  }
  
  .ws-cta__btn {
      border: 1px solid;
      text-decoration: none;
  }
  
  .ws-cta__btn:hover {
       color: white;
       background-color: #2dcb91;
  }
  
  @media (max-width: 767px) {
    .ws-content-block{
        margin-bottom:54px;
    }

    .ws-cta__card-link{
        margin-bottom:0;
    }

      .ws-cta-row {
        flex-direction: column;
      }

      .ws-box--cta {
          margin-bottom: 0;
      }
  
      .ws-box--cta .ws-box__img {
          margin-bottom: 0;
      }

      .ws-btn-container a{
          margin-bottom:1rem;
      }

    /** START container for heading, paragraph and btn **/
    .ws-cta{
        padding:10px 0;
    }
    /** END - container for heading, paragraph and btn **/

      .ws-cta__btn:hover,
      .ws-cta__card-link:hover .ws-cta__btn:hover{
          background-color:#336a78; 
      }
  }
  /*** END Site Content Banner/Tab Templates ***/

  /* Correct grid */
@media(max-width:768px){
    .ws-lp-mobile-categorycta-container{
        display:block;
    }
    
    .ws-lp-mobile-categorycta__inner a{
        display:block;
        background-color:#f2fafd;
        margin:1rem 0;
        padding:1rem;
        font-family:'source-sans-serif', Arial, sans-serif;
        font-size:1rem;
        font-weight:400;
        color:#748493;
        text-align:center;
        text-transform: uppercase;
        text-decoration: none;
    }
    
    .ws-lp-mobile-categorycta__inner a:hover{
        text-decoration:underline;	
    }
}
/*** END OF generic CSS ***/