

/* 	--------------------------------------------------
	TABLE OF CONTENTS
    -------------------------------------------------- 

	1.0 SLICK CAROUSEL
	2.0 LIGHTBOX
	3.0 ANIMATE
	
*/

/*
	
	BOOTSTRAP BREAKPOINTS
	
	.col-xs-	< 768px		(container width 100%)
	.col-sm-	> 768px		(container width 750px)
	.col-md-	> 992px		(container width 970px)
	.col-lg-	> 1200px	(container width 1170px)
	
*/		
		

                                          
/*  --------------------------------------------------
    1.0 SLICK CAROUSEL            
    -------------------------------------------------- */

	/*
	* http://kenwheeler.github.io/slick/
	*/

	/* Slider */
	.slick-slider { 
		position: relative; display: block; 
		box-sizing: border-box; 
		-moz-box-sizing: border-box; 
		-webkit-touch-callout: none; 
		-webkit-user-select: none; 
		-khtml-user-select: none; 
		-moz-user-select: none; 
		-ms-user-select: none; 
		user-select: none; 
		-ms-touch-action: pan-y; 
		touch-action: pan-y; 
		-webkit-tap-highlight-color: transparent; 
		z-index:0;
		}
	.slick-slider * {
		outline:0 none!important;
		}

	.slick-list { position: relative; overflow: hidden; display: block; margin: 0; padding: 0; }
	.slick-list:focus { outline: none; }
	.slick-loading .slick-list { }
	.slick-list.dragging { cursor: pointer; cursor: hand; }

	.slick-slider .slick-list, .slick-track, .slick-slide, .slick-slide img { 
		-webkit-transform: translate3d(0, 0, 0); 
		-moz-transform: translate3d(0, 0, 0); 
		-ms-transform: translate3d(0, 0, 0);
		-o-transform: translate3d(0, 0, 0); 
		transform: translate3d(0, 0, 0); 
		
		z-index:0;
		}

	.slick-track { position: relative; left: 0; top: 0; display: block; zoom: 1; }
	.slick-track:before, .slick-track:after { content: ""; display: table; }
	.slick-track:after { clear: both; }
	.slick-loading .slick-track { visibility: hidden; }

	.slick-slide { float: left; height: 100%; min-height: 1px; display: none; }
	.slick-slide img { display: block; }
	.slick-slide.slick-loading img { display: none; }
	.slick-slide.dragging img { pointer-events: none; }
	.slick-initialized .slick-slide { display: block; }
	.slick-loading .slick-slide { visibility: hidden; }
	.slick-vertical .slick-slide { display: block; height: auto; }

		/*
	.slick-slide {
		-moz-opacity:0.3;
		-webkit-opacity:0.3;
		-ms-opacity:0.3;
		opacity:0.3;
		}
	.slick-active {
		-moz-opacity:1;
		-webkit-opacity:1;
		-ms-opacity:1;
		opacity:1;
		}
		*/

	/* Arrows */
	.slick-prev, .slick-next {  }
	.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus {  }
	.slick-prev:hover:before, .slick-prev:focus:before, .slick-next:hover:before, .slick-next:focus:before {  }
	.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before { }


	/* Dots */
	.slick-slider { }

	.slick-dots { position: absolute; bottom: -45px; list-style: none; display: block; text-align: center; padding: 0; width: 100%; }
	.slick-dots li { position: relative; display: inline-block; height: 20px; width: 20px; margin: 0 5px; padding: 0; cursor: pointer; }
	.slick-dots li button { border: 0; background: transparent; display: block; height: 20px; width: 20px; outline: none; line-height: 0; font-size: 0; color: transparent; padding: 5px; cursor: pointer; }
	.slick-dots li button:hover, .slick-dots li button:focus { outline: none; }
	.slick-dots li button:hover:before, .slick-dots li button:focus:before { opacity: 1; }
	.slick-dots li button:before { position: absolute; top: 0; left: 0; width: 20px; height: 20px; font-size: 6px; line-height: 20px; text-align: center; color: black; opacity: 0.25; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
	.slick-dots li.slick-active button:before { color: black; opacity: 0.75; }
	









/* -------------------------------- */

	
.slick-prev, .slick-next 
{
	-webkit-transition:all 0.3s ease-in-out 0s;
	-moz-transition:all 0.3s ease-in-out 0s;
	-ms-transition:all 0.3s ease-in-out 0s;
	transition:all 0.3s ease-in-out 0s;
}
	
	
	
                            
/*  --------------------------------------------------
    5.10 SLICK CAROUSEL NAVIGATION            
    -------------------------------------------------- */
		
	.slick-prev, .slick-next {		
   		display: table;
		}
	.slick-prev i, .slick-next i {
		position:relative;
		margin:0!important;
		display:block;
		text-align:center;
   		display: table-cell;
   		vertical-align: middle;
		}
		
	.slick-prev, .slick-next {
		width:50px; height:50px;
		position:absolute; top:50%; z-index:200;
		background:none;
		border:0 none;
		cursor:pointer;
		background-color:rgba(43,43,43,0.6);
		color:#ffffff; color:rgba(255,255,255,1);
		
		transform:translateY(-50%);
		}		
	.slick-prev {
		left:0;
		background-color:rgba(43,43,43,0.4);
		}
	.slick-next {
		right:0;
		}
	html.no-touch .slick-prev:hover, html.no-touch .slick-next:hover {
		background-color:rgba(43,43,43,1);
		}
		
	.slick-prev i, .slick-next i {
		font-size:20px;
		}	
		
	.banner .slick-prev, .banner .slick-next {
		top:auto; bottom:0;
		
		transform:none;
		}
	.banner .slick-prev {
		right:50px; left:auto;
		}
	.banner .slick-next { 
		right:0;
		}	
		
	ul.slick-dots {
		position:absolute; bottom:15px; left:15px;
		width:100%;
		margin:0;
		text-align:left;
		}
	ul.slick-dots li {
		margin:0 10px 0 0;
		display:inline-block;
		width:10px; height:10px;
		}
	ul.slick-dots li button {
		border-radius:50%;
		width:10px; height:10px;
		background-color:rgba(43,43,43,0.4);
		
		-webkit-transition:background-color 0.2s ease-in-out 0s, border-color 0.2s ease-in-out 0s;
		-moz-transition:background-color 0.2s ease-in-out 0s, border-color 0.2s ease-in-out 0s;
		-ms-transition:background-color 0.2s ease-in-out 0s, border-color 0.2s ease-in-out 0s;
		transition:background-color 0.2s ease-in-out 0s, border-color 0.2s ease-in-out 0s;
		}	
	ul.slick-dots li.slick-active button {
		background-color:#2b2b2b; background-color:rgba(43,43,43,1);
		}
		
	.banner ul.slick-dots li button,
	.c1-bg ul.slick-dots li button, .c2-bg ul.slick-dots li button, .c3-bg ul.slick-dots li button {
		background-color:rgba(255,255,255,0.4);
		}
	.banner ul.slick-dots li.slick-active button,
	.c1-bg ul.slick-dots li.slick-active button, .c2-bg ul.slick-dots li.slick-active button, .c3-bg ul.slick-dots li.slick-active button {
		background-color:#ffffff; background-color:rgba(255,255,255,1);
		}
		
	.image-carousel ul.slick-dots {
		position:relative; bottom:auto; top:19px;
		display:none!important;
		}
	
	@media (min-width:768px) {
		
	.image-carousel .slick-prev, .image-carousel .slick-next {
		top:35%;
		}
		
	}	
		
		
	@media (min-width:992px) {
		
	.banner .slick-prev, .banner .slick-next {
		width:70px; height:70px;
		}
	.banner .slick-prev { 
		right:70px;
		}
	.slick-prev i, .slick-next i {
		font-size:30px;
		}
		
	.image-carousel ul.slick-dots {
		display:block!important;
		}
		
	}	


                            
/*  --------------------------------------------------
    10.10 IMAGE CAROUSEL 
    -------------------------------------------------- */                  
	
	.apc.image-carousel {
		}    		
	.apc.image-carousel .slides {
		padding-bottom:60px;
		}
		
	.apc.image-carousel .slick-prev,
	.apc.image-carousel .slick-next {
		top:auto; right:0; bottom:0; left:auto;
		
		transform:none;
		}
	.apc.image-carousel .slick-prev {
		right:50px;
		}
		
	@media (min-width:768px) {	
		
	}
		
	@media (min-width:992px) {
		
	.apc.image-carousel .slick-prev,
	.apc.image-carousel .slick-next {
		bottom:-15px;
		}
		
	}
		
	@media (min-width:1200px) {	
		
	}
	
	
/*  --------------------------------------------------
    10.11 FEATURED BLOGS
    -------------------------------------------------- */

  	.apc.featured-blogs {
		}
		
	.apc.featured-blogs .slides {
		padding-bottom:60px;
		}
		
	.apc.featured-blogs .slick-prev,
	.apc.featured-blogs .slick-next {
		top:auto; right:15px; bottom:0; left:auto;
		
		transform:none;
		}
	.apc.featured-blogs .slick-prev {
		right:65px;
		}
		
  	.apc.featured-blogs .listing {
		overflow:visible;
		padding:0 15px; margin:0 -15px;
		}
  	.apc.featured-blogs .listing .item {
		margin:0 15px;
		clear:none!important; 
		}	
		
		
	@media (min-width:768px) {	
	
	}
		
	@media (min-width:992px) {
		
	.apc.featured-blogs .slick-prev,
	.apc.featured-blogs .slick-next {
		bottom:-15px; 
		}
		
	}
		
	@media (min-width:1200px) {	
		
	}
	
	
	
	
	
	
	
	
	.apc.banner {
		padding:0!important;
		}
	.apc.banner,
	.apc.promo-pods {
		margin:0;
		}


                            
/*  --------------------------------------------------
    10.2 BANNER  
    -------------------------------------------------- */                           
	
	.apc.banner {
		overflow:hidden; height:auto;
		position:relative; z-index:0;
		}
	header + #content > .apc.banner:first-child {
		margin-top:-70px;
		}
		
	.apc.banner .item {
		position:relative; z-index:0;
		
		background-repeat:no-repeat; background-position:center;
		background-size:cover;
		}
		
	.apc.banner .item.short, 
	.apc.banner .item.short .container, 
	.apc.banner .item.short .row {
		height:150px; min-height:320px;
		/* 		height:45vh; min-height:320px;*/
		}
		
	.apc.banner .item.medium, 
	.apc.banner .item.medium .container, 
	.apc.banner .item.medium .row {
		height:65vh; min-height:400px;
		}
		
	.apc.banner .item.takeover, 
	.apc.banner .item.takeover .container, 
	.apc.banner .item.takeover .row {
		height:100vh;
		}
	body.browser-ios .apc.banner .item.takeover, 
	body.browser-ios .apc.banner .item.takeover .container, 
	body.browser-ios .apc.banner .item.takeover .row {
		height:100vh;
		
		height:calc(100vh - 68px);
		
		height:-o-calc(100vh - 68px); 
		height:-webkit-calc(100vh - 68px); 
		height:-moz-calc(100vh - 68px);
		}

	.apc.banner .item.overlay::before {
		content:"";
		position:absolute; top:0; right:0; bottom:0; left:0; z-index:10;
		}
		
	.apc.banner .item .image {
		position:absolute; top:0; right:0; bottom:0; left:0; z-index:-1;
		width:100%; height:100%;
		
		background-repeat:no-repeat; background-position:center;
		background-size:cover;
		}
	/* will not work on iOS: https://stackoverflow.com/questions/23236158/how-to-replicate-background-attachment-fixed-on-ios */	
	body:not(.browser-ios) .apc.banner .item.parallax .image {
		background-attachment:fixed; 
		}
					
	.apc.banner .info {
		position:absolute; top:0; right:0; bottom:0; left:0; z-index:11;
		width:100%; height:100%;
		padding:0;
		}	
	header + #content > .apc.banner:first-child .item:not(.takeover) .info { 
		padding-top:20px;
		}
					
	.apc.banner .info .heading.main {
		margin:0;
		}
		
	.apc.banner .info .heading.main + .text { 
		margin-top:10px;
		}
	.apc.banner .info .text :first-child {
		margin-top:0;
		}
	.apc.banner .info .text :last-child {
		margin-bottom:0;
		}
		
	.apc.banner .info .heading.main + .link {
		margin:25px 0 0;
		}
	.apc.banner .info .text + .link {
		margin:40px 0 0;
		}
		
		
	/* SCROLL PROMPT */	
	.apc.banner .scroll-prompt {
		position:absolute; right:0; bottom:0; left:0; z-index:100;
		width:100%;
		
	    -webkit-animation-duration: 1s;
	    animation-duration: 1s;
	    -webkit-animation-delay: 3s;
	    animation-delay: 3s;
	    -webkit-animation-fill-mode: both;
	    animation-fill-mode: both;
		-webkit-animation-name: fadeIn;
    	animation-name: fadeIn;
		}	
	.apc.banner .scroll-prompt a {
		display:inline-block; 
		width:100%; height:40px;
		margin:0 auto;
		cursor:pointer;
		text-decoration:none!important;
		}
	.apc.banner .scroll-prompt a i {
		font-size:30px;
		line-height:40px;
		display:block;
		padding:0; margin:0 0 0 2px;
		}
		
	.apc.banner .scroll-prompt .mouse-scroll {
		position:relative;
		width:21px; height:35px;
		margin:0 auto;
		border-width:2px; border-style:solid; border-color:#ffffff; border-color:rgba(255,255,255,1);
		border-radius:10px;
		}	
	.apc.banner .scroll-prompt .mouse-scroll::before {
		content:"";
		position:absolute; top:10px; left:7px;
		width:3px; height:6px;
		border-radius:50%;
		background-color:#ffffff; background-color:rgba(255,255,255,1);
		
    	-webkit-animation-iteration-count: infinite;
    	animation-iteration-count: infinite;
	    -webkit-animation-duration: 1.25s;
	    animation-duration: 1.25s;
	    -webkit-animation-delay: 3s;
	    animation-delay: 3s;
	    -webkit-animation-fill-mode: both;
	    animation-fill-mode: both;
		-webkit-animation-name: fadeInDown;
    	animation-name: fadeInDown;
		}
		
		
	@media (min-width:768px) {
		
	.apc.banner .item.short, 
	.apc.banner .item.short .container, 
	.apc.banner .item.short .row {
		min-height:380px;
		}
		
	.apc.banner .item.medium, 
	.apc.banner .item.medium .container, 
	.apc.banner .item.medium .row {
		min-height:480px;
		}
		
	.apc.banner .item.takeover, 
	.apc.banner .item.takeover .container, 
	.apc.banner .item.takeover .row {
		height:100vh;
		}
	body.browser-ios .apc.banner .item.takeover, 
	body.browser-ios .apc.banner .item.takeover .container, 
	body.browser-ios .apc.banner .item.takeover .row {
		height:100vh;
		
		height:calc(100vh - 26px);
		
		height:-o-calc(100vh - 26px); 
		height:-webkit-calc(100vh - 26px); 
		height:-moz-calc(100vh - 26px);
		}
		
	}
		
	@media (min-width:992px) {	
		
	}	
	
	@media (min-width:768px) and (max-width:1199px) { 
		
	.apc.banner .info .table { 
		padding-right:40px; padding-left:40px;
		}	
	
	}
		
	@media (min-width:1200px) {	
		
	.apc.banner .item.short, 
	.apc.banner .item.short .container, 
	.apc.banner .item.short .row {
		min-height:450px;
		}
		
	.apc.banner .item.medium, 
	.apc.banner .item.medium .container, 
	.apc.banner .item.medium .row {
		min-height:600px;
		}
		
	.apc.banner .scroll-prompt a {
		height:auto; padding-bottom:10px;
		}
	.apc.banner .scroll-prompt a span {
		font-size:9px;
		text-transform:uppercase;
		letter-spacing:0.09em;
		display:block; margin-top:15px;
		display:none;
		}
	.apc.banner .scroll-prompt a i {
		font-size:20px;
		}
		
	}
		
	@media (min-width:1600px) {
	
	body.fixed-width .apc.banner .item { 
		background-size:1600px auto;
		}

	}
	


