html {
  height: 100%;
  margin: 0;
  padding: 0;
}

body {
  background: #f5f5f5;
  width: 100%;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  box-sizing: border-box;
}

*, *:before, *:after { box-sizing: inherit; }

a { color: inherit; text-decoration: none; }

#wrapper {
  background-color: transparent;
  margin: 0 auto;
  padding: 0;
  width: 90%;
}

#slide { position: relative; }

#header,
#header-page {
  background: transparent;
  padding: 0;
  margin: 0;
  width: 100%;
  height: auto;
  display: block;
}

#header img {
  position: relative;
  margin-top: -200px;
  max-width: 18%;
  width: auto;
  padding: 0;
  z-index: 10;
  display: flex;
  justify-content: center;
  align-items: center;
}

#header-page img {
  position: relative;
  margin-top: 0;
  max-width: 30%;
  width: auto;
  padding: 0;
  z-index: 10;
  display: flex;
  justify-content: center;
  align-items: center;
}

#header-responsive { display: none; }

#top-message {
  padding: 0;
  position: relative;
  background: #b02d25;
  color: white;
  text-align: center;
  font-family: "Solway", serif;
  font-size: 12px;
  letter-spacing: 0;
}

#top-message .text { padding: 10px; display: inline-block; }

#top-message a { color: white; text-decoration: none; }

#top-message .network { padding: 10px; display: inline-block; }

#top-message a.network {
  margin: 1px; padding: 5px;
  background: #981e1d; border-radius: 10px; color: white;   transition: all 0.3s ease;
}
#top-message a.network:hover { background: #111; color: white;  }

#top-network {
  margin-top: 0;
  padding: 10px;
  background: black;
  text-align: center;
}
#top-network a {
  margin: 1px; padding: 10px;
  background: black;
  color: #790000;
  font-size: 16px;
  border-radius: 100px;
}

#menu { margin: 0; padding: 0; background: #0e0e0e; text-align: center; }

#menu-deroulant,
#menu-deroulant ul {
  margin: 0;
  padding: 10px;
  background: #981e1d;
  list-style: none;
}

#menu-deroulant > li { display: inline-block; position: relative; }

#menu-deroulant > li > a {
  display: block;
  padding: 6px 12px;
  margin: 0 4px;
  text-transform: uppercase;
  font-family: "Solway", serif;
  font-weight: 700;
  font-size: 11px;
  color: #fff;
  border-radius: 10px;
  transition: background 0.3s, color 0.3s;
}
#menu-deroulant > li > a:hover { background: transparent; color: #fff; }

#menu-deroulant ul {
  position: absolute;
  left: 0;
  margin-top: 0px;
  background: #ffffff;
  padding: 10px;
  border-radius: 0.8rem;
  opacity: 0;
  transform: translateY(-10px);
  pointer-events: none;
  transition: all 0.3s ease;
  z-index: 1000;
  min-width: 270px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.15);
}
#menu-deroulant li:hover > ul { opacity: 1; transform: translateY(0); pointer-events: auto; }
#menu-deroulant ul li { display: block; }
#menu-deroulant ul li a,
#menu-deroulant .sub-menu li a {
  display: block;
  padding: 8px 25px;
  font-family: "Solway", serif;
  font-weight: 500;
  font-size: 10px;
  text-transform: uppercase;
  text-align: left;
  color: #000;
  border-radius: 15px;
  transition: background 0.3s, color 0.3s;
}
#menu-deroulant ul li a:hover { background: #981e1d; color: #fff; }

#menu-membre-container {
    background: #000000;
    text-align: center;
}

#menu-membre-container #menu-deroulant,
#menu-membre-container #menu-deroulant ul {
    background: #1d1d1d;
}

.nav-top-left {
	padding: 10px;
	padding-left: 20px;
	padding-right: 20px;
	background: #ffffff;
	border-radius: 20px 0px 0px 20px;
	color: black;
	font-family: "Solway", serif;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0px;
	display: inline-block;
}

.nav-top-left a {
	color: black;
	font-weight: 400;
}

.nav-top-left a:hover {
	color: #c5c5c5;
}

.nav-top-right {
	padding: 10px;
	padding-left: 20px;
	padding-right: 20px;
	background: #ffffff;
	border-radius: 0px 20px 20px 0px;
	color: black;
	font-family: "Solway", serif;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0px;
	display: inline-block;
}

.nav-top-right a {
	color: black;
	font-weight: 400;
}

.nav-top-right a:hover {
	color: #c5c5c5;
}

