/*
Theme Name: ergopix
Theme URI: http://www.ergopix.ch
Description: Thème responsive de ergopix sàrl
Author: ergopix sàrl
Version: 1.0
*/

/* Fonts 
    font-family: 'PT Serif', serif;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
*/

	html, body {
		background-color: #fff;
		color: #707070;
		font-family: 'PT Serif', serif;
		text-align: justify !important;
	}
	body {
		opacity: 0;
    	transition: none;
    	transition: 1.4s opacity;
    }
    body.fade-in {
    	opacity: 1;
    }
	
	embed,
	iframe,
	object,
	video {
		max-width: 100%;
	}
	
	.alignleft {
		float: left;
	}
	
	.alignright {
		float: right;
	}
	
	.aligncenter {
		display: block;
		margin-left: auto;
		margin-right: auto;
	}
	.centered {
		text-align: center;
	}
	
	figure.wp-caption.alignleft, img.alignleft {
		margin: 7px 24px 7px 0;
	}
	
	.wp-caption.alignleft {
		margin: 7px 14px 7px 0;
	}
	
	figure.wp-caption.alignright, img.alignright {
		margin: 7px 0 7px 24px;
	}
	
	.wp-caption.alignright {
		margin: 7px 0 7px 14px;
	}
	
	img.aligncenter, .wp-caption.aligncenter {
		margin-top: 7px;
		margin-bottom: 7px;
	}
	
	.wp-caption {
		margin-bottom: 24px;
	}
	
	.wp-caption img[class*="wp-image-"] {
		display: block;
		margin: 0;
	}
	
	::-webkit-input-placeholder {
		color: #939393;
	}
	
	:-moz-placeholder {
		color: #939393;
		opacity: 1;
	}
	
	:-ms-input-placeholder {
		color: #939393;
	}
	
	.wp-caption, img {
		max-width: 100%;
	}
	
	body {
		background: #FFF;
	}
	
	a {
		color: #24890d;
		text-decoration: none;
	}
	
	a:focus, a:hover,a:active {
		outline: 0 none!important;
		color: #41a62a;
		text-decoration: none;
	}
	
	h1,
	h2,
	h3,
	h4,
	h5,
	h6 {
		clear: both;
		font-weight: 500;
		margin: 0;
		font-family: 'Fira Sans Extra Condensed', sans-serif;
	}
	
	h1 {/* Helvetica Neue LT Bold Condensed 40PT */
		font-size: 40px;
		line-height: 1.3846153846;
		font-weight: 500;
		margin-bottom: 64px;
		font-family: 'Fira Sans Extra Condensed', sans-serif;
	}
	.page-template-page-appartement-tpl h1 {
		margin: 32px 0;
	}
	
	h2 {/* Helvetica Neue LT Bold Condensed 28PT */
		font-size: 28px;
		line-height: 1.2;
	}
	h2.hl-title  {
		margin: 8px 0;
	}
	.section-grey-content h2 {
		margin-bottom: 32px;
	}
	h3 {/* Helvetica Neue LT Bold Condensed 24PT */
		font-size: 24px;
		line-height: 1.0909090909;
	}
	h4 {
		font-size: 20px;
		line-height: 1.2;
	}
	h5 {
		font-size: 18px;
		line-height: 1.3333333333;
	}
	h6 {
		font-size: 16px;
		line-height: 1.5;
	}
	p {/* PT Serif Regular 24pt */
		margin-bottom: 10px;
		font-size: 20px;
		text-align: justify !important;
	}
	ul, ol {
		list-style: none;
		margin: 0 0 24px 20px;
	}
	ul { list-style: disc; }
	ol { list-style: decimal; }
	.text-title {
		font-size: 24px;
		font-weight: 700;
	}
	.item-title {
		font-weight: 700;
		text-align: left !important;
		display: inline-block;
	}