/*  --------------------------------------------------
    10.2.2 BANNER VIDEOS
    -------------------------------------------------- */ 
		
	.apc.banner .item .video {
		}

	.apc.banner .item .video .video-player {
		
		position:absolute; top:50%; left:50%;
    	z-index: -1; /* for accessing the video by click */
    	overflow: hidden;
	
	    -webkit-transform: translate(-50%, -50%);
	    -moz-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		}


	@media (min-width:0) and (max-width:767px) {
	
	}
		
	@media (min-width:768px) {	
		
	}
		
	@media (min-width:992px) {	
		
	}
		
	@media (min-width:1200px) {	
		
	}
/* EDITOR PROPERTIES - PLEASE DON'T DELETE THIS LINE TO AVOID DUPLICATE PROPERTIES */






/*------------- CUSTOM STYLES ----------------*/
.homePromoBox .banner:not(.layout1) .slick-slide .info
{
    position: absolute;
    top: auto;
    bottom: 10%;
    right: auto;
    left: 0;
    font-size: 1.5rem;
    line-height: 1.5rem;
    font-weight: 300;

    height: auto;
}
.homePromoBox .banner:not(.layout1) .slick-slide .info h1
{
    color: #fff;
    text-decoration: none;
    display: inline-block;
    background: #275891;
    padding: 8px 50px 8px 20px;
    background-image: url("../images/icon-arrow-right-white.png");
    background-repeat: no-repeat;
    background-position: right .6em center;
    background-size: 12px 20px;
    -ms-behavior: url("backgroundsize.min.htc");

    font-size: 1.5rem;
    line-height: 1.5rem;
    font-weight: 300;
}
.homePromoBox .banner:not(.layout1) .slick-slide .info h1 a
{
    text-decoration: none;
    color: #fff;
}
.homePromoBox .banner ul.slick-dots
{
    margin-bottom: 5px;
    padding-left: 5px;
}
.homePromoBox .banner .slick-prev, .banner .slick-next
{
    width: 40px;
    height: 40px;
}
.homePromoBox .banner .slick-prev
{
    right: 40px;
}
.homePromoBox .banner ul.slick-dots li button
{
    border: 1px solid #275891;
}
.homePromoBox .banner:not(.layout1) ul.slick-dots li.slick-active button
{
    background-color: #275891;
}