#sidebar {
  background-color: #f5f5f5;
  margin: 0 auto;
  padding: 0;
  width: 40%;
  float: left;
}

#sidebar-content {
  margin: 0 0 2px 0;
  padding: 0 0 30px 0;
  background: transparent;
  color: #171717;
  text-align: justify;
  width: 100%;
  float: left;
  position: relative;
}

#sidebar-content .title {
  padding: 30px;
  background: white;
  font-family: "Barlow", sans-serif;
  text-align: center;
  font-size: 100%;
  line-height: 12pt;
  color: black;
  text-transform: uppercase;
  font-weight: 800;
  border-right: 10px solid #a60012;
  border-left: 10px solid white;
  border-bottom: 1px solid #f5f5f5;
  border-top-right-radius: 50px;
}

#sidebar-content .content {
  margin: 0 0 10px 0;
  padding: 30px 50px;
  background: white;
  text-align: justify;
  font-family: "Work Sans", sans-serif;
  font-size: 12.5px;
  line-height: 12.5pt;
  border-bottom: 2px solid #dddddd;
}

#side_planning_hebdo { padding: 0; margin: 0; }

#side_planning_hebdo .dojo {   
  padding: 10px;
  text-align: center;
  font-family: "Barlow", sans-serif;
  font-weight: 600;
  font-size: 15px; }

#side_planning_hebdo .day {
  padding: 5px 5px 5px 25px;
  background: #8c2a24;
  color: #ffffff;
  font-family: "Barlow", sans-serif;
  font-weight: 600;
  text-align: left;
  text-transform: uppercase;
  border-radius: 20px;
  border-left: 0px;
  border-right: 0px;
  border-top: 0px;
  border-bottom: 5px solid #ffffff;
  cursor: pointer;
  transition: background 0.2s;
}

#side_planning_hebdo .day:hover {
  background: #f9f9f9;
  color: #a2382d;
}

#side_planning_hebdo .content {
  margin: 0;
  padding: 5px 20px;
  background: white;
  font-family: 'Barlow', sans-serif;
  font-size: 12px;
  border-radius: 20px;
  border-bottom: 1px solid #dcdcdc;
  display: none;
}
#side_planning_hebdo .loca {
  margin-top: -5px;
  padding: 2px;
  background: #efefef;
  color: #595959;
  font-family: 'Barlow', sans-serif;
  font-size: 11px;
  text-align: center;
  border-radius: 20px;
}

.accordion {
  cursor: pointer;
  padding: 10px;
  font-weight: bold;
  border-bottom: 1px solid #ccc;
}

.panel {
  display: none;
  padding: 5px 10px;
  border-left: 2px solid #ccc;
  margin-bottom: 5px;
}

#newsletter { margin: 0; padding: 0; }
#newsletter .title { padding: 0px; text-align: center; font-family: "Barlow", sans-serif; font-weight: 600; line-height: 15pt; font-size: 15px; border: none; }
#newsletter .content { padding: 20px; background: white; font-family: 'Barlow', sans-serif; font-size: 12px; }
#newsletter .button {
  padding: 5px 40px;
  background: #101010;
  color: white;
  font-family: "Solway", serif;
  font-size: 12px;
  border: 1px solid grey;
  border-radius: 20px;
}
#newsletter .button a { color: white; font-weight: 500; }

.post-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1rem;
}

.post-item {
  background: #fff;
  border: 1px solid #eee;
  border-radius: 12px;
  overflow: hidden;
  transition: transform 0.2s, box-shadow 0.2s;
}
.post-item:hover { box-shadow: 0 6px 20px rgba(0,0,0,0.05); }

.post-link { color: inherit; text-decoration: none; display: block; height: 100%; }

.post-thumb img { width: 100%; height: 200px; object-fit: cover; display: block; }

.post-content { padding: 15px 30px; }

.post-title { font-family: "Solway"; font-size: 23px; font-weight: 600; margin: 0 0 0.5rem; }

.post-excerpt {
  color: #555;
  font-size: 13px;
  line-height: 13pt;
  font-family: 'Barlow', sans-serif;
  text-align: justify;
}

.button_more {
  padding: 5px 25px;
  font-family: "Solway";
  font-size: 11px;
  background: black;
  color: white;
  text-transform: uppercase;
  border-radius: 20px;
  display: inline-block;
}

#post {
  background: transparent;
  padding-left: 0px;
  padding-right: 0px;
  padding-bottom: 20px;
  margin-top: 0;
  margin-bottom: 0;
  width: 58%;
  position: relative;
  float: right;
  display: block;
}

