/* Global overrides */
body.page-template-page-blocks,
body.page-template-page-blocks #content{
	overflow-x: hidden;
}

body.page-template-page-blocks #primary{
	padding:0px;
}

body.page-template-page-blocks  .entry-content{
	margin:0px;
}

.subheading{
	font-size: 1.1em;
  font-weight: 800;
  margin-bottom: 25px;
}

.bluetext{
	color:#678ebf;
}

.redtext{
	color:#c41331;
}

/* title-row-block */

.title-row-block{
	padding:25%;
}

.title-row-block .title-content img{
	margin-bottom:20px;
}

.title-row-block h1{
	color:#000;
	font-size: 120px;
	font-size:7.5rem;
  font-weight: 400;
  font-family: "Lato", arial, sans-serif;
  margin-top:0px;
}

@media only screen and (max-width: 768px) {
	.title-row-block h1{
	font-size: 50px;
	font-size:3.125rem;
}
}

/* scrolling-banner */

.scrolling-banner.contactStrip p{
	text-transform:none!important;
}

.scrolling-banner marquee{
	align-items:center;
}

.scrolling-banner marquee > *{
	display:inline-block!important;
}

@media only screen and (max-width: 991px) {
.page-template-page-blocks .scrolling-banner{
	position:relative!important;
}
}

/* .image-text-block */

.image-text-block {
    display: flex;
    align-items: center;
    padding: 40px 0;
}
.image-text-block.reverse .row {
    flex-direction: row-reverse;
	display: flex;
}
.brochure-link {
    margin-top: 20px;
    text-decoration: none;
	-webkit-transition: margin 0.5s ease-out;
  -moz-transition: margin 0.5s ease-out;
  -o-transition: margin 0.5s ease-out;
  display:block;
  text-align:center;
  text-decoration:none;
}
.brochure-link:hover,
.brochure-link:focus {
	margin-top: 10px;
	text-decoration:none;
}

.brochure-link img {
    max-width: 150px;
	width:100%;
	margin-bottom:10px;
}
.brochure-link span {
    text-decoration: none;
    cursor: pointer;
	display:block;
	text-align:center;
	font-family: Lato;
  line-height: 20px;
  letter-spacing: 4px;
  font-weight: 700;
  font-size: 16px;

}
.brochure-link .brochure-text{
	 color: var(--link, #678ebf);
	 transition: color .2s ease;
}
/* Derive a lighter hover tone (similar jump as #678ebf → #8fb1d4) */
.brochure-link:hover .brochure-text {
  color: color-mix(in srgb, var(--link, #678ebf), white 28%);
}

/* Progressive enhancement with OKLCH (nicer perceptual lightening) */
@supports (color: oklch(0.5 0.1 200)) {
  .brochure-link:hover .brochure-text {
    color: oklch(
      from var(--link, #678ebf)
      calc(l + 0.12)      /* brighten ~12 points */
      calc(c * 1.08)      /* tiny saturation boost */
      h
    );
  }
@media only screen and (max-width: 991px) {
.brochure-link {
	margin-bottom:30px;
}
}

.image-text-block .text-section h2,
section h1.h2{
font-size: 2em;
  font-weight: 800;
  line-height: 1.3em;
}
.image-text-block .text-section h2,
.image-text-block .text-section h3,
.image-text-block .text-section h4,
section h1.h2{
  margin-bottom:20px;	
}

@media (max-width: 991px) {
    .image-text-block.reverse .row {
        flex-direction: column !important;
    }
    .image-text-block .row {
        flex-direction: column;
    }
}

/* features-block */

.features-block .row.equal-col{
	display:flex;
	flex-wrap:wrap;
}

.features-block .feature-col .features-cont{
	border:1px solid #678ebf;
	padding:15px;
	height:100%;
}

.features-block{
	padding:40px 0;
}

.features-block .feature-col{
	margin-bottom:30px;
}

.features-block .feature-circle {
  width: 110px;
  height: 110px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 10px auto;
  padding: 20px;
}

.features-block .feature-circle img{
	max-width:70px;
}

.features-block .feature-content{
	max-width:500px;
	margin-left:auto;
	margin-right:auto;
}

@media (min-width: 768px) {
	.features-block .row > div:nth-child(2n+1){
		clear:left;
	}
}
@media (min-width: 991px) {
	.features-block .row > div:nth-child(2n+1){
		clear:none;
	}
	.features-block .row > div:nth-child(5n){
		clear:left;
	}
}

/* video-text-block */

.video-text-block {
    display: flex;
    align-items: center;
    padding: 40px 0;
}
.video-text-block.reverse .row {
    flex-direction: row-reverse;
	display: flex;
}
@media (max-width: 991px) {
    .video-text-block.reverse .row {
        flex-direction: column !important;
    }
    .video-text-block .row {
        flex-direction: column;
    }
}

.video-text-block .text-section h2{
font-size: 2em;
  font-weight: 800;
  line-height: 1.3em;
}
.video-text-block .text-section h2,
.video-text-block .text-section h3,
.video-text-block .text-section h4{
  margin-bottom:20px;	
}

/* testimonial-slider */

.testimonial-slider{
	padding:50px 0px 20px;
}

.testimonial-slider .swiper-container{
	position:relative;
	overflow:hidden;
}

.testimonial-slider .testimonial-logo,
.testimonial-slider .testimonial-author,
.testimonial-slider .testimonial-text{
	max-width:1000px;
	width:100%;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:30px;
}

.testimonial-slider .testimonial-logo{
	max-width:500px;
}

.testimonial-slider .testimonial-author{
	font-weight:700;
}

@media (max-width: 767px) {
body .swiper-button-next, 
body .swiper-button-prev{
	top:100%;
	transform:translateY(-100%);
}
.testimonial-slider .swiper-container{
	padding-bottom:50px;
}
}

/* case-study-block */

.case-study-block {
    display: flex;
    align-items: center;
    padding: 40px 0;
}

.case-study-block .case-study-content{
	display:flex;
	align-items:flex-start;
	justify-content: space-between;
}

@media (max-width: 767px) {

.case-study-block .case-study-content{
	flex-direction:column;
}

.case-study-block .case-study-content .logo-headshot{
	margin-bottom:30px;
}
	
}

.case-study-block .case-study-content .logo-headshot{
	display:flex;
	gap:10px;
	max-width:310px;
}

.case-study-block .case-study-content .logo-headshot img.logo{
	max-height:70px;
}

.case-study-block .case-study-content .logo-headshot img.headshot{
	border-radius:50%;
	border:1px solid;
	max-height:90px;
}

.case-study-block .text-section h2{
font-size: 1.8em;
  font-weight: 700;
  line-height: 1.3em;
  margin-top:0px;
}
.case-study-block .text-section h2,
.case-study-block .text-section h3{
  margin-bottom:20px;	
}

.case-study-block .text-section{
	margin-bottom:20px;
}

/* services-block */

.services-block{
	font-size:16px;
}

@media (min-width: 768px) {
	.services-block .row > div:nth-child(2n+1){
		clear:left;
	}
}
@media (min-width: 991px) {
	.services-block .row > div:nth-child(2n+1){
		clear:none;
	}
	.services-block .row > div:nth-child(4n){
		clear:left;
	}
}

/* Social feed */

.facebook-wrapper .fb-page span{
  border-radius:10px;
  overflow:hidden;
  transform: translate(-50%);
  left: 50%;
}