
/*********************************************************************************/
/* Desktop Tablette Smartphone (<= 810px ; >= 811px) *****************************/
/*********************************************************************************/

/* Banner */


.opcontainer {
  display: flex;
  width: 68em;
  height: 12.38em;
  margin: 0 auto;
  border-radius: 1em;
  border: solid 0.4em #C2C0F3;
}

.opcontainer .banner1 {
  position: relative;
  overflow: hidden;
}
.opcontainer img {
  position: absolute;
  top: 0;
  left: 0;
  margin-left: 1.5vw;
  margin-top: 0.45vw;
  width: 56%;
  height: auto;
  object-fit: cover;
  animation: fadeInOut 14s infinite alternate;
}

.opcontainer .img-top {
   animation-delay: 14s;
  }

@keyframes fadeInOut {
  0% { opacity: 0; }
  50% { opacity: 0; }
  100% { opacity: 1; } 
}

.opcontainer .banner1 {
 width: calc(30% - 20px);
}
.opcontainer .banner2 {
 width: calc(70% - 20px);
}
.banner2 p {
 margin-top: 1em;
 margin-left: 1em;
 font-size: 0.92em;
 font-weight: 600;
 color: #BCCC13;
}
.banner2 p2 {
 margin-left: 8em;
 text-align: center;
 font-size: 0.92em;
 font-weight: 600;
 color: #9E33E5;
}
.opcontainer h2 {
 margin-top: 0.45em;
 text-transform: uppercase;
 font-size: 1.8vw;
 color: #3E9B0B;
}
.opcontainer h3 {
  margin-top: 0.4em;
  margin-left: 9.3vw;
  text-transform: uppercase;
  font-size: 1.3vw;
  color: #BD0B74;
}

@media (max-width:710px){
.opcontainer {
  width:85%;
  height: 14.52vw;
}
.opcontainer h2 {
 margin-top: 0.85em;
 margin-left: 4em;
 font-size: 2vw;
}
.opcontainer h3 {
  margin-top: -0.5em;
  margin-left: 11.7em;
  font-size: 1.53vw;
}
.banner2 p {
 margin-left: 0.5em;
 margin-bottom: 1em;
 font-size: 1.7vw;	
}
.banner2 p2 {
 display: none;	
}
}
@media (min-width:711px) and (max-width:810px){
.opcontainer {
  width:85%;
  height: 14.85vw;
}
.opcontainer h2 {
 margin-top: 0.77em;
 margin-left: 1em;
 font-size: 2.2vw;
}
.opcontainer h3 {
  margin-top: -0.5em;
  margin-left: 7.5em;
  font-size: 1.8vw;
}
.banner2 p {
 margin-left: 2em;
 margin-bottom: -0.2em;
 font-size: 0.7em;	
}
.banner2 p2 {
 margin-left: 4em;
 font-size: 0.7em;	
}
}
@media (min-width:811px)and (max-width:1150px){
.opcontainer {
  width: 82%;
  height: 15.2vw;
}
.opcontainer img {
 margin-top: 0.6em;
}
.opcontainer h2 {
  margin-top: 0.78em;
  font-size: 1.05em;
}
.opcontainer h3 {
  font-size: 1.02em;
}
.banner2 p {
  font-size: 0.75em;	
  margin-bottom: 0.2em;
}
.banner2 p2 {
 margin-left: 3em;
 font-size: 0.75em;	
}
}
@media (min-width:861px)and (max-width:1150px){
.banner2 h2 {
  font-size: 2vw;
}
 .banner2 p {
  font-size: 0.85em;	
  margin-bottom: 0.4em;
}
.banner2 p2 {
 margin-left: 4em;
 font-size: 0.825em;	
}
}
@media (min-width:1151px)and (max-width:1350px){
.opcontainer {
  width: 82%;
  height: 13.5vw;
}
.opcontainer img {
  width: 50%;
  margin-top: 0.5em;
}
.opcontainer h2 {
  margin-top: 0.6em;
  font-size: 1.65em;
}
.opcontainer h3 {
  font-size: 1.2em;
}
.banner2 p {
  font-size: 1.2vw;	
}
.banner2 p2 {
 margin-left: 4em;
 font-size: 1.2vw;	
}
}
@media (min-width:1351px)and (max-width:1490px){
.opcontainer {
  width: 76%;
  height: 12.3vw;
}
.opcontainer img {
  width: 50%;
  margin-top: 0.72em;
}
.opcontainer h2 {
  margin-top: 0.6em;
  font-size: 1.65em;
}
.opcontainer h3 {
  font-size: 1.2em;
}
.banner2 p {
  font-size: 1.1vw;	
}
.banner2 p2 {
 margin-left: 6em;
 font-size: 1.1vw;	
}
}



.marquee-sign {
	overflow: hidden;
	white-space: nowrap;
	width: 67em;
	height: 6vw;
	margin: 0 auto;
	margin-top: 2vw;
	margin-bottom:  ;
}
.marquee-content {
	display: inline-block;
    padding-left: 90%;
	width: 100%;
	color: #0C8C21;
	font-size: 0.8vw;
	text-align: left;
    animation: scroll-left 25s linear infinite;
}

