html {
  box-sizing: border-box;
  height: 100%;
  font-size: 62.5%;
}

html {
  scroll-behavior: smooth;
}

*, *:before, *:after {
  box-sizing: inherit;
}

body {background-color: #39566A;margin:0;  height: 100%;  font-family: "Source Sans 3", sans-serif;}

* {
margin:0;
padding:0;
}

.flex-grid {
  display: flex;
  justify-content:  flex-end;
  flex-direction: row;
  gap: 30px; /* row-gap column gap */
  margin: 0;
}
.flex-grid .flex-col2-3 {
  width: 64%;
}
.flex-grid .flex-col3 {
  width: 32%;
}
.flex-grid .flex-col2 {
  width: 46%;
}
.flex-grid .flex-col1 {
  width: 100%;
}


/** parallax **/

.parallax1, #wrap-bg1, #wrap-bg2,#wrap-bg3,#wrap-bg4 {
  position: relative;
  opacity: 1;
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  font-family: "Source Sans 3", sans-serif;
}

.parallax1 {
  background-image: linear-gradient(rgba(21,21,21,.7), rgba(21,21,21,.7)), 
  url("../images/parallax1.jpg");
  min-height: 1000px;
}

#wrap-bg1 {
  background-image:   url("../images/bg-photo1.jpg");
  min-height: 1000px;
}
#wrap-bg2 {
  background-image:   url("../images/bg-photo2.jpg");
  min-height: 1000px;
}
#wrap-bg3 {
  background-image:   url("../images/bg-photo3.jpg");
  min-height: 1000px;
}
#wrap-bg4 {
  background-image:   url("../images/bg-photo4.jpg");
  min-height: 1000px;
}
/* Turn off parallax scrolling for tablets and phones */
@media only screen and (max-device-width: 1024px) {
.parallax1, #wrap-bg1, #wrap-bg2, #wrap-bg3, #wrap-bg4 {
    background-attachment: scroll;
  }
}

#wrap-bg1 {
  width: 100%;
  color: #FFF;
  font-size: 1.4em;
  padding: 150px 0 0 0; 
	  font-family: "Source Sans 3", sans-serif;
 }

#wrap-bg2 {
  width: 100%;
  color: #FFF;
  font-size: 1.4em;
  padding: 350px 0 0 0; 
	  font-family: "Source Sans 3", sans-serif;
	}
	
#wrap-bg3 {
  width: 100%;
  color: #FFF;
  font-size: 1.4em;
  padding: 0; 
	  font-family: "Source Sans 3", sans-serif;
 }
 
 #wrap-bg4 {
  width: 100%;
  color: #FFF;
  font-size: 1.4em;
  padding: 250px 0 0 0; 
	  font-family: "Source Sans 3", sans-serif;
 }
video {
    width: 100%;
    height: 100vh;
    object-fit: cover;
    transform: scale(1.1); /* Pre-zoom to hide white edges */
}
#wrapblue-nopd {
  width: 100%;
  color: #FFF;
  font-size: 1.4em;
padding:0;
	margin: 0;
  	  font-family: "Source Sans 3", sans-serif;
    background-color:#39566A;
 }
#wrapblue {
  width: 100%;
  color: #FFF;
  font-size: 1.4em;
padding:80px 0 80px 0;
	margin: 0;
  	  font-family: "Source Sans 3", sans-serif;
    background-color:#39566A;
 }
#wrapwhite {
  width: 100%;
  color: #39566A;
  text-align: center;
  font-size: 1.4em;
  padding: 40px 0 80px 0; 
  background-color: #FFF;
	  font-family: "Source Sans 3", sans-serif;
 }
#wrap-footer {
  width: 100%;
  color: #454545;
  font-size: 0.9em;
  padding: 40px 0 80px 0; 
  background-color: #F5F6F8;
 }
 
 #bottomfooter{
  width: 100%;
  color: #454545;
  font-size: 0.8em;
  padding: 0 0 10px 0; 
  text-align: center;
 }

 #logo{
	 position:fixed;
	 top:0;
	 left:0;
	 z-index:50000;
	 height:120px;
	 width:340px;
background: transparent;
}
 #backlink{
	 position:fixed;
	 z-index:60000;
 top: 0;
  right: 10px;
background: transparent;
  padding: 10px;