/*****************************/

	.header-mobile {
		padding: 15px;
		background-color: #fff;
	}
	
	#hamburger-mobile {
		display:block;
		width:22px;
		overflow:hidden;
		float:right;
	}
		#hamburger-mobile span {
			background:#707070;
			display:block;
			height:2px;
			margin:4px 0;
			position:relative;
			-webkit-transform:rotate(0);
			-ms-transform:rotate(0);
			transform:rotate(0);
			top:0;
			left:0;
			opacity:1;
			filter:alpha(opacity=100);
			-webkit-transition:none .5s ease;
			transition:none .5s ease;
			-webkit-transition-property:-webkit-transform,top,left,opacity;
			transition-property:transform,top,left,opacity;
		}
	html.mm-opened #hamburger-mobile span.top-bar {
		-webkit-transform:rotate(45deg);
		-ms-transform:rotate(45deg);
		transform:rotate(45deg);
		top:12px;
	}
	html.mm-opened #hamburger-mobile span.middle-bar {
		opacity:0;
		filter:alpha(opacity=0);
	}
	html.mm-opened #hamburger-mobile span.bottom-bar {
		-webkit-transform:rotate(-45deg);
		-ms-transform:rotate(-45deg);
		transform:rotate(-45deg);
		top:-10px;
	}
	html.mm-opened #hamburger-mobile span.middle-bar {
		left:-40px;
	}
	

/* Header */

	header {
		background-position: center center !important;
		background-size: cover !important;
		height: 100px;
		width: 100%;
		position: relative;
	}
		.page-header-block {
			width: 100%;
			margin:0 auto;
			text-align: left;
			position: absolute;
			bottom: 10%;
		}
			.home .page-header-block h1 {
				max-width:80%; /**/
				margin:0 auto 20px;
			}
	
	#hamburger {
		display:block;
		width:32px;
		overflow:hidden;
		float:right;
	}
		#hamburger span {
			background:#707070;
			display:block;
			height:2px;
			margin:7px 0;
			position:relative;
			-webkit-transform:rotate(0);
			-ms-transform:rotate(0);
			transform:rotate(0);
			top:0;
			left:0;
			opacity:1;
			filter:alpha(opacity=100);
			-webkit-transition:none .5s ease;
			transition:none .5s ease;
			-webkit-transition-property:-webkit-transform,top,left,opacity;
			transition-property:transform,top,left,opacity;
		}
	html.mm-opened #hamburger span.top-bar {
		-webkit-transform:rotate(45deg);
		-ms-transform:rotate(45deg);
		transform:rotate(45deg);
		top:12px;
	}
	html.mm-opened #hamburger span.middle-bar {
		opacity:0;
		filter:alpha(opacity=0);
	}
	html.mm-opened #hamburger span.bottom-bar {
		-webkit-transform:rotate(-45deg);
		-ms-transform:rotate(-45deg);
		transform:rotate(-45deg);
		top:-10px;
	}
	html.mm-opened #hamburger span.middle-bar {
		left:-40px;
	}
			
	/* Normal */
		
		header .main-header {
			position: relative;
			z-index: 110;
			width: 100%;
		}
			header .main-header .header-menu-wrapper {
				position:relative;
			}
				.header-menu {
					display: block;
					position: absolute;
					top: 32px;
					right: 0;
					text-align: center;
				}
					.big-mac {
						color: #FFFFFF;
						float: left;
					}
					html.opened .big-mac {
						color: #807873;
					}
				.header-logo {
					display: block;
					position: absolute;
					top: 37px;
				}
				
	/* Fixed */
		
		html.fixed header .main-header {
			position: fixed;
			z-index: 710;
			height: 100px;
			background: #fff;
			box-shadow: 0 2px 0 0 rgba(0,0,0,0.1);
		}
			html.fixed header .main-header .header-menu-wrapper {
				
			}
				html.fixed .header-menu {
					top: 32px;
				}
					html.fixed .big-mac #hamburger span {
						background: #807873;
					}
							html.fixed .header-languages a {
								color: #807873;
							}
					html.fixed .header-logo {
						top: 37px;
					}
						html.fixed .header-logo img {
							width: 250px;
						}
						html.fixed .header-logo .logo-neg,
						html.fixed.opened .header-logo .logo-neg {
							display: none;
						}
						html.fixed .header-logo img.logo, 
						html.opened .header-logo img.logo {
							display: inline;
						}
			html.opened header .main-header {
				display: none;
			}
		
	/* Menu Container */
			
	.header-menu-container {
	    background: rgba(255,255,255,1);
	    display: none;
	    position: fixed;
	    top: 0;
	    left: 0;
	    right: 0;
	    bottom: 0;
	    width: 100%;
	    height: 100%;
	    z-index: 800;
		text-align: center;
	}
	html.opened .header-menu-container {
	    display: block;
	}
		.header-menu-close {
		    position: absolute;
		    top: 10%;
		    right: 5%;
		}
		.header-menu-close .dashicons {
		    font-size: 50px;
		    cursor: pointer;
		}
		.header-menu-logo {
			position: absolute;
		    top: 20%;
		    width: 100%;
		}
		.header-menu-content {
			width: 100%;
			display: block;
			position: absolute;
			top: 40%;
			left: 0;
			right: 0;
			z-index: 105;
			font-family: 'Fira Sans Extra Condensed', sans-serif;
		}
		.header-menu-content ul {
		    list-style: none;
		    padding: 0;
		    margin: 0 auto;
		}
		.header-menu-content > ul {
		    display: block;
		    width: 75%;
			overflow: hidden;
			position: relative;
			z-index: 106;
		}
			.header-menu-content > ul > li {
			    display: inline-block;
			    float: left;
			    width: 33%;
				position: relative;
				z-index: 107;
			}
			.header-menu-content ul.sub-menu li a {
				color: #807B73;
				font-size: 20px;
				line-height: 24px;
				position: relative;
				z-index: 109;
			}
			.header-menu-content ul.sub-menu li.itemItself {
				padding: 0 45px 45px;
			}
			.header-menu-content ul.sub-menu li.itemItself a {
				text-transform: uppercase;
			}
			.header-menu-content ul.sub-menu li:first-child a {
				color: #807B73;
				font-size: 30px;
				font-weight: bold;
				line-height: 33px;
			}
			
	
	.header-languages {
		width: 100%;
	    margin: 32px auto;
	    display: inline-block;
	}
	.header-languages ul {
		list-style: none;
	    margin: 0 auto;
	    display: table;
	    padding: 0;
	    width: fit-content;
	    text-align: center;
	}
		.header-languages li.menu-lang {
			display: inline-block;
			float: left;
			margin-right: 15px;
		}
			.header-languages a {
				color: #FFFFFF;
				line-height: 42px;
				font-size: 16px;
				font-weight: 500;
			}
			html.opened .header-languages a {
				color: #807873;
			}
		
		