@keyframes scroll-left {
  0% { transform: translate3d(0, 0, 0) } /* Commence à droite */
  100% { transform: translate3d(-100%, 0, 0); } /* Finit à gauche */
}
@media (max-width:810px){
.marquee-sign {
  width: 83%;
  margin-top: 1.4em;
  margin-bottom: 1.4em;
}
.marquee-content {
 font-size: 1.3vw;
}
}
@media (min-width:811px) and (max-width:1290px){
.marquee-sign {
  width: 82%;
  margin-top: 2em;
  margin-bottom:1.52em ;
}
.marquee-content {
 font-size: 0.81em;
}
}



.carrousel {
  display: grid;
  grid-template-columns: 1fr 1fr;
  overflow: hidden;
  width: 65em;
  margin: 0 auto;
  gap:1vw;
}
.carcol {
 height: 13vw;
 padding-top: 0.5em;
 border: outset 0.2em #B6B9F4; 
 border-radius: 8px;
}
.texte {
 position: relative;
 width: 100%;
 height: 100%;
 text-align: center;
 animation: defilement 25s linear infinite;
}
.texte p {
  margin: 1.5em 0.4em 0 0.4em;
  color: #8116E9;
  line-height: 1.75em;
  font-size: 0.75vw;
}

.texte h2 {
 margin-top: 1.1em;
 color: #A81A53;
 font-size: 0.81vw;
}
.texte hr{
  border: none;
  width: 10em;
  height: 0.01em;
  margin-top: 2.8vw;
  margin-bottom: 2vw;
  background-color: #F54245; 
}
.texte:nth-child(2) {
  animation-delay: 0s; /* Démarre le deuxième après 0s (moitié du temps) */
  top: 100%; /* Commence en bas */
}

@keyframes defilement {
  0% {top: 100%;} 
  10% {top: 0%;} 
  25% {top: 0%;} 
  50% {top: 0%;} 
  60% {top: -130%;} 
  80% {top: -130%;} 
  96% {top: -130%;} 
  100% {top: -230%;} 
}
@media(max-width:590px){
.carrousel {
  width: 85%;
}
.carcol {
  height: 26vw;	
}
.texte hr {
  width: 5em;
  margin-top: 1.5em;
  margin-bottom: 2em;
}
.texte h2 {
  font-size: 1.3vw;	
}
.texte p {
  font-size: 1.295vw;
  line-height: 2.12em;
}
}
@media (min-width:591px) and (max-width:810px){
.carrousel {
  width: 85%;
}
.carcol {
  height: 24vw;	
}
.texte hr {
  width: 5em;
  margin-top: 5vw;
  margin-bottom: 5vw;
}
.texte h2 {
  font-size: 1.3vw;	
}
.texte p {
  font-size: 1.2vw;
  line-height: 2.12em;
}
}
@media(min-width:811px) and (max-width:1450px){
.carrousel {
width: 70%;
}
.carcol {
height: 18vw;		
}
.texte h2 {
  font-size: 1.1vw;	
}
.texte p {
  font-size: 1vw;
  line-height: 1.9em;
}
.texte hr {
  margin-top: 3vw;
  margin-bottom: 3.5vw;
}
}




.bg-info{
	overflow: hidden;
	width: 43vw;
	height: 19.5em;
	margin: auto;
	padding-top: px;
	border-radius: 20px;
	border: outset 8px #A597EC;
    background-color:#F7F7FF ;
}

.text-info {
	position:inherit;
	text-align: justify;
	color: #7A16C5;
	animation: defilement-vertical 60s linear infinite; /* 25s durée, linéaire, infini */
}

.text-info p {
	padding: 10px 15px 0px 15px;
	margin: 0 10px 0 10px;
	font-size: 0.795vw;
}

.text-info hr {
	border: none; 
	width: 15vw; 
	height: 2px;
	background-color: #10C02F;
}

.text-info h2 {
	margin-bottom: 0.2em;
	color: #056716;
	font-size: 0.8vw;
	text-align: center;
}

@keyframes defilement-vertical {
  0% { transform: translateY(100%); }
  20% { transform: translateY(0%); }
  30% { transform: translateY(0%); }
  40% { transform: translateY(0%); }
  60% { transform: translateY(-60%); }
  80% { transform: translateY(-60%); }
  95% { transform: translateY(-97%); }
  100% { transform: translateY(-100%); } /* Défile de haut en bas */
}
@media (max-width:810px){
.bg-info{
	width: 52vw;
	height: 41vw;
}
.text-info p {
	padding: 1em;
	font-size: 1.351vw;
}
.text-info h2 {
	font-size: 1.2vw;
}
}
@media (min-width:811px) and (max-width:1324px){
	.text-info p {
	font-size: 0.96vw;
}
.text-info h2 {
	font-size: 1.16vw;
}
}



.alert {
	display: flex;
	width: 72em;
    margin: auto;
	gap: 1em;
}

.alert-item {
	overflow:hidden;
	width: 100%;
	padding: 0px 10px 20px 10px;
    border-radius: 10px;
	border: groove 2px #F8A1A2;
	background-color: #F8FFFB;
}
.alert-item a {
  font-size: 0.7vw;
}
.alert-item h2 {
	white-space: nowrap;
	padding-bottom: 0.1em;
	font-size: 0.8vw;
	line-height: 1.1;
	color:#0AAD3B;
	animation: slide-boucle 35s linear infinite;
}

