*,
*:before,
*:after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html, body {
  font-family: "Arial", sans-serif;
  line-height: 1.25;
  background-color: black;
  color:white;
  height: 100%;
}

a {
  outline: none;
  text-decoration: none;
}

a:link {
  color: white;
}

a:visited {
  color: white;
}

.flex-container-nowrap {
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: nowrap;
}

.gutters {
  margin: auto;
}

.mainbody {
  width: 100vmin;
  height: 100vmin;
  display: flex;
  max-width: 1400px;
  position: relative;
}

.spacer-min {
	margin-bottom: 50px;
}

.spacer-max {
	margin-bottom: 50px;
}

hr.ol-hr-linear {
	margin-top: 0px;
	margin-bottom: 10px;
	border: 0;
	height: 1px;
	background-image: -webkit-linear-gradient(left,rgba(200,200,200,0.3),rgba(255,255,255,1)50%,rgba(200,200,200,0.3));
	background-image: -moz-linear-gradient(left,rgba(200,200,200,0.3),rgb(255, 255, 255)50%,rgba(200,200,200,0.3));
	background-image: -ms-linear-gradient(left,rgba(200,200,200,0.3),rgba(255,255,255,1)50%,rgba(200,200,200,0.3));
	background-image: -o-linear-gradient(left,rgba(200,200,200,0.3),rgba(255,255,255,1)50%,rgba(200,200,200,0.3));
}

.ol-nav {
	line-height: 2em;
	width: 100%;
	display: block;
	margin: 0;
	padding: 0;
	background-color: #626060;
}


.ol-menu {
	line-height: 1.75em;
	width: 100%;
	display: flex;
	margin: 0;
	padding: 0;
	background-color: #626060;
    font-size: 1.2em;
    font-family: 'Lobster Two', cursive;
    font-weight: 200;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99;
}

.ol-menu li {
    list-style-type: none ;
}

.ol-menu a {
    display:block; 
    min-width: 120px;   
	text-align: center;
}

.breadcrumb {
	margin-left:5px;
	margin-right:5px;
}

.ol-copyright  {
    position: absolute;
    right: 15%;
    bottom: 20px;
}

.ol-copyright-a-propos  {
	text-align: right;
	padding: 20px 70px;
}

.ol-copyright .ol-signature-lg ,
.ol-copyright-a-propos .ol-signature-lg {
   font-size: 2em;
   font-family: 'Great Vibes', cursive;
}

.ol-copyright .ol-signature-md,
.ol-copyright-a-propos .ol-signature-md  {
   font-size: 0.9em;
   font-family: 'Lobster Two', cursive;
}

.cf:after {
  content: "";
  display: table;
  clear: both;
}

.ol-nav .breadcrumb {
   font-size: 1.2em;
   font-family: 'Lobster Two', cursive;
   font-weight: 200;
}

.ol-masonry-banner {
	margin: 0px 15px 5px;
}

.ol-masonry-titre,
.ol-masonry-nomsecteur,
.ol-archive-titre,
.a-propos-titre {
	font-family: 'Lobster Two', cursive;
	font-weight: 400;
	font-size: 3em;	
	color: white;
	text-shadow: 2px 2px 2px rgba(127, 127, 127, 1);
}

.a-propos-col-img {
  float: left;
  width: 30%;
}

.a-propos-col-texte {
  float: left;
  width: 70%;
}

.bloc_a-propos {
    border-style: solid;
    border-width: 1px;
    color: #000;
    background-color: #d1d1d1;
    padding: 0 0 30px;
	margin-top: 30px;
}

.bloc-a-propos-auteur {
    color: #222;
    margin-top: 15px;
    padding: 30px 40px 25px;
    text-align: left;
    border-style: solid;
    border-width: 1px;
    border-color: #222;
    background-color: #eee;
}

.bloc-materiel p {
    margin: 0 0 5px;
    font-size: 10px;
}

.a-propos-titre {
	font-family: 'Lobster Two', cursive;
	font-weight: 400;
	font-size: 6em;	
	color: white;
	text-align: center;
	text-shadow: 2px 2px 2px rgba(0, 0, 0, 1);
	margin-bottom: 10px;
}

.a-propos-texte {
	line-height: 1.25;
    text-align: justify;
	padding: 15px 100px 0px 30px;
	font-size: 16px;
}

.a-propos_auteur {
    line-height: 1.25;
    width: 85%;
    align: center;
    margin: auto;	
}

