/*
Theme Name:Fitness Passion
Theme URI:http://themeWagon.com/demo/fitness
Author:ThemeWagon
Author URI:http://themeWagon.com/
Description:Fitness Passion is a single page html template based on bootstrap 3
Version:1.0.0
License:GNU General Public License v2 or later
License URI:http://www.gnu.org/licenses/gpl-2.0.html
*/

/* Fonts */

	/* Great Vibes */
	@import url(http://fonts.googleapis.com/css?family=Great+Vibes);
	
	/* Alegreya Sans */
	@import url(http://fonts.googleapis.com/css?family=Alegreya+Sans:400,300);
	
	/* Open Sans */
	@import url(http://fonts.googleapis.com/css?family=Open+Sans:600italic,400,300,600,700,800);

	/* Open Sans Condensed */
	@import url(http://fonts.googleapis.com/css?family=Open+Sans+Condensed:300,700);
	

/* Main Styles */
	.pro-bars{
		 font-family: "Lato";
		font-weight: bold;
		font-size: 20px;

	}

	::selection {
		background-color: #ececec;
	}
	html, body {
		background: #fff;
		width:100%;
		height:100%;
		padding:0;
		margin-left:0;
		margin-right:0;
		font-family: 'Open Sans', sans-serif;
		-webkit-font-smoothing: antialiased;
	}

	body{
		overflow-x: hidden; 
	}

	img {
	    -moz-user-select: none; 
	    -webkit-user-select: none;
	    -ms-user-select: none; 
	    user-select: none; 
	    -webkit-user-drag: none;
	    user-drag: none;
	}

	a,
	a:hover,
	a:active,
	a:focus
	{
		text-decoration:none;
		outline:none;
	
	}
	.lead{
		font-family: 'Open Sans', sans-serif;
	}

	h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6{
		font-family: 'Open Sans', sans-serif;
		font-weight:100;
	}

	p{
		margin:0 0 5px;
	}

	.clear{
		clear:both;
	}

	ol, ul{
		list-style:none;
		padding:0;
	}

	.btn{
		outline:none;
		-webkit-transition: all 0.4s;
		-moz-transition: all 0.4s;
		transition: all 0.4s;
	}

	.btn:focus{
		outline:none;
	}

	.btn:active{
		outline:none;
	}

/* Font Classes */	

	.condensed{
		font-family: 'Open Sans Condensed', sans-serif;
	}
	h2.condensed{
		font-size: 97px;
	}

	.fancy{
		font-family: 'Great Vibes', cursive;
	}

/* Page Animated item Styles */

	.animated{
		visibility:hidden;
	}

	.visible{
		visibility:visible;
	}

/* Background Animation */

	@-webkit-keyframes BackgroundAnimation {
	    from {background-position: 0px 0px;}
	    to {background-position: 9600px 0px;}
	}

	@-moz-keyframes  BackgroundAnimation {
	    from {background-position: 0px 0px;}
	    to {background-position: 9600px 0px;}
	}

	@-ms-keyframes  BackgroundAnimation {
	    from {background-position: 0px 0px;}
	    to {background-position: 9600px 0px;}
	}


/* Containers */

	.container {
		width: 100%;
		height: auto;
		padding:0;
		margin:0;
	}

	.inner{
		width:100%;
		height: auto;
		max-width: 1170px;
		position: relative;
		margin: 0 auto;
		padding: 75px 0;
		text-align: center;
	}

	.inner:after{
		clear: both;
	}

	.fullwidth{
		width:100%;
		max-width: 100%;
	}

	.transparent{
		background: transparent !important;
	}

	.no-padding{
		padding:0 !important;
	}

	.no-margin{
		margin:0 !important;
	}

/* Positions */

	.relative{
		position: relative;
	}

	.absolute{
		position: absolute;
	}

	.fixed{
		position:fixed;
	}

/* Patterns */

	.pattern-white:after{
		background: url(../images/pattern-white.png) repeat;
		content:'';
		width: 100%;
		height: 100%;
		top:0;
		left:0;
		position: absolute;
		opacity:0.25;
	}

/* Fonts */

	.header{
		width:100%;
		height: auto;
		font-size:3.5em;
		font-weight: 400;
		text-align: center;
		margin:0 auto;
	}

	.h-desc{
		font-size:18px;
		color: white;
		font-weight: 100;
		text-align: center;
		margin:20px auto;
		max-width: 900px;
		line-height: 24px;
	}

	.extrabold{
		font-weight: 800;
	}

	.bold{
		font-weight: 700;
	}

	.semibold{
		font-weight: 600;
	}

	.normal{
		font-weight: 400;
	}

	.light{
		font-weight: 100;
	}

	.italic{
		font-style: italic;
	}

	.uppercase{
		text-transform: uppercase;
	}

/* Colors */

	.white{
		color:white;
	}
	
	.black{
		color:black;
	}

	.gray1{
		color: #CFCFCF;
	}

	.gray2{
		color:#999999;
	}
	
	.gray3{
		color:#111;
	}

	.gray4{
		color:#333;
	}

	.colored{
		color: #8BC3A3;
	}

	.colored-bg{
		background-color: #8BC3A3;
	}

	.gray-border{
		border-color:#eeeeee;
	}

	.colored-border{
		border-color: #8BC3A3;
	}

	.colored-border-left{
		border-left-color: #8BC3A3;
	}

	.colored-border-right{
		border-right-color: #8BC3A3;
	}

	.white-bg{ 
		background-color:white !important;
	}

	.gray-bg{
		background-color:#f5f5f5 !important;
	}
	
	.semidarkgray-bg{
		background-color:#4d4d4d !important;
	}
	
	.darkgray-bg{
		background-color:#333333 !important;
	}

	.black-bg{
		background-color:222222 !important;
	}
	
/* Home Section */

	.arrow-down {
		margin-top: 50px;
		color: #8BC3A3;
		font-size: 55px !important;
	}

	#home{
		position: relative;
		width: 100%;
		height: auto;
		top:0;
	}

	.home{
		background:url(../images/1.jpg) center center fixed;
		position: relative;
	}

	.home:after{
		clear: both;
	}

/* Home Parallax Slider Version  */

	#home .v2{
		width:100%;
		height: 100%;
		top:0;
		z-index: 4;
		text-align: center;
	}

	#home .v2 .typographic{
		height: auto;
		width:100%;
		max-width:600px;
		margin:0 auto;
		position: relative;
		top:50%;
		padding:0 25px;
		-webkit-transform: translateY(-50%);
		-moz-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	
	#home .v2 .typographic .logo{
		padding:25px 0;
	}

/* Typographic Text Options  */

	#home .v2 .typographic h1{
		text-shadow:2px 2px 2px rgba(0, 0, 0, 0.15);
		line-height:0.8;
		font-size:70%;
		margin:10px 0;
	}

	#home .v2 .typographic h2{
		text-shadow:2px 2px 2px rgba(0, 0, 0, 0.15);
		line-height: 0.9;
		font-size:80%;
		margin:10px 0;
	}