@keyframes slide-boucle {
  0% { transform: translatex(100%) } /* Commence à droite */
  30% { transform: translatex(30%); } 
  100% { transform: translatex(-100%); } /* Finit à gauche */
}

@media(max-width:810px){
.alert {
  display: grid;
  width: 85%;
  height: 17.5em;
}
.alert-item h2 {
  font-size: 0.8em;	
}
.alert-item a {
  font-size: 0.7em;
  line-height: 0.12em;
}
}
@media(min-width:811px) and (max-width:1398px){
.alert {
width: 82%;
}
.alert-item h2 {
  font-size: 0.8em;	
}
.alert-item a {
  font-size: 1vw;
  line-height: 0.12em;
}
}


.index {
  width: 73em;
  margin: 0 auto;
}

.index .section {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	margin-bottom: 25px;
	height: auto;
}

.index .section p {
	padding: 0 10px 0px 10px;
	margin: 10px; 
	border-radius: 10px;
	color: #AFB90F;
	text-align: center;
	font-weight: 600;
	font-size: 0.9rem;
}

.index img {
	width: 100%;
	padding: 10px;
	border-radius: 20px;
}

.index .section hr {
	border: none; 
	margin: 0;
	margin: auto;
	width: 6vw; 
	height: 1px;
	background-color: #C00F41;
}

.index a {
	width: auto;
	border: solid 2px #1BDB43;
	border-radius: 10px;
}

@media(max-width:810px){
.index {
  width: 90%;		
}
.index a {
	width: 27vw;
}
.index .section p {
 font-size: 0.6rem;
}
}
@media(min-width:811px) and (max-width:1298px){
.index {
width: 82%;
}
}



.grille-flexible {
    display: grid;
	grid-template-columns: repeat(4, 1fr);
	width: 85em; /* Ou une largeur spécifique */
    height: auto;
	margin: 0 auto;
	gap:1rem;
}

.grille-flexible .grille {
	
	border: solid 4px #E9DEF7;
	border-radius: 10px;
}

.grille-flexible h2 {
    padding: 10px;
    margin: 5px;
	font-size: 1.3em;
	color: #562BE7;
}

.grille-flexible p {
	padding: 0.8rem;
	line-height: 25px;
	font-size: 0.8rem;
	text-align: justify;
}

@media(max-width:810px){
.grille-flexible {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	width: 90%;
}
.grille-flexible p {
	line-height: 20px;
	font-size: 0.65em;
}
.grille-flexible h2 {
	font-size: 1.02em;
}
}
@media(min-width:811px) and (max-width:1275px){
.grille-flexible {
    width: 92%;
}
.grille-flexible p {
	line-height: 20px;
	font-size: 0.7rem;
}
.grille-flexible h2 {
	font-size: 1.1rem;
}
}




/* Content */


#content {
	display: flex;
	width: 55%;
	margin: 0 auto;
	margin-right: 24%;
	gap:10px;
}

.info1 {
	width: 30%;
	border: groove 2px #14C413;
	border-radius: 8px;
	padding: 2px;
}

.info1 h2 {
	font-size: 0.9em;
	text-align: center;
	margin: 15px;
	color: #CD1013;
}

.info1 img {
	display: block;
	width: auto;
	padding: 10px 10px 0 10px;
	margin: auto;
	border-radius: 1em;
}

.info2 {
	width: 70%;
	border: groove 2px #BEE91C;
	border-radius: 8px;
}

.info2 p {
	margin: 20px;
	font-size: 0.8em;
	text-align: justify;
}

.info2 hr {
	width: 15vw;
	text-align: center;
}
@media (max-width:810px){
#content {
	display: grid;
	width: 60%;
	margin: auto;
}
.info1 img {
	display: block;
}
.info1 {
	width: 100%;
	height: 100%;	
}
.info1 h2 {
	font-size: 70%;
}
.info2 {
	width: 100%;
	font-size: 0.8em;
}
}
@media (min-width:811px) and (max-width:1144px){
#content {
	width: 65%;
	margin-right: 17%;
}
.info1 {
	width: 45%;
}
.info2 {
	width: 55%;
	font-size: 0.8em;
}
}
@media (min-width:1145px) and (max-width:1484px){
#content {
	width: 62%;
	margin-right: 20%;
}
.info1 {
	width: 45%;
}
.info2 {
	width: 55%;
	font-size: 0.8em;
}
}



#content1 {
	overflow: hidden;
	width: 50vw;
	height: auto;
	padding: 0 10px 0 10px;
	margin: 0 auto;
}

#content1 p {
	margin: 0 5px 0 5px;
	font-size: 0.8vw;
	color: #CB0C88;
	text-align: justify;
}

#content1 hr {
	width: 20vw;
}
@media(max-width:880px){
#content1 {
	width: 65%;
}
#content1 p {
    font-size: 1.25vw;
}
}
@media(min-width:881px) and (max-width:1180px){
#content1 {
	width: 60%;
}
#content1 p {
    font-size: 1vw;
}
}