/***************************************************/

	.framed-apt {
		text-align: center;
		padding: 20px;
	}
		.framed-apt .frame {
			padding: 20px;
		}
	.light-title-apt {
		font-weight: 100;
	}
	.detail-apt {
		font-weight: 500;
	}


/* Sections */
	
	.section {
		padding-top: 64px;
		padding-bottom: 64px;
	}
		.section-home-content {
			position: relative;
			top: -160px;
		}
		.section-home-logements,
		.home .section-map,
		.home .section-grey-content,
		.home .section-library,
		.section-detailed-desc {
			position: relative;
    		top: -100px;
		}
		.section-home-logements,
		.section-page-logement-pages, 
		.section-apartment-content {
			padding-top: 0;
		}
		
		.section-home-content, 
		.section-map,
		.section-page-logement-text, 
		.section-page-logement-img, 
		.section-page-appartment-img {
			padding-top: 0;
			padding-bottom: 0;
		}
		.section-page-appartment-img {
		    position: relative;
    		z-index: 110;
		}
		
		.section-page-logement-text .the-content {
			padding: 45px;
		    margin-top: -75px;
		    background-color: #fff;
		}
			
/* Slider */
	
	.slick-dots li {
		margin: 0 5px !important;
	}
	.slick-dots li:first-child {
		margin-left: 10px !important;
	}
	.slick-dots li button::before {
		content: inherit !important;
	}
	.slick-dots li button {
		
		background: none !important;
		
		color: #FFFFFF !important;
		font-family: Roboto !important;
		font-size: 14px !important;
		font-weight: 500 !important;
		line-height: 16px !important;
		opacity: 0.4;
		text-shadow: 2px 1px 12px #999;
	}
	.slick-dots li.slick-active button {
		opacity: 1;
	}
	.slick-dots li button:before {
	    opacity: 0 !important;
	}
	.slick-dots {
		bottom: 15px !important;
		left: 0 !important;
		text-align: left !important;
	}
	
	span.slick-prev-custom, span.slick-next-custom {
		z-index: 700;
		color: #fff;
		top: auto;
		bottom: 43%;
		background: none;
		font-size: 14px;
		cursor: pointer;
		position: absolute;
	}
	span.slick-prev-custom {
		right: 15px;
		margin-left: 5px;
	}
	span.slick-next-custom {
		left: 15px;
		margin-left: 5px;
		margin-right: 5px;
	}
	
	.slick-arrow span {
		text-shadow: 2px 1px 12px #999;
	}
	