/* Background Slider Images  */

	.slides-container div,
	.home{
		background-size:100%;
	}

	#slides .slides-container div{
		background-position:center center;
		background-attachment: fixed;
	}

	#slides .slides-container .image1{
		background-image:url(../images/5.jpg);
	}

	#slides .slides-container .image2{
		background-image:url(../images/4.jpg);
	}
	
	#slides .slides-container .image3{
		background-image:url(../images/3.jpg);
	}
	
	#slides .slides-container .image4{
		background-image:url(../images/1.jpg);
	}

	.v2 .home-arrow{
		margin:0 auto;
		left:50%;
		bottom:12%;
		position: absolute;
		-webkit-transform: translateX(-50%);
		-moz-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	.v2 .home-arrow:hover{
		color:white;
	}

/* Super Slides Navigation */

	.slides-navigation {
		margin: 0 auto;
		position: absolute;
		z-index: 3;
		top: 45%;
		width: 100%;
		z-index: 20;
	}
	.slides-navigation a{
		position: absolute;
		display: block;
		width:36px;
		height:81px;
		background:url(../images/slider-arrows.png);
		opacity:0;
		-webkit-transition: all 0.5s;
		-moz-transition: all 0.5s;
		transition: all 0.5s;
	}

	.slides-navigation a.prev {
		left: 2%;
		background-position:left;
	}
	.slides-navigation a.next {
		right: 2%;
		background-position:right;
	}

	#home:hover .slides-navigation a{
		opacity:0.3;
	}

	.slides-navigation a:hover{
		opacity:1 !important;
	}