#content2 {
	overflow: hidden;
	width: 45vw;
	margin: auto;
	margin-right: 34%;
}

#content2 img {
	display: block;
	width: 100%;
	margin-bottom: 20px;
}
@media (max-width: 810px){
	#content2 {
	width: 60vw;
	margin-right: 25%;
}
}
@media (min-width:810px) and (max-width: 1095px){
	#content2 {
	width: 50vw;
	margin-right: 28%;
}
}


#content3 {
	display: flex;
	width: 58vw;
	height: auto;
	margin: 0 auto;
	margin-left: 21%;
	justify-content: space-around;
}

.link {
	width: 48%;
	padding: 0px 0px 0px 0px;
	margin: 0px;
	border: groove 1px #079B34;
	border-radius: 15px;
}

.link h2 {
	padding: 20px 0px 0px 0px;
	margin-top: 10px;
	text-align: center;
	font-size: 1.5vw;
	color: #6D08A8;
}


.link img {
	display: block;
	width: 45%;
	margin: auto;
	margin-top: 20px;
}

.link p {
	padding: 0px;
	margin-top: 15px;
	margin-bottom: 25px;
	text-align: center;
	font-size: 1.1vw;
}
@media (max-width:1010px){
	.link h2 {
	font-size: 1.85vw;
}
	.link p {
	font-size: 1.8vw;
}
}



.video-container{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	width: 58vw;
	flex-wrap: wrap; /* Permet le retour à la ligne sur petits écrans */
	justify-content: space-between;
	justify-content: center;
	gap: 1.2em;
	padding: 0;
	margin:0 auto;
}

.video-wrapper {
    display: flex;
	flex-direction: column;
    margin-top: 1.2em;
	margin-bottom: 1.2em;
    padding-bottom: 21em;
	height: 0; /* La hauteur s'ajuste au ratio */
}

.video-wrapper iframe {
	position:relative;
	top: 0;
    left: 0;
	width: 100%;
	min-height: 18em; /* Exemple de hauteur minimale */
}

.video-wrapper h3 {
	margin-top: 2em;
	text-align: center;
	font-size: 0.8vw;
	font-weight: 600;
	color:#100FA0;
}
@media (max-width:810px){
	.video-wrapper h3 {
	font-size: 1.35vw;
	}
	.video-wrapper {
		padding-bottom: 19em;
	}
	.video-container {
		width: 75%;
	}
}
@media (min-width:811px) and (max-width:1290px){
	.video-wrapper h3 {
	font-size: 1.1vw;
	}
	.video-container {
		width: 65%;
	}
}



.caption {
  display: flex;
  justify-content: space-between;
  width: 58vw;
  margin: auto;
}

.div1, .div2, .div3 {
  width: 33%; 
  height: auto;
  border: 1px solid #D341EC;
  border-radius: 8px;
  padding: 10px;
  background: #FBF8FD;
  color: #E817A0;
}

.caption h2 {
	margin-top: 5px;
	font-size: 1.1vw;
	text-align: center;
}
.caption h3 {
	margin-top: 5px;
	font-size: 0.85vw;
	color: #780FA0;
	text-align: center;
}
.caption p {
	text-align: justify;
	font-size: 0.86vw;
}
@media (max-width:810px){
.caption {
	width: 75%;	
}
.caption h2{
	font-size: 1.7vw;	
}
.caption h3	{
	font-size: 1.3vw;	
}
.caption p {
	font-size: 1.5vw;
	text-align: center;
}
}
@media (min-width:811px) and (max-width:1240px){
.caption {
	width: 70%;	
}
.caption h2{
	font-size: 0.9em;	
}
.caption h3	{
	font-size: 0.7em;	
}
.caption p {
	font-size: 0.8em;
}
}



.button {
	width: 12vw;
	margin: 0 auto;
	padding: 5px;
	margin-bottom: 15px;
	font-size: 0.8vw;
	text-align: center;
	border: solid 2px #EF8D67;
	border-radius: 6px;
}

@media (max-width:810px){
.button {
	width: 12em;
	font-size: 1.5vw;
}
}
@media (min-width:811px)and (max-width:1350px){
.button {
	width: 12em;
	font-size: 1.1vw;
}
}



.cultgen {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 58vw;
  margin: 0 auto;
  column-gap: 20px;
}

.cultgen-l {
  width: 100%;
  padding: 20px 0 20px 0;
}

.cultgen-r {
	width: 100%;
	padding: 20px 0 20px 0;
}

.cultgen .section {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	margin-bottom: 25px;
	height: auto;
}

.cultgen .section p {
	padding: 8px;
	border-radius: 10px;
	color: #1B1FE7;
	text-align: center;
	font-size: 0.70em;
}

.cultgen img {
	width: 100%;
	padding: 8px;
	border-radius: 20px;
}

.cultgen a {
	width: auto;
	border: double 3px #A5B1E9;
	border-radius: 10px;
}

.postgen {
	float: none;
	width: 28vw;
	padding: 0 10px 10px 10px;
	border: solid 2px #D1B30F;
	border-radius: 10px;
	background-color: #FFFFFF;
}

