/*  Small screens */
@media only screen {

/************* Global *************/
.contentblock-header h2 {
    position: relative;
    margin-bottom: 2rem;
    padding-bottom: 1rem;
}

.contentblock-header h2:before {
    border-bottom: 3px solid #C4212C;
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    max-width: 364px;
    margin: auto;
}

.xtra-pad-row {padding-top: 32px; padding-bottom: 32px;}
.xtra-margin-row {margin-top: 32px; margin-bottom: 32px;}
.xtra-pad-top {padding-top: 32px;}
.xtra-pad-bottom { padding-bottom: 32px;}
/************* Header *************/

.tagline h1, .entry-title {font-weight: 500; }
.tagline h2, .subheader{ font-size: 1.25rem; font-weight: normal; }
.header-slideshow-image {
position: relative;
}

.header-slideshow-image:before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: #000;
opacity: .2;
}

#middle-row {
    position: relative;
    background: rgba(255, 255, 255, 0.95);
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}

#middle-row .logo img {
    width: 200px;
    height: auto;  
}


.icons .fa {
    height: 40px;
    line-height: 40px;
    vertical-align: middle;
    color: #fff;  
}

.icons .fa:before {
display: flex;
 justify-content: center;
    text-align: center;
    width: 40px;
    background-color: #C4212C;
    height: 40px;}

.icons .header-email .fa:before {background-color: #16144D;}
.sticky {z-index: 10;}
.sticky.is-stuck.is-at-top #middle-row .logo img {
    position: relative;
    width: 100px;
    left: initial;
    top: 0;
	transition: all .25s ease;
}

.sticky.is-stuck.is-at-top #middle-row {
    padding: initial;
}

/************* Content *************/
.contentblock-content h2{ margin-bottom: 30px; }
.contentblock-content .button {margin-top: 30px;}
.contentblock-content h3{ margin-bottom: 24px; }
.dark-row p {font-size: 20px; margin-bottom: 0;}
.dark-row .button {margin-bottom: 0; margin-top: 0;}
.dark-row {padding: 1rem;}
.cta-single-inner *,
.cta-single-inner:before,
.cta-single-inner:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

.cta-single-inner:before,
.cta-single-inner:after {
  content: '';
  background-color: #fff;
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: 0;
}
.cta-single-inner:before {
  width: 50px;
  height: 2px;
}
.cta-single-inner:after {
  height: 50px;
  width: 2px;
}
.cta-single-inner {
    background-color: #000;
    position: relative;
}
.cta-single-inner img {opacity: .5;}
.cta-heading {
    font-size: 1.5rem; 
    color: #fff; 
    font-weight: 800;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    align-items: center;
    display: flex;
    justify-content: center;
    text-transform: uppercase;
    opacity: 1;
}
.cta-heading span {font-weight: normal; margin-left: 7px;}
.cta-row .column {padding: .25rem;}
.cta-row {padding: .5rem;}

.text-col {padding: 3rem;}

.card {
    padding: 14px;
    background: #fff;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
    border: none;
}
.card-divider {
    justify-content: center;  
    color: #000; 
    font-weight: bold; 
    background: transparent; 
    position: relative;
    padding-left: 0;
    padding-right: 0;
}
.card-divider:after {
    border-bottom: 2px solid #C4212C;
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    width: 114px;
    margin: auto;
}
.card-row .column {
    padding: .5rem;
}

.card-section p {
    font-size: 14px;
    margin-bottom: 10px;
}
.card-section {
    padding: 1rem 0 .5rem 0;
}

/************* Contact *************/
#contact-page-phone-block a, #contact-page-email-block a, #contact-page-location-block a,  #contact-page-location-block address li  {color: #434343; font-style: normal;}
#contact-page-location-block .fas, #contact-page-email-block .fa, #contact-page-phone-block .fa, #contact-page-phone-block i {color: #C4212C;}
#contact-page-email-block .email-name {margin-left: 10px;}
.page-id-91 .contact-page-row {border-bottom: 2px solid #C4212C; padding-bottom: 2rem;}
/************* Footer *************/


/************* Blog *************/




} /* Define mobile styles */

@media only screen and (max-width: 40em) {
.small-only-float-left {float: left !important;}	
.small-only-float-right {float: right !important;}
.small-only-float-center {display: block; margin-right: auto; margin-left: auto;}
.text-center-small {text-align: center;}
.small-align-center {-ms-flex-pack: center; justify-content: center;}
.widget-container, #top-row, .tagline, .text-right{text-align: center;}
img.alignright, img.alignleft{float: none !important;display: block;margin: 0 auto;	}
.dark-row {text-align: center;}
.tagline, #title-row {background: #16144D; width: 100%; padding: 1rem;text-align:center;}
.entry-title, .tagline h1 {font-size: 2rem;}
.text-col {padding: 1.5rem;}
.img-col {height: 350px;}
} /* max-width 640px, mobile-only styles, use when QAing mobile issues */