/* Navigation */
	
	#navigation{
		position: fixed;
		width: 100%;
		height: 75px;
		z-index: 1031;
		-webkit-transition: all 0.5s;
		-moz-transition: all 0.5s;
		transition: all 0.5s;
	}

	.visible-nav{
		top:0;
	}

	.dark-nav{
		background:rgba(0,0,0,0.6);
		box-shadow: 0px 1px 4px rgba(0,0,0, 0.5);
		-moz-box-shadow: 0px 1px 4px rgba(0,0,0, 0.5);
		-webkit-box-shadow: 0px 1px 4px rgba(0,0,0, 0.5);
	}

	.nav-inner{
		width:100%;
		max-width: 1170px;
		height: 100%;
		margin:0 auto;
	}

	.nav-inner:after{
		clear: both;
	}

/* Logo Style */

	.site-logo{
		font-size:1.05em;
		float: left;
		position: relative;
		padding-top:0px;
		top: 50%;
		-webkit-transform: translateY(-50%);
		-moz-transform: translateY(-50%);
		transform: translateY(-50%);
	}

	.white-nav .site-logo a.logo{
		color:#111;
		display: block;
	}	
	
	.dark-nav .site-logo a.logo{
		color:#fff;
		display: block;
	}	

	.site-logo a.logo img{
		height: auto;
		max-height: 50px;
		-webkit-transition: all 1s;
		-moz-transition: all 1s;
		transition: all 1s;
	}

/* Nav Menu */

	#navigation .mini-nav-button{
		color:#777;
		display: none;
		width: 40px;
		height: 40px;
		text-align: center;
		font-size:25px;
		position: absolute;
		right:15px;
		top:50%;
		cursor: pointer;
		-webkit-transform: translateY(-50%);
		-moz-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	
	#navigation .mini-nav-button:hover{
		color:#8BC3A3;
		-webkit-transition: all 0.3s;
		-moz-transition: all 0.3s;
		transition: all 0.3s;
	}	

	.nav-menu{
		float: right;
		height: 100%;
	}

	.nav-menu ul.nav{
		height: 100%;
	}

	.nav li{
		display: inline-block;
		height: 100%;
	}

	.nav li a{
		display: block;
		height: 100%;
		line-height: 54px;
		color: #555555;
		font-size:1.05em;
		font-weight:600;
		padding:10px 8px;
		-webkit-transition: all 0.3s;
		-moz-transition: all 0.3s;
		transition: all 0.3s;
		font-family: 'Open Sans', sans-serif;
	}

/* Nav Menu Rollovers */

	.dark-nav .nav li a{
		color:#ccc;
	}

	.dark-nav .nav li a:hover{
		background:#222;
		color:#8BC3A3;
	}
	
	.dark-nav .nav li.active a{
		color:#8BC3A3;
	}
	
	.dark-nav .nav li a:focus{
		background:#8BC3A3;
		color:#fff !important;
	}	

/* About */
   @media (min-width:600px) and (max-width:1020px){
	p.lead.lead-text {
		margin-top: 20px;
		}
	}
	#about .inner .boxes{
		overflow: hidden;
	}

	#about .inner .boxes:after{
		clear: both;
	}

	.about-box{
		text-align: center;
		margin:0px auto 0;
		cursor: pointer;
	}
/* About Icon Styles */

	.about-icon{
		display:block;
		width:120px;
		height: 120px;
		position: relative;
		border-radius:50%;
		z-index: 3;
		margin:1px auto;
		text-align: center;
	}

	.about-icon:before{
		width:120px;
		height: 120px;
		content:'';
		z-index: 1;
		position: absolute;
		background: #8BC3A3;		
		border: none;
		border-radius:50%;
		top:-1px;
		left:-1px;
		-webkit-transition: all 0.3s;
		-moz-transition: all 0.3s;
		transition: all 0.3s;
	}

	.about-icon i{
		font-size:4em;
		color:#fff;
		z-index: 4;
		position: relative;
		line-height: 120px;
		-webkit-transition: all 0.3s;
		-moz-transition: all 0.3s;
		transition: all 0.3s;
	}


