@charset "UTF-8";

.hero
{
 position: relative;
 width: 100%;
 padding: 0;
 margin: 0;
 border-bottom: 1px solid #E3E3E3;
 background: #F9F9F9
}

.hero_wrap
{
 display: flex;
 position: relative;
 max-width: 1300px;
 padding-top: 50px;
 padding-left: 50px;
 padding-right: 50px;
 padding-bottom: 50px;
 margin: 0 auto;
 align-items: center;
 justify-content: space-between
}

.hero_text
{
 position: relative;
 width: 52%;
 padding: 0;
 margin: 0
}

.hero_text h1
{
 font-family: 'Oswald', Helvetica, sans-serif;
 font-size: 2.25rem;
 font-weight: 500;
 line-height: 1.15;
 text-transform: uppercase;
 margin-top: 0;
 margin-left: 0;
 margin-right: 0;
 margin-bottom: 15px
}

.hero_subtitle
{
 font-size: 1.063rem;
 font-weight: 600;
 line-height: 1.4;
 color: #333333;
 margin-top: 0;
 margin-left: 0;
 margin-right: 0;
 margin-bottom: 20px
}

.hero_description p
{
 font-size: 0.938rem;
 line-height: 1.6;
 color: #444444;
 margin-bottom: 12px
}

.hero_buttons
{
 display: flex;
 position: relative;
 padding: 0;
 margin-top: 25px;
 margin-left: 0;
 margin-right: 0;
 margin-bottom: 0;
 flex-wrap: wrap
}

.hero_image
{
 position: relative;
 width: 44%;
 padding: 0;
 margin: 0
}

.hero_image img
{
 width: 100%;
 height: auto;
 border-radius: 5px
}

.button_link, .button_link:active, .button_link:visited
{
 display: inline-block;
 font-size: 0.875rem;
 font-weight: 600;
 color: #FFFFFF;
 text-decoration: none;
 text-align: center;
 white-space: nowrap;
 padding-top: 13px;
 padding-left: 28px;
 padding-right: 28px;
 padding-bottom: 13px;
 margin-top: 0;
 margin-left: 0;
 margin-right: 15px;
 margin-bottom: 10px;
 border: 1px solid #333333;
 border-radius: 5px;
 background: #333333;
 box-sizing: border-box
}

.button_link:hover
{
 color: #FFFFFF;
 text-decoration: none;
 border-color: #CC0000;
 background: #CC0000
}

.button_link_second, .button_link_second:active, .button_link_second:visited
{
 color: #333333;
 border: 1px solid #CCCCCC;
 background: #FFFFFF
}

.button_link_second:hover
{
 color: #CC0000;
 border-color: #CC0000;
 background: #FFFFFF
}

.cards_row
{
 display: grid;
 width: 100%;
 grid-template-columns: 1fr 1fr 1fr 1fr;
 grid-gap: 30px;
 position: relative;
 padding: 0;
 margin-top: 30px;
 margin-left: 0;
 margin-right: 0;
 margin-bottom: 30px
}

.cards_row_two
{
 grid-template-columns: 1fr 1fr;
 grid-gap: 20px
}

.cards_row_three
{
 grid-template-columns: 1fr 1fr 1fr;
 grid-gap: 20px
}

.card
{
 position: relative;
 width: 100%;
 padding: 0;
 margin: 0;
 box-sizing: border-box
}

.card_image
{
 position: relative;
 width: 100%;
 padding: 0;
 margin-top: 0;
 margin-left: 0;
 margin-right: 0;
 margin-bottom: 20px;
 box-sizing: border-box
}

.card_image img
{
 display: block;
 width: 100%;
 height: auto
}

.card_text
{
 position: relative;
 padding: 0;
 margin: 0
}

.card_text h3
{
 font-size: 0.938rem;
 margin: 0
}

.card_text p
{
 font-size: 0.875rem;
 line-height: 1.5;
 color: #444444;
 margin-top: 10px;
 margin-left: 0;
 margin-right: 0;
 margin-bottom: 0
}

.block_cta
{
 position: relative;
 width: 100%;
 padding-top: 30px;
 padding-left: 30px;
 padding-right: 30px;
 padding-bottom: 20px;
 margin-top: 30px;
 margin-left: 0;
 margin-right: 0;
 margin-bottom: 30px;
 border: 1px solid #E3E3E3;
 border-radius: 5px;
 background: #F9F9F9;
 box-sizing: border-box
}

.block_cta h2
{
 font-size: 1.375rem;
 font-weight: 500;
 text-transform: uppercase;
 margin-bottom: 15px
}

.block_cta h3
{
 font-size: 1.125rem;
 font-weight: 500;
 text-transform: uppercase;
 margin-bottom: 15px
}

.block_cta p
{
 font-size: 0.938rem;
 line-height: 1.6;
 color: #444444
}

.block_cta_buttons
{
 display: flex;
 position: relative;
 padding: 0;
 margin-top: 20px;
 margin-left: 0;
 margin-right: 0;
 margin-bottom: 0;
 flex-wrap: wrap
}

.block_wide
{
 display: flex;
 position: relative;
 width: 100%;
 padding: 0;
 margin-top: 30px;
 margin-left: 0;
 margin-right: 0;
 margin-bottom: 30px;
 border: 1px solid #E3E3E3;
 border-radius: 5px;
 background: #F9F9F9;
 box-sizing: border-box;
 align-items: center;
 overflow: hidden
}