font-size: 1.2em;  
  font-family: "Source Sans 3", sans-serif;
}
.intro-text {
	padding:0 50px 0 50px;
	font-size: 1.2em;
	line-height: 1.6;
	color:#39566A;
	 background-color: rgb( 255 255 255 / 0.9); 
}
.text-col2 {
	padding:0 250px 0 50px;
	font-size: 1.2em;
	line-height: 1.6;
	color:#FFF;
}
/** scroll flow animation **/
.img-flow-text {
text-align: left;
position: sticky;
top: 50%;
transform: translateY(-50%);
	padding:0;
	color:#FFF;
	  font-family: "Source Sans 3", sans-serif;
 z-index: 10;
}
.img-text {
text-align: left;
font-size: 1.2em;
line-height: 1.6;
background: #39566A;
padding: 0 0 0 280px;
 z-index: 10;
color:#FFF;
}
.wide-text{
	padding:0 30px 30px 600px;
	font-size: 1.2em;
	width:70%;
	line-height: 1.6;
	color:#FFF;
	text-align: left;
	  font-family: "Source Sans 3", sans-serif;
}


/* Tablet Breakpoints */
@media (max-width: 1240px) {
 #logo{
	 position:fixed;
	 top:0;
	 left:0;
	 z-index:50000;
	 width:100%;
	  background:#39566A;
	  }
.intro-text {
	padding:30px;
	font-size: 1.2em;
}
/** scroll flow animation **/
.img-flow-text {
text-align: left;
position: sticky;
top: 50%;
transform: translateY(-50%);
 z-index: 10;
color:#FFF;
}
.img-text {
text-align: left;
font-size: 1.2em;
line-height: 1.6;
background: #39566A;
padding: 0 20px 0 60px;
 z-index: 10;
color:#FFF;
}
.wide-text{
	padding:0 40px 30px 40px;
	font-size: 1.2em;
	width:100%;
	line-height: 1.6;
	color:#FFF;
	text-align: left;
	  font-family: "Source Sans 3", sans-serif;
}
}


/* Tablet Breakpoints */
@media (max-width: 767px) {
.intro-text {
	padding:10px;
	font-size: 1.2em;
}
/** scroll flow animation **/
.img-flow-text {
text-align: left;
position: sticky;
top: 50%;
transform: translateY(-50%);
 z-index: 10;
color:#FFF;
}
}

/* Mobile Breakpoints */
@media (max-width: 450px) {

}



/* links */
a.white {
  color: #FFF;
  text-decoration: none;
}
a.white:hover {
  color: #F5F5F5;
  text-decoration: none;
}
a.mainsite {
  color: #FFF;
  text-decoration: none;
    background-image: url("../images/arrow-left.png");
	background-position: left;
	background-repeat: no-repeat;
	padding: 0 0 0 20px;
}
a.mainsite:hover {
  color: #F5F5F5;
  text-decoration: none;
}




/* general */