/* About Box Hover Styles */

	.about-box:hover .about-icon:before{
		background:#252525;
	}

	.about-box:hover .about-icon:after{
		background:#252525;
	}

	.about-box:hover .about-icon i{
		color:#fff;
	}

	.about-box .about-head{
		margin:25px auto 20px;
		font-size:1.5em;
		border-top:#ddd 1px solid;
		padding-top:20px;
	}

	.about-box .about-text{
		font-size: 14px;
	}


/* Services */

	#services{
		background:url(../images/parallax/1.jpg) top center fixed;
		padding:55px 0;
		overflow: hidden;
	}

/* Service Boxes */

	.service-box{
		text-align: center;
		margin:50px auto 0;
		cursor: context-menu;
	}

	.service-box .service-icon{
		display:block;
		position: relative;
		z-index: 3;
		margin:0 auto;
		-webkit-transition: all 0.3s;
		-moz-transition: all 0.3s;
		transition: all 0.3s;
	}

	.service-box .service-icon i{
		font-size:26px;
		color:white;
		width:70px;
		height: 70px;
		z-index: 4;
		position: relative;
		line-height: 60px;
		background-color:#8BC3A3;
		border-radius:50%;
		border:rgba(0,0,0,0.10) 5px solid;
		-webkit-transition: all 0.3s;
		-moz-transition: all 0.3s;
		transition: all 0.3s;
	}

	.service-box:hover .service-icon i{
		background:black;
	}

	.service-box .service-header{
		margin-top:15px;
		margin-bottom:30px;
		font-size:18px;
		text-shadow: 0px 1px #000000;
		font-weight:bold;
	}

/* Tooltip Styles */

	.tooltip{
		z-index: 999 !important;
	}

	.tooltip-inner{
		padding:15px;
		background:rgba(255,255,255,0.95);
		color:black;
		font-size:13px;
		border-radius: 3px;
		min-width: 170px;
	}

	.tooltip.top{
		margin-top:-10px;

	}

	.tooltip.bottom{
		margin-top:20px;

	}

	.tooltip.left{
		margin-right:20px;

	}

	.tooltip.right{
		margin-left:20px;
	}

	.tooltip.top .tooltip-arrow{
		border-top-color:rgba(255,255,255,0.95) !important;
	}

	.tooltip.bottom .tooltip-arrow{
		border-bottom-color:rgba(255,255,255,0.95) !important;
	}

	.tooltip.left .tooltip-arrow{
		border-left-color:rgba(255,255,255,0.95) !important;
	}

	.tooltip.right .tooltip-arrow{
		border-right-color:rgba(255,255,255,0.95) !important;
	}

/* Features */
	
	.f-box{
		text-align:center;
		cursor: default;
		margin:60px auto 0;
	}

	.f-icon i{
		font-size:3em;
		color:#fff;
		background:#8BC3A3;
		-webkit-transition: all 0.3s;
		-moz-transition: all 0.3s;
		transition: all 0.3s;
		border:rgba(0,0,0,0.2) 5px solid;
		border-radius:50%;
		padding:30px;
		width:110px;
	}

	.f-box .feature-head{
		margin:25px auto 20px;
		font-size:1.5em;
		border-top:#444 1px solid;
		padding-top:20px;
		color:#ccc;
	}

	.f-box .feature-text{
		font-size:15px;
		color:white;
		line-height:22px;
		font-weight: bold;
	}

	.f-box:hover .f-icon i {
		background: rgba(255, 255, 255, 0.25);
	}
	
	#features{
		background:#333 url(../images/parallax/3.jpg) repeat;
	}


/* Testimonials */

	.carousel-indicators {
		position: absolute;
		bottom: 0px !important;
		}	

	.testimonials{
		background: url(../images/parallax/2.jpg) center center fixed;
		padding: 70px 0 70px;
		text-align: center;
		overflow: hidden;
		position: relative;
	}

	.t-slides{
		max-width: 970px;
		margin:0 auto;
		max-height: 500px;
		overflow: hidden;
		background:none;
	}

	.t-slides li.monial{
		position: absolute;
		height: auto;
		
	}

	.t-slides li.monial:last-child:after{
		clear: both;
	}

	.monial h1{
		font-size:2em;
		line-height:1.5em;
	}

	.monial p {
		margin: 50px auto;
		font-size: 18px;
		color: #FFF;
		text-align: center;
}

