/********************************
 Parametres generaux : 
********************************/

/********************************
 Liens, boutons et survol
 - couleurs
 - effets au survol
********************************/
b, strong { font-weight:bold; }
a { color:#aa0000; }
.btn, .bouton { background-color:#aa0000; border: none; color:#fff; }
.btn:hover, .btn:focus, .bouton:hover, .bouton:focus { background-color:#333; border: none; color:#fff; }
a:hover, p strong { color:#000; }
a, button, .btn, .bouton { -webkit-transition: all .2s ease-in; -moz-transition: all .2s ease-in; -o-transition: all .2s ease-in; transition: all .2s ease-in; }
hover, button:hover, .btn:hover, img:hover, .bouton:hover { -webkit-transition: all .1s ease-in; -moz-transition: all .1s ease-in; -o-transition: all .1s ease-in; transition: all .1s ease-in; }
.back-to-top { cursor: pointer; position: fixed; bottom: 50px; right: 20px; display: none; }
.breadcrumb li+li:before { content:" > "; margin-left:8px; }

/********************************
 Carousel, 
 - calage haut pour le menu fixe
 - réglages pour les images 100%
 - réglages pour les légendes
********************************/
.carousel { margin-bottom: 20px; }
.calage-menu-haut-fixe { padding-top: 128px; }
.carousel-caption { bottom: 3rem; z-index: 10; background-color: rgba(0, 0, 0, 0.5); border-radius:10px; padding:20px; }
.carousel-item { height: 25rem; }
.carousel-item > img { position: absolute; top: 0; left: 0; min-width: 100%; height:auto!important; }
.carousel-item a:hover { color:#fff; text-decoration:none; }

/*******************************
 Gestion des images
*******************************/
.container p img { max-width:100%; height:auto!important; }
.container .bloc-galerie { display:flex; flex-direction: row; flex-wrap: wrap; }
.container .bloc-galerie img { box-shadow: 3px 3px 5px #aaa, -0.02rem -0.02rem 1px #aaa; width:225px; margin:20px 20px 0 0; padding:5px; height:auto!important; filter: brightness(1); }
.container .bloc-galerie img:hover { box-shadow: 3px 3px 5px #333, -0.02rem -0.02rem 1px #333; filter: brightness(1.25); }

/*******************************
 header
*******************************/
.navbar { height:130px; background:url(../images/body_bg-rouge.png) repeat-x; }
.navbar-brand { margin-top: 49px; z-index:10; }
.navbar-expand-lg .navbar-nav .nav-link { color: #fff; font-size: 1rem; text-transform: uppercase; font-family: 'Oswald', sans-serif; font-weight: normal; padding-right:1.45rem; }
.nav-link:hover, .navbar-dark .navbar-nav .active>.nav-link { color: #000; }
.dropdown:hover .dropdown-menu { display:inline-block; }
.dropdown-item { font-family: 'Oswald', sans-serif; font-weight: normal; font-size:1.1rem; text-transform:uppercase; }
.dropdown-item:hover, .dropdown-item:focus, .dropdown-item.active { background-color:#aa0000; color:#fff; }
.breadcrumb { margin-top:35px; }

/*******************************
 section
*******************************/
.motif-bleu { background:url(../images/motif-bleu.jpg) repeat; }
.motif-orange { background:url(../images/motif-orange.jpg) repeat; }
.motif-creme { background:url(../images/motif-creme.jpg) repeat; }
.couture-blanc-creme { width: 100%; background: url(../images/couture-blanc-creme.png) bottom center repeat-x; padding-bottom: 42px; }
.couture-bleu-creme { width: 100%; background: url(../images/couture-bleu-creme.jpg) bottom center repeat-x; padding-bottom: 42px; }
.couture-creme-blanc { width: 100%; background: url(../images/couture-creme-blanc.png) bottom center repeat-x; padding-bottom: 38px; }
.couture-creme-orange { width: 100%; background: url(../images/couture-creme-orange.jpg) bottom center repeat-x; padding-bottom: 38px; }
.couture-orange-gris { width: 100%; background: url(../images/couture-orange-gris.jpg) bottom center repeat-x; padding-bottom: 50px; }
main .container p img { max-width:100%; height:auto!important; }

/*******************************
 agenda
*******************************/
.container .bloc-agenda { display:flex; flex-direction: row; flex-wrap: wrap; }
.container .bloc-agenda a { box-shadow: 3px 3px 5px #aaa, -0.02rem -0.02rem 1px #aaa; margin:20px 20px 0 0; padding:20px 20px 0px 20px; filter: brightness(1); }
.container .bloc-agenda a.date-passee-agenda { background-color:#ddd; }
.container .bloc-agenda a:hover { box-shadow: 3px 3px 5px #333, -0.02rem -0.02rem 1px #333; filter: brightness(1.25); text-decoration:none; }
.date-agenda { background-color:#333; color:#fff; font-size:1rem; padding:0 5px 2px 5px; }
.tags-agenda { color:#333; font-size:0.7rem;  }
.date-annulee { background-color:#ff0000; color:#fff; font-size:1rem; padding:0 5px 2px 5px; margin-left:10px; }

/*******************************
 headings
*******************************/
h1 { text-transform: uppercase; font-family: 'Frijole', cursive; font-weight: normal; color:#333; font-size:3rem; padding-bottom:1rem;}
h2 { font-family: 'Oswald', sans-serif; font-weight: normal; color:#333; font-size:2rem; }
h3 { font-size:1.3rem; color:#555; }
h4 { font-size:1rem; }

/*******************************
 gestion des blocs tableau
*******************************/
table { width:100%!important; display:block; border-spacing : 0; border:1px solid #ccc; margin-top:10px; }
main table { margin-left:-15px; margin-right:-15px; border:none; margin-top:0; }
table td { padding-left:15px; padding-right:15px; border:1px solid #ccc; vertical-align:top;}
main table td { border:none; }
main table td img { max-width:100%!important; height:auto!important; }
main table table tr:nth-child(odd){ background-color:#e9ecef; padding:20px; }
main table table tr:nth-child(even) { background-color:#fff; padding:20px; }

/*******************************
 footer
*******************************/
footer .container { padding-top:20px; }

/********************************
RESPONSIVE CSS - MEDIA QUERIES
********************************/

/*iPad Landscape*/
@media screen and (max-width : 992px) {
	h1 { font-size:2.2rem; padding-bottom:0.5rem;}
	.navbar-brand { margin-top: -13px; }
	.navbar-toggler { position:absolute; top:15px; right:15px; color:#aa0000; padding:3px; border:1px solid #aa0000!important; }
	.link-facebook { position:absolute; top:5px; right:60px; }
	.navbar-collapse { background:url(../images/motif-bleu.jpg) repeat; margin-top:-60px; margin-left:-15px; margin-right:-15px;  }
	.navbar-nav { padding-left:20px; text-align:right; }
	.carousel { margin-bottom: 0px; }
	.carousel-item { height: 11em; }
	.carousel-item > img {  }
}

/*iPad Portrait*/
@media screen and (max-width : 768px) {
	h1 { font-size:1.8rem; padding-bottom:0.5rem;}
	.qc-cmp-persistent-link { display:none!important; }
	main table { margin:0; }
	table td { width:100%!important; display:block; padding:0; }
}

/*----------------*/
/*iPhone Landscape*/
/*----------------*/
@media screen and (max-width: 480px) {
	.carousel-item { height: 8rem; }
}

/*---------------*/
/*iPhone Portrait*/
/*---------------*/
@media screen and (max-width: 320px) {	
}