.homePromoBox .banner.layout1 .info
{
}
.homePromoBox .banner.layout1 .wrap_85
{
    height: 100%;
}
.homePromoBox .banner.layout1 .info .inner
{
    width: 30%;
    background-color: rgba(39, 88, 145, 0.9);
    padding: 1.5em 1.5em 1.5em 1.5em;
    position: relative;
    z-index: 2;
    height: 100%;
}
.homePromoBox .banner.layout1 .info .inner h1
{
    font-size: 2.2em;
    line-height: 1.4em;
    font-weight: 300;
    margin-bottom: .5em;
    color: #fff;
}
.homePromoBox .banner.layout1 .info .inner p
{
    color: #fff;
    font-weight: 300;
    line-height: 1.7em;
}
.homePromoBox .banner.layout1 .info .inner p.link
{
    margin-top: 2em;
}
.homePromoBox .banner.layout1 .info .inner p.link a {
    display: inline-block;
    padding: .6em 1.5em;
    font-size: .9em;
    line-height: 1.4em;
    font-weight: 400;
    text-decoration: none !important;
    color: #fff;
    text-transform: uppercase;
    border: 1px solid #fff;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    border-radius: 50px;
}
.homePromoBox .banner.layout1  ul.slick-dots
{
    display: none !important;
}














/* EDITOR PROPERTIES - PLEASE DON'T DELETE THIS LINE TO AVOID DUPLICATE PROPERTIES */