/* Testimonial Controls */	

	.testimonials .flex-direction-nav{
		width:52px;
		height: 30px;
		margin:-35px auto 0 auto;
		position: relative;
		opacity: 1;
	}

	.testimonials .flex-direction-nav li{
		display: block;
		position: relative;
		float:left;
		width:26px;
		height: 26px;
	}

	.testimonials .flex-direction-nav li a{
		opacity: 1;
		width:26px;
		height: 26px;
		background:url(../images/testimonial-controls.png);
	}

	.testimonials .flex-direction-nav a:before{
		display: none;
	}

	.testimonials .flex-direction-nav li a.flex-prev{
		background-position: left top;
		left:-5px;
	}

	.testimonials .flex-direction-nav li a.flex-next{
		background-position: right top;
		right:-5px;
	}

	.testimonials .flex-direction-nav li a.flex-prev:hover{
		background-position: left bottom;
	}

	.testimonials .flex-direction-nav li a.flex-next:hover{
		background-position: right bottom;
	}

/* Text Area */
	
	#blockquote{
		background:#518768;
		padding:45px 0 35px 0;
		border-top:rgba(0,0,0,0.10) 8px solid;
		border-bottom:rgba(0,0,0,0.10) 8px solid;
	}

	#blockquote p.blockquote{
		font-size:44px;
	}
	
	#blockquote i.fa{
		padding-left:40px;
	}	


/* Team */

	#team{
		border-bottom:none;
	}

	#team .team .team-members{
		margin:30px auto 0;
	}

	.team-members .member{
		margin:15px auto;
		cursor: default;
		overflow: hidden;
	}

	.team-members .member .member-inner{
		position: relative;
	}

	.team-members .member a.team-image{
		display: block;
		width: 100%;
		height: auto;
		z-index: 2;
	}

	.team-members .member a.team-image img{
		width: 100%;
	}

	.inner-details .member-details{
		position: absolute;
		width: 100%;
		left:0;
		height: 100%;
		padding:15px;
		bottom:100%;
		margin:0;
		z-index: 3;
		opacity:0.98;
		background:#8BC3A3;
		-webkit-transition: all 0.4s;
		-moz-transition: all 0.4s;
		transition: all 0.4s;
	}

	.inner-details .member-details .member-details-inner{
		position: relative;
		top:50%;
		-webkit-transform: translateY(-50%);
		-moz-transform: translateY(-50%);
		transform: translateY(-50%);
	}

/* Team Names, Descriptions */

	.team-members .member-details .member-name{
		color: white;
		margin-top:0;
		padding-top:0;
		font-size:30px;
	}

	.team-members .member-details .member-position{
		color:#8BC3A3;
		font-size:13px;
	}

	.team-members .member-details .member-description{
		color:#fff;
		font-size:20px;
	}

/* Team Socials */

	.member .member-details .member-details-inner .socials{
		margin:10px auto 0;
	}

	.member .member-details .member-details-inner .socials a{
		display: inline-block;
		color:white;
		font-size:1.2em;
		line-height:40px;
		width:40px;
		height:40px;
		background:rgba(0,0,0,0.25);
		-webkit-transition: all 0.3s;
		-moz-transition: all 0.3s;
		transition: all 0.3s;
		border-radius:50%;
	}

/* Team Rollover */

	.team-members .member:hover .member-details{
		bottom:0;
	}

	.member .member-details .member-details-inner .socials a:hover{
		background:rgba(0,0,0,1);
		border-radius:50%;
	}


/* Fun Facts */

	#fun-acts .fun-acts .imac{
		width:100%;
		max-width:1164px;
		height: auto;
		min-height: 648px;
		margin:70px auto;
		background:url(../images/mac.png) center center no-repeat;
		background-size:100%;
	}

	#fun-acts .fun-acts .facts .fact{
		height: 150px;
		padding:0;
	}
	
	#fun-acts{
		background:#333 url(../images/bgd/background5.jpg) repeat;
	}


