/* MAIN ------------------ */

html, body{
 	height: 100%;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Didact Gothic', sans-serif;
}
p, div {
    font-family: 'Source Sans Pro', sans-serif;
}
h1{
	font-size: 30px;
	color: #000;
}
h2 span{
	font-family: 'Didact Gothic';
	border-bottom: solid 2px #fff;
	color : #444;
	font-size : 1.2em;
	font-weight: 100;
}
h2{
	font-size: 2.2em;
	color: #222;
	font-weight: 700;
	margin-bottom: 30px;
}
h3 span{
	color: #555;
	font-size: 17px;
	font-weight: 600;
	text-decoration: underline;
}


/* SIZE DEPENDENT SETTINGS -/----------*/

#gallery{
	top: 100%;
	left:0;
	right:0;	
	margin: auto;
	padding-top:100px;
}

.menuLogo{
		display: none;
}
.menu{
	text-align: center;
}
.category{
		display: none;
	}
.menu .footerSocialL{
	display: none;
}

@media (min-width: 500px ) {
	.menuLogo{
		display: inline;
	}
	.menu .footerSocialL{
		display: inline;
	}
}

@media (min-width: 950px ) {
	#gallery{
		margin: 0px 8% 0 8%;
		padding-top: 0px;
	}
	.menu{
		width:100px !important;
		background: transparent !important;
		white-space: normal !important;
		z-index: 0 !important;
		border-bottom: none !important;
		margin-top: 5px !important;
		padding-left: 0 !important;
		margin-bottom: -250px !important;
		text-align: left;
	}
	.menu img:first-of-type{
		margin-bottom: 8px !important;
	}
	.menu a, .menu #menuMainName{
		padding: 0 20px 0 20px !important;
	}
	.contentContainer{
		margin: 30px 18% 0 18% !important;
	}
	
	.category{
		display: block;
		padding : 20px 0 20px 0;
		height: 20px;
	}
}

@media (min-width: 1500px ) {
	#gallery{
		margin: auto !important;
		max-width: 1350px;
	}
	p{
		font-size: 1.2em !important;
	}
	.contentContainer{
		margin: auto !important;
		max-width: 1000px !important;
	}
}

/* HEADER ------------------ */

.headerRow{
	height: 100vh;
	padding: 0 15px 0 15px;
	overflow: hidden;
	position: relative;
}
.headerPicBox{
	height: 100%;
	margin-right: -15px;
	margin-left: -15px;
	background-image: url("../content/camper/wood_3.jpg");
	background-color: #222;
	background-size: cover;
	background-position: center 0px; 
}
.header{
	background: #555;
	background: #333 url("../img/header.jpg");
	height: 200px;
	background-size: cover;
	background-position: center center; 
	position:relative;
}
.downArrow{
	width: 50px;
	height: 50px;
	position: fixed;
	bottom: 0;
	left: 50%;
	margin-left: -25px; 
}
.centerDiv{
	margin: 0 auto;	
}
.logo{
	position: fixed;
	background: url("../img/logo2.png") no-repeat center center;
	width: 400px;
	height: 200px;
	margin-left: -200px;
	margin-top: -100px;
	top: 50%;
	left: 50%;
	display: flex;
}

#mainTitle{
	width: 100%;
  	align-self: flex-end;
  	text-align: center;
  	color: white;
  	font-family: 'Didact Gothic';
    font-size: 2em;
    font-weight: 900;
    letter-spacing: 0.2em;
}


/* MENU ------------------ */

.menu{
	font-size: 15px;
	font-weight: 400;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 20px;
	position: sticky;
	top: 0;
	left: 0;
	float: left;
	line-height: 200%;
	width: 100%;
	background-color: #fff;
	display: block;
	z-index: 999;
	border-bottom: solid 1px #bbb;

}
.menu a, .menu #menuMainName{
	padding : 0 10px 0 10px;
	color: #333;
}
.menu img{
	opacity : 0.7;
}
.menu img:hover{
	opacity : 1;
}

#menuMainName{
	font-weight: bold;
	font-size: 1em;
	line-height: 1em;
	margin-bottom: 20px;
	margin-top: 10px;
	text-align: center;
}


a:hover{
	text-decoration:underline;
	color:#000;
}
.name{
	font-weight: bold;
	font-style: italic;
}
.bold{
	font-weight: bold;
}
.importantParagraph{
	padding: 20px;
	font-style: italic;
	border-radius: 10px;
	background-color: #eee;
}
.smallText{
	font-size: 13px;
}


