/*
Theme Name: Local Macfly
Author: Olivier Chevre
Description: Theme de developement
*/

:root {
  --color-0: #fff; /* blanc */
  --color-1: #080808; /* gris très foncé */
  --color-2: #949292; /* gris foncé */
  --color-3: #c7c6c6; /* gris moyen */
  --color-4: #F2F0F0; /* gris léger */
  --color-5: #ce2d01; /* Rouge */
  --color-6: #bd2901; /* Rouge foncé */
  --color-7: #8f2103; /* Rouge très foncé */
	
  --width-page: 1180px;
}

.sr-only {
	display: none;
}

body {
	font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;
	font-size: 14px;
	color: var(--color-1);
	background : var(--color-3);
	background: linear-gradient(to bottom,	var(--color-2) 0%, var(--color-3) 100%);
    background-attachment: fixed;
	margin: 5px 0 15px 0;
}

body.wp-admin {
	background : #fff;
}

.container {
	max-width: var(--width-page);
	width: 100%;
	margin: auto;
	box-sizing: border-box;
}

header.site-header {
    display: grid;
	grid-template-columns: 105px 5fr;
	background : var(--color-0);
	border-radius: 10px 10px 0 0;
	margin-top: 5px;
}

.site-description {
    clear: left;
    font-size: 12px;
    padding: 5px 0 5px 10px;
    color: var(--color-2);
}

.site-logo {
	grid-row: 1 / span 2;
}

.site-logo a {
    display: inline-block;
	width: 100px;
	height: 130px;
	text-indent: -800px;
	font-size: 3px;
	color: transparent;
	background: url(img/logo-macfly.png) no-repeat;
	background-size: contain;
	margin-left: 8px;
}

.header-right {
    height: 90px;
}

.main-navigation {
  grid-column: 2 / span 5;
}

.alignright {
	float: right;
	margin-left: 15px;
}
.alignleft {
	float: left;
	margin-right: 15px;
}


/* -------------------	 Menu Navbar ---------------------------- */

.navbar-default {
    background: var(--color-5);
	margin-right: 5px;
	position: relative;
}

#navbar-toggle {
    position: absolute;
    padding: 9px 9px 5px 9px;
    margin: 8px 15px;
    background-color: var(--color-5);
    border-radius: 4px;
	top: -50px;
	right: 0;
	display: none;
}

#navbar-toggle .icon-bar {
    display: block;
    width: 18px;
    height: 2px;
	background-color: var(--color-4);
	margin-bottom: 4px;
}

ul.menu-principal, ul.menu-principal li, ul.menu-footer, ul.menu-footer li {
	list-style-type: none;
	margin: 0;
	padding: 0;
	display: inline-block;
	position: relative;
}

ul.menu-principal>li>a {
	display: inline-block;
	padding: 6px 15px;
	margin: 0;
	text-decoration: none;
	color: var(--color-0);
	text-transform: uppercase;
}

ul.menu-principal>li>a:hover {
	background-color: var(--color-6);
}

ul.menu-principal>li.current-menu-item>a {
	background-color: var(--color-7);
}

.menu-item-has-children>a::after {
	display : inline-block;
	content: " ";
	height : 0;
	width : 0;
	margin-left: 4px;
	border-top : 5px solid var(--color-0);
	border-right : 3px solid transparent;
	border-left : 3px solid transparent;
}

.menu-item-has-children.open>a::after {
	content: " ";
	border-right : 3px solid transparent;
	border-bottom : 5px solid var(--color-0);
	border-left : 3px solid transparent;
	border-top : 0;
}

.menu-item-has-children>.sub-menu {
	display: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    padding: 0;
    margin: 3px 0 0 0;
    list-style: none;
}

.menu-item-has-children.open>.sub-menu {
	display: block;
}


ul.sub-menu>li>a {
    display: block;
    padding: 5px 10px;
	margin: -1px 0 0 0;
	color: var(--color-1);
	border: 1px solid var(--color-3);
	background-color: var(--color-0);
    clear: both;
    text-transform: uppercase;
	text-decoration: none;
	width: 250px;
	text-transform: uppercase;
}
ul.sub-menu>li>a:hover {
	background-color: var(--color-4);
}
ul.sub-menu>li.current-menu-item>a {
	background-color: var(--color-4);
}

ul.menu-footer>li>a {
	display: inline-block;
	padding: 6px 15px;
	margin: 0;
	text-decoration: none;
	color: var(--color-1);
}


/* -------------------	 / Menu Navbar ---------------------------- */

#main  {
    min-height: 300px;
	background : var(--color-0);
	padding: 10px 40px;
}

#main a {
    color: var(--color-5);
}

p {
	margin: 0.5em 0;
}

img {
	max-width: 100%;
	height: auto;
}

.posted-on {
	color: var(--color-2);
	font-style: italic;
	font-size: 12px;
	padding-bottom: 10px;
}