/* Fun Facts Left Icon */
	.left{
		float: left;
	}

	.facts .fact a.fact-icon{
		display: block;
		float:left;
		width:50%;
		height:100%;
		position: relative;
	}

	.facts .fact a.fact-icon i{
		color: white;
		font-size:3em;
		line-height:120px;
		background:#8BC3A3;
		text-align: center;
		width:140px;
		height:140px;
		border-radius:50%;
		border:rgba(0,0,0,0.2) solid 10px;
	}

/* Fun Facts Right Numbers */

	.facts .fact .fact-number{
		float: left;
		width:50%;
		color:#999;
	}

	.facts .fact .fact-number h1.factor{
		font-size:65px;
		margin-top:6px;
		padding-top:0;
		margin-bottom:5px;
	}

	.facts .fact .fact-number h3{
		font-size:15px;
		margin-top:0;
		padding-top:0;
	}

/* Contact */

	#contact {
		background: url(../images/parallax/4.jpg) fixed;
		padding: 10px 0 10px;
		background-size: cover;
	}

	.contact-text{
		margin:45px auto;
	}

/* Contact Form */

	#contact .contact-form{
		/*width:90%;
		max-width: 830px;*/
		margin: 0 auto;
		background:#ffffff;
		padding:25px 25px 0px 25px;
		box-shadow: 0px 1px 4px rgba(0,0,0, 0.2);
		-moz-box-shadow: 0px 1px 4px rgba(0,0,0, 0.2);
		-webkit-box-shadow: 0px 1px 4px rgba(0,0,0, 0.2);
	}

	.mail-message-area{
		width:100%;
		padding:0 15px;
	}

	.mail-message{
		width: 100%;
		background:rgba(255,255,255, 0.8) !important;
		-webkit-transition: all 0.7s;
		-moz-transition: all 0.7s;
		transition: all 0.7s;
		margin:0 auto;
		border-radius: 0;
	}

	.not-visible-message{
		height:0px;
		opacity: 0;
	}

	.visible-message{
		height:auto;
		opacity: 1;
		margin:25px auto 0;
	}

/* Input Styles */

	.form{
		width: 100%;
		padding: 15px;
		background:#f8f8f8;
		border:1px solid rgba(0, 0, 0, 0.075);
		margin-bottom:25px;
		color:#727272 !important;
		font-size:13px;
		-webkit-transition: all 0.4s;
		-moz-transition: all 0.4s;
		transition: all 0.4s;
	}

	.form:hover{
		border:1px solid #8BC3A3;
	}

	.form:focus{
		color: white;
		outline: none;
		border:1px solid #8BC3A3;
	}

	.textarea{
		height: 200px;
		max-height: 200px;
		max-width: 100%;
	}
	
/* Generic Button Styles */

	.button{
		padding:8px 12px;
		background:#333333;
		display: block;
		width:120px;
		margin:10px 0 0px 0;
		border-radius:3px;
		-webkit-transition: all 0.3s;
		-moz-transition: all 0.3s;
		transition: all 0.3s;
		text-align:center;
		font-size:0.8em;
		box-shadow: 0px 1px 4px rgba(0,0,0, 0.10);
		-moz-box-shadow: 0px 1px 4px rgba(0,0,0, 0.10);
		-webkit-box-shadow: 0px 1px 4px rgba(0,0,0, 0.10);
	}

	.button:hover{
		background:#8BC3A3;
		color:white;
	}

/* Send Button Styles */

	.form-btn{
		width:180px;
		display: block;
		height: auto;
		padding:15px;
		color:#fff;
		background:#8BC3A3;
		border:none;
		border-radius:3px;
		outline: none;
		-webkit-transition: all 0.3s;
		-moz-transition: all 0.3s;
		transition: all 0.3s;
		margin:auto;
		box-shadow: 0px 1px 4px rgba(0,0,0, 0.10);
		-moz-box-shadow: 0px 1px 4px rgba(0,0,0, 0.10);
		-webkit-box-shadow: 0px 1px 4px rgba(0,0,0, 0.10);
	}

	.form-btn:hover{
		background:#111;
		color: white;
		border:none;
	}

	.form-btn:active{
		opacity: 0.9;
	}