/* MAIN PROJECTS MAIN ------------------ */

.category span{
	color: #bbb;
	padding: 0 15px 0 15px;
	cursor: pointer;
	z-index: 999;
	font-style: italic;
}
.category span:hover{
	color: #333;
}
.row{
	margin: 0;
}

.imgContainer {
 aspect-ratio: 1/1; /* or 16 / 9 or whatever fits */
  width: 100%;
  overflow: hidden;
}

.imgContainer img {
  max-width: 100%;  
  -moz-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.project:hover .imgContainer img {
  -moz-transform: scale(1.035);
  -webkit-transform: scale(1.035);
  transform: scale(1.035);
}
.project{
	color: #555;
	font-weight: 300;
	text-align: center;
	padding: 30px !important;
	position: relative;
	font-weight: bold;
}
.cover {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}
.legendBox{
	padding-top: 10px;
}
.projectTitle{
	font-family: 'Didact Gothic';
	white-space: nowrap;
	font-size: 1.2em;
	font-weight: 900;
	letter-spacing: 0.1em;
	color: #000;
}
.projectLegend{
	padding: 0;
	margin: 0;
	height: 20px;
	line-height: 1.6em;
}
.projectDescription{
	font-family: 'Didact Gothic';
	font-size: 13px;
	font-style: italic;
	font-weight: 500;
	letter-spacing: 1px;
	color : #aaa;
}

/* PAGES PROJECT ---------- */

.pageHeader{
	height: 70vh;
	width: 100%;
	overflow: hidden;
	position: relative;
}
.headerSmaller{
	height: 25%;
	max-height: 300px;
}
#imageScroller {
  display: flex;
  flex-direction: row;
  width: 100%;
  height: 100%;
}
.headerImg {
  object-fit: cover;
  flex: 1;
  overflow: hidden;
}
#image-map {
	width: 100%;
	height: 80vh;
	border: 1px solid #ccc;
}
.pageTitle{
	font-family: 'Didact Gothic';
	position: absolute;
	width: 100%;
	top: 50%;
	margin-top: -50px;
	color: #fff;
	font-size: 4em;
	letter-spacing: 0.4em;
	text-shadow: 1px 2px 1px #333;
	font-weight: 300;
}
p a{
	color: #444;
	text-decoration: underline;
}
p{
	font-weight: 500;
	color : #666;
	font-size: 1.1em;
	line-height: 2em;
}
.smallerText{
	font-size : 13px;
}
.projectImg{
	padding : 12px !important;
}
.row:first-child {
	padding-left : 0 !important;
}
.row:last-child{
	padding-right : 0 !important;
}
.contentContainer{
	text-align: justify;
	max-width: 1000px;
	padding : 20px;
}
.col-lg-6 p{
	text-align: left;
}
.soldout {
	color : #ab261d;
	font-weight: bold;
}

/* ABOUT ------------------ */

.yearTitle{
	font-size: 0.7em;
	border: none;
	color: #eeaf31;
	font-family: 'Didact Gothic', sans-serif;
	font-weight: bolder;
}

.col-md-6{
	padding: 5px;
}
.contentContainer .footerBloc{
	margin-top:-30px;
}
.textLine{
	width : 100%;
	border-bottom: solid 1px #888;
}
.centerText{
	text-align:center;
}
.title{
	font-size : 20px;
	font-style : italic;
	font-weight : 500;
	border-bottom : solid 2px #fff;
}
.inlineWords{
	font-style : italic;
	color: #888;
}
p a{
	text-decoration:underline;
}
.justify{
	text-align: justify;
}
hr{
	border-color: #aaa;
}
.condensedParagraph{
	line-height: 1.5em;
}

/*
iframe{
	width: 100%;
	height: 70vh;
}*/

#contactFrame{
	width: 100%;
}

.videoContainer {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56%;
}
.videoContainer iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.leaflet-bar a{
	padding: 10px !important;
	width: auto !important;
	height: auto !important;
}
.leaflet-top, .leaflet-bottom{
	z-index: 100 !important;
}

ul.mizmazeLink{
	display: table;
	padding: 0;
    list-style-type: none;
    width: 100%;
    text-align: center;
    border-spacing:2px;
    border-collapse:separate;    
}
ul.mizmazeLink li{
	display: table-cell;
	padding: 10px;
	margin: 15px;
	font-size: 15px;
	border: solid 1px #44bdff;
	border-radius: 10px;
	background-color: #fff;
}
ul.mizmazeLink li:hover{
	background-color: #0c96ff;
	text-decoration: none;
}