.postgen h2 {
	padding: 5px 0 0 0;
	margin-top: 1em;
	letter-spacing: 1px;
	text-decoration: none;
	text-transform: uppercase;
	font-size: 14pt;
	color: #19A313;
	text-align: center;
}

.postgen p {
	margin: 5px 0 5px 0;
	font-size: 1.027em;
	color: #1518AD;
	text-align: center;
}

@media(max-width:810px){
.cultgen {
  width: 70%;	
}
.cultgen .section {
  display: grid;
  grid-template-columns: 1fr;
  height: auto;
}
.cultgen .section p {
  font-size: 0.62em;	
}
.postgen {
  width: auto;
  height: 11.2vw;
}
.postgen p {
 display: none;
}
.postgen h2 {
  margin-top: 2.3em;
  font-size: 1.45vw;
}
}

@media(min-width:811px)and (max-width:1250px){
.cultgen {
  width: 65%;
  margin-right: ;	
}
.cultgen .section {
  height: auto;
}
.cultgen .section p {
  font-size: 0.45em;	
}
.postgen {
  width: auto;
  height: auto;
}
.postgen p {
 font-size: 0.65em;
}
.postgen h2 {
  font-size: 72%;
}
}
@media(min-width:1251px)and (max-width:1425px){
.cultgen {
  width: 65%;
  margin-right: ;	
}
.cultgen .section a {
  height: 100%;
}
.cultgen .section p {
  font-size: 0.50em;	
}
.postgen {
  width: auto;
  height: auto;
}
.postgen p {
 font-size: 0.85em;
}
.postgen h2 {
  font-size: 100%;
}
}



.wrbook {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 58%;
  margin: 0 auto;
  column-gap: 20px;
}

.wrbook-l {
  width: 100%;
  padding: 20px 0 20px 0;
}

.wrbook-r {
	width: 100%;
	padding: 20px 0 20px 0;
}

.wrbook .section {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	margin-bottom: 25px;
	height: auto;
	gap: 5px;
}

.wrbook .section p {
	padding: 0 10px 5px 10px;
	margin: 8px; 
	border-radius: 10px;
	color: #19B00E;
	text-align: center;
	font-weight: 600;
	font-size: 0.72em;
}

.wrbook img {
	width: 100%;
	padding: 10px;
	border-radius: 20px;
}

.wrbook a {
	width: auto;
	border: solid 3px #AABF0F;
	border-radius: 10px;
}

.postwrbook {
	float: none;
	width: 28vw;
	padding: 0 10px 10px 10px;
	border: solid 2px #CCBF0E;
	border-radius: 10px;
	background-color: #FFFFFF;
}

.postwrbook h2 {
	margin-top: 20px;
	letter-spacing: 1px;
	text-decoration: none;
	text-transform: uppercase;
	font-size: 1.1em;
	font-weight: 600;
	color: #37A312;
	text-align: center;
}

.postwrbook p {
	margin: 20px 0 10px 0;
	font-size: 1em;
	color: #AD5714;
	text-align: center;
}

@media(max-width:810px){
.wrbook {
  margin-right: 30%;	
}
.wrbook .section {
  display: grid;
  grid-template-columns: 1fr;
  width: 100%;
}
.wrbook .section p {
  font-size: 0.7em;	
}
.postwrbook {
  width: 36vw;
  height: auto;
}
.postwrbook p {
  margin-top: -0.2em;
  font-size: 1.3vw;
}
.postwrbook h2 {
  font-size: 1.2vw;
}
}
@media (min-width: 811px) and (max-width: 1340px){
.wrbook {
  width: 70%;		
}
.wrbook .section {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 100%;
}
.wrbook .section p {
  font-size: 1.05vw;	
}
.postwrbook {
  width: 100%;
  height: auto;
}
.postwrbook p {
  font-size: 1.15vw;
}
.postwrbook h2 {
  font-size: 1.2vw;
}
}

@media(min-width:1341px) and (max-width:1484px){
.wrbook {
  width: 70%;
}
.wrbook .section p {
  font-size: 61%;
}
.postwrbook {
  width: 34vw;
  height: auto;
}
.postwrbook p {
  font-size: 1.02em;
}
.postwrbook h2 {
  font-size: 88%;
}
}




.pbbook {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 58%;
  margin: 0 auto;
  column-gap: 1.1em;
}

.pbbook-l {
  width: 100%;
}

.pbbook-r {
  width: 100%;
}

.pbbook .section {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	margin-bottom: 25px;
	height: auto;
	gap: 5px;
}

.pbbook .section p {
	margin: 10px; 
	color: #26B90F;
	text-align: center;
	font-size: 1.1em;
}

.pbbook img {
	width: 100%;
	padding: 10px;
	border-radius: 20px;
}

.pbbook a {
	width: auto;
	border: solid 2px #C93309;
	border-radius: 10px;
}

.postpbbook {
	float: none;
	width: 100%;
	height: 8.2vw;
	padding: 0.8em;
	border: solid 2px #DC4529;
	border-radius: 10px;
	background-color: #FFFFFF;
}

.postpbbook h2 {
	margin-top: 0.6em;
	text-decoration: none;
	text-transform: uppercase;
	font-family: 'Californian FB', 'Times New Roman', sans-serif;
	font-size: 1.2em;
	color: #19A313;
	text-align: center;
}