/* Place Holder Colors */

	::-webkit-input-placeholder { /* WebKit browsers */
		color:    #727272;
	}
	:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
		color:    #727272;
	}
	::-moz-placeholder { /* Mozilla Firefox 19+ */
		color:    #727272;
	}
	:-ms-input-placeholder { /* Internet Explorer 10+ */
		color:    #727272;
	}

/* Site Socials and Address */

	#site-socials .socials{
		width:100% !important;
	}

	#site-socials .socials a.social{
		font-size:1.5em;
		color:#ffffff;
		margin:15px auto;
		width:40px;
		height:40px;
		display: inline-block;
		line-height: 40px;
		-webkit-transition: all 0.3s;
		-moz-transition: all 0.3s;
		transition: all 0.3s;
		border-radius:50%;
		background:#8BC3A3;
	}

	#site-socials .socials a.social:hover{
		background:#222;
		color:#ffffff;
	}

/* Address */

	#site-socials .address{
		width: 100%;
		height: auto;
		margin:0px auto 25px auto;
	}

/* Back to Top Button */

	#site-socials .top-button{
		margin:30px auto 0;
		display: inline-block;
		width:40px;
		height: 40px;
		background:blue;
		color:#2EA590 !important;
		font-size: 20px;
		line-height: 38px;
		-webkit-transition: all 0.3s;
		-moz-transition: all 0.3s;
		transition: all 0.3s;
		position:fixed;
		right:10px;
		bottom:10px;
		border-radius: 5px;
	}

	#site-socials .top-button:hover{
		color:#8BC3A3;
	}

/* Footer */

	.footer{
		padding:45px;
		text-align: center;
		background: #191919;
		background:#222;
	}

	.footer h2.company-name{
		margin-top:0;
		padding-top:0;
		font-size:35px;
	}

	.footer p.copyright{
		margin-bottom:0;
		padding-bottom:0;
		padding-top:15px;
		color:#999;
		font-size:14px;
	}

	.footer p.copyright a:hover{
		color:#8BC3A3;
	}

	.typographic h2 {
    white-space: nowrap; /* Prevents text from wrapping */
    font-size: 24px; /* Adjust size if needed */
    letter-spacing: normal; /* Adjust letter spacing if needed */
}

/* Prevent white flash between slide fades */
#slides,
#slides .slides-container,
#slides .slides-container > div {
  background-color: #000826; /* set to a color that blends with your images */
}

/* Make each slide cover the container and use GPU compositing for smooth fades */
#slides .slides-container > div {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  will-change: opacity;
}

/* Optional: make page background the same color to hide any gaps */
body { background-color: #000f4b; }

/* Make ABOUT section white */
#about {
    background: #ffffff;         /* white background */
    color: #333;                 /* ensure readable text */
}

/* optional: add vertical spacing inside the section */
#about .inner {
    padding-top: 60px;
    padding-bottom: 60px;
}

/* Make Clients section white */
#clients {
    background: #ffffff;       /* white background */
    color: #333333;            /* dark text for contrast */
}

/* Remove white background from Contact section */
#contact .inner,
#contact .contact-form {
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important; /* in case a white panel shadow is applied */
}

/* Site Socials Background Color */
#site-socials {
    background: #222222;
}

#site-socials .inner {
    background: #222222;
}

/* Remove white rectangles from site socials section */
#site-socials {
    background: #222222 !important;
    padding: 0 !important;
    width: 100% !important;
}

#site-socials .inner,
#site-socials .site-socials {
    background: #222222 !important;
    padding: 20px 0 !important;
    width: 100% !important;
    margin: 0 !important;
}

/* Center social icons properly */
#site-socials .socials {
    width: 100% !important;
    text-align: center !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 20px !important; /* space between icons */
    margin: 0 auto !important;
    padding: 0 !important;
}

#site-socials .socials a.social {
    float: none !important;
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin: 15px 10px !important;
}

/* Footer social icons styling */
#footer .socials .social {
    font-size: 32px;          /* make icons bigger (adjust value as needed) */
    margin: 0 20px;           /* increase space between icons (adjust value as needed) */
    display: inline-block;
}

/* Add space between social icons and logo */
#footer .socials {
    margin-bottom: 40px !important; /* Increase this value for more space */
}