.articles-colonnes {
    display: grid;
	grid-template-columns: repeat(4, 1fr);
	column-gap: 40px;
	row-gap: 40px;
}

.articles-colonnes-2 {
    display: grid;
	grid-template-columns: repeat(2, 1fr);
	column-gap: 40px;
	row-gap: 40px;
}

.category-photos-360 .articles-colonnes {
	grid-template-columns: 1fr;
}

.bloc-article h3 {
	margin: 0.5em 0;
}

.bloc-article h3 a {
	color: var(--color-1);
	text-decoration: none;
}

h2 {
	color: var(--color-2);
}

#main h1, #main h1 a {
    color: var(--color-5);
    font-size: 24px;
    text-transform: uppercase;
}

#main h3 {
    font-size: 17px;
    font-weight: bold;
    font-style: italic;
    border-bottom: solid 1px var(--color-4);
    padding-bottom: 5px;
}


.article-accordeon .article-body {
    display: none;
}

.article-accordeon .article-body.open {
    display: block;
}

#main form.formulaire {
    text-align: center;
	padding: 30px;
}

.resultats-recherche article {
	border-bottom: solid 1px var(--color-3);
	padding-bottom: 30px;
}
.resultats-recherche article:last-child {
	border-bottom: 0;
}
a.more-link {
    color: var(--color-5);
    font-size: 12px;
}

.cat-links a {
    display: inline-block;
    background: var(--color-5);
    color: var(--color-0)!important;
    padding: 3px 5px;
    text-decoration: none;
    margin: 5px;
	border-radius: 3px;
}

/* ------------------------------- Site Footer ----------------------  */ 

#site-footer {
    padding: 10px 20px;
	text-align: center;
	border-top: solid 1px var(--color-3);
	background-color: var(--color-4);
	border-radius: 0 0 10px 10px;
}

/* ------------------------------- Contact Form 7 ----------------------  */ 


.wpcf7 label {
	display: inline-block;
	width: 19%;
	vertical-align: top;
}
#main .wpcf7 p {
	margin: 15px 0;	
}
#main .wpcf7 .envoi {
	text-align: center;	
}
.wpcf7-text, .wpcf7-textarea {
	width: 60%;
	padding: 5px 8px;
	border: solid 1px var(--color-3);
}
.wpcf7-submit {
	background-color: var(--color-2);
	background-image: none;
	border: 0;
	color: var(--color-4);
	padding: 6px 15px;
	font-size: 14px;
	text-shadow: none;
	border-color: transparent;
	-webkit-box-shadow: none;
}


/* ------------------------------- Lightbox gallery ----------------------  */ 

#cboxCurrent {
	display: none!important;
}
#cboxPrevious {
    background-image: url(img/controls.png)!important;
}
#cboxNext {
    background-image: url(img/controls.png)!important;
}
#cboxClose {
    background-image: url(img/controls.png)!important;
}

#cboxTopLeft {
    background: url(img/controls.png) no-repeat -101px 0!important;
}

#cboxTopRight {
    background: url(img/controls.png) no-repeat -130px 0!important;
}
#cboxBottomLeft {
    background: url(img/controls.png) no-repeat -101px -29px!important;
}
#cboxBottomRight {
    background: url(img/controls.png) no-repeat -130px -29px!important;
}

#s-share-buttons {
	text-align: right;
}

.pnlm-panorama-info {
	display: none!important;
}

.gallery .gallery-item {
    padding: 3px;
}
.gallery .gallery-item img {
    border: 1px solid #111!important;
}

.gallery-columns-4 .gallery-item {
    width: 24%!important;
}
.gallery-columns-5 .gallery-item {
    width: 19%!important;
}

/* ------------------ Ajustements de résolutions ----------------------	*/


@media (min-width: 10px) and (max-width: 767px) {
	.main-navigation { grid-column: 1 / span 6; }
	#navbar-toggle { display: inline-block; }
	.menu-menu-principal-container { display: none; }
	.menu-menu-principal-container.visible { display: block; }
	ul.menu li { display: block; margin: 3px 8px; }
	ul.menu-principal,ul.menu-principal>li, ul.menu-principal>li>a { display: block;}
	.menu-item-has-children>.sub-menu { position: static; }
	.menu-item-has-children>.sub-menu>li { margin: 3px 0; }
	ul.sub-menu>li {display: block;}
	ul.sub-menu>li>a {border: 0; width: auto;}
	.articles-colonnes { grid-template-columns: 1fr;}
	.container { padding: 0 30px;}
}
	
@media (min-width: 768px) and (max-width: 990px) {
	.container { padding: 0 30px;}
	.articles-colonnes { grid-template-columns: 1fr 1fr;}
}
@media (min-width: 991px) and (max-width: 1200px) {
	.container { padding: 0 20px;}
}
@media (min-width: 1201px) {

}