.content-section {
    padding-top: 4rem;
    padding-bottom: 7rem;
}

.content-section-after-skew {
    padding-top: 7.5rem;
    padding-bottom: 5.5rem;
}
  
.content-section-heading h2 {
    font-size: 3rem;
}

.content-section-heading h3 {
    font-size: 1rem;
    text-transform: uppercase;
}

.masthead {
    min-height: 20rem;
    position: relative;
    display: table;
    width: 100%;
    height: auto;
    padding-top: 3rem;
    padding-bottom: 0rem;
    overflow: visible;
    z-index: 1;
}

.masthead:after {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    background: inherit;
    z-index: -1;
    bottom: 0;
    transform-origin: left bottom;
    transform: skewY(3deg);
  }

.masthead h1 {
    font-size: 2.5rem;
    margin: 0;
    padding: 0;
}

.footer {
    padding-top: 2rem;
    padding-bottom: 2rem;
}

.footer-email {
    text-align: left;
}

@media (min-width: 992px) {
    .masthead {
        height: 60vh;
    }
    .masthead h1 {
        padding-top: 3.5rem;
        font-size: 3.5rem;
    }
    .footer-email {
        text-align: right;
    }
}

.service-text {
    text-align: justify;
}

.service-header {
    text-align: center;
    align-items: center;
    height: 80px;
    padding-left: .2rem;
    padding-right: .2rem;
}

.responsive { 
    display: block;
    margin: 0 auto;
    max-width: 100%; 
    max-height: 150px; 
}

/**
 * Blog Home Feed
 */
.grid-container {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 40px;
    margin: 20 auto; 
}
  
  article.featured {
    grid-column: span 3;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: center;
    border-bottom: 1px solid #e8e8e8;
    padding-bottom: 40px; 
}
  
  article.card > div {
    margin-top: 10px; 
}
  
  article.card > img, article.featured > img {
    max-width: 100%;
    border-radius: 6px;
    box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.1); 
}

/**
 * Grid helpers
 */
 @media screen and (min-width: 900px) {
    .one-half {
      width: -webkit-calc(50% - (40px / 2));
      width: calc(50% - (40px / 2)); 
    } 
}

@media screen and (max-width: 600px) {
    article.card {
        grid-column: span 3;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 40px;
        align-items: center; 
    } 
}

@media screen and (max-width: 400px) {
    article.card, article.featured {
        display: block; 
    } 
}

.wrapper {
    max-width: -webkit-calc(900px - (40px * 2));
    max-width: calc(900px - (40px * 2));
    margin-right: auto;
    margin-left: auto;
    padding-right: 30px;
    padding-left: 30px;
}