/* HTML 5 Reset */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
    display: block;
}

audio, canvas, video {
    display: inline-block;
    *display: inline;
    *zoom: 1;
}

audio:not([controls]) {
    display: none;
}

/* Support migrations from wordpress */

.wp-float-left {
    float: left;
    margin: 0 20px 20px 0;
}

.wp-float-right {
    float: right;
    margin: 0 0 20px 20px;
}

/* Responsive Google Maps */

#map_canvas img, .google-maps img {
    max-width: none;
}

/* line height fix for reCaptcha theme */
#recaptcha_table td {line-height: 0;}
.recaptchatable #recaptcha_response_field {min-height: 0;line-height: 12px;} 
<link rel="stylesheet" href="https://use.typekit.net/qhd7sum.css">
/* ==========================================================================
   Variables                                               
   ========================================================================== */

/* Colors */
    /*  */
    /*  */
    /*  */
    /*  */
    /*  */
    /*  */
 
/* Typography */
            
 
 
 

/* Containers */


/* ==========================================================================
   Macros                                                  
   ========================================================================== */

/** 
  * Create jinja macros for CSS3 properties that need browser prefixes.
  *
  * Apply the style as shown below on it's own CSS property line.  
  * Ignore the jinja comment tags. 
  *
  * 
  */

 

/** 
  * Example of how to apply the above macro (ignore the jinja comment tags):
  *
  * a {
  *   color: red;
  *   font-size: 12px;
  *    
  * }
  */

/* ==========================================================================
   Base                                                    
   ========================================================================== */

*, *:before, *:after {
  -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
}

html, body {
  min-height: 100%;
  margin: 0;
  padding: 0;
} 

/* Website background color and default font styles */
body {
  background: #fff;
  color: #333;
  font-family: source-sans-pro, sans-serif;
  font-size: 16px;
  line-height: 1.5;
}

.container-fluid .row-fluid .page-center {
  float: none;
  max-width: 1400px;
  margin: 0 auto;
}
.container-fluid .row-fluid .page-center.blog-listing{
  max-width:1110px;
  margin:auto;
}
a { color: gray; }


::-moz-selection {
  color: #fff;
  background: #333;
  text-shadow: none;
}
::selection {
  color: #fff;
  background: #333;
  text-shadow: none;
}

table tr td img {
    max-width: initial;
}

/* ==========================================================================
   Typography
   ========================================================================== */

.section.post-body span p,
.section.post-body span p span{
  font-size:1.125em;
} 
.section.post-body h2 {
    padding: 0;
    font-size: 1.5em;
}
blockquote {
    margin: 0;
    font-size: 1.5em;
    font-style: italic;
    color: #002f6d;
    font-weight:400px;
}
small {

}
strong {

}


h1, h2, h3, h4, h5, h6 {

}


h1 {}
h2 {}
h3 {}
h4 {}
h5 {}
h6 {
  text-align: left;
  font-size: 12px;
  color: #63666a;
  font-style: italic;
}


ul, ol {

}

li {

}

p.post-item-date{
  color:#4b8fce;
  margin: 0;
  padding:0 30px;
  font-size:13px;
  line-height:26px;
  padding-bottom:20px;
}

.post-header h2{
  padding: 0 30px;
}

.post-header h2 a {
    color: #63666a;
    text-decoration: none;
    font-weight: 400;
    line-height: 28px;
}
.post-header h2 a:hover{
  text-decoration:underline;
}
.post-header .title-wrapper h2 {
    padding: 0 30px;
    font-size: 2em;
      max-width: 890px;
    margin: 15px auto;
}
.blog-listing-wrapper .post-header.clearfix h2{
  font-size: 1.125em;
}
.featured-content. .blog-post-title h2{
    font-size: 1.500em;
}
/* ==========================================================================
   Structure                                               
   ========================================================================== */
.body-container-wrapper{
  padding:0px !important;
}