.postpbbook p {
	letter-spacing: -1px;
	font-size: 0.9vw;
	color: #1518AD;
	text-align: justify;
}

.postpbbook2 {
	float: none;
	width: 25%;
	margin-left: 21%;
	border: solid 2px #E4337A;
	border-radius: 10px;
}

.postpbbook2 p {
	padding: 10px;
	font-size: 120%;
	text-align: center;
}

#ligne {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	margin: 0 auto;
	width: 58%;
	text-align: center;
}

#ligne ul {
	width: 98%;
	border: solid 2px #6876D6;
	border-radius: 8px;
	border-collapse: collapse;
	margin: 0.2rem ;
	padding: 15px;
	text-align: center;
	background-color: #DDF3E4;
}

#ligne li {
	list-style: none;
}

#ligne a {
   color: #07681E ;	
   font-size: 71%;
   font-weight: 400;
}

@media(max-width:810px){
#ligne {
display: grid;
grid-template-columns: repeat(3, 1fr);	
width: 75%;
}
#ligne a {
  font-size: 50%;	
}
.postpbbook2 {
  width: 45%;
  margin-left: 13%;
}
.postpbbook2 p {
  font-size: 60%;
}
}
@media(min-width:811px) and (max-width:1483px){
#ligne {
  width: 82%;	
}
#ligne a {
  font-size: 50%;
}
.postpbbook2 p {
  font-size: 80%;	
}
}
	
@media(max-width:810px){
.pbbook {
  margin-right: 25%;	
}
.pbbook .section {
  display: grid;
  grid-template-columns: 1fr;
  width: auto;	
}
.pbbook .section p {
  font-size: 0.7em;	
}
.postpbbook {
  width: 32vw;
  height: 16.8vw;
}
.postpbbook p {
  font-size: 1.4vw;
}
.postpbbook h2 {
  margin-top: 0.6em;
  font-size: 1.5vw;
}
}
@media(min-width:811px) and (max-width:1484px){
.pbbook {
  width: 65%;
}
.pbbook .section p {
  font-size: 85%;
}
.postpbbook {
  width: 32vw;
  height: 8.5em;
}
.postpbbook p {
  font-size: 0.78em;
}
.postpbbook h2 {
  font-size: 0.8em;
}
}
@media(min-width:1384px) and (max-width:1458px){
.pbbook {
  width: 65%;
}
.postpbbook {
  width: 32vw;
  height: auto;
}
}



.obook {
  display: flex;
  flex: 1;
  width: 58vw;
  margin: 0 auto;
  margin-left: ;
  column-gap: 20px;
}

.obook-l {
  height: 100%;
}
.obook-r {
  height: 100%;
}

.obook .section {
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 0.5em;
	height: auto;
}

.obook .section p {
	margin: 7px 0 15px 0; 
	border-radius: 10px;
	color: #7D10B5;
	text-align: center;
	font-size: 0.9vw;
}

.obook img {
	width: 100%;
	padding: 10px;
	border-radius: 20px;
}

.obook a {
	width: 100%;
	margin-bottom: 0.5em;
	border: solid 2px #AEC312;
	border-radius: 10px;
}

.postobook {
	float: none;
	width: 28vw;
	padding: 0 10px 10px 10px;
	border: solid 2px #B00F5F;
	border-radius: 10px;
	background-color: #FFFFFF;
}

.postobook h2 {
	padding: 5px 0 0 0;
	margin-top: 15px;
	margin-bottom: 15px;
	letter-spacing: 1px;
	text-decoration: none;
	text-transform: uppercase;
	font-family: 'Californian FB', 'Times New Roman', sans-serif;
	font-size: 1.2vw;
	color: #19A313;
	text-align: center;
}

.postobook p {
	margin: 5px;
	word-spacing: 1px;
	font-size: 0.81vw;
	color: #1518AD;
	text-align: center;
}

@media(max-width:810px){
.obook .section {
	display: grid;
	grid-template-columns: 1fr;
	height: auto;	
}
.obook .section p {
	font-size: 1.5vw;
}
.postobook {
	height: auto;	
}
.postobook p {
	display: none;	
}
.postobook h2 {
	font-size: 1.781vw;	
}
}
@media(min-width:811px) and (max-width:1182px){
.obook .section p {
	font-size: 0.88vw;	
}
}



.nedubook {
  display: flex;
  width: 58vw;
  margin: 0 auto;
  gap: 1em;
}
.nedubook-l {
  width: 100%;
  padding: 20px 0 20px 0;
}
.nedubook-r {
	width: 100%;
	padding: 20px 0 20px 0;
}
.nedubook .section {
	display: grid;
	grid-template-columns: 1fr 1fr;
	margin-bottom: 0.5em;
	gap: 0.5em;
}
.nedubook .section a {
	width: auto;
	height: auto;
	border: solid 2px #585FEF;
	border-radius: 10px;
}
.nedubook img {
	width: 100%;
	padding: 8px 8px 0 8px;
	border-radius: 15px;
}

.nedubook .section h2 {
	text-align: center;
	font-weight: 600;
	font-size: 0.8em;
	color: #AAB40D;
}