#post .content {
  margin: 0;
  padding-top: 20px;
  padding-left: 30px;
  padding-right: 30px;
  padding-bottom: 25px;
  border-bottom-left-radius: 50px;
  background: white;
  color: #171717;
  font-family: 'Barlow', sans-serif;
  font-size: 14px;
  line-height: 20px;
  text-align: justify;
  float: left;
	width: 100%;
}

#post .title {
  padding: 40px 50px 0px 50px;
  background: white;
  text-align: left;
  font-size: 25px;
  font-family: 'Barlow', sans-serif;
  font-weight: 500;
  letter-spacing: -2px;
  border-radius: 50px 0 0 0;
}
#post .title a { color: black; font-size: 25px; }

#post .date {
  margin-top: -5px;
  padding: 20px 0 0 60px;
  background: white;
  text-align: left;
  font-size: 12px;
  font-family: "Solway", serif;
  font-weight: 200;
}

#post img { margin: 0; border: 0; border-radius: 20px; transition: 0.5s; opacity: 1; }
#post .img-post img { margin-top: 0; margin-bottom: 0; border: none; border-radius: 0; width: 100%; height: auto; }

#post .back { margin: 0; padding: 5px; padding-top: 20px; text-align:center; font-size: 12px; font-family: "Solway", serif; font-weight: 200; }
#post .back a { color: black; }

#page { padding-left: 80px; padding-right: 80px; background: transparent; }
#page .title { padding-top: 0; padding-bottom: 10px; text-align: center; }
#page .title a { color: #555555; font-family: "Solway"; font-size: 25px; font-weight: 800; text-transform: uppercase; }
#page .content {
	margin-left: 100px;
	margin-right: 100px;
	margin-bottom: 30px;
	padding: 20px 50px 20px 50px;
	font-family: "Solway", serif;
	font-weight: 200;
	font-size: 14px;
	line-height: 20px;
	text-align: justify;
	background: white;
	color: #2f2f2f;
	border-radius: 50px;
}

#page img { opacity: 1; border: 10px solid #fff; border-radius: 50px; transition: 0.5s; }

input, textarea {
  padding: 5px 25px;
  background: #ffffff;
  color: #3f3f3f;
  font-size: 13px;
  border: 1px solid #ececec;
	width: 100%;
}

#input { padding: 0; }
#input .categories { background: transparent; text-align: left; color: #575757; margin: 2px; }

#top-message-responsive { display: none; }

.network a {
  margin: 1px; padding: 5px; background: #ab0000; border-radius: 10px; color: #ffffff;
}
.network a:hover { background: #790000; }

#profil-events {
	margin: 2px; 
	padding: 10px 50px 10px 50px; 
	background: #ab0000; 
	border-radius: 10px; 
	display: inline-block;
}
#profil-events a {
	color: yellow;
}

#profil-events a:hover { 
	color: red; }

#profil-compet {
	margin: 2px; 
	padding: 10px 50px 10px 50px; 
	background: yellow; 
	border-radius: 10px; 
	display: inline-block;
}
#profil-compet a {
	color: #ab0000;
}

#profil-events a:hover { 
	color: red; }
#menu-toggle { display: none; }

#footer {
  margin-top: auto;
  width: 100%;
  background: #f5f5f5;
  font-size: 12px;
  font-weight: 200;
  text-align: justify;
  overflow: hidden;
}
#footer .content {
  padding: 40px;
  background: #fff;
  color: #000000;
  font-family: "Solway", serif;
  font-size: 11px;
  line-height: 14pt;
}
#footer .title {
  margin-bottom: 10px;
  padding: 5px;
  background: #a60012;
  text-align: center;
  font-size: 14px;
  color: white;
  border-radius: 10px;
}
#footer a { color: black; }
#footer a:hover { color: black; }

.logo-responsive {
    width: 20%;
}