/* Home Slider and Sliders */
	
	.homeSliderContainer {
		position: relative;
		overflow: hidden;
	}
	.sliderApt {
		top: -110px;
		z-index: 100;
	}
	.slick-slide {
		max-height: 700px;
	}
	.slick-slide.slide-img-container {
		background-size: cover;
   		background-position: center center;
   		width: 100%;
   		height: auto;
   		min-height: 700px;
   		position: relative;
	}
	.darken {
		background-color: #000;
		position: absolute;
		top: 0; right: 0; bottom: 0; left: 0;
		opacity: .3;
		z-index: 100;
	}
	.sltextMainContainer {
		position: absolute;
		display: block;
		
	}
	span.slide-text-container {
		position: absolute;
		top: 45%;
		right: 10%;
		height: 200px;
		width: 43%;
		min-width: 300px;
		padding: 0;
		z-index: 110;
	}
			span.st-title {/* Helvetica Neue LT Bold Condensed 70PT */
				display:block;
				width:100%;
				color: #fff;
				font-size: 70px;
				font-weight: 500;
				line-height: 74px;
				text-align: right;
				font-family: 'Fira Sans Extra Condensed', sans-serif;
			}
	
/* Home Content */
	
	.section-home-content .the-content {
		padding: 45px;
		background-color: #fff;
		text-align: center;
	}

	/* Home Logement Block */
	
	.col-home-logement {
		margin-bottom: 64px;
	}
		.hl-link {
			display: block;
			margin: 0 25px;
		}
			.home-logement {
				width: 100%;
				display: block;
			}
			.home-orient-square {
				
			}
			.home-orient-rect {
				
			}
				.logement-image-bg {
					display: block;
					background-size: cover;
	    			background-position: center center;
					min-height: 400px;
					width: 100%;
				}
					.framed {
						display: block;
						height: 220px;
						width: 220px;
						margin: auto;
					}
						.framed:not(.framed-spai) img {
							margin-top: 90px;
						}
				.hl-title {
					width: 100%;
					display: block;
					font-weight: 900;
					color: #707070;
					text-decoration: none;
				}
				.hl-subtitle {
					width: 100%;
					display: block;
					color: #707070;
					text-decoration: none;
				}

	/* Grey Content */
	
	.section-grey-content {
		background-color: #707070;
		color: #fff;
	}
	
	/* Library */
	
	.section-library .text-title {
		margin-bottom: 32px;
		display: inline-block;
	}
	.items-listing {
		margin-top: 32px;
	}
		.item-desc {
			margin-bottom: 16px;
			display: inline-block;
			width: 100%;
		}


/* Logement Page */
	
	.section-page-logement-pages {
		
	}
	.section-page-logement-img {
		min-height: 780px;
		margin-top: 110px;
		background-position: center center;
		background-size: cover;
	}
		.section-page-logement-img .framed.framed-spli {
			position: relative;
		}
			.section-page-logement-img .framed.framed-spli img {
				margin-top: 0;
				position: absolute;
				top: -110px;
			}
		a.splp-apt-link {
			display: block;
			width: 100%;
			min-height: 300px;
			margin-bottom: 32px;
			position: relative;
		}
			a.splp-apt-link .span {
				
			}
			
			
/* Apartment Page */
	
	.page-template-page-appartement-tpl .header-image-bg {
		display: block;
		min-height: 780px;
		width: 100%;
		position: relative;
		top: -110px;
		background-size: cover;
		background-position: center center;
		background-repeat: no-repeat;
	}
	.content-apt {
		position: relative;
	    top: -180px;
	    z-index: 110;
	    background: #FFF;
	    padding: 0 45px;
	}
	.section-apartment-content .frame {
		font-size: 24px;
	}
	.page-template-page-appartement-tpl .section-map {
		position: relative;
		top: -100px;
	}
	.page-template-page-appartement-tpl footer {
		margin-top: -100px;
	}
	.button-element {
		
	}
	.apt-btn {
		margin: 64px auto;
		display: table;
		width: fit-content;
		padding: 10px 150px;
		background-color: #aaa2a2;
		color: #fff !important;
		font-weight: 900;
		font-family: 'Fira Sans Extra Condensed', sans-serif;
		font-size: 40px;
	}
			