.blog-listing-wrapper.cell-wrapper{
  max-width:1400px;
  width: 100%;
  display:flex;
  justify-content:center;
  padding:0;
}
.post-listing{
  display:inline-flex;
  flex-wrap:wrap;
  width:100%;
}
.post-item{
    width: 31%;
  display: flex;
  flex-direction: column;
  margin: 0 1% 10%;
  min-height:340px;
}
.post-item:hover{

box-shadow: 0px 0px 65px 0px rgba(0, 0, 0, 0.05);
text-shadow: 0px 0px 65px rgba(0, 0, 0, 0.05);
}
.hs-featured-image-wrapper{
  
    width: 100%;
    height: 205px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.blog-listing-wrapper .post-header.clearfix{
  flex:1;
}
.blog-section{
  margin-bottom:150px;
}
.blog-section.post-page .hs-featured-image-wrapper{
    background-size: contain;
    text-align: center;
    height: 100%;
   
    max-width: 950px;
    margin: auto;
    margin-bottom: 50px;
  margin-top:50px;
}
.blog-section.post-page .hs-featured-image-wrapper img{
    object-fit: cover;
    height: 100%;
  width:100%
}
.blog-section.post-page .section.post-body{
    max-width: 590px;
    width: 100%;
    margin: auto;
}
.blog-section.post-page .section.post-body img{
  max-width:100% !important;
  width: 100% !impotant;
}
.featured-image-caption{
  text-align: left;
    font-size: 12px;
    color: #63666a;

}
.blog-post-wrapper .category-tag{
    position: unset;
}
.blog-post-wrapper .category-tag a{
      color: #fff;
    text-decoration: none;
    display: table-cell;
    vertical-align: middle;
}
.blog-section .title-wrapper{
    text-align: center;
    margin-bottom: 75px;
  margin-top:100px;
}
.blog-section .title-wrapper .tag-wrapper {
    width: 100%;
    display: flex;
    justify-content: center;
}
.blog-nav{
  width:100%;
  display:block;
  padding-bottom:30px;
}
.blog-nav ul{
    max-width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 0;
    list-style: none;
    margin-left: 1%;
    margin-right: 2%;
}
.blog-nav ul a{
    color: #000;
    font-size: 24px;
    line-height: 34px;
    padding-left: 8px;
    text-decoration:none;
}
/* ==========================================================================
   Content                                                 
   ========================================================================== */
.category-tag{
    height: 30px;
    background-color: #da0025;
    width: 145px;
    position: relative;
    top: -30px;
    text-align: center;

  font-size:0.813em;
  display:none;
}
.category-tag a{
  padding: 0;
  margin: 0;
  color: #fff;
  display:table-cell;
  vertical-align:middle;
  text-decoration:none;
}
.category-tag.category-topic{
    display: table;
}

.blog-list-pagination{
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    margin: 0 0 120px 15px;
}
.blog-list-pagination ul{
    list-style: none;
    display: inline-flex;
    padding: 0px;
}
.blog-list-pagination ul li{
      border: 1px solid #ebebeb;
    padding: 4px;
    height: 45px;
    width: 45px;
    text-align: center;
    margin: 3px;
    font-weight: bold;
    display: table;
}
.blog-list-pagination ul li a{
    display: table-cell;
    text-decoration: none;
    vertical-align: middle;
}
.blog-list-pagination ul li.active{
    background-color: #002f6d;
    border: 1px solid #002f6d;
}
.blog-list-pagination ul li.active a.active{
      color:#fff
}

.blog-list-pagination ul li.page-nav-link a{
    color: #000;
    bottom: 10px;
    display: table-cell;
    vertical-align: middle;
}

.email-subscription-notice .page-header h1{
color: #da0025;
    font-size: 32px;
    font-weight: bold;
}
.email-subscription-notice #email-prefs-form #content h3,
.email-subscription-notice h2,
.email-subscription-notice h3,
.email-subscription-notice p,
.email-subscription-notice #content
{
font-weight: normal;
    color: #0b2e60;
    font-size: 18px;
}
.email-subscription-notice #email-prefs-form #content #submitbutton{
    color: #fff;

    font-size: 18px;
    padding: 13px 24px;
    border: none;
    background-color: #0b2e60;
}
.custom_error_message h1{
    color: #da0025;
    max-width: 1110px;
    width: 100%;
    margin: 0 auto;
    font-size: 4em;
    align-self: center;
    text-align: center;
    text-transform: uppercase;
}
.custom_error_message h2{
    margin-top: 40px;
    font-size: 2em;
}
.custom_error_message h2,
.custom_error_message p{
    color: #002f6d;
    text-align: left;
    max-width: 540px;
    width: 100%;
    margin: auto;
}
/* Modular & Reusable Components
   ========================================================================== */




/* ==========================================================================
   Responsive
   ========================================================================== */


@media all and (max-width: 1024px){
  .body-container.container-fluid{
    padding: 0 15px;
  }
.post-item{
 width: 48%;
display: flex;
}
    .header-banner h1{
    font-size:2.5em;
  }
}

@media all and (max-width: 600px){
  .blog-nav ul{
      flex-direction: column;

  }
  .blog-nav ul a{
    font-size: 20px;
    line-height: 30px;
  }
  .blog-nav li:last-of-type{
    margin-top:30px;
  }

}

@media all and (max-width: 425px){
.post-item{
 width: 100%;
display: flex;
}

}