.nedubook .section p {
	text-align: center;
	margin: 5px 5px 10px 5px;
	font-size: 0.7em;
	color: #3C2CC3;
}

.nedupost {
	float: none;
	width: 100%;
	padding: 10px 0px 10px 0px;
	border-radius: 10px;
	border: solid 3px #9BB119;
}

.nedupost h2 {
	letter-spacing: 1px;
	text-decoration: none;
	text-transform: uppercase;
	font-size: clamp(0.7em,1.1vw, 1.2rem);
	font-weight: 600;
	color: #AAB90A;
	text-align: center;
}

.nedupost p {
	padding: 10px;
	margin: 10px;
	font-size: 0.8vw;
	color: #342CDB;
	text-align:center; 
}

@media(max-width:810px){
.nedubook {
	margin-left: 13%;	
}
.nedubook .section {
	display: grid;
	grid-template-columns: 1fr;
	width: 35vw;
}
.nedubook .section a {
    height: auto;
}
.nedubook .section p {
	font-size: 0.6em;
}
.nedubook .section h2 {
	font-size: 0.72em;
	margin-bottom: 0.65em;
}
.nedupost {
	width: 35vw;
	height: 7em;
}
.nedupost h2 {
    font-size: 0.6em;
}
.nedupost p {
	font-size: 0.5em;	
}
}

@media(min-width:811px) and (max-width:1250px){
.nedubook .section {
	width: 30vw;
}
.nedubook .section a {
    width: 100%;
	height: auto;
}
.nedubook .section h2 {
	font-size: 0.8vw;
}
.nedubook .section p {
	font-size: 0.65vw;
}
.nedupost p {
	font-size: 0.91vw;	
}
}
@media(min-width:1251px) and (max-width:1350px){
.nedubook .section a {
    width: 100%;
	height: auto;
}
.nedubook .section p {
	font-size: 51.5%;
}
.nedubook .section h2 {
	font-size: 0.7em;
}
.nedupost p {
	font-size: 0.8em;	
}
.nedupost h2 {
	font-size: ;	
}
}




.ensbook {
  width: 58vw;
  margin: 0 auto;
}

.ensbook .section {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
	margin-bottom: 25px;
	height: auto;
}

.ensbook .section p {
	margin-bottom: 1.5em;
	padding-right: 0.7em;
	padding-left: 0.7em;
	border-radius: 10px;
	color: #850FB9;
	text-align: center;
	font-size: 0.8vw;
}

.ensbook img {
	width: 100%;
	padding: 10px;
	border-radius: 20px;
}

.ensbook a {
	width: auto;
	border: solid 2px #9733E3;
	border-radius: 10px;
}

.postensbook {
	float: none;
	width: 30vw;
	height: 5vw;
	margin: 0 auto;
	margin-left: 21%;
	padding: 0 10px 10px 10px;
	border: solid 2px #EB3E9E;
	border-radius: 10px;
	background-color: #FFFFFF;
}

.postensbook h2 {
	margin-top: 1.6em;
	letter-spacing: 1px;
	text-decoration: none;
	text-transform: uppercase;
	font-size: 1.1vw;
	color: #37A312;
	text-align: center;
}
@media(max-width:810px){
.ensbook {	
}
.ensbook .section {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  height: auto;
}
.ensbook .section p {
  font-size: 1.28vw;	
}
.postensbook {
  width: 46vw;
  height: 10vw;
}
.postensbook h2 {
  margin-top: 2.5em;
  font-size: 1.45vw;
}
}
@media (min-width:811px) and (max-width:1240px){

.ensbook .section p {
  font-size: 1vw;	
}
.postensbook {
  width: 35vw;
  height: 7vw;
}
.postensbook h2 {
  margin-top: 2em;
  font-size: 1.25vw;
}
}



.pjbook {
	display: grid;
	grid-template-columns: 1fr 1fr;
	width: 58vw;
	margin: 0 auto;
	column-gap: 20px;
}

.book-l {
	width: 100%;
	padding: 20px 0 0 0;
}

.book-r {
	width: 100%;
	padding: 20px 0 0 0;
}

.pjbook .section {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 5px; 
}

.pjbook .section p {
	text-align: center;
	padding: 5px;
	margin: 5px 0 10px 0; 
	font-size: 0.75em;
	color: #219C12;
}

.pjbook .section a {
	width: 100%;
	height: auto;
	border: groove 2px #8082E9;
	border-radius: 10px;
}

.pjbook img {
	width: 100%;
	padding: 5px;
	border-radius: 15px;
}