/*  Medium screens */
@media only screen and (min-width: 40.063em) {

.tagline{position: absolute; left: 30px;  bottom: 30px; max-width: 608px;}
.tagline h1, .entry-title {color: #fff; font-weight: 500;  text-shadow: 0px 3px 6px rgba(0,0,0,0.45); margin-bottom: 1.5rem;}
.tagline h2, .subheader{color: #fff; font-size: 1.25rem; font-weight: normal; text-shadow: 0px 3px 6px rgba(0,0,0,0.45); margin-bottom: 2rem;}
#title-row {position: absolute; width: 100%; text-align: center;}


  /* min-width 641px, medium screens */
}

@media only screen and (min-width: 40.063em) and (max-width: 63.938em) {
.medium-float-left {float: left !important;}	
.medium-float-right {float: right !important;}
.text-center-medium {text-align: center;}
.medium-align-center {-ms-flex-pack: center; justify-content: center;}
.img-col {height: 500px;}
.entry-title {font-size: 2rem;}
.subheader {margin-bottom: 1rem;}
.dark-row {text-align: center;}
} /* min-width 641px and max-width 1023px, use when QAing tablet-only issues */

/* Large screens */
@media only screen and (min-width: 64.000em) {
.wrapper {padding: 1.875em 0;}
.align-middle-large{-webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;}
.card-row.row.expanded {
    padding-left: 20px;
    padding-right: 20px;
}

#middle-row .logo img {
  animation: drop 2s linear forwards;
  opacity: 0;
}

#middle-row .logo img {
    width: 300px;
    height: auto;
    position: absolute;
    left: 2rem;
    top: 2rem; 
    z-index: 1;  
    width: 300px;
}


@keyframes  drop {
  0% {
    transform: translateY(-200px) scaleY(0.9);
  }
  5% {
    opacity: 0.7;
  }
  50% {
    transform: translateY(0px) scaleY(1);
    opacity: 1;
  }
  65% {
    transform: translateY(-17px) scaleY(0.9);
  }
  75% {
    transform: translateY(-22px) scaleY(0.9);
  }
  100% {
    transform: translateY(0px) scaleY(1);
    opacity: 1;
  }
}

.tagline{left: 56px;  bottom: 56px; max-width: 608px;}
.text-col {padding: 5rem;}
.cta-single-inner:before,
.cta-single-inner:after{
		opacity: 1;
	}
	
.cta-single-inner img {opacity: .7;}
.cta-single-inner:hover img {opacity: .2;}
.cta-single-inner:hover .cta-heading {opacity: 1;}

.cta-single-inner:hover:before,
.cta-single-inner.hover:before,
.cta-single-inner:hover:after,
.cta-single-inner.hover:after {
  opacity: 0;
}

.cta-single-inner:hover:before,
.cta-single-inner.hover:before {
  width: 600px;
}

.cta-single-inner:hover:after,
.cta-single-inner.hover:after {
  height: 600px;
}
	.cta-heading {opacity:0;}
} /* min-width 1024px, large screens */

@media only screen and (min-width: 64.000em) and (max-width: 90em) {
.large-float-left {float: left !important;}	
.large-float-right {float: right !important;}
.text-center-large {text-align: center;}
.large-align-right {-ms-flex-pack: end; justify-content: flex-end;}
.text-col {padding: 5rem;}
} /* min-width 1024px and max-width 1440px, use when QAing large screen-only issues */

/*  XLarge screens */
@media only screen and (min-width: 90.063em) { } /* min-width 1441px, xlarge screens */

@media only screen and (min-width: 90.063em) and (max-width: 120em) {
.xlarge-float-left {float: left !important;}	
.xlarge-float-right {float: right !important;}
.text-center-xlarge {text-align: center;}
} /* min-width 1441px and max-width 1920px, use when QAing xlarge screen-only issues */

/*  XXLarge screens */
@media only screen and (min-width: 120.063em) {
.xxlarge-float-left {float: left !important;}	
.xxlarge-float-right {float: right !important;}
.text-center-xxlarge {text-align: center;}
} /* min-width 1921px, xxlarge screens */

/*  Tablet Portrait screens */
@media only screen and (min-width: 37.500em) and (max-width: 56.250em) and (orientation: portrait) {
.hide-tablet-portrait {display: none !important;}
.show-tablet-portrait {display: inherit !important;}
 } /* tablet-only issues min-600px max-900px */
 @media only screen and (min-width: 49.900em) and (max-width: 85.250em) and (orientation: portrait) {
 } /* tablet-only issues min-800px max-1200px */