.a-propos-auteur-titre {
    font-family: 'Lobster Two', cursive;
    font-weight: 400;
    font-size: 2em;
    color: white;
    padding: 10px 0 15px;
}

.a-propos-auteur-texte {
	padding: 5px 0 0 0;
}

.a-propos-materiel {
	font-size: 0.7em;
	padding: 0 40px;
}

.a-propos-contact {
	font-family: 'Lobster Two', cursive;
	font-size: 0.9em;
	padding: 0 40px;	
}

.a-propos-contact a {
	color: #4a4a4a;
}

.ol-archive-picto {
	display: flex;
	float: right;
}

.ol-archive-picto img {
	width: 100px;
}

.ol-archive-titre2 {
	font-family: 'Lobster', cursive;
	color: white;
	font-size: 1.5em;
	display: flex;
	float: right;
	padding: 15px 40px 10px;	
}

.ol-legende {
	font-size: 0.75em;
	line-height: 1.25em;
	padding: 10px 20px;
	text-align: center;
}

.masonry .brick img {
	max-width: 100%;
	vertical-align: middle;
}

.wrapper {
	margin-left: auto;
	margin-right: auto;
	margin-top: 40px;
	max-width: 1200px;
}

.menu {
	position: relative;
	width: 90vmin;
	height: 90vmin;
}

.menu img{
	padding:30px;
}

.bloc_actu,
.bloc_actu_rnd,
.bloc_actu_arch {
	width: 100%;
}

.bloc_actu {
	padding-top: 30px;
}

.bloc_actu_rnd hr,
.bloc_actu_arch hr {
	float: right;
	width :80%;
	/*margin-top: 5px;*/
	/*margin-right: 3%;*/
}

.box_img_actu, 
.box_img_actu_rnd ,
.box_img_actu_arch  {
	float: left;
	text-align: center;
	padding-right: 15px;
}

.box_img_actu {
	width: 60%;
}

.box_img_actu_rnd ,
.box_img_actu_arch {
	width: 32%;
	min-width: 350px;
	padding-right: 1% /*dégagement pour la légende à droite*/
}

.box_img_actu  img,
.box_img_actu_rnd img,
.box_img_actu_arch  img {
	width: 100%;
	margin: auto;
	border-style: solid;
	border-width: 1px;
	border-color: white;	
}

.box_legende_actu,
.box_legende_actu_rnd,
.box_legende_actu_arch {
	float: left;
	text-align: left;
	padding: 1%;
	margin-top: 20px;
}

.box_legende_actu {
	width: 35%;
}

.box_legende_actu_rnd,
.box_legende_actu_arch {
	width: 70%;
}

.box_legende_date,
.box_legende_titre,
.box_legende_secteur,
.box_legende_texte {
	width: 65%;
	float: left;
	padding-left: 1%;
	margin: 0;
}

.box_legende_date_p,
.box_legende_titre_p,
.box_legende_secteur_p,
.box_legende_texte_p {
	width: 40%;
	float: left;
	padding-left: 1%;
	margin: 0;
}

.box_legende_date,
.box_legende_date_p {
	font-size: 1em;
	padding-top: 10px;
}

.box_legende_titre,
.box_legende_titre_p {
	font-size: 1.25em;
}

.box_legende_secteur,
.box_legende_secteur_p {
	font-size: 1em;
	margin-bottom: 15px;	
}

.box_legende_texte,
.box_legende_texte_p {
	font-size: 0.9em;
}

.box_a-propos_img {
	float: left;
    padding: 0 20px 10px 40px;
}

.box_a-propos_img img {
	width: 100%;
	border-style: solid;
	border-width: 1px;
	border-color: black;
	margin: 0 0 10px;
}

.clearflex {
	clear: both;
}

.espace {
	padding: 50px 50px;
}

.scrollToTop {
	width: 40px; 
	height: 40px;
	z-index: 9999;
	text-align: center; 
	color: #444;
	position: fixed;
	bottom: 50px;
	right: 50px;
	display: none;
	opacity: 0.7;
}

.scrollToTop:hover{
	opacity: 1;
}

.map {
	margin-top: 20px;
}

.map img {
	display: block;
	max-width: 100%;
	border-style: solid;
	border-width: 2px;
	border-color: white;
	width: 93%;
	margin: auto;
}

.noimage img {
	width: 100%;
	margin-top: 80px;
}

