/*
Theme Name: Base wordpress Olivier Chevre
Author: Olivier Chevre
Description: Theme de developement
*/

:root {
  --color-1: #111;
  --color-2: #777;
  --color-3: #ddd;
  --color-4: #fff;
  --width-page: 1180px;
}

.sr-only {
	display: none;
}

html, body {
	height:100%;
}

body {
	font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;
	font-size: 14px;
	color: var(--color-1);
	background : var(--color-4);
	margin: 0;
}

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

header.site-header {
    display: grid;
	grid-template-columns: 190px 5fr;
}

.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;
	padding: 7px;
}

.header-right {
    height: 80px;
}

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


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

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

#navbar-toggle .icon-bar {
    display: block;
    width: 18px;
    height: 2px;
	background-color: var(--color-4)!important;
	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;
	background-color: var(--color-2);
	padding: 6px 15px;
	margin: 0;
	text-decoration: none;
	color: var(--color-4);
}

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

.menu-item-has-children>.sub-menu {
	max-height: 0;
	overflow: hidden;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    margin: 0;
    list-style: none;
	transition: max-height 0.3s;
}
.menu-item-has-children>.sub-menu::before {
	display: block;
	content: " ";
	height: 2px;
	overflow: hidden;
}

.menu-item-has-children.open>.sub-menu {
	max-height: 500px;
	padding-top: 1px;
}


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

ul.sub-menu>li>a:hover {
	background-color: var(--color-3);
}
ul.sub-menu>li.current-menu-item>a {
	background-color: var(--color-3);
}

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



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

p {
	margin: 0.5em 0 1em 0;
}

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

.alignright {
	display: inline-block;
	float: right;
	margin: 0 0 15px 15px;
}

.alignleft {
	display: inline-block;
	float: left;
	margin: 0 15px 15px 0;
}

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

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

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

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

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

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

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

#main  {
    min-height: 300px;
}


#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;
}

.gallery-item img {
    border: solid 1px var(--color-2)!important;
}

.articles-liste .article {
    display: grid;
	grid-template-columns: 25% 1fr;
	column-gap: 20px;
	margin-bottom: 30px;
}

.article-court h3 {
	margin: 0 0 5px 0;
}

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

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

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

/* ------------------------------- 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;
}

/* ------------------ 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; }
	.articles-colonnes { grid-template-columns: 1fr;}
	.container { padding: 0 30px;}
	.articles-liste .article { display: block; }
}
	
@media (min-width: 768px) and (max-width: 990px) {
	.container { padding: 0 30px;}
	.articles-colonnes { grid-template-columns: 1fr 1fr;}
	.articles-liste .article { grid-template-columns: 40% 1fr; }
}
@media (min-width: 991px) and (max-width: 1200px) {
	.container { padding: 0 20px;}
	.articles-liste .article { grid-template-columns: 30% 1fr; }
}
@media (min-width: 1201px) {

}