.wp-pagenavi { border: none; color: #5d5d5d; background: transparent; margin: 10px; padding: 5px; display: inline-block; }
.wp-pagenavi a, .wp-pagenavi span.current { color: #b3b3b3; background: #fff; margin: 1px; padding: 20px; transition: 0.5s; }
.wp-pagenavi a:hover { background: #e8e8e8; }
.wp-pagenavi span.current { background: #1f1f1f; color: #fff; }

figure { border: thin #c0c0c0 solid; display: block; padding: 5px; max-width: 140px; margin: auto; }
figcaption { background-color: #222; color: #fff; font-style: italic; padding: 3px; text-align: center; }

/* ==================================================
   CSS events & compet
   ================================================== */

.tribe-common h1, 
.tribe-common h2, 
.tribe-common h3, 
.tribe-common h4, 
.tribe-common h5, 
.tribe-common h6, 
.tribe-common p {
	width: 680px;
}

.tribe-events-content ol:last-child, 
.tribe-events-content p:last-child, 
.tribe-events-content ul:last-child {
	margin: 0;
	padding: 0;
	background: transparent;
	font-family: "Barlow";
	font-size: 14px;
	font-weight: 400;
	line-height: 17pt;
	color: black;
}

.tribe-events-event-meta:before {
	background: white;
	padding: 10px;
	padding-left: 50px;
	border-radius: 20px;
	color: red;
	font-weight: 600;
}

.tribe-events-event-meta~div:not(.tribe-events-event-meta,.event-tickets) {
	background: #ffffff;
	padding: 0px;
	padding-left: 80px;
	border-radius: 20px;
	color: red;
	font-weight: 600;
}

.tribe-events-event-meta~div:not(.tribe-events-event-meta,.event-tickets) a {
	padding: 10px;
	background: #a2382d;
	color: white;
	display: block;
}

.single-tribe_events .tribe-events-single .tribe-events-event-meta {
	padding: 20px;
}

#rsvp-now {
	width: 900px;
}

#rsvp-now .tribe-common event-tickets {
	width: 900px;
}

.event-tickets .tribe-tickets__rsvp-actions .tribe-common-c-btn {
	background: black;
	color: white;
	border-radius: 20px;
	border: 0px;
}

.event-tickets .tribe-tickets__rsvp-actions .tribe-common-c-btn:hover {
	background: grey;
	transition: 0.5s;
}
/* ==================================================
   Responsive: mobile/tablet
   Media query: 320 - 999px
   ================================================== */
@media all and (min-width: 320px) and (max-width: 999px) {

  html, body { width: 100%; margin: 0; padding: 0; }
  #wrapper { width: 100%; }

  #slide, #header, #sidebar, #actu-responsive { display: none; }

  #header-responsive { display: block; padding: 0; width: 100%; background: transparent; }

  #top-message { display: none; }
  #top-message-responsive {
    display: block;
    background-image: url(https://jcpe76.fr/wp-content/themes/JCPE01/images/C.jpg);
    background-size: cover;
    color: #000000;
    text-align: center;
    font-family: "Barlow", sans-serif;
    font-size: 12px;
    line-height: 14pt;
  }
  #top-message-responsive .text {
    padding: 15px 0 0 0;
    font-family: "Solway", serif;
    font-size: 14px;
    line-height: 12pt;
    font-weight: 500;
  }

  #sidebar { display: none; }
	
  .post-grid { margin-left: 20px; margin-right: 20px; }

  .post-item { margin-top: -12px; }
	  
	#post {
    background: transparent;
    padding: 0;
    margin-top: 0;
    margin-bottom: 5px;
    width: 100%;
    display: block;
    float: none;
  }
	
  #post .content {
    margin: 0;
    padding: 0px 30px 0px 30px;
    border-bottom-left-radius: 0;
    background: white;
    font-size: 14px;
    line-height: 20px;
    text-align: justify;
	display: block;
  }

  #post .title, #page .title {
    padding: 10px 20px;
    font-family: 'Barlow', sans-serif;
    font-size: 23px;
    line-height: 28px;
    font-weight: 500;
    color: #fff;
    text-transform: inherit;
    text-align: center;
	letter-spacing: 0px;
  }

  #page { padding-left: 0; padding-right: 0; background: white; }
  #page .content { padding: 0 20px 30px 20px; background:white; }

  blockquote { margin: 20px; }

  #footer {
    width: 100%;
    background: transparent;
    color: #555555;
    font-weight: 400;
    text-align: justify;
  }
  #footer .content {
    padding: 20px;
    background: #ffffff;
    color: #555555;
    font-family: "Solway", serif;
  }
	
  #footer .title { background: transparent; color: black; margin-bottom: 0; padding: 5px; }

.logo-responsive {
	width: 40%;}
	
.network a {
  margin: 1px; padding: 5px; background: #ab0000; border-radius: 10px; color: #ffffff;
}
.network a:hover { background: #790000; }
	
  input, textarea {
    padding: 8px 12px;
    background: #fff;
    color: #333;
    font-size: 14px;
    border: 1px solid #ddd;
  }

} /* end media query */