.pjpost {
	float: none;
	width: 100%;
	height: 13em;
	padding: 10px;
	margin: 0 auto;
	border: solid 2px #0FA72E;
	border-radius: 10px;
	background-color: #FFFFFF;
}
.pjpost h2 {
	margin: 13px;
	text-decoration: none;
	text-transform: uppercase;
	font-family: 'Californian FB', 'Times New Roman', sans-serif;
	font-size: 1.4em;
	color: #19A313;
	text-align: center;
}
.pjpost p {
	margin: 5px 6px 0 6px;
	word-spacing: -1px ;
	font-size: 0.85vw;
	color: #1518AD;
	text-align: justify
}
@media(max-width:810px){
.pjbook {
  margin-right: 30%;	
}
.pjbook .section {
  display: grid;
  grid-template-columns: 1fr;
  height: auto;
}
.pjbook .section p {
  font-size: 0.75em;	
}
.pjpost {
  width: 36vw;
  height: 20.3vw;
}
.pjpost p {
 font-size: 1.38vw;
}
.pjpost h2 {
  margin-top: 0.3em;
  margin-bottom: 0.12em;
  font-size: 1.7vw;
}
}
@media (min-width:811px) and (max-width:1350px){
.pjbook {
  width: 65%;	
}
.pjbook .section a {
  height: 22vw;
}
.pjbook .section p {
  font-size: 0.7em;	
}
.pjpost {
  width: auto;
  height: 17vw;
}
.pjpost p {
 font-size: 1.13vw;
}
.pjpost h2 {
  font-size: 1.6vw;
}
}
	
	

.content-philo {
	display: grid;
	grid-template-columns: 1fr 1fr;
	width: 58vw;
	margin: 0 auto;
	column-gap: 20px;
}
.philo-l {
	padding: 20px 0 20px 0;
	width: 100%;
}
.philo-r {
	padding: 20px 0 20px 0;
	width: 100%;
	border-radius: 10px;
}

.content-philo .section {
	display: grid;
	grid-template-columns:repeat(2,1fr);
	margin-bottom: 1.2em;
	gap: 10px; 
}

.content-philo .section p {
	text-align: center;
	height: auto;
	padding: 0 6px 0 6px;
	margin: 0 0 8px 0; 
	font-size: 0.9em;
	color: #8012B0;
}

.content-philo .section a {
	width: auto;
	height: 100%;
	border: solid 2px #8C93EC;
	border-radius: 10px;
}

.content-philo img {
	width: 100%;
	padding: 6px;
	border-radius: 15px;
}

.philopost {
	float: none;
	width: auto;
	padding: 0 10px 0 10px;
	border: solid 2px #F15F96;
	border-radius: 10px;
	background-color: #FFFFFF;
}

.philopost h2 {
	margin-top: 1em;
	letter-spacing: -1px;
	text-decoration: none;
	text-transform: uppercase;
	font-family: 'Californian FB', 'Times New Roman', sans-serif;
	font-size: 1.3em;
	color: #19A313;
	text-align: center;
}

.philopost p {
	padding: 5px 10px 10px 10px;
	margin: 5px 10px 5px 5px;
	letter-spacing: -1px;
	word-spacing: -4px : ;
	font-family: 'Californian FB', 'Times New Roman', 'Oswald', sans-serif;
	font-size: 1.05em;
	color: #1518AD;
	text-align: justify
}

.philopost2 {
	float: none;
	width: 22%;
	padding-top: 10px;
	margin-left: 21%;
	border: solid 2px #E4337A;
	border-radius: 10px;
}

.philopost2 p {
	font-size: 0.75vw;
	text-align: center;
}

#ligne1 {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	margin: 0 auto;
	width: 58%;
}

#ligne1 ul {
	width: auto;
	border: 3px solid #6876D6;
	border-radius: 8px;
	margin: 3px ;
	padding: 15px;
	text-align: center;
	background-color: #F6FCF6;
}

#ligne1 li {
	list-style: none;
	padding: 1px;
}

#ligne1 a {
   color: #1CA316 ;	
   font-size: 0.8em;
}

@media(max-width:810px){
.content-philo {
  margin-right: 30%;	
}
.content-philo .section {
  display: flex;
  flex-direction: column;
  height: auto;
}
.content-philo .section p {
  font-size: 0.75em;	
}
.philopost {
  width: 36vw;
  height: auto;
}
.philopost p {
 font-size: 1.5vw;
}
.philopost h2 {
  font-size: 1.8vw;
}
.philopost2 {
  width: 45%;
  height: auto;
  margin-left: 12%;
}
.philopost2 p {
 font-size: 1.5vw;
}
#ligne1 {
display: grid;
grid-template-columns: repeat(2, 1fr);	
width: 75%;
}
#ligne1 a {
  font-size: 1.8vw;	
}
}
@media(min-width:811px)and (max-width:1250px){
.content-philo {
  display: grid;
  width: 65%;	
}
.content-philo .section {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: auto;
  height: 80%;
}
.content-philo .section p {
  font-size: 0.78em;	
}
.philopost {
  width: auto;
  height: auto;
}
.philopost p {
 font-size: 1.3vw;
}
.philopost h2 {
  font-size: 85%;
}
.philopost2 {
  width: 35%;
  height: auto;
  margin-left: 18%;
}
.philopost2 p {
 font-size: 0.65em;
}
#ligne1 {
display: grid;
grid-template-columns: repeat(2, 1fr);
width: 65%;
}
#ligne1 a {
  font-size: 1em;	
}
}
@media(min-width:1251px)and (max-width:1350px){
.content-philo {
  width: 65%;
  margin-right: ;	
}
.philopost2 {
  width: 25%;
  height: auto;
  margin-left: 18%;
}
.philopost2 p {
 font-size: 0.65em;
}
#ligne1 {
width: 65%;
}
#ligne1 a {
  font-size: 75%;	
}