.overlay-h,
.overlay-v,
.overlay-p {
	background: rgba(100, 100, 100, 0.6);
	position: absolute;
	display: flex;
	bottom: 16px;
	left:17px;
	/*justify-content: center;*/
	align-items: center;
	opacity: 0;
}
.overlay-h {
	height: 8%;
	width: 75%;
}

.overlay-v {
	height: 4%;
	width: 75%;
}

.overlay-p {
	height: 15%;
	width: 75%;
}

.grid-item-portfolio,
.grid-item-pano {
	overflow: hidden;
}
.grid-item-portfolio:hover .overlay-h,
.grid-item-portfolio:hover .overlay-v, 
.grid-item-portfolio:hover .overlay-p  {
	opacity: 1;	
}

.grid-item-pano:hover .overlay-p {
	bottom: 16px;
	left:17px;
	opacity: 1;
}

.caption{
	font-size: 0.7em;
	color: #fff;
	padding-left: 5px;
}

.fancybox-image {
    border: 2px solid white;
}

/*################pour le bloc actu#############*/
@media (max-width: 1199px) {
/*###################################*/
/*.ol-masonry-banner {
	margin-left: 15px;
	margin-right: 15px;
}*/

.a-propos-titre {
    font-size: 4em;
}

.bloc_actu, .bloc_actu_rnd, .bloc_actu_arch {
	padding: 0 5px;
}

.bloc_a-propos {
	padding: 15px 5px;
}


.box_img_actu, 
.box_img_actu_rnd ,
.box_img_actu_arch  {
padding-left: 1%
}

.box_legende_actu,
.box_legende_date,
.box_legende_titre,
.box_legende_secteur,
.box_legende_texte,
.box_legende_actu_p,
.box_legende_date_p,
.box_legende_titre_p,
.box_legende_secteur_p,
.box_legende_texte_p {
	padding-left: 1%;
}

}


/*###################################*/
@media (max-width: 999px) {
/*###################################*/

.ol-masonry-titre {
	font-size: 2em;
}

.ol-masonry-nomsecteur {
	font-size: 2em;
}

.box_img_actu {
	padding: 1%;
	max-width: 720px;
	min-width: 350px;	
}

.box_legende_date
.box_legende_date_p {
	padding-top: 3%;
}

.box_a-propos_img {
	padding: 5px;
}

.a-propos-texte,
.a-propos_auteur {
	padding: 5px 20px 5px 25px;
}


}

/*###################################*/
@media (max-width: 899px){
/*###################################*/

.grid-item-pano:hover .overlay-p {
    bottom: 10px;
    left: 10px;
}

}

/*################pour le bloc actu#############*/
@media (max-width: 857px) {
/*###################################*/



}

/*###################################*/
@media (max-width: 699px) {
/*###################################*/

.ol-menu a {
    min-width: 80px;   
}

.ol-menu {
	line-height: 1.5em;
    font-size: 1em;
}

.box_legende_actu,
.box_legende_date,
.box_legende_titre,
.box_legende_secteur,
.box_legende_texte,
.box_legende_actu_p,
.box_legende_date_p,
.box_legende_titre_p,
.box_legende_secteur_p,
.box_legende_texte_p {
	width: 100%;
	text-align: left;
}

.overlay-h,
.overlay-v,
.overlay-p {
	width: 86%;
}

.grid-item-pano:hover .overlay-p {
    bottom: 5px;
    left: 5px;
}

.caption {
    font-size: 0.6em;
}

.a-propos-titre {
    font-size: 3em;
}

.a-propos-texte {
    text-align: left;
}

}

/*###################################*/
@media (max-width: 699px), (max-height: 799px) {
/*###################################*/



.bloc_actu_rnd hr,
.bloc_actu_arch hr {
	width :80%;
}
	
.scrollToTop{
	bottom: 40px;
	right: 20px;
	opacity: 0.8;
}

}

/*###################################*/
@media (max-width: 599px) {
/*###################################*/

.ol-archive-titre2 {
	font-size: 1em;
	text-align: right;
}

.ol-legende {
	padding: 20px 30px;
}

.box_a-propos_img {
	padding: 5px;
}

.a-propos-texte,
.a-propos_auteur {
	padding: 5px;
}

.a-propos-texte {
	line-height: 1.25;
    text-align: left;
	padding: 0px 10px 0px 10px;
	font-size: 14px;
}

}