.block_wide_image
{
 position: relative;
 width: 40%;
 padding: 0;
 margin: 0;
 flex: 0 0 auto
}

.block_wide_image img
{
 width: 100%;
 height: auto
}

.block_wide_text
{
 position: relative;
 padding-top: 30px;
 padding-left: 35px;
 padding-right: 35px;
 padding-bottom: 20px;
 margin: 0;
 box-sizing: border-box
}

.block_wide_text h2
{
 font-size: 1.375rem;
 font-weight: 500;
 text-transform: uppercase;
 margin-bottom: 15px
}

.block_wide_text p
{
 font-size: 0.938rem;
 line-height: 1.6;
 color: #444444
}

.main_banner,
.mobile_banner
{
 position: relative;
 width: 100%;
 padding: 0;
 margin-top: 30px;
 margin-left: 0;
 margin-right: 0;
 margin-bottom: 30px;
 border-radius: 5px;
 overflow: hidden
}

.mobile_banner
{
 display: none
}

.main_banner img,
.mobile_banner img
{
 width: 100%;
 height: auto
}

.block_note
{
 position: relative;
 width: 100%;
 padding: 0;
 margin-top: 30px;
 margin-left: 0;
 margin-right: 0;
 margin-bottom: 30px
}

.block_note p
{
 font-size: 0.938rem;
 line-height: 1.6;
 color: #444444;
 margin-bottom: 0
}

.links_row
{
 display: grid;
 width: 100%;
 grid-template-columns: 1fr 1fr;
 grid-gap: 30px;
 position: relative;
 padding: 0;
 margin-top: 30px;
 margin-left: 0;
 margin-right: 0;
 margin-bottom: 30px
}

.links_item
{
 position: relative;
 padding: 0;
 margin: 0;
 box-sizing: border-box
}

.links_item p
{
 font-size: 0.875rem;
 line-height: 1.5;
 color: #444444;
 margin-top: 10px;
 margin-left: 0;
 margin-right: 0;
 margin-bottom: 0
}

.anchors
{
 position: relative;
 width: 100%;
 padding: 0;
 margin-top: 30px;
 margin-left: 0;
 margin-right: 0;
 margin-bottom: 30px
}

.anchors_title
{
 font-size: 0.875rem;
 font-weight: 600;
 margin-bottom: 15px
}

.anchor_link, .anchor_link:active, .anchor_link:visited
{
 display: inline-block;
 font-size: 0.813rem;
 font-weight: 400;
 color: #333333;
 text-decoration: none;
 padding-top: 7px;
 padding-left: 14px;
 padding-right: 14px;
 padding-bottom: 7px;
 margin-top: 0;
 margin-left: 0;
 margin-right: 10px;
 margin-bottom: 10px;
 border: 1px solid #E3E3E3;
 border-radius: 20px;
 background: #F9F9F9
}

.anchor_link:hover
{
 color: #CC0000;
 text-decoration: none;
 border-color: #CC0000
}

.col_middle .subhead + .row
{
 margin-top: 30px
}

.col_middle .text + .subhead,
.col_middle .description + .subhead,
.col_middle .section + .subhead
{
 margin-top: 30px
}

@media screen and (max-width: 1150px)
{
 .hero_wrap
 {
  padding-left: 25px;
  padding-right: 25px
 }
}

@media screen and (max-width: 980px)
{
 .hero_wrap
 {
  padding-top: 35px;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 35px
 }

 .hero_text h1
 {
  font-size: 1.875rem
 }

 .col_wide .cards_row
 {
  grid-template-columns: 1fr 1fr 1fr
 }
}

@media screen and (max-width: 890px)
{
 .hero_wrap
 {
  display: block
 }

 .hero_text
 {
  width: 100%;
  margin-bottom: 25px
 }

 .hero_image
 {
  width: 100%
 }

 .cards_row
 {
  grid-gap: 20px;
  margin-bottom: 20px
 }

 .block_wide
 {
  display: block
 }

 .block_wide_image
 {
  width: 100%
 }

 .block_wide_text
 {
  padding-top: 25px;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 15px
 }
}

@media screen and (max-width: 680px)
{
 .main_banner_desktop
 {
  display: none
 }

 .mobile_banner
 {
  display: block
 }

 .hero_text h1
 {
  font-size: 1.625rem
 }

 .hero_subtitle
 {
  font-size: 1rem
 }

 .hero_buttons
 {
  display: block
 }

 .button_link
 {
  display: block;
  width: 100%;
  margin-right: 0
 }

 .cards_row,
 .cards_row_three,
 .col_wide .cards_row
 {
  grid-template-columns: 1fr 1fr
 }

 .block_cta
 {
  padding-top: 20px;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 10px;
  margin-bottom: 20px
 }

 .block_cta_buttons
 {
  display: block
 }

 .links_row
 {
  grid-template-columns: 1fr
 }
}

@media screen and (max-width: 480px)
{
 .cards_row,
 .cards_row_two,
 .cards_row_three,
 .col_wide .cards_row
 {
  grid-template-columns: 1fr
 }
}