.pd {padding: 0 30px 0 30px;}
.strong{font-weight:600;}
.italic{font-style:italic;}
.white{color:#FFF;}

#backup{text-align: center;padding: 20px 0 30px 0;}
a.backtotop {
  cursor: pointer;
  border: solid #DDD;
  border-width: 0 8px 8px 0;
  display: inline-block;
  padding: 8px;
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}

a.backtotop:hover {
  cursor: pointer;
  border: solid #d54918;
  border-width: 0 8px 8px 0;
  display: inline-block;
  padding: 8px;
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}


	
img.resp { 
max-width: 100%;
  height: auto;
 }

img.resp-fill {
   object-fit: cover;
width:100%; height :100%;
}






/* headers */
h1,h2,h3 {
  line-height: 1.4;
}
h2.white-large{
	font-size: 6.6em;
	font-weight:600;
	color: #FFF;
	padding: 0 0 150px 0;
}
/* Tablet Breakpoints */
@media (max-width: 767px) {
h2.white-large{
	font-size: 3.6em;
	font-weight:600;
	color: #FFF;
	padding: 0 0 150px 0;
}
}
h2.white{
	font-size: 1.6em;
	font-weight:400;
	color: #FFF;
	padding: 30px 0 10px 0;
}
h2.orange-large{
	font-size: 6.6em;
	font-weight:600;
	color: #DD5547;
	padding: 0 0 150px 0;
}
h2.orange{
	font-size: 1.6em;
	font-weight:400;
	color: #DD5547;
	padding: 30px 0 10px 0;
}

h3.blue{
	font-size: 1.2em;
	font-weight:400;
	color: #39566A;
	padding: 5px 0 20px 0;
}





@media screen and (max-width: 1199px) {
.flex-grid {
  display: flex;
  justify-content:  flex-end;
  flex-direction: row;
  gap: 20px; /* row-gap column gap */
  margin-top: 0;
}
.flex-grid .flex-col3, .flex-grid .flex-col2, .flex-grid .flex-col2-3  {
  width: 100%;
}
}

/* Tablet Breakpoints */
@media (max-width: 767px) {
.flex-grid {
  display: flex;
  justify-content:  flex-end;
  flex-direction: column;
  gap: 20px; /* row-gap column gap */
  margin-top: 50px;
}
.flex-grid .flex-col3, .flex-grid .flex-col2, .flex-grid .flex-col2-3  {
  width: 100%;
}
}

/* Mobile Breakpoints */
@media (max-width: 450px) {
.flex-grid {
  display: flex;
  justify-content:  flex-end;
  flex-direction: column;
  gap: 20px; /* row-gap column gap */
  margin-top: 50px;
}
.flex-grid .flex-col3, .flex-grid .flex-col2, .flex-grid .flex-col2-3  {
  width: 100%;
}
}







/** scroll animation any text element **/

.main_div {
                text-align:center;
                position: relative;
                height: 250px;
            }
            .sub_div {
                position: relative;
                bottom: 0px;
                text-align:center;
            }


.scroll-container-text {}

.scroll-element-team img {
text-align: center;  
max-width: 100%;
height: auto;
}
  
.scroll-element-text p {padding: 0 30px 0 30px;}


@media screen and (max-width: 650px) {
	
.scroll-element-team {
  min-height: 250px;
  height: 100%;
}
	
  .scroll-container-team,
  .scroll-container-team:nth-of-type(even) {
    flex-direction: column;
    align-content: inherit;
  }

  .scroll-element-team {
    height: 100%;
  }

  .scroll-element-team,
  .scroll-caption {
    width: 100%;
  }
}



/**Styling scrollable elements*/

.js-scroll {
  opacity: 0;
  transition: opacity 500ms;
}

.js-scroll.scrolled {
  opacity: 1;
}

.scrolled.fade-in {
  animation: fade-in 1s ease-in-out both;
}

.scrolled.fade-in-bottom {
  animation: fade-in-bottom 1s ease-in-out both;
}

.scrolled.slide-left {
  animation: slide-in-left 1s ease-in-out both;
}

.scrolled.slide-right {
  animation: slide-in-right 1s ease-in-out both;
}

/* ----------------------------------------------
 * Generated by Animista on 2021-2-11 23:32:31
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

@keyframes slide-in-left {
  0% {
    -webkit-transform: translateX(-100px);
    transform: translateX(-100px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes slide-in-right {
  0% {
    -webkit-transform: translateX(100px);
    transform: translateX(100px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes fade-in-bottom {
  0% {
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}









/* comparison slider */

div#comparison { 
  width: 80vw;
  height: 60vw;
  max-width: 1200px;
  max-height: 583px;
  overflow: hidden; }
div#comparison figure { 
  background-image: url(../images/comp1.jpg); 
  background-size: cover;
  position: relative;
  font-size: 0;
  width: 100%; 
  height: 100%;
  margin: 0; 
}
div#comparison figure > img { 
  position: relative;
  width: 100%;
}
div#comparison figure div { 
  background-image: url(../images/comp3.jpg);
  background-size: cover;
  position: absolute;
  width: 50%; 
  box-shadow: 0 5px 10px -2px rgba(0,0,0,0.3);
  overflow: hidden;
  bottom: 0;
  height: 100%;
}

input[type=range]{
  -webkit-appearance:none;
  -moz-appearance:none;
  position: relative;
  top: -2rem; left: -2%;
  background-color: rgba(255,255,255,0.4);
  width: 102%; 
}
input[type=range]:focus { 
  outline: none; 
}
input[type=range]:active { 
  outline: none;  
}

input[type=range]::-moz-range-track { 
  -moz-appearance:none;
    height:35px;
    width: 98%;
    background-color: rgba(255,255,255,0.1); 
    position: relative;
    outline: none;    
 }
input[type=range]::active { 
  border: none; 
  outline: none;
}
input[type=range]::-webkit-slider-thumb {
    -webkit-appearance:none;
    width: 40px; height: 35px;   
    background: #DD5547;
    border-radius: 0;
   }
input[type=range]::-moz-range-thumb {
  -moz-appearance: none;
  width: 40px;
  height: 35px;
  background: #DD5547;
  border-radius: 0;
     }   
input[type=range]:focus::-webkit-slider-thumb {
    background: rgba(221,85,71,0.9);
   }
input[type=range]:focus::-moz-range-thumb {
    background: rgba(221,85,71,0.9);
   }