/**********************************
	Footer 
*/
	
	footer {
		background-color: #707070;
		color: #fff;
	}
	/*html.opened footer {
	    position: fixed;
	    z-index: 1000;
	    bottom: 0;
	    width: 100%;
    }*/
    	footer a {
    		color: #fff !important;
    	}
    	
    	footer .force-text-center {
    		text-align: center !important;
    	}
    	
    	footer .force-text-right {
    		text-align: right !important;
    	}
    	
    	footer .section {
		padding-top: 128px !important;
	}    	
/**********************************
	BACK TO TOP BUTTON
*/
	
	#backtotopBtn {
	    display: none;
	    position: fixed;
	    bottom: 20px;
	    right: 15px;
	    z-index: 99;
	    border: none;
	    outline: none;
	    background-color: #505050;
	    color: #ffffff;
	    cursor: pointer;
	    padding: 15px;
	}
	
	#backtotopBtn:hover {
	    background-color: #6c6c6c;
	}

	

@media (min-width: 1200px) {
	.container {
	    max-width: 1570px;
	}
}
@media (min-width: 1200px) and (max-width: 1610px) {
	#hamburger {
	    margin-right: 20px;
	}
}


@media (max-width: 1439.98px) {
	
	span.slide-text-container {
	    width: 63%;
	}
	.hl-link {
	    margin: 0;
	}
	span.st-title {}
	h1, 
	.apt-btn { font-size: 34px; }
	h2 { font-size: 26px; }
	h3 { font-size: 22px; }
	p,
	.section-apartment-content .frame {
		font-size: 20px;
	}
	
}
@media (max-width: 1199.98px) {
	.hl-link {
	    margin: 0;
	}
	span.slide-text-container {
	    width: 63%;
	}
	span.st-title { font-size: 45px; line-height: 50px; }
	h1, 
	.apt-btn { font-size: 32px; }
	h2 { font-size: 24px; }
	h3 { font-size: 20px; }
	p,
	.section-apartment-content .frame {
		font-size: 18px;
	}
	.slick-slide {
		max-height: 560px;
	}
	.slick-slide.slide-img-container {
   		min-height: 560px;
	}
	.section-home-content {
	    top: -100px;
	}
}
@media (max-width: 991.98px) {
	#map {
		height: 600px !important;
	}
	
	.section-home-content {
		top: -80px;
	}
	.section-home-logements,
	.home .section-map,
	.home .section-grey-content,
	.home .section-library,
	.section-detailed-desc,
	.page-template-page-appartement-tpl .section-map {
   		top: -50px;
	}
	.page-template-page-appartement-tpl footer {
		margin-top: -50px;
	}
	.section-grey-content h2 {
		margin-top: 32px;
	}
	
	span.st-title { font-size: 30px; line-height: 36px; }
	h1, 
	.apt-btn { font-size: 30px; }
	h2 { font-size: 22px; }
	h3 { font-size: 18px; }
	p,
	.section-apartment-content .frame {
		font-size: 16px;
	}
	
	.slick-slide {
		max-height: 500px;
	}
	.slick-slide.slide-img-container {
   		min-height: 500px;
	}
}
@media (max-width: 767.98px) {
	header {
		display: none;
	}
	
	
	.slick-slide {
		max-height: 400px;
	}
	.slick-slide.slide-img-container {
   		min-height: 400px;
	}
	.span.st-title { font-size: 25px; }
	
	#map {
		height: 500px !important;
	}
	
	.section-home-content {
		top: 0;
	}
	.section-home-logements,
	.home .section-map,
	.home .section-grey-content,
	.home .section-library,
	.section-detailed-desc,
	.page-template-page-appartement-tpl .section-map {
   		top: 0;
	}
	.page-template-page-appartement-tpl footer {
		margin-top: 0;
	}
	
	.content-apt {
	    top: 0;
	}
	
	footer,
	footer .force-text-right{
		text-align: center !important;
	}
		footer div.col-12 {
			margin-bottom: 32px;
		}
}
@media (max-width: 575.98px) {
	
	
	.slick-slide {
		max-height: 300px;
	}
	.slick-slide.slide-img-container {
   		min-height: 300px;
	}
	span.st-title { font-size: 20px; line-height: 24px; }
	#map {
		height: 400px !important;
	}
}