/* Position and style the top button */
.top-button {
    position: fixed !important;
    bottom: 30px !important;
    right: 30px !important;
    z-index: 999 !important;
    font-size: 24px !important;  /* Make the button bigger */
    padding: 15px !important;
    background: rgba(0,0,0,0.5) !important;
    border-radius: 50% !important;
    width: 60px !important;
    height: 60px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    transition: all 0.3s ease !important;
}

.top-button:hover {
    background: rgba(0,0,0,0.8) !important;
    transform: translateY(-5px) !important;
}

.top-button i {
    font-size: 36px !important;  /* Make the arrow icon bigger */
    color: #fff !important;
}

/* Hide Testimonials section but keep HTML for future use */
#testimonial {
  display: none !important;
}

/* Hide any nav/menu links that point to the testimonials section */
.nav a[href="#testimonial"],
.nav a[href*="testimonial"] {
  display: none !important;
}

/* Fix navigation menu layout */
#navigation .nav-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.nav-menu {
    display: flex;
    align-items: center;
}

.nav-menu ul.nav {
    display: flex;
    margin: 0;
    padding: 0;
}

.site-logo {
    display: flex;
    align-items: center;
}

/* Ensure menu items stay in line */
.nav-menu ul.nav li {
    display: inline-block;
    margin: 0 10px;
}

/* Adjust logo size if needed */
.site-logo img {
    max-height: 50px;
    width: auto;
}
/* Fix logo vertical alignment in nav */
.site-logo {
    float: left;
    position: relative;
    padding: 0;
    top: 0;          /* remove top positioning */
    transform: none; /* remove transform */
    display: flex;
    align-items: center;
    height: 75px;    /* match navigation height */
}

.site-logo a.logo {
    display: flex;
    align-items: center;
}

.site-logo a.logo img {
    height: auto;
    max-height: 50px;
    transition: all 0.3s;
}

/* Prevent jump: set typographic headings to final size */
.typographic h2 {
    font-size: 64px;        /* set to the final size you want */
    line-height: 1.05;
    transition: none;       /* disable any smooth resizing transition */
}

/* Prevent horizontal overflow on mobile */
body, html {
  overflow-x: hidden;
  max-width: 100%;
}

/* Responsive map iframe */
.map-wrap {
  max-width: 700px;
  width: 100%;
  margin: 0 auto;          /* centers horizontally */
  text-align: center;
}

.map-wrap iframe {
  display: block;
  width: 100% !important;
  height: 466px;
  border: 0;
}

@media (max-width: 600px) {
  .map-wrap iframe {
    height: 320px;
  }
}

/* Force larger size for the four hero lines (beats #home .v2 .typographic h2) */
#home .v2 .typographic h2.hero-headline {
  font-size: 28px !important;
  line-height: 1.05;
  white-space: normal;
}

/* Responsive scaling so mobile fits */
@media (max-width: 1200px) {
  .typographic h2.hero-headline { font-size: 180px; }
}
@media (max-width: 992px) {
  .typographic h2.hero-headline { font-size: 120px; }
}
@media (max-width: 767px) {
  .typographic h2.hero-headline { font-size: 48px; }
}

/* Remove all animation delays sitewide - instant appearance */
.animated {
  animation-delay: 0s !important;
  -webkit-animation-delay: 0s !important;
}

/* Fix mobile menu - ensure all items are visible and scrollable */
@media (max-width: 767px) {
  .nav-menu {
    display: block;
    position: fixed;
    top: 75px;
    left: 0;
    width: 100%;
    max-height: calc(100vh - 75px);
    overflow-y: auto;
    overflow-x: hidden;
    background: rgba(0,0,0,0.95);
    z-index: 1000;
  }
  
  .nav-menu ul.nav {
    display: block;
    width: 100%;
  }
  
  .nav li {
    display: block;
    width: 100%;
    height: auto;
    border-bottom: 1px solid rgba(255,255,255,0.1);
  }
  
  .nav li a {
    display: block;
    width: 100%;
    text-align: center;
    padding: 20px 15px;
    line-height: normal;
  }
  
  /* Show mini nav button on mobile */
  #navigation .mini-nav-button {
    display: block !important;
  }
}