ul.mizmazeLink li a{
	text-decoration: none;
	color: #000;
	margin: 0;
	margin : 5px;
}

.roundImg{
	border-radius: 50%;
	
}

.borderCol1{ border-color: #ff7145 }
.borderCol2{ border-color: #1ac05d  }
.borderCol3{ border-color: #ff971c }
.borderCol4{ border-color: #ff3316 }
.borderCol5{ border-color: #d84a40 }


/* SOCIAL LINKS ---------------*/


.socialLinks a{
	text-decoration: none;
}
.socialImg{
	width: 25px;
	height: 25px;
	display: inline-block;
	margin: 7px 7px 20px 7px;
	opacity: 0.8;
}
.footerSocialL .socialImg{
	width: 20px;
	height: 20px;
	margin: 10px 7px 10px 7px;
}

.menu .socialImg{
	opacity: 40%;
	margin: 10px 7px 10px 0px;
}
.socialImg:hover{
	opacity: 1;
}
.tooltiptext{
	visibility: hidden;	
	position: absolute;
	margin: 40px 0 0 -50px;
	width: 60px;
	font-size: 12px;
	color: #555;
	text-align: center;	
}
.socialL:hover .tooltiptext{
	visibility: visible;
}

/* FOOTER ------------------ */

.footer{
	height: 80px;
	left: 0;
	right: 0;
	margin-top: 1px;
}
.pageFooter{
	margin: 0 -15px 0 -15px;
}
.footerBloc{
	width:180px;
	height:100%;
	min-height: 25px;
	position: relative;	
}
.copywright{
	text-align:center;
	position:absolute;
	top: 40px;
	border-top: solid 1px #aaa;
	color:#333;
	width: 100%;
	font-size: 14px;
	padding-top: 5px;
}

/* QUOTE ------------------------- */

.sidekick {
  position: relative;  
  padding-left: 1em;
  font-style: italic;
  line-height: 2em;
  color : #aaa;
}
.sidekick:before, .sidekick:after {
  font-family: "Proxima Nova", "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #ccc;
	font-size: 60px;
}
.sidekick:before {content: '\201c'}


/* CONTACT FORM ---------------------*/

#fcf-form {
    display:block;
}

.fcf-body {
    margin: 0;
    font-weight: 400;
    color: #212529;
    text-align: left;
    background-color: #fff;
    padding: 20px;
    padding-bottom: 10px;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
    max-width: 100%;
}

.fcf-form-group {
    margin-bottom: 1rem;
}

.fcf-input-group {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: stretch;
    align-items: stretch;
    width: 100%;
}

.fcf-form-control {
    display: block;
    width: 100%;
    height: calc(1.5em + 0.75rem + 2px);
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    outline: none;
    border-radius: 0.25rem;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.fcf-form-control:focus {
    border: 1px solid #313131;
}

select.fcf-form-control[size], select.fcf-form-control[multiple] {
    height: auto;
}

textarea.fcf-form-control {
    height: auto;
}

label.fcf-label {
    display: inline-block;
    margin-bottom: 0.5rem;
    font-weight: 400;
}

.fcf-btn {
    display: inline-block;
    font-weight: 400;
    color: #212529;
    text-align: center;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: transparent;
    border: 1px solid transparent;
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    line-height: 1.5;
    border-radius: 0.25rem;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .fcf-btn {
        transition: none;
    }
}
.fcf-h3{
	font-weight: 700;
}

.fcf-btn:hover {
    color: #212529;
    text-decoration: none;
}

.fcf-btn:focus, .fcf-btn.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.fcf-btn-primary {
    color: #fff;
    background-color: #007bff;
    border-color: #007bff;
}

.fcf-btn-primary:hover {
    color: #fff;
    background-color: #0069d9;
    border-color: #0062cc;
}

.fcf-btn-primary:focus, .fcf-btn-primary.focus {
    color: #fff;
    background-color: #0069d9;
    border-color: #0062cc;
    box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}

.fcf-btn-lg, .fcf-btn-group-lg>.fcf-btn {
    padding: 0.5rem 1rem;
    font-size: 1rem;
    line-height: 1.5;
    border-radius: 0.3rem;
}

.fcf-btn-block {
    display: block;
    width: 100%;
}

.fcf-btn-block+.fcf-btn-block {
    margin-top: 0.5rem;
}

input[type="submit"].fcf-btn-block, input[type="reset"].fcf-btn-block, input[type="button"].fcf-btn-block {
    width: 100%;
}