:root{
	/* sizes */
	--smallWidth: 550px;
	--largeWidth: 1150px;

	--maxWidth: var(--largeWidth);

	--fontSizeTitleBig: 33px;
	--fontSizeTitle: 25px;
	--fontSizeTitleSmall: 20px;
	--fontSizeNormal: 19px;
	--fontSizeSmall: 15px;
	--fontSizeMini: 12px;

	--fontSizeMenu: 13px;

	--fontHeader: bold 10px soleil, sans-serif;
}

body{
	--vw100: 100vw;
}

body, html{
	margin: 0;
	padding: 0;
	font-family: sans-serif;
	/*overflow-x: hidden;*/
}

input, textarea, select{
	font-family: soleil, sans-serif;
}

.debug{
	position: fixed;
	bottom: 0;
	left: 0;
/*	pointer-events: none;*/
	background: rgba(255, 255, 255, .5);
	padding: 5px;
	font-size: 10px;
	-webkit-backdrop-filter: saturate(1.2) blur(5px);
	border-top-right-radius: 5px;

	z-index: 999;
}

	.debug>pre{
		display: none;
		max-height: 50vh;
		max-width: 90vw;
		overflow: auto;
	}
	.debug:hover>pre{
		display: block;
	}

.debug:hover{
/*	opacity: 0;*/
}


#app{
	font-family: soleil, sans-serif;
	counter-reset: numberedHrCounter;

	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.js .clickable{
	cursor: pointer;
}

#app.loading{
	opacity: .8;
	pointer-events: none;
}

	h1,
	h1>span.autologo::before{
		font-size: 22.5px;	
	}
	h2,
	h2>span.autologo::before{
		font-size: 33px;
	}
	h3,
	h3>span.autologo::before{
		font-size: 17.5px;
	}
	h4,
	h4>span.autologo::before{
		font-size: 18px;		
	}
	h5,
	h5>span.autologo::before{
		font-size: 12.5px;
	}
	h6,
	h6>span.autologo::before{
		font-size: 11px;
	}

	h1>span.autologo,
	h2>span.autologo,
	h3>span.autologo,
	h4>span.autologo,
	h5>span.autologo,
	h6>span.autologo{
		/* do something with that */
		display: block;
		font-size: 0 !important;
	}

		h1>span.autologo::before,
		h2>span.autologo::before,
		h3>span.autologo::before,
		h4>span.autologo::before,
		h5>span.autologo::before,
		h6>span.autologo::before{
			/* do something with that */
		}

#app>ul.msg_site{
	display: blok;
	margin: 0;
	padding: 0;

	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);

	background: red;
	color: white;

	z-index: 999;
}

	#app>ul.msg_site>li{
		display: block;
		margin: 20px;
		padding: 0;
	}

#app>ul.msg_site:hover{
	cursor: pointer;
	filter: brightness(0.9);
}

	/**
	 * HEADER
	 **/

	#app>header{
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 80px;
		background: #000000;
		color: #FFFFFF;
		text-align: center;
		z-index: 100;
		font-size: 13px;
	}

	#app.navDisabled>header,
	#app.navDisabled>header *{
		pointer-events: none;
	}

		#app>header>div{
			position: relative;
			max-width: var(--maxWidth);
			margin: 0 auto;
			height: 100%;
			width: 96%;
			text-align: right;
		}

			#app>header>div::before,
			#app>header>div::after{
				content: "";
				display: inline-block;
				vertical-align: middle;
				height: 100%;
				width: 1px;
			}


			#app>header>div>*{
				display: inline-block;
				vertical-align: middle;
			}

			#app>header>div>a{
				position: absolute;
				top: 0;
				left: 0;
				width: 80px;
				height: 80px;
				line-height: 80px;
				text-indent: -1000px;
				color: #FFF;
				text-decoration: none;
				font-size: 0;
				color: transparent;
				line-height: 0;
				text-align: left;
			}

				#app>header>div>a::before{
					line-height: 80px;
					font-size: 50px;
					color: #FFF;
					text-indent: 0;
					display: block;
				}

			#app>header>div>nav{
				position: relative;
				text-align: right;
				/*width: 80%;*/
				/*max-width: var(--maxWidth);*/
				width: calc(100% - 100px);
				box-sizing: border-box;
				/*padding-left: 80px;*/
			}

				#app>header>div>nav ul{
					isolation: isolate;
					list-style: none;
					display: inline-block;
					vertical-align: middle;
					margin: 0;
					padding: 0;
				}

					#app>header>div>nav ul li{
						position: relative;
						display: inline-block;
						vertical-align: top;
						margin: 0 5px;
						padding: 0;
						text-align: left;
					}

						#app>header>div>nav ul a{
							position: relative;
							display: block;
							color: inherit;
							text-decoration: none;
							padding: 10px;
						}

							#app>header>div>nav ul a>span{
								display: inline-block;

								background-size: 100% 4px;
								/*background-size: calc(100% - 20px) 3px;*/
								background-repeat: no-repeat;
								background-position: 50% 100%;
							}

								#app>header>div>nav ul a>span>span.bubble{
									position: absolute;
									top: 0;
									right: 0;
									/*transform: translate(25%, -50%);*/
									background-color: red;
									color: #FFF;
									border-radius: 5px;
									font-size: 10px;
									padding: 0 .5em;
									background-image: none;
								}
								#app>header>div>nav ul a>span>span.bubble:empty{
									display: none;
								}

						#app>header>div>nav>ul>li>a:hover{

						}

							#app>header>div>nav>ul>li>a:hover>span{
								background-image: linear-gradient(#393939, #393939);
							}

						#app>header>div>nav>ul>li.active>a{

						}

							#app>header>div>nav>ul>li.active>a>span{
								background-image: linear-gradient(#0d5c74, #0d5c74);
							}

						#app>header>div>nav ul li>form{
							display: flex;
							position: absolute;
							top: 0;
							right: 0;
							bottom: 0;
							align-items: center;
							display: none;
						}

							#app>header>div>nav ul li>form>input{
								background: transparent;
								color: #FFF;
								border-radius: 0;
								border:0;
								border-bottom: 2px solid #FFFFFF;
								width: 0;
								margin: 0 10px;
								font-size: 15px;
								padding-right: 35px;
							}
							#app>header>div>nav ul li>form>input:focus{
								outline:0;
								border-color:#0d5c74;
							}

							#app>header>div>nav ul li>form>button{
								font-size: 0;
								padding: 0;
								margin: 0;
								width: 36px;
								height: 100%;
							}

							#app>header>div>nav ul li>form>button.icon-close{
								width: 12px;
								height: 12px;
								opacity: .5;
								border-radius: 100%;
								margin-left:-40px;

								background: transparent;

								position: relative;
								border:none;

								cursor: pointer;
							}
							#app>header>div>nav ul li>form>button.icon-close:hover{
								opacity: 1;
								color: #0d5c74;
							}

								#app>header>div>nav ul li>form>button.icon-close::before{
									display: block;
/*									background:#FFFFFF;*/
									color: #FFFFFF;
									width: 12px;
									height: 12px;
									text-align: center;
									line-height: 12px;
									border-radius: 100%;

									font-size: 8px;
								}
								#app>header>div>nav ul li>form>button.icon-close:hover::before{
									
								}

							#app>header>div>nav ul li>form>button.icon-search{
								cursor: pointer;
								background: #000000;
								color:#EEEEEE;
							}

								#app>header>div>nav ul li>form>button.icon-search::before{
									font-size: 15px;
								}

							#app>header>div>nav ul li>form>button.icon-search:hover{
								background: #000000;
							}

								#app>header>div>nav ul li>form>button.icon-search:hover::before{
									color: #FFFFFF;
									font-size: 17px;
								}


					#app>header>div>nav ul.searching>li{
						pointer-events: none;
						transition:opacity .3s;
					}
					#app>header>div>nav ul.searching>li.search{
						opacity: 1;
						pointer-events: auto;
					}

						#app>header>div>nav ul.searching>li.search>form{
							display: flex;
							transition:opacity .3s;
							will-change: opacity;
							isolation: isolate;
							opacity: 0;
						}

							#app>header>div>nav ul.searching>li.search>form input{
								transition: width .3s;
							}

					#app>header>div>nav ul.searching.go>li{
						opacity: .1;
					}
					#app>header>div>nav ul.searching.go>li.search{
						opacity: 1;
					}

						#app>header>div>nav ul.searching.go>li.search>form{
							opacity: 1;
						}

							#app>header>div>nav ul.searching.go>li.search>form>input{
								width: 230px;
							}

					#app>header>div>nav ul li.parent{

					}

						#app>header>div>nav ul li.parent::before{
							content: "";
							display: block;
							position: absolute;
							top: 100%;
							left: 0;
							width: 100%;
							height: 35px;
							display: none;
						}


						#app>header>div>nav ul li.parent::after{
							content: "";
							display: block;
							position: absolute;
							top: 35px;
							left: 50%;
							width: 20px;
							height: 20px;
							/*box-sizing: border-box;*/
							background: #FFF;
							transform-origin: 0	0;
							transform: scaleY(.65) rotate(45deg);
							/*border-top-left-radius: 5px;*/
							border-bottom-right-radius: 100%;
							/*border-left: 2px solid #e8e8e9;*/
							/*border-top: 2px solid #e8e8e9;*/

							z-index: 2;
							opacity: 0;

							/*transform: translateY(-15px) scaleY(.65) rotate(45deg);*/
							transition: opacity .1s .2s;
						}

						#app>header>div>nav ul li.parent>a{

						}

						#app>header>div>nav ul li.parent>a.nolink{
							cursor: default;
						}

							#app>header>div>nav ul li.parent>a::after{
								padding-left: .5em;
								/*content: "▾";*/
								color: #FFF;
								font-size: 10px;
								display: inline-block;
								vertical-align: middle;

								content: "\e91a";
								font-family: 'icomoon' !important;
								font-size:.35em
							}


						#app>header>div>nav ul li.parent>ul{
							position: absolute;
							top: 45px;
							left: 50%;
							background: #FFF;
							color: #000;
							/*padding: 20px;*/
							min-width: 100%;
							min-width: calc(100% + 20px);
							border-radius: 5px;
							box-shadow: 0 0 0 2px #e8e8e9;
							z-index: 2;

							max-height: 0;
							opacity: 0;
							overflow: hidden;
							box-shadow: 0 0 20px rgba(0,0,0,0.5);
							transform: ;

							transform-origin: 50% 0;
							transform: translateX(-50%) translateY(-20px);

							transition: max-height 0.01s .5s, opacity .3s .2s, transform .5s;
							pointer-events: none;

							padding: 0 30px;
						}

					#app>header>div>nav ul li.parent:hover{

					}

						#app>header>div>nav ul li.parent:hover::before{
							display: block;
						}

						#app>header>div>nav ul li.parent:hover::after{
							opacity: 1;
							transition: opacity .3s .2s;

						}

						#app>header>div>nav ul li.parent:hover>a{

						}

						#app>header>div>nav ul li.parent:hover>ul{
							max-height: 300px;
							max-height: calc((100vh - 80px) / 2);
							opacity: 1;
							overflow: hidden;

							transform-origin: 50% 0;
							transform: translateX(-50%) translateY(0);

							transition: opacity .3s, transform .3s;
							transition-timing-function: ease-out;

							pointer-events: auto;
						}


/*							#app>header>div>nav ul li.parent ul::before{
								content: "";
								display: block;
								background: fuchsia;
								width: 50px;
								height: 50px;
								border-radius: 3px;
								position: absolute;
								top: 0;
								left: 0;
								transform: rotate(45deg);
							}*/

							#app>header>div>nav ul li.parent>ul>li{
								display: block;
								margin: 0;
								/*margin: 0 -20px;*/
							}

							#app>header>div>nav ul li.parent>ul>li:first-child{
								padding-top: 20px;
							}
							#app>header>div>nav ul li.parent>ul>li:last-child{
								padding-bottom: 20px;
							}

								#app>header>div>nav ul li.parent>ul>li a{
									display: block;
									padding: 5px 0;
									line-height: 18px;
									white-space: nowrap;
								}

									#app>header>div>nav ul li.parent>ul>li a>span{
										background-size: 100% 4px;
										/*background-size: calc(100% - 20px) 3px;*/
										background-repeat: no-repeat;
										background-position: 50% 100%;
									}

								#app>header>div>nav ul li.parent>ul li>a:hover{
									
								}

									#app>header>div>nav ul li.parent>ul li>a:hover>span{
										background-image: linear-gradient(#DBDBDB, #DBDBDB);	
									}

								#app>header>div>nav ul li.parent>ul li.active>a{

								}
									#app>header>div>nav ul li.parent>ul li.active>a>span{
										background-image: linear-gradient(#0d5c74, #0d5c74);
									}

						#app>header>div>nav ul li.parent>ul.editions{
							white-space: nowrap;
							left: -30px;
							transform: translateY(-20px);
							display: flex;
						}

							#app>header>div>nav ul li.parent>ul.editions>li{
								display: inline-block;
								vertical-align: top;
								width: 165px;
								padding: 0 30px 0 32px;
								margin: 20px 0;

								background-image: linear-gradient(#DBDBDB, #DBDBDB);
								background-repeat: no-repeat;
								background-position: 0 0;
								background-size: 2px 100%;
							}

							#app>header>div>nav ul li.parent>ul.editions>li:first-child{
								background: none;
								padding-left: 0;
							}

							#app>header>div>nav ul li.parent>ul.editions>li:last-child{
								padding-right: 0;
							}

								#app>header>div>nav ul li.parent>ul.editions>li>span{
									display: block;
									background: linear-gradient(#000, #000);
									background-repeat: no-repeat;
									background-position: 0 50%;
									background-size: 100% 2px;
									margin-bottom: 11px;
									
									line-height: 12px;
								}

									#app>header>div>nav ul li.parent>ul.editions>li>span>span{
										display: inline-block;
										background: #FFF;
										padding-right: 15px;

										text-transform: uppercase;
										font-weight: bold;
										font-size: 12px;
									}

								#app>header>div>nav ul li.parent>ul.editions>li>ul{
									display: block;
								}

									#app>header>div>nav ul li.parent>ul.editions>li>ul>li{
										display: block;
										margin: 0;
									}

										#app>header>div>nav ul li.parent>ul.editions>li>ul>li>a{
											padding: 5px 0;
											white-space: normal;
										}

											#app>header>div>nav ul li.parent>ul.editions>li>ul>li>a>span{
												display: inline;
											}

							#app>header>div>nav ul li.parent>ul.editions{

							}

						#app>header>div>nav ul li.parent:hover>ul.editions{
							transform: translateY(0);
						}

					#app>header>div>nav ul li.link4typesearch>a,
					#app>header>div>nav ul li.link4typesearch_sitesearch360>a,
					#app>header>div>nav ul li.link4typesearch_algolia>a,
					#app>header>div>nav ul li.link4typecart>a,
					#app>header>div>nav ul li.link4typeuser>a{
						color: transparent;
						/*width: 20px;*/
						text-align: center;
						/*overflow: hidden;*/
						font-size: 0;
					}

						#app>header>div>nav ul li.link4typesearch>a::before,
						#app>header>div>nav ul li.link4typesearch_sitesearch360>a::before,
						#app>header>div>nav ul li.link4typesearch_algolia>a::before,
						#app>header>div>nav ul li.link4typecart>a::before{
							background-size: 100% 2px;
							background-repeat: no-repeat;
							background-position: 100% 100%;
						}

						#app>header>div>nav ul li.link4typesearch>a:hover::before,
						#app>header>div>nav ul li.link4typesearch_sitesearch360>a:hover::before,
						#app>header>div>nav ul li.link4typesearch_algolia>a:hover::before,
						#app>header>div>nav ul li.link4typecart>a:hover::before{
							/*color: #393939;*/
							background-image:linear-gradient(#393939, #393939);
/*							border-bottom: 2px solid #393939;							*/
						}
						#app>header>div>nav ul li.link4typesearch.active>a::before,
						#app>header>div>nav ul li.link4typesearch_sitesearch360.active>a::before,
						#app>header>div>nav ul li.link4typesearch_algolia.active>a::before,
						#app>header>div>nav ul li.link4typecart.active>a::before{
							/*color: #0d5c74;*/
							background-image:linear-gradient(#0d5c74, #0d5c74);
/*							border-bottom: 2px solid #0d5c74;*/
						}


						#app>header>div>nav ul li.link4typesearch>a::before,
						#app>header>div>nav ul li.link4typesearch_sitesearch360>a::before,
						#app>header>div>nav ul li.link4typesearch_algolia>a::before,
						#app>header>div>nav ul li.link4typecart>a::before,
						#app>header>div>nav ul li.link4typeuser>a::before{
							font-size: 15px;
							line-height: 19px;
							/*content: "[?]";*/
							color: #FFFFFF;
							display: inline-block;
							vertical-align: middle;
						}

						#app>header>div>nav ul li.link4typeuser>a{
							padding: 7px 10px;
						}

					#app>header>div>nav ul li.link4typeuser>a,
					#app>header>div>nav ul li.link4typedonation>a,
					#app>header>div>nav ul li.link4typesubscription>a{
						border: 2px solid white;
						border-radius: 5px;
						font-weight: bold;
						line-height: 1em;
					}

					#app>header>div>nav ul li.link4typesubscription>a{
						border-radius: 5px;
						/*background: #0d5c74;
						border-color: #0d5c74;*/
						background: #FDFC0A;
						border-color: #FDFC0A;
						color:#000000;
					}
					#app>header>div>nav ul li.link4typesubscription:hover>a{
						box-shadow: inset 0 0 0 1px rgba(0,0,0,0.25);
					}

					#app>header>div>nav ul li.link4typeuser:hover>a,
					#app>header>div>nav ul li.link4typedonation:hover>a{
						box-shadow: inset 0 0 0 2px #000, inset 0 0 0 3px #393939;
					}

						#app>header>div>nav ul li.link4typeuser>a>span,
						#app>header>div>nav ul li.link4typedonation>a>span,
						#app>header>div>nav ul li.link4typesubscription>a>span{
							background-image: none;
						}


					#app>header>div>nav ul li.link4typeuser.active>a,
					#app>header>div>nav ul li.link4typedonation.active>a{
						box-shadow: inset 0 0 0 2px #000, inset 0 0 0 3px #FFFFFF;
					}

					#app>header>div>nav ul li.link4typesubscription.active>a{
						box-shadow: inset 0 0 0 1px #000;
					}

			#app>header>div>nav.mobile{
				display: none;
			}

			#app>header>div>#burger{
				position: absolute;
				top: 50%;
				right: 10px;
				width: 50px;
				height: 50px;
				transform: translateY(-50%);
				cursor: pointer;

				isolation: isolate;

				display: none;
			}

				#burger::before,
				#burger::after,
				#burger>a,
				#burger>a::before,
				#burger>a::after {
					content: "";
					position: absolute;
					top: 24px;
					left: 5px;
					width: 40px;
					height: 1px;
					background: #FFFFFF;

					transition: transform .5s, opacity .5s;
				}

				#burger>a::before,
				#burger>a::after {
					top: 0;
					left: 0;
				}


				#burger::before{
					/*transform: rotate(45deg);*/
					transition: transform .5s;
				}
				#burger::after{
					/*transform: rotate(-45deg);*/
					transition: transform .5s;
				}
				#burger>a{
					color: transparent;
					background: transparent;
				}
				#burger>a::before{
					transform: translateY(7px);
					transition: transform .5s;
				}
				#burger>a::after{
					transform: translateY(-7px);
					transition: transform .5s;
				}

	#app.smallHeader>header{
		height: 50px;
	}

			#app.smallHeader>header>div>a{
				width: 50px;
				height: 50px;
				line-height: 50px;
			}

				#app.smallHeader>header>div>a::before{
					line-height: 50px;
					font-size: 30px;
				}

			#app.smallHeader>header>div>nav{
				/*padding-left: 50px;*/
			}

				#app.smallHeader>header>div>nav ul li{

				}

				#app.smallHeader>header>div>nav ul li.link4typesubscription{
					display: none;
				}

					#app.smallHeader>header>div>nav ul a{
						padding: 5px 10px;
						line-height: 20px;
					}

					#app.smallHeader>header>div>nav ul li.link4typeuser>a{
						padding: 2px 10px;
					}


	#app.smallHeader>header+main{
		padding-top: 50px;
	}

#app.subHeader{

}

	#app.subHeader>main{
		position: sticky;	
		left: 0;
		z-index: 1;
	}

		#app.subHeader>main>section:first-child,
		#app.subHeader>main>#mainSubmenu+section{
			margin-top: 60px;
		}

			#app.subHeader ul#mainSubmenu{
				display: block;
				margin: 0;
				padding: 0;

				position: fixed;
				top: 80px;
				left: 0;
				right: 0;
				text-align: center;
				white-space: nowrap;
				overflow: auto;

				height: 60px;
				background: #FFF;
				box-shadow: 0 0 0 1px #dbdbdb;

				border-radius: 4px;

				z-index: 10;

				font-family: soleil, sans-serif;
				text-transform: uppercase;
				font-size: 11px;
				font-weight: 600;

				-ms-overflow-style: none;  /* IE and Edge */
				scrollbar-width: none;  /* Firefox */
			}

			#app.subHeader ul#mainSubmenu::-webkit-scrollbar{
				display: none;
			}

				#app.subHeader ul#mainSubmenu::before,
				#app.subHeader ul#mainSubmenu::after{
					content: "";
					display: block;
					position: absolute;
					top: 0;
					left: 0;
					vertical-align: middle;
					height: 60px;

					display: inline-block;
					width: 30px;
					position: sticky;
					background: red;
				}

				#app.subHeader ul#mainSubmenu::before{
					left: 0;
					background: linear-gradient(to right, rgba(255,255,255,1), rgba(255,255,255,0));
				}

				#app.subHeader ul#mainSubmenu::after{
					right: 0;
					background: linear-gradient(to left, rgba(255,255,255,1), rgba(255,255,255,0));
				}


				#app.subHeader ul#mainSubmenu>li{
					white-space: nowrap;
					display: inline-block;
					vertical-align: middle;
					margin: 0;
					padding: 0 12px;
				}
				#app.subHeader ul#mainSubmenu>li:first-child{
					padding-left: 0;
				}
				#app.subHeader ul#mainSubmenu>li:last-child{
					padding-right: 0;
				}

					#app.subHeader ul#mainSubmenu>li>a{
						color: inherit;
						text-decoration: none;
						background-repeat: no-repeat;
						background-position: 0 100%;
						background-size: 100% 2px;
					}

				#app.subHeader ul#mainSubmenu>li.active{
					/*text-decoration: underline;*/
				}

					#app.subHeader ul#mainSubmenu>li.active>a{
						background-image: linear-gradient(#000000, #000000);
					}


	/**
	 * FOOTER
	 **/

	#app>#newsletterFooter{
		background: #272F3B;
		color: #FFF;
		padding: 45px 0;
	}

		#app>#newsletterFooter>div{
			/*display: flex;*/
			text-align: center;

			position: relative;
			max-width: var(--maxWidth);
			width: 96%;
			margin: 0 auto;
			/*height: 100%;*/
		}

			#app>#newsletterFooter>div>div{
				/*flex-grow: 1;*/
				display: inline-block;
				/*align-items: center;*/
				padding: 0 20px;
				font-size: 19px;
				font-style: italic;
			}

				#app>#newsletterFooter>div>div>span{
					font-size: 0;
				}

					#app>#newsletterFooter>div>div>span::before{
						font-size: 25px;
						/*display: block;*/
						padding-right: .25em;
					}

				#app>#newsletterFooter>div>div>a{
					background: #0d5c74;
					color: #FFF;
					font-weight: normal;
					padding: 0 1em;
					border-color: #0d5c74;
					font-style: normal;
				}


	#app>footer{
		position: relative;
		background: #000;
		color: #FFF;
		z-index: 99;
		padding: 50px 0;

		text-align: center;
	}

	#app.navDisabled>footer,
	#app.navDisabled>footer *{
		pointer-events: none;
	}


		#app>footer>div{
			display: flex;

			position: relative;
			max-width: var(--maxWidth);
			width: 96%;
			margin: 0 auto;
			/*height: 100%;*/
			text-align: left;
		}

			#app>footer>div>*{
				padding: 0 25px;
				box-sizing: border-box;
			}

			#app>footer>div>.icon-logo{
				order: 1;
				/*width: 45px;*/
				width: 70px;
				padding-left: 0;

				text-indent: -1000px;
				font-size: 0;
				color: transparent;
				line-height: 0;
			}

				#app>footer>div>.icon-logo::before{
					display: block;
					font-size: 45px;
					line-height: 45px;
					text-indent: 0;
					color: #FFFFFF;
				}


			#app>footer>div>.partners{
				order: 3;
				width: 60%;
				/*flex: 3 3 auto;*/

				font-family: utopia-std-display, serif;
				font-size: 19px;

				padding-bottom: 100px;
				padding-right: 0;
			}


				#app>footer>div>.partners h2{
					font: var(--fontHeader);
					text-transform: uppercase;
					/*font-size: 9px;*/
					font-weight: normal;
					margin: 0;
					padding: 0;
					/*font-family: soleil, sans-serif;*/
				}

				#app>footer>div>.partners img{
					margin: 1em 0;
				}

				#app>footer>div>.partners img+img{
					margin-left: 1em;
				}



			#app>footer>div>ul.footerLinks{
				order: 2;
				width: 40%;
				/*flex: 2 2 auto;*/

				position: relative;
				display: block;
				list-style: none;
				margin: 0;
				padding-top: 0;
				padding-bottom: 0;
				/*padding: 0;*/
				columns: 2;
				column-gap: 50px;
				margin-top: -11px;

				line-height: 20px;
				/*padding-right: 0;*/
			}

				#app>footer>div>ul.footerLinks::before{
					content: "";
					position: absolute;
					top: 0;
					left: 0;
					width: 100%;
					height: 2px;
					background: #000;
				}

				#app>footer>div>ul.footerLinks>li{
					border-top: 1px solid #393939;
					padding: 10px 0;
					page-break-inside: avoid;
					break-inside: avoid;
				}

					#app>footer>div>ul.footerLinks a{
						display: block;
						font-weight: 500;
						font-size: 13px;
						color: inherit;
						text-decoration: none;
					}

					#app>footer>div>ul.footerLinks>li ul{
						display: block;
						list-style: none;
						margin: 0;
						padding: 0;
					}

						#app>footer>div>ul.footerLinks>li ul>li{

						}

				#app>footer>div>ul.footerLinks>li.parent{
					
				}

					#app>footer>div>ul.footerLinks>li.parent ul.editions{
						
					}

						#app>footer>div>ul.footerLinks>li.parent ul.editions>li{
							border-top: 1px solid #393939;
							padding: 10px 0;
						}
						#app>footer>div>ul.footerLinks>li.parent ul.editions>li:first-child{
							border-top: none;
							padding-top: 0;
						}

						#app>footer>div>ul.footerLinks>li.parent>a,
						#app>footer>div>ul.footerLinks>li.parent ul.editions>li>span{
							font: var(--fontHeader);
							text-transform: uppercase;
							/*font-size: 9px;*/
							font-weight: normal;
						}

			#app>footer>div>.social{
				display: block;
				list-style: none;
				margin: 0;
				padding: 0;

				position: absolute;
				bottom: 0;
				right: 0;
				width: calc((100% - 45px - 100px) * .6);
				padding-top: 10px;
				border-top: 1px solid #393939;
				line-height: 30px;
				padding-right: 0;
			}

				#app>footer>div>.social>li{
					display: inline-block;
					vertical-align: top;
					margin-right: 10px;
					width: auto;
					height: 30px;
					overflow: hidden;
				}

					#app>footer>div>.social>li>a{
						display: block;
						color: #FFF;
						font-size: 0;
						color: transparent;
					}

						#app>footer>div>.social>li>a::before{
							display: block;
							font-size: 20px;
							color: #FFF;
						}

			#app>footer>div>.copyright{
				padding: 0;
				position: absolute;
				bottom: 11px; /*was 51px;*/
				right: 0;
				font-size: 9px;
				text-transform: uppercase;
				width: auto;
				text-align: right;
			}

				#app>footer>div>.copyright>a{
					color: inherit;
				}



	/**
	 * MAIN
	 **/

	#app>main{
		padding-top: 80px;
		font-family: utopia-std-display, serif;

		font-size: 19px; /* was 15, them 17 */
		/*line-height: 20px;*/

		--accentColor: #999999;
		--accentForeground: #000000;
	}

		/**
		 * 	Default structure
		 **/

		#app>main>section{
			--bgcolor: #FFFFFF;
			--fgcolor: #000000;

			/* structure */
			background: #FFF;
			/*padding: 50px 0;*/
		}

			#app>main>section>div{
				max-width: var(--maxWidth);
				width: 96%;
				/*width: calc(100vw - 128px);*/
				padding: 70px 0;
				margin: 0 auto;
			}

			.inArticle #app>main>section>div{
				padding: 50px 0;
			}

			#app>main>section.lessPadding>div{
				padding: 25px 0;
			}

				#app>main>section>div>div.zone{
					/* zone */
				}

					#app>main>section>div>div.zone>div{
						/* module */
					}

					#app>main>section>div>div.zone>div+div{
						margin-top: 1em;
					}

		#app>main>section:not([class*="style_"]),
		#app>main>section.style_default{
			background: #FFFFFF;
		}

			#app>main>section.style_default+section.style_default>div,
			#app>main>section:not([class*="style_"])+section.style_default>div,
			#app>main>section.style_default+section:not([class*="style_"])>div,
			#app>main>section:not([class*="style_"])+section:not([class*="style_"])>div{
				padding-top: 0 !important;
			}

		#app>main>section.style_darkBlue{
			--bgcolor: #1a2029;
			--fgcolor: #FFFFFF;

			background: #1a2029;
			color: #FFFFFF;
		}

			#app>main>section.style_darkBlue+section.style_darkBlue>div{
				padding-top: 0 !important;
			}

		#app>main>section.style_grey{
			--bgcolor: #e8e8e9;

			background: #e8e8e9;
		}

			#app>main>section.style_grey+section.style_grey>div{
				padding-top: 0 !important;
			}

/*		#app>main>section.style_darkGrey{
			--bgcolor: #343541;
			--fgcolor: #FFFFFF;

			background: #343541;
			color: #FFFFFF;
		}

			#app>main>section.style_darkGrey+section.style_darkGrey>div{
				padding-top: 0 !important;
			}*/

		#app>main>section.style_black{
			--bgcolor: #000000;
			--fgcolor: #FFFFFF;

			background: #000000;
			color: #FFFFFF;
		}

			#app>main>section.style_black+section.style_black>div{
				padding-top: 0 !important;
			}

		#app>main>section.style_accent{
			--bgcolor: var(--accentColor);
			--fgcolor: var(--accentForeground);


			background: var(--accentColor);
			color: var(--accentForeground);
		}

			#app>main>section.style_accent+section.style_accent>div{
				padding-top: 0 !important;
			}




			#app>main.inArticle>section.nbZone1.lm_text.style_default:not(.opt_noMarginUnder)+section.nbZone1.fm_text.style_default,
			#app>main.inArticle>section.nbZone1.lm_text.style_accent:not(.opt_noMarginUnder)+section.nbZone1.fm_text.style_accent,
			#app>main.inArticle>section.nbZone1.lm_text.style_black:not(.opt_noMarginUnder)+section.nbZone1.fm_text.style_black,
			#app>main.inArticle>section.nbZone1.lm_text.style_grey:not(.opt_noMarginUnder)+section.nbZone1.fm_text.style_grey,
			#app>main.inArticle>section.nbZone1.lm_text.style_darkBlue:not(.opt_noMarginUnder)+section.nbZone1.fm_text.style_darkBlue{
				margin-top: -70px;
				margin-top: calc(-70px + 1em);
			}



		/**
		 * 	Single zone section
		 **/

		#app>main>section.nbZone1{
			/* structure */
		}

			#app>main>section.nbZone1>div{

			}

				#app>main>section.nbZone1>div>div.zone{
					/* zone */
				}

					#app>main>section.nbZone1>div>div.zone>div{
						/* module */
					}

		/**
		 * 	Special zones ("popup" out of popup, like sign in)
		 **/

		#app>main>section.size_special{
			height: 500px;
			min-height: calc(100vh - 80px);
			/*text-align: center;*/
			display: flex;
			align-items: center;
		}

			/*
			#app>main>section.size_special::before,
			#app>main>section.size_special::after{
				content: "";
				display: inline-block;
				width: 1px;
				height: 100%;
				vertical-align: middle;
			}
			*/

			#app>main>section.size_special>div{
				/*display: inline-block;*/
				/*vertical-align: middle;*/
				/*text-align: left;*/
			}

				#app>main>section.size_special>div>div.zone{
					/* zone */
					border-radius: 20px;
					/*overflow: hidden;*/
				}

					#app>main>section.size_special>div>div.zone>div{
						/* module */
					}

		/**
		 * 	Special zones (register)
		 **/

		#app>main>section.size_special2{
			/*height: 500px;*/
			/*min-height: calc(100vh - 80px);*/
			/*text-align: center;*/
			display: flex;
			align-items: center;
		}

			/*
			#app>main>section.size_special2::before,
			#app>main>section.size_special2::after{
				content: "";
				display: inline-block;
				width: 1px;
				height: 100%;
				vertical-align: middle;
			}
			*/

			#app>main>section.size_special2>div{
				/*display: inline-block;*/
				/*vertical-align: middle;*/
				/*text-align: left;*/
				padding: 0;
				height: 100%;
				align-items: center;

				/*padding: 20px 0;*/
			}

				#app>main>section.size_special2>div::before{
					display: block;
					content: "";
					width: 0;
					height: calc(100vh - 80px);
				}

				#app>main>section.size_special2>div>div.zone{
					/* zone */
					/*overflow: hidden;*/
				}

					#app>main>section.size_special2>div>div.zone>div{
						/* module */
					}

				#app>main>section.size_special2>div>div.zone.zone1{
					padding-top: 20px;
					padding-bottom: 20px;
				}

				#app>main>section.size_special2>div>div.zone.zone2{
					/*height: 100%;*/
					overflow: visible;
					align-self: stretch;
				}

					#app>main>section.size_special2>div>div.zone.zone2>div{
						margin-right: calc((var(--vw100) - var(--maxWidth)) / -2);
						background: inherit;

						height: 100%;
						display: flex;
						align-items: center;

						height: calc(100vh - 80px);
						max-height: none;
						position: sticky;
						top: 80px;
					}

						#app>main>section.size_special2>div>div.zone.zone2>div.m_slider.userSlider>div{
							width: 100%;
						}

						#app>main>section.size_special2>div>div.zone.zone2>div.m_slider>div>ul.slider>li>div>div.text{
							display: flex;
							flex-direction: column;
						}

							#app>main>section.size_special2>div>div.zone.zone2>div.m_slider>div>ul.slider>li>div>div.text>*{
								flex-grow: 0;
							}

							#app>main>section.size_special2>div>div.zone.zone2>div.m_slider>div>ul.slider>li>div>div.text>img{
								flex-grow: 1;
								flex-shrink: 1;
								max-height: 250px;
							}

							#app>main>section.size_special2>div>div.zone.zone2>div.m_slider>div>ul.slider>li>div>div.text>h2,
							#app>div.popup>div>section.size_special2>div>div.zone.zone2>div.m_slider>div>ul.slider>li>div>div.text>h2{
								margin: 0;
								font-size: 22px;
								margin-bottom: 1em;
								line-height: 1.2em;
							}
							#app>div.popup>div>section.size_special2>div>div.zone.zone2>div.m_slider>div>ul.slider>li>div>div.text>img{
								max-height: 250px;
								background-size: contain;
							}

					#app>main:not(.p_user_signup)>section.size_special2>div>div.zone.zone2>div.m_image_full{
						margin-left: -32px;
						margin-top: 0;
						margin-bottom: 0;
					}

						#app>main>section.size_special2>div>div.zone.zone2>div.m_image_full>div,
						#app>main>section.size_special2>div>div.zone.zone2>div.m_image_full>div>ul,
						#app>main>section.size_special2>div>div.zone.zone2>div.m_image_full>div>ul>li,
						#app>main>section.size_special2>div>div.zone.zone2>div.m_image_full>div>ul>li>div.img,
						#app>main>section.size_special2>div>div.zone.zone2>div.m_image_full>div>ul>li>div.img>img{
							height: 100%;
							max-height: calc(100vh - 80px);
						}

			#app>main>section.nbZone1.fm_product,
			#app>main>section.nbZone1.fm_slider{
				overflow: hidden;
			}

		/**
		 * 	Full size section
		 **/

		#app>main>section.size_full{
			/* structure */
		}

			#app>main>section.size_full>div{
				max-width: 100%;
			}

				#app>main>section.size_full>div>div.zone{
					/* zone */
				}

					#app>main>section.size_full>div>div.zone>div{
						/* module */
					}

		/**
		 * 	Small size section
		 **/

		#app>main>section.size_small{
			/* structure */
			--maxWidth: var(--smallWidth);
		}

			#app>main>section.size_small>div{

			}

				#app>main>section.size_small>div>div.zone{
					/* zone */
				}

					#app>main>section.size_small>div>div.zone>div{
						/* module */
						/*text-align: center;*/
					}

		/**
		 * 	Full size section
		 **/

		#app>main>section.size_header{
			/* structure */
			position: relative;
		}

			#app>main>section.size_header>div{
				align-items: center;
				padding: 0;
			}

				#app>main>section.size_header>div>div.zone{
					/* zone */
				}

					#app>main>section.size_header>div>div.zone>div{
						/* module */
					}

			#app>main>section.size_header:first-child::after{
				position: absolute;
				/*content: "⬇";*/
				bottom: 0;
				right: 0;
				display: block;
				width: 80px;
				line-height: 80px;
				text-align: center;

				content: "\e920";
				font-family: 'icomoon' !important;

				animation: bounce 2s ease-in-out infinite alternate;
			}
			@keyframes bounce { 0% { transform: translateY(-7px); } 100% { transform: translateY(7px); } }


			#app>main>section.size_header:last-child::after{
				display:none;
			}

/*			#app>main>section.size_header div.m_image>ul.img>li>div.img>img.fit_cover{
				max-height: none;
			}*/

		/**
		 * 	Dual zone section
		 **/


		#app>main>section.nbZone2{
			/* structure */
		}

			#app>main>section.nbZone2>div{
				display: flex;
				/*gap: 65px; /* FIX THAT */
			}

				#app>main>section.nbZone2>div>div.zone{
					/* zone 1 */
					width: 50%;
					box-sizing: border-box;
					padding-right: 32px;
				}

				#app>main:not(.p_user_signup)>section.nbZone2>div>div.zone+div.zone{
					padding-left: 32px;
				}
				#app>main>section.nbZone2>div>div.zone+div.zone{
					padding-right: 0;
				}

				#app>main>section.nbZone2>div>div.zone+div.zone{
					/* zone 2 */
				}

				#app>main>section.nbZone2.disposition_25_75>div>div.zone{
					/* zone 1 */
					width: 30%;
				}

				#app>main>section.nbZone2.disposition_25_75>div>div.zone+div.zone{
					/* zone 2 */
					width: 70%;
				}

				#app>main>section.nbZone2.disposition_75_25>div>div.zone{
					/* zone 1 */
					width: 70%;
				}

				#app>main>section.nbZone2.disposition_75_25>div>div.zone+div.zone{
					/* zone 2 */
					width: 30%;
				}


					#app>main>section.nbZone2>div>div.zone>div{
						/* module */
					}

				/* Zone with just 1 module  */

				#app>main>section.nbZone2>div>div.zone.nbModule1{
					/* zone in a dual zone layout with only 1 module*/
				}

					#app>main>section.nbZone2>div>div.zone.nbModule1>div{
						/* only module in that column */
						position: sticky;
						top: 100px; /*was 80px;*/
					}

					#app>main>section.nbZone2>div>div.zone.nbModule1.fm_image_full>div{
						top: 80px;
					}

					#app>main.inArticle>section.nbZone2>div>div.zone.nbModule1>div{
						/* only module in that column */
						/*top: 150px;*/
						top: 100px;
					}



		/**
		 * Option middle
		 */

		#app>main>section.nbZone2.opt_middle{
			/* structure */
		}

			#app>main>section.nbZone2.opt_middle>div{
				align-items: center;
			}


		/**
		 * Option center
		 */

		#app>main>section.opt_centered{
			/* structure */
		}

			#app>main>section.opt_centered>div{

			}

				#app>main>section.opt_centered>div>div.zone{
					/* zone */
				}

					#app>main>section.opt_centered>div>div.zone>div{
						/* module */
						text-align: center;
					}

					#app>main>section.opt_centered>div>div>div.m_image_default img{
						margin: 0 auto;
					}


		/**
		 * Option noMarginOver
		 */

		#app>main>section.opt_noMarginOver{
			/* structure */
		}

			#app>main>section.opt_noMarginOver>div{
				padding-top: 0 !important;
			}

				#app>main>section.opt_noMarginOver>div>div.zone{
					/* zone */
				}

					#app>main>section.opt_noMarginOver>div>div.zone>div{
						/* module */
					}


		/**
		 * Option noMarginUnder
		 */

		#app>main>section.opt_noMarginUnder{
			/* structure */
		}

			#app>main>section.opt_noMarginUnder>div{
				padding-bottom: 0 !important;
			}

				#app>main>section.opt_noMarginUnder>div>div.zone{
					/* zone */
				}

					#app>main>section.opt_noMarginUnder>div>div.zone>div{
						/* module */
					}


	/**
	 * Global settings
	 **/

	#app>main img{
		display: block;
		max-width: 100%;
		/*height: auto;*/
	}

	#app>main img.fit_contain{
		object-fit: scale-down;
		object-position: 50% 50%;
	}

	#app>main img.fit_cover{
		object-fit: cover;
		object-position: 50% 50%;
	}

	#app>main a{
		color: inherit;
	}

	#app button,
	#app a.btn,
	#app input.btn{
		display: block;
		max-width: 100%;
		height: auto;

		border-radius: 5px;
		background: #FFF;
		border: 1px solid black;
		color: #000;
		margin: 5px;

		text-align: center;
		line-height: 35px;

		font-size: 15px;
		font-family: soleil, sans-serif;
		font-weight: bold;

		text-decoration: none;
	}

	#app button:hover,
	#app a.btn:hover,
	#app input.btn:hover,
	#app button.inv,
	#app a.btn.inv,
	#app input.btn.inv{
		color: #FFF;
		background: #000;
	}

	#app button.large,
	#app a.btn.large{
		width: 100%;
		box-sizing: border-box;
		margin: 0;
	}

	#app button.invisible,
	#app a.btn.invisible{
		border-color: transparent;
		background-color: transparent;
		font-weight: normal;
	}



	#app button:hover,
	#app a.btn:hover,
	#app input.btn:hover{
		color: #000;
		background: #FFF;
	}

	#app button.invisible:hover,
	#app a.btn.invisible:hover{
		background: rgba(0,0,0,0.05);
	}



	/**
	 * .popup
	 **/

	div.popup{
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;

		z-index: 200;

		background: #000;
		background: rgba(0,0,0,0.5);

		-webkit-backdrop-filter: blur(5px);
	}

		div.popup>div{
			position: absolute;
			top: 50%;
			left: 50%;
			transform: translate(-50%, -50%);

			overflow: auto;
			width: 90%;
			height: auto;

			max-width: 500px;
			max-height: 80vh;

			background: #FFFFFF;

			border-radius: 20px;
		}
		div.popup>div.large{
			max-width: 655px;
		}
		div.popup>div.largeish{
			max-width: 900px;
		}
		div.popup>div.larger{
			max-width: 950px;
		}

			div.popup>div>.close{
				position: absolute;
				top: 25px;
				right: 25px;
				width: 20px;
				height: 20px;
				/*background: fuchsia;*/
				cursor: pointer;
				z-index: 2;
				text-align: center;
				line-height: 20px;
			}

			div.popup>div>section{

			}

				div.popup>div>section>div{

				}

					div.popup>div>section>div>div{
						padding: 50px;
					}

			div.popup>div>section.nbZone2{

			}

				div.popup>div>section.nbZone2>div{
					display: flex;
				}					

					div.popup>div>section.nbZone2>div>div{
						position: relative;
						width: 50%;
						
						box-sizing: border-box;
					}

						div.popup>div>section.nbZone2>div>div div.m_slider.userSlider{
							position: absolute;
							top: 0;
							left: 0;
							right: 0;
							bottom: 0;
						}

							div.popup>div>section.nbZone2>div>div div.m_slider.userSlider>div{
								height: 100%;
							}

								div.popup>div>section.nbZone2>div>div div.m_slider.userSlider>div>ul.slider{
									height: 100%;
								}

									div.popup>div>section.nbZone2>div>div div.m_slider.userSlider>div>ul.slider>li{
										height: 100%;
										padding: 50px;
										box-sizing: border-box;
									}

										div.popup>div>section.nbZone2>div>div div.m_slider.userSlider>div>ul.slider>li>>div>div.text>img{
											max-height: 100px;
											width: 100%;
										}

					div.popup>div>section.nbZone2>div>div.zone1{

					}

					div.popup>div>section.nbZone2>div>div.zone2{
						
					}

			div.popup>div>section.nbZone2.disposition_25_75{

			}

				div.popup>div>section.nbZone2.disposition_25_75>div{

				}					

					div.popup>div>section.nbZone2.disposition_25_75>div>div.zone1{
						width: 360px;
						flex: 1 1 auto;
					}

					div.popup>div>section.nbZone2.disposition_25_75>div>div.zone2{
						width: calc(100% - 360px);	
					}

			div.popup>div>section.nbZone2.disposition_75_25{

			}

				div.popup>div>section.nbZone2.disposition_75_25>div{

				}					

					div.popup>div>section.nbZone2.disposition_75_25>div>div.zone1{
						width: calc(100% - 360px);
					}

					div.popup>div>section.nbZone2.disposition_75_25>div>div.zone2{
						width: 360px;	
					}

		div.popup>div.mail{
			box-shadow: 0 0 0 5px fuchsia
		}

			div.popup>div.mail::before{
				display: block;
				position: absolute;
				top: 27px;
				left: 20px;
				content: "\e907";
				font-family: 'icomoon' !important;
				font-size: 18px;
			}

			div.popup>div.mail>ul{
				display: block;
				list-style: none;
				margin: 0;
				padding: 0;
			}

				div.popup>div.mail>ul>li{
					border-bottom: 1px solid #EEE;
					padding: 5px 20px;
				}

				div.popup>div.mail>ul>li:first-child{
					font-weight: bold;
					padding-top: 30px;
					padding-left: 45px;
					padding-right: 60px;
				}

			div.popup>div.mail>iframe{
				display: block;
				width: 100%;
				border: none;
				margin: 0;
				padding: 0;
				background: #FFF;
				height: calc(80vh - 150px);
				background: #888;
			}


	/**
	 * module ad
	 **/

	div.m_sda{
		padding: 50px 0;
	}

	div.m_sda:first-child{
		padding-top: 0;
	}

	div.m_sda:last-child{
		padding-bottom: 0;
	}


		div.m_sda .sda{
			text-align: center;
			color: rgba(0,0,0,0.25);
		}

			div.m_sda .sda>div{
				/*width: 100%;*/
				display: inline-block;
				background: currentColor;
				margin: 0 auto;
				overflow: hidden;

				min-width: 300px;
				min-height: 50px;
				background: #888;
			}

				div.m_sda .sda>div>a{

				}

					#app>main div.m_sda .sda>div img{
						display: block;
						max-width: 100%;
						height: auto;
						max-height: none;
					}

					#app>main div.m_sda .sda>div img.pc{
						
					}

					#app>main div.m_sda .sda>div img.mobile{
						display: none;
					}


			div.m_sda .sda>div.small{
				max-width: 300px;
			}
				/*
				div.m_sda .sda>div.small.big_box{
					height: 250px;
				}
				div.m_sda .sda>div.small.double_big_box{
					height: 600px;
				}
				*/
				
			div.m_sda .sda>div.large{
				/*
				min-width: 728px;
				max-width: 900px;
				min-height: 90px;
				max-height: 314px;
				*/

				max-width: 970px;
			}
				/*
				div.m_sda .sda>div.large.leaderboard{
					width: 728px;
					height: 90px;
				}
				div.m_sda .sda>div.large.large_leaderboard{
					width: 900px;
					height: 150px;
				}
				div.m_sda .sda>div.large.custom_magazine{
					width: 728px;
					height: 314px;
				}
				*/

			div.m_sda .sda>span{
				display: block;
				/*font-size: 10px;*/
				margin-top: 10px;
				/*font-family: soleil, sans-serif;*/
				/*font-weight: 500;*/
				font: var(--fontHeader);
				text-transform: uppercase;
			}

	/**
	 * module hr
	 **/

	div.m_hr{
		padding: 50px 0;
	}

	div.m_hr:first-child{
		padding-top: 0;
	}

	div.m_hr:last-child{
		padding-bottom: 0;
	}

		div.m_hr>hr{
			margin: 0 auto;
			padding: 0;
			max-width: var(--smallWidth);
			height: 1px;
			background: red;
			background: var(--accentColor);
			border: none;
		}

	div.m_hr_short{
		padding: 50px 0;
	}

		div.m_hr_short>hr{
			max-width: 50px;
		}

	div.m_hr_large{
		padding: 50px 0;
	}

		div.m_hr_large>hr{
			width: 100%;
			max-width: 100%;
		}

	div.m_hr_numbered{
		counter-increment: numberedHrCounter;
		position: relative;
	}

		div.m_hr_numbered>hr{
			width: 150px;
			width: calc(100px + 3em);
		}

		div.m_hr_numbered::after{
			content: counter(numberedHrCounter);
			position: absolute;
			top: 50%;
			left: 50%;
			transform: translate(-50%, -50%);
			font-size: 2em;
			padding: 0 .5em;
			background: inherit;
			color: var(--accentColor);
			border-radius: 15px;
			background-color: var(--articleBackground);
		}

		div.m_hr:first-child::after{
			top: 0;
		}

	div.m_hr_spaceSmall,
	div.m_hr_spaceMedium,
	div.m_hr_spaceLarge{
		padding: 0;
		height: 2px;
	}

	div.m_hr_spaceSmall{
		margin: 9px 0;
	}

	div.m_hr_spaceMedium{
		margin: 24px 0;
	}

	div.m_hr_spaceLarge{
		margin: 49px 0;	
	}

		div.m_hr_spaceSmall>hr,
		div.m_hr_spaceMedium>hr,
		div.m_hr_spaceLarge>hr{
			display: none;
		}

	/**
	 * module text
	 **/

	div.m_text{
		margin: 0 auto;
		line-height: 1.38em; /* was 1.33em; /* was 1.2 */
	}

		div.m_text ul{

		}
			div.m_text ul>li{
				margin-top: .5em;
			}
			div.m_text ul>li:first-child{
				margin-top: 0;
			}


	#app>main.inArticle div.m_text{
		max-width: var(--smallWidth);
		line-height: 30px;
	}
	#app>main.inArticle div.zone:has(div.m_list)>div.m_text_title{
		max-width: 100%;
	}

		div.m_text>p{
			margin: 0;
			padding: 0;
			min-height: 1em;
		}

		div.m_text>p+p{
			margin-top: 1em;
		}

		div.m_text div.nop{
			margin: 0;
			padding: 0;
		}

	#app>main.inArticle div.m_text.m_text_citation{
		width: 80%;
	}

	#app>main.inArticle section.nbZone2 .zone1.nbModule1 div.m_text.m_text_citation{
		margin: 0 auto 0 0;
	}

	#app>main.inArticle section.nbZone2 .zone2.nbModule1 div.m_text.m_text_citation{
		margin: 0 0 0 auto;
	}

	div.m_text_bigtext,
	div.m_text_text div.bigtext{
		font-family: soleil, sans-serif;
		font-size: 1.35em;
		/*font-weight: bold;*/
		line-height: 1.16em;
		margin: 70px 0;
	}

	div.m_text_bigtext:first-child,
	div.m_text_text:first-child div.bigtext:first-child{
		margin-top: 0;
	}

	div.m_text_bigtext:last-child,
	div.m_text_text:last-child div.bigtext:last-child{
		margin-bottom: 0;
	}

	.size_header div.m_text_bigtext,
	.size_header div.m_text_text div.bigtext{
		font-size: 1.75em;
		font-weight: 600;
	}

		div.m_text_bigtext>p,
		div.m_text_bigtext>p+p{
			margin-top: 0;
		}

	div.m_text_title{
		text-align: left; /*center;*/
		/*margin: 0 0 .5em 0;*/
/*		margin: 0 0 25px 0; /* 25px = about 1.8rem */
		margin-bottom:25px;
		border-top: 3px solid;
		padding-top: 15px;
	}
	div.m_text_title:last-child{
		margin-bottom: 0;
	}

		div.m_text_title>p,
		div.m_text>h1{
			font-size: 25px;
			line-height: 30px;
			/*margin: 0 0 .5em 0;*/
			margin: 0;
			padding: 0;
			font-weight: bold;

			font-family: soleil, sans-serif;
		}

		div.m_text>h1{
			padding-top: 15px;
			margin: 0 0 25px 0;
		}

		div.m_text_title>p+p{
			margin-top: 0;
		}

		main>section:first-child>div>div>div.m_text_title:first-child{
			border-top: none;
		}

			main>section:first-child>div>div>div.m_text_title:first-child>p,
			main>section:first-child>div>div>div.m_text:first-child>h1:first-child,
			main>section:first-child>div>div+div>div.m_text_title:first-child>p,
			main>section:first-child>div>div+div>div.m_text:first-child>h1:first-child{
				font-size: 54px;
				/*margin-top: 45px;*/
				line-height: 1em;
				font-family: utopia-std-display, serif;
			}

		main.inArticle div.m_text_title{
			border-top: none;
			padding-top: 0;
		}

	div.m_text_subtitle{

	}

		div.m_text_subtitle>p,
		div.m_text>h2{
			/*font-size: 1.2em;*/
			font-size: 25px;
			line-height: 30px;

			margin: 1em 0;

			padding: 0;
			font-weight: bold;

			font-family: soleil, sans-serif;
		}

		div.m_text_subtitle:first-child>p:first-child,
		div.m_text:first-child>h2:first-child{
			margin-top: 0;
		}

		.inArticle div.m_text_subtitle>p,
		.inArticle div.m_text>h2{
			font-size: 1.2em;
			line-height: 1.2em;
			margin: 0 0 .6em 0;
		}

	#app div.m_text_exergue,
	#app div.m_text_text div.exergue{
		/*max-width: 80%;*/
		margin: 100px auto;
		text-align: center;	
		font-family: soleil, sans-serif;
	}
	#app div.m_text_exergue:first-child,
	#app div.m_text_text div.exergue:first-child{
		margin-top: 0;
	}
	#app div.m_text_exergue:last-child,
	#app div.m_text_text div.exergue:last-child{
		margin-bottom: 0;
	}


		div.m_text_exergue>p,
		div.m_text_text div.exergue{
			font-size: 35px;
			line-height: 50px;
			color: var(--accentColor);
			padding: 0 10%;
		}

	div.m_text_citation,
	div.m_text_text div.citation{
		max-width: 80%;
		margin: 0 auto;
		color: var(--accentColor);
	}

		div.m_text_citation>p,
		div.m_text_text div.citation{
			font-style: italic;
		}
		/*
		div.m_text_citation>p::before,
		div.m_text_text div.citation::before{
			content: '\000AB';
			position: relative;
			height: 1em;
			width: 1em;
			padding-right: 10px;
		}
		div.m_text_citation>p::after,
		div.m_text_text div.citation::after{
			content: '\000BB';
			position: relative;
			height: 1em;
			width: 1em;
			padding-left: 10px;
		}
		*/

		div.m_text_citation>span.author{
			margin-top: 1em;
			/*float: right;*/
			display: block;
			text-align: right;
		}
		div.m_text_citation>span.author::before{
			text-align:left;
			margin-right: 10px;
			content: "\2014";
		}

		/*
		div.m_text_citation>p::before,
		div.m_text_text div.citation::before{
			content: "« ";
		}
		div.m_text_citation>p::after,
		div.m_text_text div.citation::after{
			content: " »";
		}
		*/

	div.m_text_indented,
	div.m_text_text div.indented{
		/*margin-left: 1.5em;*/
		padding-left: 2em;
		/*border-left: 2px solid red;*/
		border-color: var(--accentColor);
	}

		div.m_text_indented>p,
		div.m_text_text div.indented{
			
		}

	div.m_text_framed,
	div.m_text_text div.framed{
		border: 1px solid red;
		padding: 1em;
		border-color: var(--accentColor);
		border-radius: 5px;

		font-size: 15px; 
		line-height: 25px;
		font-family: soleil, sans-serif;
	}

	#app>main>section.style_accent div.m_text_framed,
	#app>main>section.style_accent div.m_text_text div.framed{
		border-color: var(--accentForeground);
	}

		div.m_text_framed>p,
		div.m_text_text div.framed{
			
		}

	/**
	* module button
	**/
		#app>main div.m_button>a.btn,
		#app>main ul.button>li>a.btn{
			display: inline-block;
			padding: 5px 10px;
			margin-top: 5px;
			/*background-color: var(--accentColor);*/
			background-color: var(--fgcolor);
			color: var(--bgcolor);
			border-radius: 5px;
			text-decoration: none;
			/*color: inherit;*/
			transition: opacity .5s;
			min-width: 180px;
			border: 2px solid var(--fgcolor);
		}
		#app>main div.m_button>a.btn:hover,
		#app>main ul.button>li>a.btn:hover{
			cursor:pointer;
			/*opacity: .8;*/
			background: var(--bgcolor);
			color: var(--fgcolor);
		}
		#app>main div.m_button>ul.button{
			list-style: none;
			padding: 0;
		}
			#app>main div.m_button>ul.button>li{
				display: inline-block;
				margin-right: 10px;
			}
	/**
	* module «slider»
	**/
	div.m_slider{
		position: relative;
	}

		div.m_slider>div{
			--color: #FFF;
		}

			div.m_slider>div>ul.slider{
				display: flex;
				list-style: none;
				margin: 0;
				padding: 0;
				white-space: nowrap;
				/*overflow: hidden;*/
			}

				div.m_slider>div>ul.slider>li{
					display: inline-block;
					vertical-align: top;
					margin: 0;
					padding: 0;

					overflow: hidden;
					width: 100%;
					flex: 0 0 100%;
					/*transition: width .5s;*/

					z-index: 1;
				}

				.loading div.m_slider>div>ul.slider>li:first-child,
				div.m_slider>div>ul.slider>li.active{
					z-index: 2;
					/*display: block;*/
					width: 100%;
				}

					div.m_slider>div>ul.slider>li>div{
						max-width: var(--maxWidth);
						margin: 0 auto;
						width: 96%;
					}

						div.m_slider>div>ul.slider>li>div>div.img{
							
						}

							div.m_slider>div>ul.slider>li>div>div.img>div.imgctn{
								
							}

								div.m_slider>div>ul.slider>li>div>div.img>div.imgctn>img{
									
								}

						div.m_slider>div>ul.slider>li>div>div.text{
							white-space: normal;
						}

							div.m_slider>div>ul.slider>li>div>div.text>div{
								
							}

								div.m_slider>div>ul.slider>li>div>div.text>div>p.title{
									
								}

								div.m_slider>div>ul.slider>li>div>div.text>div>div.text{
									
								}

								div.m_slider>div>ul.slider>li>div>div.text>div>a.btn{
									
								}

							div.m_slider>div>ul.slider>li>div::after{

							}

			div.m_slider>div>ul.pager,
			div.m_image>div>ul.pager{
				position: absolute;
				bottom: 0;
				left: 0;
				width: 100%;
				text-align: center;
				margin: 0;
				padding: 0;
				margin-bottom: 18px;
				z-index: 3;
			}

				div.m_slider>div>ul.pager>li,
				div.m_image>div>ul.pager>li{
					position: relative;
					display: inline-block;
					width: 21px;
					height: 21px;
					font-size: 0;
					color: transparent;
				}

					div.m_slider>div>ul.pager>li::before,
					div.m_image>div>ul.pager>li::before{
						content: "";
						position: absolute;
						top: 50%;
						left: 50%;
						transform: translate(-50%, -50%);
						width: 6px;
						height: 6px;
						border: 1px solid var(--color);
						border-radius: 100%;
					}

				div.m_slider>div>ul.pager>li:hover,
				div.m_image>div>ul.pager>li:hover{
					cursor: pointer;
				}


					div.m_slider>div>ul.pager>li.active::before,
					div.m_slider>div>ul.pager>li:hover::before,
					div.m_image>div>ul.pager>li.active::before,
					div.m_image>div>ul.pager>li:hover::before{
						background: var(--color);
					}	


		div.m_slider.m_slider_default{

		}

			div.m_slider.m_slider_default>div{
				margin: -70px 0;
				/*margin: -70px calc((100vw - var(--maxWidth)) / -2);*/
				overflow: hidden;
			}
			section.opt_noMarginOver div.m_slider.m_slider_default>div{
				margin-top: 0;
			}
			section.opt_noMarginUnder div.m_slider.m_slider_default>div{
				margin-bottom: 0;
			}

			#app>main>section.style_default+section.style_default>div div.m_slider.m_slider_default>div, 
			#app>main>section:not([class*="style_"])+section.style_default>div div.m_slider.m_slider_default>div,
			#app>main>section.style_default+section:not([class*="style_"])>div div.m_slider.m_slider_default>div, 
			#app>main>section:not([class*="style_"])+section:not([class*="style_"])>div div.m_slider.m_slider_default>div{
				margin-top: 0;
			}

			#app>main>section>div>div.zone:first-child>div.m_slider.m_slider_default>div{
				margin-left: calc((var(--vw100) - var(--maxWidth)) / -2);
			}
			#app>main>section>div>div.zone:last-child>div.m_slider.m_slider_default>div{
				margin-right: calc((var(--vw100) - var(--maxWidth)) / -2);
			}



				div.m_slider.m_slider_default>div>ul.slider{
					transition: transform .4s;
					transition-timing-function: ease-in-out;
				}

				.inArticle div.m_slider.m_slider_default>div>ul.slider{
					margin-top: -50px;
					margin-bottom: -50px;
				}

					div.m_slider.m_slider_default>div>ul.slider>li{
						display: flex;
						background: var(--col1);
						color: var(--col2);
						padding: 90px 0;
						position: relative;
					}

						div.m_slider.m_slider_default>div>ul.slider>li>div.bgimg{
							position: absolute;
							top: 0;
							left: 0;
							width: 100%;
							height: 100%;
							opacity: .05;
							pointer-events: none;
							z-index: 1;
							max-width: none;
						}

							div.m_slider.m_slider_default>div>ul.slider>li>div.bgimg>div{
								width: 100%;
								height: 100%;
							}

								div.m_slider.m_slider_default>div>ul.slider>li>div.bgimg>div>img{
									width: 100%;
									height: 100%;
									filter: blur(9px);
									object-fit: cover !important;
								}

						div.m_slider.m_slider_default>div>ul.slider>li>div{
							display: flex;
							align-items: stretch;
							z-index: 2;
							position: relative;
						}

							div.m_slider.m_slider_default>div>ul.slider>li>div>div.img{
								width: 40%;
								order: 2;
								/*float: right;*/

								margin: -50px 0;
								position: relative;
							}

								div.m_slider.m_slider_default>div>ul.slider>li>div>div.img>div{
									position: absolute;
									top: 0;
									left: 0;
									width: 100%;
									height: 100%;
								}

									div.m_slider.m_slider_default>div>ul.slider>li>div>div.img>div>img{
										width: 100%;
										height: 100%;
									}

									.p_catalog div.m_slider.m_slider_default>div>ul.slider>li>div>div.img>div>img{
										object-fit: contain !important;
									}

							div.m_slider.m_slider_default>div>ul.slider>li>div>div.text{
								width: 60%;
								order: 1;
								/*float: left;*/
							}

								div.m_slider.m_slider_default>div>ul.slider>li>div>div.text>div{
									width: 80%;
									max-width: var(--smallWidth);
								}

									div.m_slider.m_slider_default>div>ul.slider>li>div>div.text>div>p.hat{
										font-family: soleil, sans-serif;
										margin: 0 0 18px 0;
										font-size: 12px;
										text-transform: uppercase;
									}

									div.m_slider.m_slider_default>div>ul.slider>li>div>div.text>div>h2{
										font-family: soleil, sans-serif;
										margin: 0 0 18px 0;
										font-size: 25px;
									}

									div.m_slider.m_slider_default>div>ul.slider>li>div>div.text>div>div.text{
										
									}

									#app>main div.m_slider.m_slider_default>div>ul.slider>li>div>div.text>div>a.btn{
										display: inline-block;
										font-family: soleil, sans-serif;
										background: var(--col2);
										color: var(--col1);
										border-radius: 5px;
										font-size: 14px;
										font-weight: bold;
										padding: 10px 12px;
										line-height: 25px;
										margin: 18px 10px 0 0;
										text-decoration: none;
										border: 2px solid var(--col2);
									}

									#app>main div.m_slider.m_slider_default>div>ul.slider>li>div>div.text>div>a.btn:hover{
										background: var(--col1);
										color: var(--col2);
									}


							div.m_slider.m_slider_default>div>ul.slider>li>div::after{
								content: "";
								display: block;
								clear: both;
							}


				div.m_slider.m_slider_default.m_slider_compact>div>ul.slider{

				}
					div.m_slider.m_slider_default.m_slider_compact>div>ul.slider>li{
						padding: 45px 0;
					}
						div.m_slider.m_slider_default.m_slider_compact>div>ul.slider>li>div{

						}
							div.m_slider.m_slider_default.m_slider_compact>div>ul.slider>li>div>div.img{
								width: 25%;
								margin: 0;
							}
							div.m_slider.m_slider_default.m_slider_compact>div>ul.slider>li>div>div.text{
								width: 70%;
							}

								div.m_slider.m_slider_default.m_slider_compact>div>ul.slider>li>div>div.text>div{
									width: auto;
									margin-right: 45px;
									max-width: none;
								}


								main.p_catalog.home div.m_slider.m_slider_default.m_slider_compact>div>ul.slider>li>div>div.text>div>h1{
									margin-bottom: 20px;
								}

								div.m_slider.m_slider_default.m_slider_compact>div>ul.slider>li>div>div.text>div>h2{
									line-height: 1em;
								}

								div.m_slider.m_slider_default.m_slider_compact>div>ul.slider>li>div>div.text>div>p.subtitle{
									line-height: 1em;
									margin: 20px 0;
									margin-top: -10px;
								}

								div.m_slider.m_slider_default.m_slider_compact>div>ul.slider>li>div>div.text>div>div.text{
									font-size: 16px;

									display: -webkit-box;
									-webkit-line-clamp: 5;
									-webkit-box-orient: vertical;
									overflow: hidden;
								}
									div.m_slider.m_slider_default.m_slider_compact>div>ul.slider>li>div>div.text>div>div.text>p:empty{
										display: none;
									}

									div.m_slider.m_slider_default.m_slider_compact>div>ul.slider>li>div>div.text>div>div.text>p{
										display: inline;
										padding-right: .25em;
									}

								div.m_slider.m_slider_default.m_slider_compact>div>ul.slider>li>div>div.text>div>div.price{
									margin-top: 1em;
								}

/*
		div.m_slider.m_slider_header{

		}

			div.m_slider.m_slider_header>div{

			}

				div.m_slider.m_slider_header>div>ul{
					margin: -70px 0;
					margin: -70px calc((100vw - var(--maxWidth) - 70px) / -2);	
				}

				.inArticle div.m_slider.m_slider_header>div>ul{
					margin-top: -50px;
					margin-bottom: -50px;
				}


					div.m_slider.m_slider_header>div>ul>li{
						
					}

						div.m_slider.m_slider_header>div>ul>li>div{
							position: relative;
						}

							div.m_slider.m_slider_header>div>ul>li>div>div.img{
								margin-left: calc((100vw - var(--maxWidth)) / -2);
								padding-left: calc((100vw - var(--maxWidth)) / 2);
								position: absolute;
								top: -50px;
								bottom: -50px;
								left: 0;
								background: #FFF;
								transform: translate(-50% -50%);
							}

								div.m_slider.m_slider_header>div>ul>li>div>div.img>div{
									position: absolute;
									top: 0;
									left: 0;
									width: 100%;
									height: 100%;
								}

									div.m_slider.m_slider_header>div>ul>li>div>div.img>div>img{
										display: block;
										width: 100%;
										height: 100%;
									}

							div.m_slider.m_slider_header>div>ul>li>div>div.text{
								padding-left: 30%;
								width: 70%;
							}

								div.m_slider.m_slider_header>div>ul>li>div>div.text>div{
									
								}

									div.m_slider.m_slider_header>div>ul>li>div>div.text>div>p.title{
										
									}

									div.m_slider.m_slider_header>div>ul>li>div>div.text>div>div.text{
										
									}

									div.m_slider.m_slider_header>div>ul>li>div>div.text>div>a.btn{
										
									}

							div.m_slider.m_slider_header>div>ul>li>div::after{
								content: "";
								display: block;
								clear: both;
							}
*/

	/**
	* module image
	**/

	div.m_image{
		position: relative;
	}

		div.m_image>div{

		}

			div.m_image>div>ul{
				list-style: none;
				margin: 0;
				padding: 0;	
			}

			div.m_image>div>ul.img{
				white-space: nowrap;
				vertical-align: middle;
				width: 100%;
				overflow: hidden;
			}

				div.m_image>div>ul.img>li{
					display: inline-block;
					/*width: 100%;*/
				}

					div.m_image>div>ul.img>li>div.img{
						width: 100%;
					}

						div.m_image>div>ul.img>li>div.img a{
							text-decoration: none;
						}

							div.m_image>div>ul.img>li>div.img img{
								margin: auto;
								max-height: 80vh;
								width: 100%;
							}

							.zone:not(.nbModule1) div.m_image_default>div>ul.img>li>div.img img{
								margin: 0;
							}

							div.m_image>div>ul.img>li>div.img img.fit_cover{
								width: 100%;
							}

							div.m_image>div>ul.img>li>div.img div.credit{
								text-align: right;
								font-size: 12px;
								color: var(--accentColor);
							}

					div.m_image>div>ul.img>li>div.text{
						/*margin-top: .5em;*/
						font-size: 12px;
						white-space: normal;
						text-align: right;
						opacity: .5;
						/*height: 0;*/
						overflow: visible;
						/*transform: translateY(10px);*/
						margin-top: 10px;
					}

						div.m_image>div>ul.img>li>div.text>div.credit{
							font-style: italic;
						}

				div.m_image>div>ul.pager{
					--color: var(--fgcolor);
					position: static;
					margin-top: 20px;
				}

/*
			div.m_image>div>ul.pager{
				text-align: center;
				font-size: 12px;
				margin: 0 1em;
			}

				div.m_image>div>ul.pager>li{
					display: inline-block;
					margin: 0 .25em;
				}

					div.m_image>div>ul.pager>li:first-child,
					div.m_image>div>ul.pager>li:last-child{
						position: absolute;
						top: 50%;
						left: 0;

						text-indent: -1000px;
						font-size: 0;
					}

						div.m_image>div>ul.pager>li:first-child::before,
						div.m_image>div>ul.pager>li:last-child::after{
							content: "<";
							font-size: 30px;
							font-weight: bold;
							background: var(--accentColor);
							color: var(--accentForeground);
						}

						div.m_image>div>ul.pager>li:last-child::after{
							content: ">";
						}


					div.m_image>div>ul.pager>li:last-child{
						left: auto;
						right: 0;
					}
*/

	div.m_image_mosaic{

	}
	section>div>div.zone:first-child>div.m_image_mosaic{
		margin-left: calc( (var(--vw100) - var(--maxWidth)) / -2 );
	}
	section>div>div.zone:last-child>div.m_image_mosaic{
		margin-right: calc( (var(--vw100) - var(--maxWidth)) / -2 );
	}

		div.m_image_mosaic>div{

		}

			div.m_image_mosaic>div>ul.img{
				list-style:none;
				margin:0;
				padding:0;
				columns:4;
				column-gap:20px;
				margin-bottom:-20px;
				column-fill: balance;
			}
			div.m_image_mosaic>div>ul.img.nb1{
				columns: 1;
			}
			div.m_image_mosaic>div>ul.img.nb2{
				columns: 2;
			}
			div.m_image_mosaic>div>ul.img.nb3{
				columns: 3;
			}

				div.m_image_mosaic>div>ul.img>li{
					display:block;
					page-break-inside:avoid;
					padding-bottom:20px;
					border-left: none;

				}

					div.m_image_mosaic>div>ul.img>li>div.img{
						
					}

					div.m_image_mosaic>div>ul.img>li>div.img+div.credit{

					} 

			div.m_image_mosaic>div>ul.pager{
				display: none;
			}

	div.m_image_full{
		position: relative;
		overflow: hidden;
	}
	#app>main:not(.p_user_signup) div.m_image_full:first-child{
		margin-top: -70px;
	}
	#app>main:not(.p_user_signup) div.m_image_full:last-child{
		margin-bottom: -70px;
	}
	section.opt_noMarginOver div.m_image_full:first-child{
		margin-top: 0;
	}
	section.opt_noMarginUnder div.m_image_full:last-child{
		margin-bottom: 0px;
	}

	section>div>div.zone:first-child>div.m_image_full{
		margin-left: calc( (var(--vw100) - var(--maxWidth)) / -2 );
	}
	section>div>div.zone:last-child>div.m_image_full{
		margin-right: calc( (var(--vw100) - var(--maxWidth)) / -2 );
	}

		div.m_image_full>div{

		}


			div.m_image_full>div>ul.img{

			}

				div.m_image_full>div>ul.img>li{
					
				}


	#app>main>section .zone.nbModule1.fm_image_full{
		align-self: stretch;
	}

	#app>main>section .zone.nbModule1.fm_image_full div.m_image_full{
		height: calc(100vh - 80px);
		/*margin-top: -50px;*/
		/*margin-bottom: -50px;*/

		/*TODO - Make sure it's at least the same height than the other side*/
	}

		#app>main>section .zone.nbModule1.fm_image_full div.m_image_full>div{
			height: 100%;
		}

			#app>main>section .zone.nbModule1.fm_image_full div.m_image_full>div>ul.img{
				width: 100%;
				height: 100%;
			}

				#app>main>section .zone.nbModule1.fm_image_full div.m_image_full>div>ul.img>li{
					width: 100%;
					height: 100%;
				}

					#app>main>section .zone.nbModule1.fm_image_full div.m_image_full>div>ul.img>li .img{
						width: 100%;
						height: 100%;
					}

						#app>main>section .zone.nbModule1.fm_image_full div.m_image_full>div>ul.img>li .img img{
							width: 100%;
							height: 100%;
							max-height: none;
						}


/*	#app>main>section.nbZone2>div>div.zone.nbModule1>div.m_image_full{
		position: relative;
		top: 0;
	}*/

	section>div>div.zone>div.m_image_default,
	section>div>div.zone>div.m_image_fullheight{
		overflow-x: hidden;
	}

		#app>main>section.nbZone1.size_small>div>div.zone>div.m_image_default,
		#app>main>section.nbZone1.size_small>div>div.zone>div.m_image_fullheight{
			margin-left: calc( (var(--vw100) - var(--maxWidth)) / -2 );
			margin-right: calc( (var(--vw100) - var(--maxWidth)) / -2 );
		}


		section.nbZone1 div.m_image_default>div,
		section.nbZone1 div.m_image_fullheight>div{
			max-width: var(--largeWidth);
			margin: 0 auto;
		}

			section.nbZone1 div.m_image_default>div>ul.img,
			section.nbZone1 div.m_image_fullheight>div>ul.img{
				margin: 0 -25px;
				display: flex;
				align-items: center;
				overflow: visible;
				width: auto;
			}

				section.nbZone1 div.m_image_default>div>ul.img>li,
				section.nbZone1 div.m_image_fullheight>div>ul.img>li{
					/*width: 100%;*/
					flex: 0 0 100%;
					box-sizing: border-box;
					border-left: 1px solid white;
					margin: 0 0 0 -1px;
					padding: 0 25px;
				}
				section.nbZone1 div.m_image_default>div>ul.img>li:first-child,
				section.nbZone1 div.m_image_fullheight>div>ul.img>li:first-child{
					border-left: 0;
					margin-left: 0;
				}

					section.nbZone1 div.m_image_default.ready>div>ul.img>li>div.img,
					section.nbZone1 div.m_image_fullheight.ready>div>ul.img>li>div.img{

					}

						section.nbZone1 div.m_image_default>div>ul.img>li>div.img>img,
						section.nbZone1 div.m_image_fullheight>div>ul.img>li>div.img>img{

						}

						section.nbZone1 div.m_image_fullheight>div>ul.img>li>div.img>img{
							max-height: none;
						}

			section.nbZone1 div.m_image_default.ready.ready>div>ul.img,
			section.nbZone1 div.m_image_fullheight.ready.ready>div>ul.img{
				transition: transform .4s;
				transition-timing-function: ease-in-out;
			}

				section.nbZone1 div.m_image_default.ready.ready>div>ul.img>li,
				section.nbZone1 div.m_image_fullheight.ready.ready>div>ul.img>li{

				}

					section.nbZone1 div.m_image_default.ready>div>ul.img>li>div.img,
					section.nbZone1 div.m_image_fullheight.ready>div>ul.img>li>div.img{
						
					}

						section.nbZone1 div.m_image_default.ready>div>ul.img>li>div.img>img,
						section.nbZone1 div.m_image_fullheight.ready>div>ul.img>li>div.img>img{
							opacity: .5;
							transition: opacity .4s;
							margin: 0 auto;
						}

					section.nbZone1 div.m_image_default.ready>div>ul.img>li>div.img:hover,
					section.nbZone1 div.m_image_fullheight.ready>div>ul.img>li>div.img:hover{
						cursor: pointer;
					}

						section.nbZone1 div.m_image_default.ready>div>ul.img>li>div.img:hover>img,
						section.nbZone1 div.m_image_fullheight.ready>div>ul.img>li>div.img:hover>img{
							opacity: .8;
						}


			section.nbZone1 div.m_image_default.ready>div>ul.img>li,
			section.nbZone1 div.m_image_fullheight.ready>div>ul.img>li,{
				
			}

				section.nbZone1 div.m_image_default.ready>div>ul.img>li a,
				section.nbZone1 div.m_image_fullheight.ready>div>ul.img>li a{
					pointer-events: none;
				}

			section.nbZone1 div.m_image_default.ready>div>ul.img>li.active,
			section.nbZone1 div.m_image_fullheight.ready>div>ul.img>li.active{

			}

				section.nbZone1 div.m_image_default.ready>div>ul.img>li.active a,
				section.nbZone1 div.m_image_fullheight.ready>div>ul.img>li.active a{
					pointer-events: auto;
				}

				section.nbZone1 div.m_image_default.ready>div>ul.img>li.active>div.img,
				section.nbZone1 div.m_image_fullheight.ready>div>ul.img>li.active>div.img{
				}

					section.nbZone1 div.m_image_default.ready>div>ul.img>li.active>div.img>img,
					section.nbZone1 div.m_image_fullheight.ready>div>ul.img>li.active>div.img>img{
						opacity: 1;
					}

					section.nbZone1 div.m_image_default.ready>div>ul.img>li.active>div.img>img:hover,
					section.nbZone1 div.m_image_fullheight.ready>div>ul.img>li.active>div.img>img:hover{
						cursor: default;
					}



/*	.size_default.nbZone1 div.m_image_full,
	.size_header.nbZone1 div.m_image_full,
	.size_default.nbZone1 div.m_slider,
	.size_header.nbZone1 div.m_slider{*/


/*	#app>main>section>div>div.zone:first-child>div.m_image{
		margin-left: calc( (100vw - var(--maxWidth)) / -2 );
	}
	#app>main>section>div>div.zone:last-child>div.m_image{
		margin-right: calc( (100vw - var(--maxWidth)) / -2 );
	} */

/*	.size_default.nbZone2 .zone1 div.m_image_full,
	.size_header.nbZone2 .zone1 div.m_image_full,
	.size_default.nbZone2 .zone1 div.m_slider,
	.size_header.nbZone2 .zone1 div.m_slider{
		margin-left: calc( (100vw - var(--maxWidth)) / -2 );
	}

	.size_default.nbZone2 .zone2 div.m_image_full,
	.size_header.nbZone2 .zone2 div.m_image_full,
	.size_default.nbZone2 .zone2 div.m_slider,
	.size_header.nbZone2 .zone2 div.m_slider{
		margin-right: calc( (100vw - var(--maxWidth)) / -2 );
	}

	.inArticle .size_default.nbZone1 div.m_image_full,
	.inArticle .size_header.nbZone1 div.m_image_full,
	.inArticle .size_default.nbZone1 div.m_slider,
	.inArticle .size_header.nbZone1 div.m_slider{
		margin-left: calc( (100vw - 50px - var(--maxWidth)) / -2 );
		margin-right: calc( (100vw - 50px - var(--maxWidth)) / -2 );
	}

	.inArticle .size_default.nbZone2 .zone1 div.m_image_full,
	.inArticle .size_header.nbZone2 .zone1 div.m_image_full,
	.inArticle .size_default.nbZone2 .zone1 div.m_slider,
	.inArticle .size_header.nbZone2 .zone1 div.m_slider{
		margin-left: calc( (100vw - 50px - var(--maxWidth)) / -2 );
	}

	.inArticle .size_default.nbZone2 .zone2 div.m_image_full,
	.inArticle .size_header.nbZone2 .zone2 div.m_image_full,
	.inArticle .size_default.nbZone2 .zone2 div.m_slider,
	.inArticle .size_header.nbZone2 .zone2 div.m_slider{
		right: calc( (100vw - 50px - var(--maxWidth)) / -2 );
	}*/


	/**
	* module «list»
	**/

	div.m_list{
		margin-top: 50px;
	}

	div.m_list:first-child{
		margin-top: -37px;
		margin-bottom: -37px;
	}

		div.m_list>ul{
			list-style:none;
			margin:0;
			padding:0;

			display: flex;
			flex-wrap: wrap;
			margin: -12px;
/*			columns:4;
			column-gap:20px;                           
			margin-bottom:-20px;*/
		}

			div.m_list>ul>li{
				box-sizing: border-box;
				width: 33.3%;
				width: calc(33.3% - 24px);
				padding: 25px;
				margin: 12px;
				display:block;
				/*border: 1px solid #DCDCDC;*/
				border: 1px solid var(--accentColor);
				border-radius: 5px;
				/*page-break-inside:avoid;*/
				/*padding-bottom:20px;*/
				/*border-left: none;*/
			}

			.nbZone2 div.m_list>ul>li{
				width: calc(50% - 24px);
			}

				div.m_list>ul>li>div.img{
					margin-bottom: 15px;
				}

					div.m_list>ul>li>div.img>div.imgctn{
						
					}

						div.m_list>ul>li>div.img>div.imgctn>img{
							
						}

				div.m_list>ul>li>div.text{
					
				}

					div.m_list>ul>li>div.text>div{
						
					}

						div.m_list>ul>li>div.text>div>p.title{
							font-family: soleil, sans-serif;
							font-size: 16px;
							font-weight: bold;
							padding: 0;
							margin: 0;
						}

						div.m_list>ul>li>div.text>div>p.subtitle{
							font-family: soleil, sans-serif;
							text-transform: uppercase;
							font-size: 12px;
							font-weight: 100;
							padding: 0;
							margin: 0;
						}

						div.m_list>ul>li>div.text>div>div.text{
							
						}

							div.m_list>ul>li>div.text>div>div.text ul{

							}
								div.m_list>ul>li>div.text>div>div.text ul>li{
									margin-top: .5em;
								}
								div.m_list>ul>li>div.text>div>div.text ul>li:first-child{
									margin-top: 0;
								}

						div.m_list>ul>li>div.text>div>p.title+div.text,
						div.m_list>ul>li>div.text>div>p.subtitle+div.text{
							margin-top: 15px;
						}

							div.m_list>ul>li>div.text>div>div.text>p{
								margin: 1em 0 0 0;
							}

							div.m_list>ul>li>div.text>div>div.text>p:first-child,
							div.m_list>ul>li>div.text>div>div.text>h1:first-child,
							div.m_list>ul>li>div.text>div>div.text>h2:first-child{
								margin-top: 0;
							}

						div.m_list>ul>li>div.text>div>a.btn{
							
						}

	div.m_list_team{
		
	}

		div.m_list_team>ul{

		}

			div.m_list_team>ul>li{
				width: calc(50% - 24px);
				display: flex;
				/*border-color: #000;*/
			}

				div.m_list_team>ul>li>div.img{
					flex: 0 0 40%;
					width: 40%;
					padding-right: 25px;
					box-sizing: border-box;
					margin-bottom: 0;
				}

					div.m_list_team>ul>li>div.img>div.imgctn{
						
					}

						div.m_list_team>ul>li>div.img>div.imgctn>img{
							
						}

				div.m_list_team>ul>li>div.text{
					position: relative;
				}

				div.m_list_team>ul>li>div.text.link{
					padding-bottom: 55px;
				}

					div.m_list_team>ul>li>div.text>div{
						
					}

						div.m_list_team>ul>li>div.text>div>p.title{
							text-transform: uppercase;
						}

						div.m_list_team>ul>li>div.text>div>p.subtitle{

						}

						div.m_list_team>ul>li>div.text>div>div.text{
							
						}

						div.m_list_team>ul>li>div.text>div>p.title+div.text{

						}

							div.m_list_team>ul>li>div.text>div>div.text>p{

							}

							div.m_list_team>ul>li>div.text>div>div.text>p:first-child{

							}

						#app div.m_list_team>ul>li>div.text>div>a.btn{
							padding: 0 15px;
							position: absolute;
							bottom: 0;
							margin: 0;
						}

	/**
	* module a10_edition
	**/

	div.m_a10_edition{

	}

		div.m_a10_edition ul{
			display: flex;
			flex-wrap: wrap;

			list-style: none;
			/*display: block;*/
			margin: 0;
			padding: 0;
			--accentColor: #999999;
			--accentForeground: #000000;
		}

			div.m_a10_edition ul>li{
				width: 100%;
				border-radius: 25px;
				background: var(--accentColor);
				color: var(--accentForeground);

				margin-top: 25px;

				display: flex;
				align-items: stretch;
				/*gap: 65px; /* FIX THAT */

				overflow: hidden;

				min-height: 300px;
			}
			div.m_a10_edition ul>li:first-child{
				margin-top: 0;
			}

				div.m_a10_edition ul>li>.img{
					order: 2;
					width: 50%;
					position: relative;
					display: flex;
				}

					div.m_a10_edition ul>li>.img>img{
						align-self: stretch;
					}

					div.m_a10_edition ul>li>.img>img.fit_cover{
						position: absolute;
						top: 0;
						left: 0;
						width: 100%;
						height: 100%;
					}


				div.m_a10_edition ul>li>.text{
					order: 1;
					width: 50%;
					padding: 60px 40px;

					align-self: center;
				}

					div.m_a10_edition ul>li>.text>h2{
						display: inline-block;
						font-size: 33px;
						font-weight: normal;
						margin: 0 0 20px 0;
						font-family: soleil, sans-serif;
						line-height: 1em;
					}

						div.m_a10_edition ul>li>.text>h2>span.autologo{
							
						}

						div.m_a10_edition ul>li>.text>h2>span.autologo::after{
							content: "\e900";
							font-family: 'icomoon' !important;
							speak: never;
							font-style: normal;
							font-weight: normal;
							font-variant: normal;
							text-transform: none;
							-webkit-font-smoothing: antialiased;

							font-size: 33px;
							padding-left: .5em;
							transform: translateY(-10%);
							display: inline-block;
						}


					div.m_a10_edition ul>li>.text>div{
						margin-bottom: 25px;
					}

					div.m_a10_edition ul>li>.text>div.btn{
						margin-bottom: 0;
					}

					#app>main div.m_a10_edition ul>li>.text>div.btn{

					}

						#app>main div.m_a10_edition ul>li>.text>div.btn>a.btn{
							font-family: soleil, sans-serif;
							display: inline-block;
							box-sizing: border-box;
							padding: 10px 15px;
							margin: 10px 10px 0 0;
							border-radius: 5px;
							text-decoration: none;
							font-size: 14px;
							font-weight: bold;
							border: 2px solid var(--accentForeground);
							line-height: 1em;
						}

						#app>main div.m_a10_edition ul>li>.text>div.btn>a.btn1{
							background: var(--accentColor);
							color: var(--accentForeground);
						}
						#app>main div.m_a10_edition ul>li>.text>div.btn>a.btn1:hover{
							background: var(--accentForeground);
							color: var(--accentColor);
						}

						#app>main div.m_a10_edition ul>li>.text>div.btn>a.btn2{
							background: var(--accentForeground);
							color: var(--accentColor);
						}
						#app>main div.m_a10_edition ul>li>.text>div.btn>a.btn2:hover{
							color: var(--accentForeground);
							background: var(--accentColor);
						}

				div.m_a10_edition ul>li>.img+.text{

				}

			div.m_a10_edition ul>li.lv0{
				flex: 1 1 40%;
				/*width: calc(33% - 24px);*/
				background: #FFF;
				color: #000;
				/*display: inline-block;*/
				vertical-align: top;
				margin-top: 0;
				margin: 12px;
			}
				div.m_a10_edition ul>li.lv0>.text{
					width: auto;
					padding: 40px;
					position: relative;
				}

				div.m_a10_edition ul>li.lv0.btn>.text{
					padding-bottom: 73px;
				}

					div.m_a10_edition ul>li.lv0>.text>h2{
						text-transform: uppercase;
						font-size: 15px;
						margin: 0;
						font-weight: bold;
						margin-bottom: .5em;
					}

					div.m_a10_edition ul>li.lv0>.text>div.btn{
						position: absolute;
						bottom: 30px;
					}

		div.m_a10_edition ul.lv0{
			margin: -12px;
		}




#app>main.inArticle{
	--rawArticleBackground: 244, 244, 245;
	--articleBackground: #F4F4F5;
	margin-left: 51px;
	/*margin-top: calc(100vh - 81px);*/
	background: var(--articleBackground);

	font-size: 19px;
	/*line-height: 30px;*/
}

	/* This force the browser to include the bottom margin. */
	#app>main.inArticle::after{
		content: "";
		display: block;
		height: 1px;
	}

/*	#app>main.inArticle>section,*/
	#app>main.inArticle>section.style_default,
	#app>main.inArticle>section:not([class*="style_"]){
		/*background: #FFF;*/
/*		z-index: 2;
		position: relative;*/
		background: var(--articleBackground);
	}

	#app>main.inArticle.locked>section:last-of-type{
		position: relative;
	}
/*
		#app>main.inArticle.locked>section:last-of-type::after{
			content: "";
			display: block;
			position: absolute;
			bottom: 0;
			left: 0;
			width: 100%;
			height: 75%;
			max-height: 500px;
			min-height: 100px;
			background: linear-gradient(to bottom, rgba(var(--rawArticleBackground), 0), var(--articleBackground) 75%);
			pointer-events: none;
		}
*/
	#articleMenu{
		position: fixed;
		top: 50px;
		left: 0;
		width: 100%;
		background: #FFFFFF;
		height: 80px;
		border-bottom: 1px solid #DCDCDC;
		text-align: center;
		z-index: 99;
		border-color: var(--accentColor);

		font-size: 15px;

		font-family: soleil, sans-serif;
	}

	#app #welcomeFx{
		display: block;
		position: relative;
		margin: 0;
		padding: 0;
		height: calc(100vh - 50px);
		margin-top: -81px;
		max-width: none;
		width: 100%;
		z-index: 150;
	}

		#app #welcomeFx>div.shade{
			position: absolute;
			top: 50px;
			left: 0;
			right: 0;
			bottom: 0;
			width: auto;

			background: #FFFFFF;
			z-index: 298;
		}

		#app #welcomeFx>div.img{
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			background: #EEE;

			z-index: 300;
		}

			#app #welcomeFx>div.img>img{
				width: 100%;
				height: 100%;
				max-height: none;
			}

		#app #welcomeFx>div.logo1{
			position: absolute;
			top: 50px;
			left: 0;
			width: var(--vw100);
			height: calc(100vh - 50px);
			z-index: 20;
			top: calc(100vh / 2 - 50px);
			left: calc(var(--vw100) / 2 - 390px);
			width: 780px;
			height: 100px;
			filter: invert(1);
			background-image: url(../medias/logo_NP.svg);
			background-position: 50% 50%;
			background-repeat: no-repeat;
			background-size: auto 100px;
			background-size: contain;

			z-index: 302;
		}

		#app #welcomeFx>div.logo2{
			display: none;
			position: absolute;
			top: 50px;
			left: 0;
			width: var(--vw100);
			height: calc(100vh - 50px);
			z-index: 20;

			z-index: 303;
		}
		.js #app #welcomeFx>div.logo2{
			cursor: pointer;
		}

		#app #welcomeFx>div.arrow{
			position: absolute;
			bottom: 20px;
			left: 50%;
			transform: translateX(-50%);
			width: 25px;
			height: 25px;
			pointer-events: none;
			z-index: 301;
		}

			#app #welcomeFx>div.arrow::before{
				content: "\e920";
				font-family: 'icomoon' !important;
				font-size:20px;
				color: #FFF;
				position: absolute;
				animation: movingArrow 1s ease-in-out infinite alternate;
			}

			@keyframes movingArrow{
				from{
					transform: translate(0, 0);
				}
				to{
					transform: translate(0, -15px);
				}
			}
 
			#app.animOnScroll #welcomeFx>div.img{
				position: fixed;
			}

			#app.animOnScroll #welcomeFx>div.logo1.black{
				filter: invert(0);

				transition: filter .4s;
			}

		@supports (-webkit-mask-image: url()) or
			(mask-image: url()) {
			.js #app #welcomeFx>div.shade,
			.js #app #welcomeFx>div.logo1,
			.js #app #welcomeFx>div.logo2{
				position: fixed;
			}

			.js #app #welcomeFx>div.logo1{
				z-index: 299;
				filter: invert(0);
			}

			.js #app #welcomeFx>div.logo2{
				display: block;
				-webkit-mask-image: url(../medias/logo_NP.svg);
				-webkit-mask-repeat:  no-repeat;

				mask-image: url(../medias/logo_NP.svg);
				mask-repeat:  no-repeat;
			}

			.js #app #welcomeFx>div.arrow{
				position: fixed;
			}
		}


	.inArticle #articleMenu{
		position: absolute;
		left: -51px;
		right: 0;
		width: auto;
	}

		.inArticle #articleMenu>div{
			max-width: none;
			width: 96%;
		}

			#articleMenu>div>h1{

			}

				#articleMenu>div>h1>a{
					display: block;
					font-size: 0 !important;
				}
				#articleMenu>div>h1>a>span.autologo::before{
					font-size: 37px;
				}

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

		#articleMenu>div{
			position: relative;
			max-width: var(--maxWidth);
			margin: 0 auto;
			height: 100%;
			width: 96%;
			text-align: left;

			display: flex;
			align-items: center;
		}

/*			#articleMenu>div::before{
				content: "";
				display: inline-block;
				vertical-align: middle;
				width: 1px;
				height: 100%;
			}*/

			#articleMenu>div>h2{
/*				display: inline-block;
				vertical-align: middle;*/
			}

			#articleMenu>div>ul{
				display: block;
				list-style: none;
				margin: 0;
				padding: 0;
				flex-grow: 1;
			}

				#articleMenu>div>ul>li{
					display: inline-block;
					margin-left: 30px;
				}

					#articleMenu>div>ul>li>a{

					}

					#articleMenu>div>ul>li>a:hover{
						color: #0d5c74;
					}

				#articleMenu>div>ul>li.active{
					
				}

					#articleMenu>div>ul>li.active>a{
						text-decoration: underline;
						color: #0d5c74;
					}

					#articleMenu>div>ul>li>a.btn{
						margin: 0;
						padding: 0 20px;
						background: #0d5c74;
						color: #FFF;
						border-color: #0d5c74;
					}
					#articleMenu>div>ul>li>a.btn:hover{
						color: #0d5c74;
					}

				#articleMenu>div>ul>li.shortcut{
					display: inline-block;
					margin-left: 30px;
				}

					#articleMenu>div>ul>li.shortcut>a{
						font-weight: bold;
					}

					#articleMenu>div>ul>li.shortcut>a:hover{
						color: #0d5c74;
					}


			#articleMenu>div>ul+ul{
				text-align: right;
				padding-left: 30px;
				flex-grow: 0;
			}

	#articleMenu+*{
		margin-top: 81px;
	}


	#articleHome{

	}

	.fullsda,
	#app>main>section>div.fullsda{
		padding-top: 0;
		display: block;
	}

		.fullsda>div,
		#app>main>section>div.fullsda>div{
			width: 100%;
		}



	div.mainFolder{
		--bgcolor: #DDD;
		--fgcolor: #000;
		--fgcolor2: #FFF;

		background: var(--bgcolor);
		color: var(--fgcolor);

		padding: 15px;
		text-align: left;

		border-radius: 5px;
	}

		div.mainFolder>h2{
			/*border-color: var(--fgcolor);*/
		}

			div.mainFolder>h2>span{
				/*font-size: 10px;*/
				font: var(--fontHeader);
				text-transform: uppercase;
				display: block;
				line-height: 1em;
			}

		div.mainFolder>.img{
			
		}

			div.mainFolder>.img>img{
				width: 100%;
			}

		#app div.mainFolder>a.btn{
			background: var(--fgcolor);
			color: var(--fgcolor2);
			border: none;
			margin: 15px 0 0 0;
		}


	ul.articleList{
		list-style: none;
		margin: 0;
		padding: 0;
		margin: 0 -15px;
	}

		ul.articleList>li{
			display: inline-block;
			padding: 15px;
			border-radius: 5px;
			width: 25%;
			vertical-align: top;
			/*flex: 30%;*/
			box-sizing: border-box;
			background: #FFFFFF;
		}
		ul.articleList>li.type_partner{
			background: #E8E8E9;
		}

			ul.articleList>li>.img{
				position: relative;
				width: 100%;
				/*padding-bottom: 75%;*/
				/*background: fuchsia;*/
				margin-bottom: 16px;
			}

				ul.articleList>li>.img::after{
					content: "";
					display: block;
					padding-bottom: 75%;
				}

				ul.articleList>li>.img>img{
					position: absolute;
					width: 100%;
					height: 100%;
				}

			ul.articleList>li>.img.placeholder{
				background: #DDDDDD;
				color: #000000;
				position: relative;
			}

				ul.articleList>li>.img.placeholder::before{
					content: "\e91b";
					font-family: 'icomoon' !important;
					font-size:20px;
					position: absolute;
					top: 50%;
					left: 50%;
					transform: translate(-50%, -50%);
				}

				ul.articleList>li>.img.placeholder::after{

				}

			ul.articleList>li>.text{

			}

				ul.articleList>li>.text a{
					text-decoration: none;
				}

				ul.articleList>li>.text a:hover{
					text-decoration: underline;
				}

				ul.articleList>li>.text>time{
					font: var(--fontHeader);
					text-transform: uppercase;
					font-weight: normal;
				}

				ul.articleList>li>.text>.category+time::before{
					content:" • ";
					font: var(--fontHeader);
					font-weight: normal;
				}

				ul.articleList>li>.text>.category{
					/*font-size: 10px;*/
					/*font-weight: bold;*/
					/*font-family: Soleil, sans-serif;*/
					font: var(--fontHeader);
					text-transform: uppercase;
				}

				ul.articleList>li>.text>h3{
					margin: 0;
					padding: 0;
					font-size: var(--fontSizeTitle);
				}

				ul.articleList>li>.text>.category+h3{
					margin-top: 3px;
				}

				ul.articleList>li>.text>p{
					margin: 10px 0 0 0;
				}

				ul.articleList>li>.text>.subtitle{
					font-weight: bold;
				}

				ul.articleList>li>.text>ul.authors{
					text-transform: uppercase;
					font-size: var(--fontSizeMini);
					font-weight: bold;
					font-family: Soleil, sans-serif;
					display: block;
					list-style: none;
					margin: 10px 0 0 0;
					padding: 0;
				}
				ul.articleList>li>.text>h3+ul.authors{
					margin-top: 0;
				}

					ul.articleList>li>.text>ul.authors>li{
						display: inline-block;
					}

						ul.articleList>li>.text>ul.authors>li::after{
							content: ",";
							padding-right: .5em;
						}

					ul.articleList>li>.text>ul.authors>li:last-child{
						
					}

						ul.articleList>li>.text>ul.authors>li:last-child::after{
							content: "";
						}



	ul.articleList.main{

	}

		ul.articleList.main>li{
			width: 33.33%;
		}

			ul.articleList.main>li>.img{
				margin-bottom: 0;
			}
				ul.articleList.main>li>.img::after{

				}

				ul.articleList.main>li>.img>img{

				}
/*
		ul.articleList.main>li.placeholder{

		}

			ul.articleList.main>li.placeholder::before,
			ul.articleList.main>li.placeholder::after{
				content: "";
				display: block;
				width: 100%;
				padding-bottom: 75%;
				background: #EEE;
				height: 0;
			}

			ul.articleList.main>li.placeholder::after{
				margin: 1.5em;

				height: 5em;
				background: linear-gradient(to bottom, #EEE 30%, #FFF 30%, #FFF 45%, #EEE 45%, #EEE 60%, #FFF 60%, #FFF 65%, #EEE 65%, #EEE 80%, #FFF 80%, #FFF 85%, #EEE 85%);
				background-size: 100% 100%;
				padding: 0;
				margin: 0;
			}
*/

		ul.articleList.main>li:first-child{
			box-sizing: border-box;
			width: 100%;
			/*flex: 100%;*/
			display: flex;
			/*gap: 20px; /* FIX THAT */
		}

			ul.articleList.main>li:first-child>.img{
				flex: 66.66%;
				flex: 0 0 calc(66.66% - 10px);
			}

				ul.articleList.main>li:first-child>.img>img{

				}

			ul.articleList.main>li:first-child>.text{
				padding-left: 30px;
			}

				ul.articleList.main>li:first-child>.text>h2{
					font-size: 33px;
				}

	ul.articleList.small{
		margin: 0;
	}

		ul.articleList.small>li{
			width: auto;
			border-top: 1px solid #888;
			counter-increment: top;
			padding: 25px 0 25px 40px;
			position: relative;

			border-radius: 0;
			width: 100%;

			display: flex;
			align-items: flex-start;
		}
		ul.articleList.small>li:first-child{
			border-top: 0;
		}

			ul.articleList.small>li>.img{
				width: 120px;
				flex: 0 0 120px;
				margin: 0 16px 0 0;

				position: sticky;
				top: 150px;
			}

			ul.articleList.small>li>.text{
				
			}

				ul.articleList.small>li>.text>.category{
					text-decoration: underline;
				}

				ul.articleList.small>li>.text>h3{
					font-size: 23px;
				}



	ul.articleList.top{
		counter-reset: top;
		/*counter-increment: top;*/
		margin: 0;
	}

		ul.articleList.top>li{
			width: auto;
			border-top: 1px solid #888;
			counter-increment: top;
			padding: 25px 0 25px 40px;
			position: relative;

			border-radius: 0;
			width: 100%;
		}
		ul.articleList.top>li:first-child{
			border-top: 0;
		}

		ul.articleList.top>li::before{
			position: absolute;
			top: 50%;
			left: 0;
			max-width: 35px;
			height: 1em;
			color: #005B75;
			content: counter(top);
			transform: translateY(-50%);
			font-size: 45px;
		}

			ul.articleList.top>li>.text{
				
			}

				ul.articleList.top>li>.text>.category{
					text-decoration: underline;
				}

				ul.articleList.top>li>.text>h3{
					font-size: var(--fontSizeTitleSmall);
				}

				ul.articleList.top>li>.text>ul.authors{
					font-size: 10px;
				}
	
	ul.articleList.top>li.type_partner{
		border-color: #E8E8E9;
		padding-left: 45px;
		padding-right: 5px;
		margin-left: -5px;
		margin-right: -5px;
		width: auto;
		border-radius: 5px;
	}
	ul.articleList.top>li.type_partner+li{
		border-color: #E8E8E9;
	}
		ul.articleList.top>li.type_partner::before{
			left: 5px;
		}

	.js ul.articleList.line{
		margin: 0;
		display: flex;
		margin: 0 -15px;
		overflow: auto;

		margin: 0 calc((var(--vw100) - var(--maxWidth)) / -2);
		padding: 0 calc((var(--vw100) - var(--maxWidth)) / 2 - 15px);

		-ms-overflow-style: none;  /* IE and Edge */
		scrollbar-width: none;  /* Firefox */
	}
	.js ul.articleList.line::-webkit-scrollbar{
		display: none;
	}


/*		ul.articleList.line>li::first-child{
			margin-left: calc((100vw - var(--maxWidth)) / 2 - 15px);
		}
		ul.articleList.line>li::last-child{
			margin-right: calc((100vw - var(--maxWidth)) / 2 - 15px);
		} */

		ul.articleList.line>li{
			width: 268px;
			flex: 0 0 268px;

			padding: 15px;
			position: relative;
			margin-left: 5px;
		}
		ul.articleList.line>li.type_partner{

		}
		ul.articleList.line>li:first-child{
			margin-left: 0;
		}

			ul.articleList.line>li>.text{
				
			}

				ul.articleList.line>li>.text>.category{
					text-decoration: underline;
				}
				
				ul.articleList.line>li>.text>h3{
					font-size: 23px;
				}


	.articleListLineContainer{
		position: relative;
	}

	.js ul.articleList.line+ul.pager{
		/*background: red;*/
		/*width: 20px;*/
		/*height: 20px;*/
		position: absolute;
		top: 15px;
		right: 0;
		white-space: nowrap;

		list-style: none;
		display: block;
		margin: 0;
		padding: 0;
		font-size: 0;
	}

		.js ul.articleList.line+ul.pager>li{
			position: relative;
			display: inline-block;
			width: 7px;
			height: 7px;
			border-radius: 100%;
			border: 2px solid black;
			font-size: 0;
			color: transparent;
			margin-left: 5px;
		}
		.js ul.articleList.line+ul.pager>li:hover{
			cursor: pointer;
			background: #DDD;
		}
		.js ul.articleList.line+ul.pager>li.active{
			background: #000;
		}


	ul.articleList.results{
		/*margin: 0;*/
		display: flex;
		flex-wrap: wrap;
		justify-content: space-around;
	}


		ul.articleList.results>li{
			flex: 1 1 25%;

			min-width: 250px;
			max-width: 400px;
		}

		main.p_author_detail ul.articleList.results>li{
			margin: 2px;
			flex: 1 1 23%;
		}
		main.p_author_detail ul.articleList.results>li:first-child{
			flex: 1 1 73%;
		}

			ul.articleList.results>li>.img{

			}

			ul.articleList.results>li>.text{
				
			}

				ul.articleList.results>li>.text>.category{
					
				}

				ul.articleList.results>li>.text>h3{
					
				}

		ul.articleList.results:not(.same)>li:first-child{
			flex: 1 1 75%;
			display: flex;
			min-width: 500px;
			max-width: 1000px;
		}

			ul.articleList.results:not(.same)>li:first-child>.img{
				flex: 0 0 66.66%;
				flex: 0 0 calc(66.66% - 10px);
				align-self: flex-start;
			}

			ul.articleList.results:not(.same)>li:first-child>.text{
				flex: 1 1 30%;
				padding-left: 30px;
			}

				ul.articleList.results:not(.same)>li:first-child>.text>.category{
					
				}

				ul.articleList.results:not(.same)>li:first-child>.text>h3{
					
				}

			ul.articleList.results>li.fix{
				padding: 0;
				margin-top: 0;
				margin-bottom: 0;
				height: 0;
				background: 0;
				border-radius: 0;
			}

		ul.articleList.results>li.sda{
			flex: 1 1 75%;
			min-width: 500px;
			max-width: 1000px;

			display: flex;
			align-items: center;
			justify-content: center;
		}

		ul.articleList.results>li.sda.last{
			flex: 1 1 100%;
		}


	#articleHome{

	}

main.p_article_home{
	overflow-x: hidden;
}

/*	#articleHome h2,
	#articleList h2{*/
	main.p_article_home h2,
	main.articleContinue h1{
		border-top: 3px solid currentColor;
		font-size: 23px;
		margin: 0;
		font-family: Soleil, sans-serif;
		/*text-transform: uppercase;*/
		line-height: 1.2em;
		padding: 5px 0 17px 0;

		margin-top: 50px;
	}

		main.p_article_home h2>a{
			text-decoration: none;
		}

	main.p_article_home .empty{
		text-align: center;
		padding: 100px 2vw;
		/*text-transform: uppercase;*/
		/*font-size: 12px;*/
		font-family: soleil, sans-serif;
		font-weight: 600;
		background: #1a2029;
		color: #FFF;
		box-sizing: border-box;
	}

		#app main.p_article_home .empty a.btn{
			display: inline-block;
			padding: 0 20px;
			margin: 0;
		}


/*	#articleHome h2:first-child,
	#articleList h2:first-child{ */
	main.p_article_home h2:first-child{
		margin-top: 0;
	}

		#articleHome>div{
			display: flex;
		}

			#articleHome>div>div{
				width: 75%;
				flex: 1 1 75%;
			}

			#articleHome>div>aside{
				width: 360px;
				flex: 0 0 360px;
				padding-left: 60px;
				box-sizing: border-box;
			}


	main.p_article_list{

	}

		form#articleListFilter{
			border-top: 3px solid black;
			text-align: right;
		}

			form#articleListFilter label,
			label.select.main{
				padding-top: 0;
				margin-top: 0;
			}

			form#articleListFilter label.select{

			}

			form#articleListFilter>label.select{
				margin-top: 10px;
			}

/*
				form#articleListFilter label>select{
					text-transform: uppercase;
					font-weight: bold;
					font-family: soleil, sans-serif;
					font-size: 12px;

					border-radius: 0;
					border-width: 1px;

					height: 30px;
					padding: 0 30px 0 10px;
				}
*/
				form#articleListFilter label.select::before{
					content: "";
					position: absolute;
					top: 0;
					right: 0;
					width: 20px;
					height: 30px;
					border-left: 1px solid #EEE;
				}

				form#articleListFilter label.select::after{
					right: 10px;
					top: 15px;
					transform: translate(50%, -50%);

				}

				form#articleListFilter label.select.tag>ul.select{
					columns: 5;
				}

				form#articleListFilter label>span{
					/*display: none;*/
				}

			form#articleListFilter>*{
				display: inline-block;
				margin-left: 10px;
				vertical-align: top;
			}

			form#articleListFilter>h2:first-child:last-child{
				display: block;
				margin-left: 0;
				text-align: left;
			}

			form#articleListFilter div.main{
				display: block;
				float: left;
				margin-left: 0;
			}

				form#articleListFilter div.main>label{

				}

				form#articleListFilter div.main>label::before{
					display: none;
				}

					form#articleListFilter div.main>label.select,
					label.select.main{
						border: none;
						padding: 0;
						border: transparent;
						text-transform: none;
						border-radius: 0;
					}

						form#articleListFilter div.main>label.select>ul.select,
						label.select.main>ul.select{
							left: 0;
							right: auto;
						}

						form#articleListFilter div.main>label.select>span.val,
						label.select.main>span.val{
							font-size: 24px;
							padding-left: 0;
							text-transform: none;
						}


			form#articleListFilter::after{
				content: "";
				display: block;
				clear: both;
			}

	main.p_article_list div.articleListDiv{
		margin: 60px -15px 0 -15px;
	}

	main.p_article_folder{
		
	}

		#app>main.p_article_folder>section#articleList{
			background: #EEE;
		}

			main.p_article_folder #articleListFilter{
				display: flex;
				border-top: 0;
			}

				main.p_article_folder #articleListFilter>*{
					flex: 0 0 50%;
					box-sizing: border-box;
					margin-left: 0;
				}

				main.p_article_folder #articleListFilter>.img{
					order: 2;
					position: relative;
					align-self: flex-start;
				}

					main.p_article_folder #articleListFilter>.img>img{
						position: absolute;
						width: 100%;
						height: 100%;
					}

					main.p_article_folder #articleListFilter>.img::after{
						content: "";
						display: block;
						padding-bottom: 75%;
					}

				main.p_article_folder #articleListFilter>.text{
					order: 1;
					padding: 0 25px 50px 0;
					position: relative;
					text-align: left;
				}

					main.p_article_folder #articleListFilter>.text>div.main{
						border-top: 2px solid black;
						width: 100%;
						float: none;
					}

						main.p_article_folder #articleListFilter>.text>div.main>label.select{
							display: inline-block;
						}

							main.p_article_folder #articleListFilter>.text>div.main>label.select>select{
								/*border: none;*/
							}


							main.p_article_folder ul.articleList.results>li,
							main.p_article_list ul.articleList.results>li{
								margin: 2px;
								flex: 1 1 23%;
							}

							main.p_article_folder ul.articleList.results>li:first-child,
							main.p_article_list ul.articleList.results>li:first-child{
								flex: 1 1 73%;
							}


					main.p_article_folder #articleListFilter>.text>div.footer{
						position: absolute;
						bottom: 0;
						left: 0;
						/*width: 100%;*/
						right: 25px;
						border-top: 1px solid black;
						display: flex;
						padding-top: 5px;
					}

						main.p_article_folder #articleListFilter>.text>div.footer>a{
							flex: 1 1 50%;
							text-align: left;
							font-family: soleil, sans-serif;
							font-size: 15px;
							line-height: 26px;
							text-decoration: none;
						}

						main.p_article_folder #articleListFilter>.text>div.footer>.shareTool{
							/*flex: 1 0 50%;*/
							width: 100%;
						}

							main.p_article_folder #articleListFilter>.text>div.footer>.shareTool>ul{
								display: inline-block;
								list-style: none;
								margin: 0;
								padding: 0;
							}

								main.p_article_folder #articleListFilter>.text>div.footer>.shareTool>ul>li{
									display: inline-block;
								}


	main.p_article_labelHome{
		
	}

		#app>main.p_article_labelHome>section#labelHome{
			background: #EEE;
		}

			#app>main.p_article_labelHome>section#labelHome>div{

			}

				#app>main.p_article_labelHome>section#labelHome>div>ul{
					display: flex;
					flex-wrap: wrap;
					list-style: none;
					margin: -37px;
					padding: 0;
				}

					#app>main.p_article_labelHome>section#labelHome>div>ul>li{
						margin: 12px;
						padding: 25px;
						background: #FFFFFF;
					}

						#app>main.p_article_labelHome>section#labelHome>div>ul>li>div.img{
							position: relative;
						}

							#app>main.p_article_labelHome>section#labelHome>div>ul>li>div.img>img{
								position: absolute;
								width: 100%;
								height: 100%;
							}

							#app>main.p_article_labelHome>section#labelHome>div>ul>li>div.img::after{
								content: "";
								display: block;
								padding-bottom: 75%;
							}

					#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv4,
					#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv3{
						display: flex;
						flex-wrap: wrap;
						flex: 1 1 100%;
					}

						#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv4>div.img,
						#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv3>div.img{
							order: 2;
							flex: 0 0 50%;
						}

							#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv4>div.img>img,
							#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv3>div.img>img{

							}

						#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv4>div.img.placeholder,
						#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv3>div.img.placeholder{
							position: relative;
							background: #DDD;
						}

/*							#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv4>div.img.placeholder::after,
							#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv3>div.img.placeholder::after{
								content: "";
								display: block;
								padding-bottom: 75%;
							}
*/
							/*#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv4>div.img.placeholder::before,*/
							#app>main.p_article_labelHome>section#labelHome>div>ul>li>div.img.placeholder::before{
								content: "\e91b";
								font-family: 'icomoon' !important;
								font-size:50px;
								position: absolute;
								top: 50%;
								left: 50%;
								transform: translate(-50%, -50%);
							}



						#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv4>div.text,
						#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv3>div.text{
							order: 1;
							flex: 1 1 calc(50% - 25px);
							padding-right: 25px;
						}

						#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv4>ul,
						#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv3>ul{
							order: 3;
							list-style: none;
							display: flex;
							flex: 0 0 100%;
							border-top: 1px solid black;
							margin: 25px 0 0 0;
							padding: 0;
						}

							#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv4>ul>li,
							#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv3>ul>li{
								border-left: 1px solid black;
								flex: 1 1 20%;
								padding: 25px 25px 0 25px;
								display: flex;
							}
							#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv4>ul>li:first-child,
							#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv3>ul>li:first-child{
								border-left: none;
								padding-left: 0;
							}
							#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv4>ul>li:last-child,
							#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv3>ul>li:last-child{
								padding-right: 0;
							}

								#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv4>ul>li>div.img,
								#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv3>ul>li>div.img{
									width: 100px;
									flex: 0 0 100px;
								}

								#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv4>ul>li>div.text,
								#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv3>ul>li>div.text{
									padding-left: 20px;
								}

							#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv4>ul>li.more,
							#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv3>ul>li.more{

							}

								#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv4>ul>li.more>a.btn,
								#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv3>ul>li.more>a.btn{
									padding: 0 20px;
								}


						#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv2>div.img.placeholder{
							position: relative;
							background: #DDD;
						}

							#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv2>div.img.placeholder::after{
								content: "";
								display: block;
								padding-bottom: 75%;
							}

							#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv2>div.img.placeholder::before{
								content: "\e91b";
								font-family: 'icomoon' !important;
								font-size:50px;
								position: absolute;
								top: 50%;
								left: 50%;
								transform: translate(-50%, -50%);
							}



					#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv2,
					#app>main.p_article_labelHome>section#labelHome>div>ul>li.lv1{
						flex: 1 1 33%;
					}

				#app>main.p_article_labelHome>section#labelHome>div>ul.labelList.tag{
					margin: 0 -10px -5px -10px;
				}

					#app>main.p_article_labelHome>section#labelHome>div>ul.labelList.tag>li{
						flex: 1 1 20%;
						min-width: 200px;
						padding: 10px;
						margin: 5px;
					}

						#app>main.p_article_labelHome>section#labelHome>div>ul.labelList.tag>li>div.img{
							display: none;
						}

						#app>main.p_article_labelHome>section#labelHome>div>ul.labelList.tag>li>div.text{

						}

							#app>main.p_article_labelHome>section#labelHome>div>ul.labelList.tag>li>div.text>h2{
								margin: 0;
								padding: 0;
								font-size: 15px;
								font-weight: normal;
							}

								#app>main.p_article_labelHome>section#labelHome>div>ul.labelList.tag>li>div.text>h2>a{

								}




	#app>main>section.style_articleFolderList{
		--bgcolor: #DDD;
		--fgcolor: #000;
		--fgcolor2: #FFF;

		background: var(--bgcolor);
		color: var(--fgcolor);
	}

		#app>main>section.style_articleFolderList>div>div>h2{

		}

		#app>main>section.style_articleFolderList>div>div>div{
			margin: 0 -25px;
			display: flex;
		}

			#app>main>section.style_articleFolderList>div>div>div>div.topFolder{
				background: #FFF;
				border-radius: 5px;
				padding: 25px;

				width: 75%;
				flex: 1 1 75%;
				top: 0;
				left: 0;
				width: calc((100% - 50px) - 375px);
				/*margin-bottom: 0;*/
				
				display: flex;
				/*align-items: flex-start;*/
		}

				#app>main>section.style_articleFolderList>div>div>div>div.topFolder>div{
					width: 50%;
					flex: 0 0 50%;
					padding-right: 25px;

					position: sticky;
					top: 150px;
				}

					#app>main>section.style_articleFolderList>div>div>div>div.topFolder>div>div.img.placeholder{
						background: #EEE;
					}

						#app>main>section.style_articleFolderList>div>div>div>div.topFolder>div>div.img.placeholder::after{
							content: "";
							display: block;
							padding-bottom: 75%;
						}

						#app>main>section.style_articleFolderList>div>div>div>div.topFolder>div>div.img.placeholder::before{
							content: "\e91b";
							font-family: 'icomoon' !important;
							font-size:50px;
							position: absolute;
							top: 50%;
							left: 50%;
							transform: translate(-50%, -50%);
						}

				#app>main>section.style_articleFolderList>div>div>div>div.topFolder>ul{
					width: 50%;
					flex: 0 0 50%;
					display: block;
					margin: 0;
					padding: 0;
					list-style: none;
					border-left: 1px solid var(--fgcolor);
				}

					#app>main>section.style_articleFolderList>div>div>div>div.topFolder>ul>li{
						border-top: 1px solid var(--fgcolor);
						padding: 25px;
					}

					#app>main>section.style_articleFolderList>div>div>div>div.topFolder>ul>li:first-child{
						border-top: none;
						padding-top: 0;
					}

						#app>main>section.style_articleFolderList>div>div>div>div.topFolder>ul>li.more{
							
						}

							#app>main>section.style_articleFolderList>div>div>div>div.topFolder>ul>li.more a.btn{
								padding: 0 30px;
								margin: 0;
							}


			#app>main>section.style_articleFolderList>div>div>div>ul{
				display: block;
				list-style: none;
				margin: 0;
				padding: 0;
				position: relative;

				width: 350px;
				flex: 0 0 350px;
				padding-left: 25px;
			}

				#app>main>section.style_articleFolderList>div>div>div>ul>li{
					background: #FFF;
					border-radius: 5px;
					padding: 25px;
					margin-bottom: 5px;
				}

					#app>main>section.style_articleFolderList>div>div>div>ul>li>h2{
						padding-bottom: 0;
					}

				#app>main>section.style_articleFolderList>div>div>div>ul>li.more{
					padding: 0;
					background: transparent;
					margin-top: 25px;
				}

					#app>main>section.style_articleFolderList>div>div>div>ul>li.more>a.btn{
						background: var(--fgcolor);
						color: var(--fgcolor2);
						margin: 0;

						display: inline-block;
						padding: 0 30px;
					}


	#app>main>section.style_commented{

	}					
	#app>main>section.style_foryou+section.style_commented{
		border-top: 1px solid #888;
	}

	#app>main>section.style_commented>div{
		display: flex;
	}

		#app>main>section.style_commented>div>aside{
			width: 360px;
			flex: 0 0 360px;
			padding-right: 60px;
			box-sizing: border-box;
		}

		#app>main>section.style_commented>div>aside+div{
			width: 75%;
			flex: 1 1 75%;
		}

	#articleSidebar{
		position: fixed;
		position: sticky;
		/*top: 131px;*/
		top: 50px;
		left: 0;
		/*background: linear-gradient(red, blue);*/
		width: 50px;
		/*height: calc(100vh - 131px);*/
		height: calc(100vh - 50px);
		transform: translateX(-100%);
		z-index: 98;
		border-right: 1px solid #DCDCDC;
		border-color: var(--accentColor);
		font-family: soleil, sans-serif;
		margin-top: 0;
	}

		#articleSidebar>div{
			/*width: calc(100vh - 131px);*/
			width: calc(100vh - 50px);
			height: 50px;
			position: absolute;
			bottom: -50px;
			left: 0;
			transform-origin: 0 0;
			transform: rotate(-90deg);

			line-height: 50px;

			background: #FFFFFF;

			z-index: 98;

			display: flex;
			align-items: center;
		}

			#articleSidebar>div>div.np{
				position: absolute;
				top: 0;
				right: 0;
				width: 50px;
				overflow: hidden;
				/*background: red;*/
				height: 40px;
				transform: rotate(90deg) translate(100%, 0);
				transform-origin: 100% 0;
				font-size: 0;
				text-align: center;

				border-bottom: 1px solid #DCDCDC;
				border-color: var(--accentColor);

				white-space: nowrap;
				text-overflow: ellipsis;
				overflow: hidden;

				/*opacity: 0;*/
				/*transition: opacity .5s;*/

				z-index: 2;
			}
			/*.scrolled #articleSidebar>div>div.np{*/
				/*opacity: 1;*/
			/*}*/

				#articleSidebar>div>div.np>a{
					display: block;
					width: 100%;
					height: 100%;
					text-decoration: none;
				}

					#articleSidebar>div>div.np>a::before{
						font-size: 15px;
						line-height: 40px;
					}

			#scrollPct{
				background: var(--accentColor);
				opacity: .05;
				position: absolute;
				top: 0;
				right: 0;
				width: 100%;
				height: 100%;
				transform-origin: 100% 0;
				white-space: nowrap;
			}

			#articleSidebar .info{
				position: absolute;
				top: 0;
				left: 0;
				right: 40px;
				padding: 0 15px;
				font-size: 13px;
				overflow: hidden;
				white-space: nowrap;

				position: static;
				order: 1;
				max-width: calc(100% - 80px);
				text-overflow: ellipsis;
				white-space: nowrap;
				overflow: hidden;

				flex: 1 1 auto;
			}

				#articleSidebar h1{
					font-size: inherit;
					display: inline-block;
					vertical-align: top;
					padding: 0;
					margin: 0;
					font-weight: 500;
					/*width: 100%;*/

/*					white-space: nowrap;*/
/*					overflow: hidden;*/
					display: inline;
				}

				#articleSidebar .author{
					display: inline-block;
					vertical-align: top;

					display: inline;
				}

					#articleSidebar .author::before{
						content: " — ";
					}

				ul.articleLocation{
					list-style: none;
					display: block;
					margin: 0;
					padding: 0;
					margin-bottom: 5px;
				}

					ul.articleLocation li{
						display: inline-block;
					}
						ul.articleLocation li::after{
							content: " — ";
						}
						ul.articleLocation li:last-child::after{
							content: "";
						}

			#articleSidebar .info2{
				position: absolute;
				top: 17px;
				right: 57px;
				padding: 0 15px;
				/*font-size: 10px;*/
				border: 1px solid black;
				padding: 0 10px;
				line-height: 24px;
				font: var(--fontHeader);
				text-transform: uppercase;

				opacity: 0;
				transition: opacity .5s;

				position: static;
				order: 2;
				margin-right: 55px;
				white-space: nowrap;

				flex: 0 0 auto;
			}
			.scrolled #articleSidebar .info2{
				opacity: 1;
			}




	#articleHeader{
		/*position: relative;*/
		/*width: calc(100% - 50px);*/
		/*height: 600px;*/
		/*height: calc(100vh - 131px);*/
		background: var(--articleBackground);

		/*position: fixed;*/
		/*position: absolute;*/
		/*top: 131px;*/
		/*left: 50px;*/
		/*width: calc(100vw - 50px);*/
		z-index: 1;

		/*margin-top: calc(-100vh + 131px);*/
		margin-top: calc(-100vh + 30px);

		overflow: hidden;

		font-family: soleil, sans-serif;
	}

		#articleHeader>.img{
			width: 100%;
			height: 600px;
			height: calc(100vh - 131px);
			overflow: hidden;
		}

			#articleHeader>.img>div{
				width: 100%;
				height: 100%;
			}

			#articleHeader>.img img{
				width: 100%;
				height: 100%;
			}

		#articleHeader>.imgcredit,
		#articleHeader>.info{
			position: relative;
			z-index: 2;
			box-sizing: border-box;
			padding: 20px;
			width: 50%;
			background: var(--articleBackground);
		}
		#articleHeader>.imgcredit{
			float: right;
			text-align: right;
			font-size: 10px;
			font-style: italic;
			color: var(--accentColor);
		}
		#articleHeader>.info{
			float: left;
			font-style: italic;
			font-size: 13px;
		}
			#articleHeader>.info a{
				font-style: normal;
				color: inherit;
				font-weight: 500;
				text-decoration: underline;
			}


		#articleHeader>.txt{
			clear: both;
			position: relative;
			z-index: 2;
			background: var(--articleBackground);
			padding: 30px 111px 20px 111px;
			text-align: center;
			width: 60%;
			margin: 0 auto;
			max-width: 450px;
		}

			#articleHeader>.txt>div{
				
			}

				#articleHeader>.txt a.label{
					text-transform: uppercase;
					color: #000;
					text-decoration: underline;
					font-size: 15px;
					font-weight: 500;
				}

				#articleHeader>.txt h1,
				#articleHeader>.txt h2{
					font-size: 55px;
					font-weight: 500;
					color: var(--accentColor);
					margin: 50px 0;
					font-family: utopia-std-display, serif;
				}

				#articleHeader>.txt h2{
					font-size: 20px;
					font-weight: normal;
				}
				#articleHeader>.txt h1+h2{
					margin-top: -25px;
				}

				#articleHeader>.txt div.partner{
					/*background: #FFF;*/
					/*border-radius: 25px;*/
					/*background: #FFF;*/
					/*padding: 30px;*/
					box-sizing: border-box;

					width: 280px;
					margin: 0 auto;

					margin-bottom: 50px;
				}

					#articleHeader>.txt div.partner>div{

					}

						#articleHeader>.txt div.partner>div>span{

						}

						#articleHeader>.txt div.partner>div>div.img{
							margin-top: .5em;
						}

				#articleHeader>.txt ul.authors{
					list-style: none;
					margin: 60px 0 90px;
					padding: 0;
					display: block;

					font-size: 15px;
				}

					#articleHeader>.txt ul.authors>li{
						display: inline-block;
						margin: 0;
						padding: 0;
						width: auto;
						height: auto;
						border: none;
						/*padding-top: 10px;*/
					}
						#articleHeader>.txt ul.authors>li::after{
							content: ", ";
							padding-right: .5em;
						}
						#articleHeader>.txt ul.authors>li:last-child::after{
							content: "";
							padding-right: 0;
						}

						#articleHeader>.txt ul.authors>li>a{
							display: inline-block;
							text-transform: uppercase;
							font-weight: bold;
							color: #000;
							text-decoration: none;
						}

						#articleHeader>.txt ul.authors>li>a:hover{
							text-decoration: underline;
						}

					#articleHeader>.txt .intro{
						margin: 50px 0;
						font-size: 17px;
						font-weight: bold;
					}

					#articleHeader>.txt .intro2{
						margin: 50px -91px;
						border: 1px solid red;
						padding: 40px;
						border-color: var(--accentColor);
						color: var(--accentColor);
						border-radius: 20px;

						text-align: left;

						font-size: 15px;
						line-height: 25px;
					}

						#articleHeader>.txt .intro2>strong{
							display: block;
						}


	#articleLocked{
		background: red;
		background: var(--accentColor);
		color: var(--accentForeground);
		max-width: 450px;
		padding: 50px 50px 40px 50px;
		border-radius: 5px;
		margin: 60px auto 110px;
	}

		#articleLocked h1{
			font-family: soleil, sans-serif;
			font-size: var(--fontSizeTitle);
			margin-top: 0;
			line-height: 1.2em;
		}

		#articleLocked p{

		}

		#articleLocked a.btn{
			display: inline-block;
			padding: 0 20px;
			border: 2px solid var(--accentForeground);
			background: var(--accentForeground);
			color: var(--accentColor);
			margin: 0 10px 10px 0;
		}

		#articleLocked a.btn:hover{
			color: var(--accentForeground);
			background: var(--accentColor);
		}

/*		#articleLocked a.signin{
			display: block;
			font-size: 15px;
			text-decoration: none;
		}

		#articleLocked a.signin:hover{
			text-decoration: underline;
		}*/


	section+#articleLocked{
		position: relative;
		/*margin-top: -250px;*/
		z-index: 2;
	}

	#articleLocked.fx{
		transform: translateY(20px);
	}

	#articleLocked.visible{
		transform: translateY(0px);
		transition: opacity	1.5s, transform 1.5s;
	}


	#articleLocked.v2{
		max-width: none;
		margin-bottom: 0;
		border-radius: 0;

		background: color-mix(in srgb, var(--accentColor) 95%, transparent);
		backdrop-filter: saturate(1.8) blur(20px);
		-webkit-backdrop-filter: saturate(1.8) blur(20px);
	}

		#articleLocked.v2>div{
			max-width: 550px;
			margin: 0 auto;
			text-align: center;
		}

			#articleLocked.v2 a.btn{
				margin: 0;
			}

			#articleLocked.v2>div>ul{
				display: flex;
				margin: 0;
				padding: 0;
				list-style: none;
				flex-wrap: wrap;
				gap: 10px;
				justify-content: center;
			}
				#articleLocked.v2>div>ul>li{
					margin: 0;
					padding: 0;
				}

			#articleLocked.v2>div>a.btn{
				width: fit-content;
				margin: 0 auto;
				background: transparent;
				border-color: transparent;
				color: var(--accentForeground);

				margin-top: 30px;
			}

			#articleLocked.v2>div>a.btn:hover{
				background: var(--accentForeground);
				color: var(--accentColor);
				text-decoration: none;
			}

	@media screen and (min-width:750px){
		.firstScroll #articleLocked.v2{
			position: sticky;
			bottom: 0;
		}
	}


	#articleFooter{
		width: 90%;
		width: calc(100% - 40px);
		max-width: var(--largeWidth);
		margin: 0 auto;
		padding-bottom: 100px;
	}


	#demoComment{
		display: block;
		margin: 0 auto;
		margin-top: 20px;
		width: 96%;
/*		max-width: var(--maxWidth);*/
		max-width: var(--smallWidth);

		font-family: soleil, sans-serif;
	}

		#demoComment>span{
			display: block;
			font-weight: bold;
		}
			#demoComment>span::before{
				padding-right: .25em;
			}

		#demoComment>div{
			background: #FFFFFF;
/*			color: var(--accentColor);*/
			padding: 20px;
			border-radius: 20px;
			margin: 10px 0;
		}

			#demoComment>div>.name{
				color: var(--accentColor);text-transform: uppercase;font-weight: bold;font-size: var(--fontSizeSmall);line-height: 1em;
			}

			#demoComment>div>.date{
				color: var(--accentColor);font-size: var(--fontSizeMini);text-transform: uppercase;line-height: 1em;margin-top: 7px;
			}

			#demoComment>div>.message{
				margin: 1em 0 0 0;
			}

		#demoComment>a{
			float:right;
		}
		#demoComment>a:hover,
		.js #demoComment:hover>a{
			text-decoration: underline;
		}

		#demoComment::after{
			content: "";
			display: block;
			clear: both;
		}




		ul.authorList{
			margin: 0;
			padding: 0;
/*			display: flex;*/
/*			flex-wrap: wrap;*/

			display: block;

			list-style: none;
			margin: -5px;
		}

			ul.authorList li{
/*				flex: 1 1 25%;*/
/*				flex: 1 1 calc(25% - 30px - 2px);*/
				box-sizing: border-box;
/*				width: calc(25% - 30px - 2px);*/
				width:calc(25% - 10px);
				height: 75px;
				float: left;
				/*display: inline-block;*/
				vertical-align: top;
				font-family: soleil, sans-serif;

				border: 1px solid black;
				border-radius: 5px;
				padding: 10px 15px;
				text-transform: uppercase;
				font-size: 12px;
				text-align: left;
				box-sizing: border-box;

				margin: 5px;

				display: flex;
				flex-direction: column;
				justify-content: center;
			}
			main.p_article_home ul.authorList li{
				flex: 1 1 33%;
				width:calc(33% - 10px);
			}

				ul.authorList li h2{
					margin: 0;
					padding: 0;
				}

					ul.authorList li a{
						display: block;
						font-weight: bold;
						font-size: 15px;
						line-height: 1em;
						color: #000;
						text-decoration: none;
					}

				ul.authorList li span{
					display: block;
					margin-top: .4em;
					line-height: 1em;
					/*line-height: 1em;*/
				}

				ul.authorList li div.description,
				ul.authorList li p{
					text-transform: none;
					line-height: 1.2em;
					font-size: 15px;
					margin: 1em 0 0 0;
				}

			ul.authorList li.lv1{
				position: relative;
/*				width:calc(50% - 30px - 2px);*/
				width:calc(50% - 10px);
				height: 245px;
/*				flex: 1 1 calc(50% - 30px - 2px);*/
/*				float: left;*/

				padding-bottom: 50px;
			}

				ul.authorList li.lv1>footer{
					position: absolute;
					bottom: 10px;
					left: 15px;
					right: 15px;

					display: flex;
					justify-content: space-between;
				}

					ul.authorList li.lv1>footer>ul.links{
						order: 2;
					}

					ul.authorList li.lv1>footer>.btn{
						order: 1;
					}

			ul.authorList li.more{
				padding: 0;
				border: none;
			}

				#app ul.authorList li.more>a{
					background: #0d5c74;
					border-color: #0d5c74;
					color: #FFF;
					width: 100%;
					height: 100%;
					margin: 0;
					text-transform: none;

					display: flex;
					align-items: center;
					justify-content: center;
				}

				#app ul.authorList li.more>a:hover{
					background: #FFF;
					color: #0d5c74;
				}

			ul.authorList::after{
				content: "";
				display: block;
				clear: both;
			}

		ul.authorList.results{
		  display: grid;
/*		  grid-template-columns: 25% 25% 25% 25%;*/
/*		  grid-template-columns: repeat(12, 8.3333333333%);*/
		  grid-template-columns: repeat(12, 1fr);
		  grid-gap: 0;
		  grid-auto-flow: row dense;
		}

			ul.authorList.results>li{
				width: auto;
				grid-column: auto / span 3;
			}

				ul.authorList.results>li>.infos{
					
				}

					ul.authorList.results>li>.infos>.image{
						display: none;
/*						box-sizing: border-box;*/
						max-height: 213px;
						overflow: hidden;
					}

						ul.authorList.results>li>.infos>.image>img{
							width: 100%;
						}

					ul.authorList.results>li>.infos>.infos{

					}

						ul.authorList.results>li>.infos>.infos>h2{

						}

						ul.authorList.results>li>.infos>.infos>.title{
							padding-top: .25em;
						}

						ul.authorList.results>li>.infos>.infos>.description{

						}

					ul.authorList.results>li>.infos>footer{

					}

						ul.authorList.results>li>.infos>footer>ul.links{

						}

							ul.authorList.results>li>.infos>footer>ul.links>li{

							}

								ul.authorList.results>li>.infos>footer>ul.links>li>a{

								}

						ul.authorList.results>li>.infos>footer>a{

						}

			ul.authorList.results>li.infiniteButton{
/*				grid-column: auto / span 4;*/
				grid-column: auto / span 12;
				margin:0;
				padding: 0;
				height:auto;
				width:auto;
				border:none;
			}
			ul.authorList.results>li.infiniteButton:empty{
				display: none;
			}

			ul.authorList.results>li.lv1{
/*				grid-column: auto / span 2;*/
				grid-column: auto / span 6;
				grid-row: auto / span 3;
				padding: 0;
				align-items: flex-start;
			}

				ul.authorList.results>li.lv1>.infos{
					display: flex;
					flex-grow: 1;
					width: 100%;
				}

					ul.authorList.results>li.lv1>.infos>.image{
						display: block;
/*						padding: 10px;*/
						width: 30%;
						padding: 15px 0 15px 15px;
					}

						ul.authorList.results>li.lv1>.infos>.image>img{
							display: block;
						}

					ul.authorList.results>li.lv1>.infos>.infos{
/*						padding: 10px;*/
/*						background: blue;*/
						justify-content: center;
/*						display: flex;*/
/*						flex-direction: column;*/
/*						overflow: auto;*/
		
						display: flex;
						flex-direction: column;
						justify-content: flex-start;

						overflow: auto;
						max-height: 213px;
/*						margin-right: -15px;*/
						padding: 15px;

						width: 100%;

						flex-grow: 1;
					}

						ul.authorList.results>li.lv1>.infos>.infos>*{
							width: 100%;
							max-width: 480px;
							margin-left: auto;
							margin-right: auto;
						}

						ul.authorList.results>li.lv1>.infos>.infos>h2{
							
						}

						ul.authorList.results>li.lv1>.infos>.infos>.title{

						}

						ul.authorList.results>li.lv1>.infos>.infos>.description{
							font-family: utopia-std-display, serif;
							flex-grow: 1;
						}

						ul.authorList.results>li.lv1>.infos>.infos>footer{
/*							position: absolute;*/
/*							bottom: 10px;*/
/*							right: 10px;*/
/*							left: 10px;*/
	/*						background: red;*/
							height: 40px;
							padding-top: 10px;

							display: flex;
							justify-content: space-between;
						}

							ul.authorList.results>li.lv1>.infos>.infos>footer>ul.links{
								order: 2;
								margin-right: 0;
								padding-left: 0;

								display: flex;
								justify-content: flex-end;
							}

								ul.authorList.results>li.lv1>.infos>.infos>footer>ul.links>li{
									display: block;
									height: auto;
									padding: 0;
									border:none;
									border-radius: 0;
									width: auto;
								}

									#app ul.authorList.results>li.lv1>.infos>.infos>footer>ul.links>li>a{
										background: #000000;
										color: #FFFFFF;
										border-radius: 5px;
										display: block;
										/*width: 30px;*/
										height: 30px;
										display: flex;
										min-width: 20px;
										padding: 0 5px;
										align-items: center;
										font-size: 12px;
										justify-content: center;
									}

										#app ul.authorList.results>li.lv1>.infos>.infos>footer>ul.links>li>a::before{
											font-size: 15px;
										}

									#app ul.authorList.results>li.lv1>.infos>.infos>footer>ul.links>li:last-child>a{
										margin-right: 0;
									}

							#app ul.authorList.results>li.lv1>.infos>.infos>footer>a.btn{
								order: 1;
								margin: 0;
								text-transform: none;
								font-size: 12px;
								padding: 5px 10px;
								line-height: 30px;
							}

			ul.authorList.results>li.lv0{

			}

				ul.authorList.results>li.lv0>.infos{
					
				}

					ul.authorList.results>li.lv0>.infos>.image{

					}

						ul.authorList.results>li.lv0>.infos>.image>img{

						}

					ul.authorList.results>li.lv0>.infos>.infos{

					}

						ul.authorList.results>li.lv0>.infos>.infos>h2{

						}

						ul.authorList.results>li.lv0>.infos>.infos>.title{
							line-height: 1em;
						}

						ul.authorList.results>li.lv0>.infos>.infos>.description{

						}

					ul.authorList.results>li.lv0>.infos>footer{

					}

						ul.authorList.results>li.lv0>.infos>footer>ul.links{

						}

							ul.authorList.results>li.lv0>.infos>footer>ul.links>li{

							}

								ul.authorList.results>li.lv0>.infos>footer>ul.links>li>a{

								}

						ul.authorList.results>li.lv0>.infos>footer>a{

						}


		#articleFooter ul.authorList{
			text-align: center;
			display: block;

			margin: 50px 0 0 0;
			clear: both;
			position: relative;
			z-index: 2;
			background: var(--articleBackground);
			padding: 30px 20px 20px 20px;
			text-align: center;
			width: 60%;
			max-width: 640px;
			min-width: 500px;
			margin: 0 auto;
		}

			#articleFooter ul.authorList li{
				margin: 15px 0 0 0;
				/*display: block;*/
			}
			#articleFooter ul.authorList li:first-child{
				margin-top: 0;
			}

				#articleFooter ul.authorList li a{

				}

				#articleFooter ul.authorList li span{

				}

				#articleFooter ul.authorList li p{

				}

		#articleFooter .about{
			margin-top: 100px;
			font-family: soleil, sans-serif;
		}

			#articleFooter ul.articleLocation,
			#articleFooter .labels{
				display: inline-block;
				vertical-align: bottom;
				width: 50%;
			}

			#articleFooter ul.articleLocation{
				/*same as header*/
				font-size: 13px;
			}

				#articleFooter ul.articleLocation a{
					color: inherit;
					font-weight: 500;
				}

			#articleFooter .labels{
				list-style: none;
				margin: 0;
				padding: 0;
				text-align: right;
				font-weight: 500;
			}

				#articleFooter .labels li{
					display: inline-block;
					vertical-align: middle;
					margin: 0 0 5px 5px;
				}
				#articleFooter .labels li:first-child{
					margin-left: 0;
				}

					#articleFooter .labels li a{
						display: block;
						border: 1px solid black;
						border-radius: 5px;
						line-height: 20px;
						padding: 0 15px;
						text-transform: uppercase;
						font-size: 9px;
						text-decoration: none;
						color: #000;
					}

				#articleFooter .labels li.main{

				}

					#articleFooter .labels li.main a{
						font-weight: bold;
						text-decoration: underline;
						font-size: 11px;
						border: none;
					}

		#articleFooter .action{
			border-top: 1px solid black;
			padding-top: 10px;
			margin-top: 30px;
			font-family: soleil, sans-serif;
			font-size: 14px;

			display: flex;
			align-items: center;
		}

			#articleFooter .likes,
			#articleFooter .comments{
				display: block;
				flex: 0 0 auto;
			}
			#articleFooter .comments{
				flex: 1 1 auto;
			}

				#articleFooter .likes .likeButton{
					background: black;
					color: #FFF;
					border:2px solid #000000;
					border-radius: 5px;
					padding: 5px 10px;
					background: var(--accentColor);
					color: var(--accentForeground);
					border-color:var(--accentColor);
				}

				#articleFooter .comments.commentsButton>a{
					background: black;
					color: #FFF;
					border:2px solid #000000;
					border-radius: 5px;
					padding: 5px 10px;
					flex: 0 0 auto;
					display: inline-flex;
					line-height: 34px;
					background: var(--accentColor);
					color: var(--accentForeground);
					border-color:var(--accentColor);
				}
				#articleFooter .likes .likeButton:hover,
				#articleFooter .comments.commentsButton>a:hover{
					background-color: #FFFFFF;
					color: #000000;
					background-color: var(--accentForeground);
					color: var(--accentColor);
				}


				#articleFooter .likes span,
				#articleFooter .comments span{
					display: inline-block;
					vertical-align: middle;
				}

				#articleFooter .likes form,
				#articleFooter .comments form{
					display: inline-block;
					margin: 0;
					padding: 0;
				}

				#articleFooter .likes button,
				#articleFooter .comments button
				/*#articleFooter .likes form button,
				#articleFooter .comments form button*/{
					display: inline-block;
					vertical-align: middle;
					-webkit-appearance: none;
					background: transparent;
					border: none;
					font-family: soleil, sans-serif;
					font-size: 1rem;
					margin: 0;
					padding: 0;
				}

			#articleFooter .likes{
				/*padding-right: 80px;*/
			}

				#articleFooter .likes span{
					
				}

				#articleFooter .likes button{
					
				}

				.likeButton{
					display: inline-flex;
					align-items: center;
					cursor: pointer;
				}
				.likeButton.loading{
					pointer-events: none;
					opacity: .5;
				}

					.likeButton>div{

					}

					.likeButton>div.icon{
						font-size: 23px;
					}

					.likeButton>div.nb{
						line-height: 1em;
						margin-left: 9px;
					}
					.likeButton>div.nb:empty{
						display: none;
					}

					.likeButton.liked>div.icon.icon-like::before{
						content:"\e922";
					}


				.commentsButton{
					margin-left: 15px;
					display: flex;
					align-items: center;
				}

					.commentsButton>a{
						display: flex;
						text-decoration: none;
					}

						.commentsButton>a::before{
							display: block;
							font-size: 23px;
							margin-right: 9px;
						}

			#articleFooter .comments{

			}

				#articleFooter .comments span{
					
				}

				#articleFooter .comments button{
					
				}

			#articleFooter .shareTool{
				float: right;

				flex: 1 1 auto;
				text-align: right;
			}

			.shareTool{
				/*font-size: 9px;*/
				/*font-weight: 500;*/
				font: var(--fontHeader);
				text-transform: uppercase;
				line-height: 26px;
			}

				.shareTool ul{
					display: inline-block;
					margin: 0;
					padding: 0;
					list-style: none;
					vertical-align: top;
				}

					.shareTool ul>li{
						display: inline-block;
						margin-left: 15px;
						position: relative;
					}

						.shareTool ul>li>a{
							font-size: 0;
							text-decoration: none;
						}

						.shareTool ul>li>a:hover{
							color: #0d5c74;
						}

							.shareTool ul>li>a::before{
								font-size: 25px;
							}

						#copiedLink{
							background: #000000;
							color: #FFFFFF;
							border-radius: 5px;
							padding: 5px;
							white-space: nowrap;
							position: absolute;
							bottom: 100%;
							left: 50%;
							transform: translateX(-50%);
							font-size: 10px;
						}



	main.p_article.inArticle.type_partner #articleSidebar>div{
		background: var(--accentColor);
		color: var(--accentForeground);
	}

		main.p_article.inArticle.type_partner #scrollPct{
			background: var(--accentForeground);
		}

		main.p_article.inArticle.type_partner #articleSidebar,
		main.p_article.inArticle.type_partner #articleSidebar .info2,
		main.p_article.inArticle.type_partner #articleSidebar>div>div.np{
			border-color: var(--accentForeground);
		}


			main.p_article.inArticle.type_partner #articleHeader>.txt{
				display: flex;
				width: 96%;
				max-width: 1150px;
				padding-left: 0;
				padding-right: 0;
				justify-content: space-between;
			}

			main.p_article.inArticle.type_partner #articleHeader>.txt>div{
				/*max-width: 550px;*/
				margin: 0 auto;
			}

				main.p_article.inArticle.type_partner #articleHeader>.txt .intro2{
					margin-left: 0;
					margin-right: 0;
				}

			main.p_article.inArticle.type_partner #articleHeader>.txt>div.partner{
				/*align-self: flex-start;*/
				flex: 0 0 380px;
			}

				main.p_article.inArticle.type_partner #articleHeader>.txt>div.partner>div{
					background: #FFF;
					border-radius: 25px;
					background: #FFF;
					padding: 30px;
					box-sizing: border-box;
					position: sticky;
					top: 100px;
				}

					main.p_article.inArticle.type_partner #articleHeader>.txt>div.partner>div>span{
						display: block;
						text-align: center;
						font: var(--fontHeader);
						text-transform: uppercase;
						margin-bottom: 30px;
					}

					main.p_article.inArticle.type_partner #articleHeader>.txt>div.partner>div>.img{
						max-width: 200px;
						margin: auto;
					}

						main.p_article.inArticle.type_partner #articleHeader>.txt>div.partner>div>.img>img{
							max-height: 140px;
							margin: auto;
						}

					main.p_article.inArticle.type_partner #articleHeader>.txt>div.partner>div>.text{
						border-top: 1px solid black;
						color: #000;
						padding: 30px;
						margin: 30px -30px -30px -30px;
						font-size: 15px;
					}

main.articleContinue{
	border-top: 1px solid #DCDCDC; 
	border-color: var(--accentColor);
	padding: 100px 0;
}
	
	#app.subHeader>main.articleContinue>section:first-child, 
	#app.subHeader>main.articleContinue>#mainSubmenu+section{
		margin-top: 0;
	}
		
		#app>main.articleContinue>section>div{
			padding: 0;
		}

			main.articleContinue h1{
				border-top: 3px solid black;
				margin-top: 0;
			}


/*
main.p_article.inArticle.type_tmp{

}

	main.p_article.inArticle.type_tmp #articleHeader{

	}

		main.p_article.inArticle.type_tmp #articleHeader>.img{
			position: absolute;
			top: 0;
			left: 0;
			width: 65%;
			height: 100%;
		}

		main.p_article.inArticle.type_tmp #articleHeader>.txt{
			position: absolute;
			top: 0;
			right: 0;
			width: 35%;
			height: 100%;
			background: red;
			background: var(--accentColor);
			color: var(--accentForeground);
		}
*/

/*#articleHeader+section{
	margin-top: 81px;
}*/





form{

}

	form label{
		display: block;
		/*padding-top: 20px;*/
		margin-top: 40px;
		position: relative;
	}

	form label.half,
	form label.half+label.half+label.half{
		box-sizing: border-box;
		width: 50%;
		display: inline-block;
		vertical-align: top;
		padding-right: 10px;
	}

	form label.half+label.half{
		padding: 0 0 0 10px;
	}

	form label.half.select,
	form label.half+label.half+label.half.select{
		width: calc(50% - 10px);
		padding-right: 0;
		margin-right: 10px;
	}

	form label.half+label.half.select{
		margin-right: 0;
		padding-left: 0;
		margin-left: 10px;
	}

/*	form label.half+label.half>span{
		left: 10px;
	}*/


		form label>textarea,
		form label>input,
		#card-element{
			width: 100%;
			background: #e8e8e9;
			border-radius: 5px;
			height: 40px;
			border: none;
			padding: 0 20px;
			box-sizing: border-box;
		}

		form label>textarea{
			height: 100px;
			padding: 10px;
		}

		.style_grey form label>textarea,
		.style_grey form label>input,
		.style_grey #card-element{
			background: #FFFFFF;
		}

		main.p_subscription_activate .style_grey form label>input{
			background: #e8e8e9;
		}

		.popup .style_grey form label>textarea,
		.popup .style_grey form label>input,
		.popup .style_grey #card-element{
			background: #e8e8e9;
		}

		.popup .style_grey form label>textarea{
			resize: none;
		}


		#card-element{
			padding: 0 20px 0 10px;
		}

		span.label,
		form label>span{
			display: block;
			position: absolute;
			top: -25px;
			/*left: 0;*/
			
			font: var(--fontHeader);
			text-transform: uppercase;
			font-size: 12px;
		}
		span.label{
			position: static;
			top: 0;
			margin-bottom: 9px;
		}

			form label>span>span{
				font-weight: normal;
			}

	form label.select{
		border: 2px solid #EEE;
		border-radius: 5px;
	}

		form label.select::after{
			/*content: "⌄";*/
			pointer-events: none;
			position: absolute;
			top: 50%;
			right: 15px;
			transform: translateY(-50%);

			content: "\e91a";
			font-family: 'icomoon' !important;
			font-size:.25em
		}	

		form label.select>select{
			border-radius: 5px;
			width: 100%;
			height: 40px;
			padding: 0 20px;
			box-sizing: border-box;

			-webkit-appearance: none;
			display: block;
			background: #FFF;
			border-radius: 0;
			border: none;
			/*border: 2px solid #EEE;*/
			box-sizing: border-box;
		}

		form label.select>ul.select+span.val{
			position: static;
			display: block;
			padding: 5px 30px 5px 10px;
			line-height: 20px;
		}

		form label.select>ul.select+span.val:empty::after{
			content:"Choisir";
		}

		form label.select>ul.select{
			position: absolute;
			top: 100%;
			right: 0;
			border-radius: 5px;
			min-width: 100%;
			/*height: 30px;*/
			padding: 0 20px;
			box-sizing: border-box;
			list-style: none;
			margin: 0;
			padding: 0;

			-webkit-appearance: none;
			display: block;
			background: #FFF;
			border: 1px solid #EEE;
			box-sizing: border-box;

			font-family: soleil, sans-serif;
			font-size: 15px;

			text-align: left;

			min-width: 260px;
		}
			form label.select>ul.select li{
				display: block;
				padding: 5px 10px;
				line-height: 20px;
			}

			form label.select>ul.select>li.active{
				font-weight: bold;
			}
				form label.select>ul.select>li.active>ul{
					font-weight: normal;
				}

				form label.select>ul.select>li a{
					text-decoration: none;
				}

				form label.select>ul.select>li>ul{
					list-style: none;
					padding-left: 10px;
					margin: 5px 0 -5px 0;
				}

					form label.select>ul.select>li>ul>li{

					}

					form label.select>ul.select>li>ul>li.active{
						font-weight: bold;
					}


		.js form label.select>ul.select{
			display: none;
		}

		.js form label.select.active>ul.select{
			display: block;
			z-index: 2;
			border-radius: 5px;
			background: #FFF;
		}


	form label.radio,
	form label.checkbox{
		padding: 0 0 0 20px;
		margin-top: 0;
	}

		form label.radio input,
		form label.checkbox input{
			position: absolute;
			width: 20px;
			height: 20px;
			top: 0;
			left: 0;
		}

		form label.radio span,
		form label.checkbox span{
			text-align: left;
			text-transform: none;
			font-size: inherit;
			font-weight: inherit;
			position: static;
			padding-left: 10px;

			line-height: 1.2em;
		}

	form label.checkbox{

	}

		form label.checkbox input{

		}

		form label.checkbox span{

		}

	form label.radio{

	}

		form label.radio input{

		}

		form label.radio span{

		}



ul.toggle,
ul.toggle2{
	list-style: none;
	display: inline-block;
	margin: 0;
	padding: 0;
	border: 2px solid black;
	border-radius: 5px;

	white-space: nowrap;

	font-size: 15px;
}

	ul.toggle>li,
	ul.toggle2>li{
		display: inline-block;
		vertical-align: top;
	}

		ul.toggle>li>label,
		ul.toggle2>li>label{
			margin-top: 0;
			padding-left: 0;
			cursor: pointer;
		}

			ul.toggle>li>label>input,
			ul.toggle2>li>label>input{
				display: none;
			}

			ul.toggle>li>span,
			ul.toggle>li>label>span,
			ul.toggle2>li>label>span{
				position: static;
				display: block;
				background: #FFF;
				color: #000;
				line-height: 38px;
				width: 200px;
				text-align: center;
				border-left: 2px solid black;
			}

			ul.toggle.small>li>span,
			ul.toggle.small>li>label>span,
			ul.toggle2.small>li>label>span{
				width: 80px;
			}

		ul.toggle.auto,
		ul.toggle.auto,
		ul.toggle2.auto{
			display: flex;
		}

			ul.toggle.auto>li,
			ul.toggle.auto>li,
			ul.toggle2.auto>li{
				flex: 1 1 25%;
			}

				ul.toggle.auto>li>span,
				ul.toggle.auto>li>label>span,
				ul.toggle2.auto>li>label>span{
					width: 100%;
				}


			ul.toggle>li:first-child>span,
			ul.toggle>li:first-child>label>span,
			ul.toggle2>li:first-child>label>span{
				border-left: none;
				border-radius: 2px 0 0 2px;
			}

			ul.toggle>li:last-child>span,
			ul.toggle>li:last-child>label>span,
			ul.toggle2>li:last-child>label>span{
				border-radius: 0 2px 2px 0;
			}

			ul.toggle>li.active>span,
			ul.toggle>li>label>input:checked+span,
			ul.toggle2>li>label>input:checked+span{
				background: #000;
				color: #FFF;
				box-shadow: 0 0 0 2px #000;
			}

			ul.toggle>li>span{
				cursor: pointer;
			}

			ul.toggle>li:not(.active)>span:hover{
				text-decoration: underline;
			}

		ul.toggle>li.customInput,
		ul.toggle>li.customInput,
		ul.toggle2>li.customInpu{

		}

			ul.toggle>li.customInput>label,
			ul.toggle>li.customInput>label,
			ul.toggle2>li.customInpu>label{
				position: relative;
			}

				ul.toggle>li.customInput>label>.field,
				ul.toggle>li.customInput>label>.field,
				ul.toggle2>li.customInpu>label>.field{
					display: none;
					position: absolute;
					top: 0;
					left: 0;
					right: 0;
					bottom: 0;
					background: #000000;
					color: #FFFFFF;
				}

					ul.toggle>li.customInput>label>input+span+.field>input,
					ul.toggle>li.customInput>label>input+span+.field>input,
					ul.toggle2>li.customInpu>label>input+span+.field>input{
						border-radius: 0;
						border: 0;
						-webkit-appearance: none;
						color: inherit;
						background: inherit;
						font-family: inherit;
						font-size: inherit;
						font-style: inherit;
						font-weight: inherit;
						border-bottom: 2px solid black;
						background: #000000;
						width: 50px;
					}
					ul.toggle>li.customInput>label>input+span+.field>input+span,
					ul.toggle>li.customInput>label>input+span+.field>input+span,
					ul.toggle2>li.customInpu>label>input+span+.field>input+span{

					}

				ul.toggle>li.customInput>label>input:checked+span,
				ul.toggle>li.customInput>label>input:checked+span,
				ul.toggle2>li.customInpu>label>input:checked+span{
					/*display: none;*/
				}

				ul.toggle>li.customInput>label>input:checked+span+.field,
				ul.toggle>li.customInput>label>input:checked+span+.field,
				ul.toggle2>li.customInpu>label>input:checked+span+.field{
					display: flex;
					align-items: center;
					justify-content: center;
				}

					ul.toggle>li.customInput>label>input:checked+span+.field>input,
					ul.toggle>li.customInput>label>input:checked+span+.field>input,
					ul.toggle2>li.customInpu>label>input:checked+span+.field>input{
						border-radius: 0;
						border: 0;
						-webkit-appearance: none;
						color: inherit;
						background: inherit;
						font-family: inherit;
						font-size: inherit;
						font-style: inherit;
						font-weight: inherit;
						border-bottom: 2px solid #888;
						background: #000000;
					}




ul.toggle2{
	border: none;
}

	ul.toggle2>li{
		display: block;
		margin-top: 5px;
		border: 2px solid black;
	}

	ul.toggle2>li:first-child{
		margin-top: 0;
	}

		ul.toggle2>li>label{

		}

			ul.toggle2>li>label>span{
				width: auto;
			}





#app>main#error{
	
}

	#app>main#error>section{
		--fgcolor: #FFFFFF;
		--bgcolor: #1a2029;

		height: 500px;
		min-height: calc(100vh - 80px);
		text-align: center;
		background: #1a2029;
		color: #FFF;
	}

		#app>main#error>section::before,
		#app>main#error>section::after{
			content: "";
			display: inline-block;
			width: 1px;
			height: 100%;
			vertical-align: middle;
		}

		#app>main#error>section>div{
			display: inline-block;
			width: 80%;
			max-width: 450px;
			vertical-align: middle;			
		}

			#app>main#error>section>div>div.zone{

			}

				#app>main#error>section>div>div.zone>div.errnum{
					display: inline-block;
					border: 1px solid white;
					width: 100px;
					height: 100px;
					line-height: 100px;
					font-size: 40px;
					font-weight: 100;
					border-radius: 100%;
					box-shadow: 0 0 0 4px #1a2029, 0 0 0 7px #FFF;
					margin-bottom: 50px;
				}

main.p_user_login{
/*	overflow-x: hidden;*/
}

main.p_user_signup{
/*	overflow-x: hidden;*/
}

	main.p_user_signup .newsletter{
		border: 2px solid #e8e8e9;
		border-left: 0;
		border-right: 0;
		margin: 25px 0;
		padding: 25px 0;
	}

		main.p_user_signup .newsletter>h2{
			font-size: inherit;
			margin: 0;
			padding: 0;
			/*font-family: soleil, sans-serif;*/
			/*text-transform: uppercase;*/
			/*margin-bottom: 25px;*/

			font: var(--fontHeader);
			text-transform: uppercase;
			font-size: 12px;
			margin-bottom: 10px;
		}

		main.p_user_signup .newsletter>ul.checkboxList{
			display: grid;
			grid-template-columns: 1fr 1fr;
			gap: 10px;
		}

			main.p_user_signup .newsletter>ul.checkboxList>li{
				margin: 0;
			}

				main.p_user_signup .newsletter>ul.checkboxList>li>label{

				}

					main.p_user_signup .newsletter>ul.checkboxList>li>label>span{
						font-size: 14px;
					}

						main.p_user_signup .newsletter>ul.checkboxList>li>label>span>span{

						}

	#app>main.p_user_signup button.submit{
		margin: 20px 0 0 auto;
		width: 200px;
	}


main.p_user_profile{

}

	main.p_user_profile>section{
		/*min-height: calc(100vh - 80px);*/
	}

		#app>main.p_user_profile>section>div{
			min-height: calc(100vh - 80px);
			box-sizing: border-box;

			font-family: soleil, sans-serif;

			padding: 50px 0;
		}

		#app.subHeader main.p_user_profile>section>div{
			min-height: calc(100vh - 80px - 60px);
		}

			main.p_user_profile>section>div>div{

			}

				main.p_user_profile>section>div>div.zone1{

				}

					main.p_user_profile>section>div>div.zone1>div{
						background: #FFF;
						border-radius: 5px;
						padding: 25px;
						text-align: center;

						position: sticky;
						top: 160px;
						z-index: 2;
					}

						main.p_user_profile>section>div>div.zone1>div>div.name{
							font-size: 20px;
							font-weight: 600;
							line-height: 1em;
						}

						main.p_user_profile>section>div>div.zone1>div>div.email{
							font-size: 12px;
							margin-top: 15px;
							margin-bottom: 20px;
						}

					main.p_user_profile>section>div>div.zone1>div .btn{
						margin-left: 0;
						margin-right: 0;
						font-size: 13px;
					}

					main.p_user_profile>section>div>div.zone1>div .btn.inv{
						margin-top: 15px;
					}

					main.p_user_profile>section>div>div.zone1>div #mainSubmenu{
						
					}

					main.p_user_profile>section>div>div.zone1>div #mainSubmenu+a.btn{
						margin-top: 12px;
						
					}

				main.p_user_profile>section>div>div.zone2{
					position: relative;
				}

					main.p_user_profile>section>div>div.zone2>h1{
						margin: 0;
						padding: 10px 0;
						border-top: 3px solid black;
						font-weight: 600;
						margin-top: 60px;
						line-height: 30px;
					}
					main.p_user_profile>section>div>div.zone2>h1:first-child{
						margin-top: 0;
					}

					main.p_user_profile>section>div>div.zone2>h2{
						margin: 0;
						padding: 10px 0;
						font-weight: 600;
						margin-top: 60px;
						line-height: 30px;
						font-size: 20px;

						margin: 1em 0 .5em 0;
						padding: 0;
					}

					main.p_user_profile>section>div>div.zone2>h1+div.toggleClass,
					main.p_user_profile>section>div>div.zone2>h1+a.topright{
						position: absolute;
						top: 0;
						right: 0;
						/*width: 200px;*/
						margin-right: 0;
						text-align: right;
						font-size: 15px;
						line-height: 30px;
						padding: 10px 0;
					}
					main.p_user_profile>section>div>div.zone2>h1+div.toggleClass:hover{
						text-decoration: underline;
						cursor: pointer;
					}

					main.p_user_profile ul.articleList.results{
						margin: 0;
						gap: 5px;
						display: grid;
						grid-template-columns: repeat(auto-fit, minmax(150px, 250px));
/*						max-height:350px;*/
						overflow:hidden;
						justify-content: start;
					}

						main.p_user_profile ul.articleList.results>li{
							width: 100%;
							box-sizing: border-box;
							min-width: 0;
							max-width: none;
						}

							main.p_user_profile ul.articleList.results>li>.img{
								margin-bottom: 0;
							}

							main.p_user_profile ul.articleList.results>li>.text>h3{
								font-size: inherit;
							}

							main.p_user_profile ul.articleList>li>.text>p{
								font-size: 12px;
								overflow: hidden;
								line-height: 1.5em;
								max-height: 4.5em;
							}

#stripe_error{
	color: red;
	font-size: 12px;
	font-weight: bold;
	margin-bottom: 10px;
}

					main.p_user_profile>section>div>div.zone2>h1+div.toggleClass+form.form4add{
						background: #FFF;
						position: absolute;
						top: 50px;
						right: 0;
						border-radius: 5px;
						border: 1px solid black;
						z-index: 1;
					}

						main.p_user_profile>section>div>div.zone2>h1+div.toggleClass+form.form4add>div{
							max-height: 60vh;
							overflow: auto;
							padding: 15px;
						}

							#app main.p_user_profile>section>div>div.zone2>h1+div.toggleClass+form.form4add>div>button{
								margin: 20px 0 0 auto;
							}

						main.p_user_profile>section>div>div.zone2>h1+div.toggleClass+form.form4add::before{
							position: absolute;
							content: "";
							display: block;
							top: -10px;
							right: 99px;
							width: 12px;
							height: 12px;
							background: #FFFFFF;
							transform-origin: 100% 0;
							transform: rotate(-45deg);
							border: 1px solid black;
							border-bottom: 0;
							border-left: 0;
							border-bottom-left-radius: 100%;
						}

							
							main.p_user_profile>section>div>div.zone2>h1+div.toggleClass+form.form4add label>input, 
							main.p_user_profile>section>div>div.zone2>h1+div.toggleClass+form.form4add #card-element{
								background: #e8e8e9;
							}

					main.p_user_profile>section>div>div.zone2>form{

					}

					main.p_user_profile>section>div>div.zone2>form.savebar{
						padding-bottom: 40px;
					}

					main.p_user_profile>section>div>div.zone2>.form4add{
						display: none;
					}
					main.p_user_profile>section>div>div.zone2>.form4add.active{
						display: block;
					}

					main.p_user_profile>section>div>div.zone2>ul:not(.articleList){
						display: block;
						margin: 0;
						padding: 0;
					}

						main.p_user_profile>section>div>div.zone2>ul:not(.articleList)>li{
							display: block;

							/*margin: 10px 0 25px 0;*/
							margin: 10px 0;
							padding: 25px;
							background: #FFF;
							border-radius: 5px;
						}

						main.p_user_profile>section>div>div.zone2>ul:not(.articleList)>li:first-child{
							margin-top: 0;
						}

		main.p_user_profile>section>div#savebar,
		#app.subHeader main.p_user_profile>section>div#savebar{
			/*display: block;*/
			position: sticky;
			bottom: 0;
			width: 100%;
			max-width: none;
			background: #e8e8e9;
			margin: 0;
			padding: 0;
			border-top: 1px solid black;
			height: 59px;
			margin-top: -60px;
			min-height: 0;
			z-index: 2;
			display: flex;
		}

			main.p_user_profile>section>div#savebar button{
				background: #000;
				color: #FFF;
				margin: auto 25px auto auto;
				min-width: 200px;
				font-size: 13px;
			}

	main.p_user_profile div.empty{
		text-align: center;
		padding: 100px 0;
		text-transform: uppercase;
		font-size: 12px;
		font-weight: 600;
		opacity: .6;
	}

	ul.checkboxList{
		display: block;
		margin: -2px;
		padding: 0;
		list-style: none;
	}

		ul.checkboxList>li{
			display: inline-block;
			margin: 2px;
			padding: 0;
		}

			ul.checkboxList>li>label.checkbox{
				padding: 0;
			}

				ul.checkboxList>li>label>input{
					display: none;
				}

				ul.checkboxList>li>label>span{
					display: block;
					border-radius: 5px;
					padding: 10px;
					border: 1px solid #e8e8e9;
					color: #000;
					background: #FFF;
					opacity: .5;

					font-family: soleil, sans-serif;
					font-weight: 600;
					font-size: 12px;

					line-height: 1em;
				}

				ul.checkboxList>li>label:hover>span{
					border-color: #000;
					cursor: pointer;
				}

				ul.checkboxList>li>label>input:checked{
				}

				ul.checkboxList>li>label>input:checked+span{
					background: #FFFFFF;
					border-color: #000;
					opacity: 1;
				}

	ul.checkboxList.v2{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}

		ul.checkboxList.v2>li{
			flex: 1 1 33.3%;
			width: 100%;
			max-width: 390px;
			min-width: 200px;
			margin: 5px;

			display: flex;
		}

			ul.checkboxList.v2>li>label.checkbox{
				display: flex;
			}

				ul.checkboxList.v2>li>label>input{

				}

				ul.checkboxList.v2>li>label>span,
				main.p_user_signup .newsletter>ul.checkboxList.v2>li>label>span{
					position: relative;
					padding-left: 40px;
					top: 0;

					font-family: utopia-std-display, serif;
					font-weight: normal;
					text-transform: none;

					font-size: 16px;
					line-height: 1.2em;
				}

					ul.checkboxList.v2>li>label>span::before,
					ul.checkboxList.v2>li>label>span::after{
						content: "";
						display: block;
						position: absolute;
						top: 13px;
						left: 13px;
						width: 12px;
						height: 12px;
						border-radius: 2px;
						background: #e8e8e9;
					}

					ul.checkboxList.v2>li>label>span>span{
						display: block;
						padding: 0 0 .5em 0;

						font: var(--fontHeader);
						font-size: 12px;
						text-transform: uppercase;
					}

						ul.checkboxList.v2>li>label>span>span>span{
							font-weight: normal;
							text-transform: none;
							font-style: italic;
						}

					ul.checkboxList.v2>li>label>span::after{
						text-align: center;
						line-height: 12px;
						/*content: "✔️";*/
						opacity: 0;

						display: block;
						content: "\e91e";
						font-family: 'icomoon' !important;
						speak: never;
						font-style: normal;
						font-weight: normal;
						font-variant: normal;
						text-transform: none;
						-webkit-font-smoothing: antialiased;

						font-size: 12px;
					}

					ul.checkboxList.v2>li>label>input:checked+span::before{

					}

					ul.checkboxList.v2>li>label>input:checked+span::after{
						opacity: 1;
					}

			ul.checkboxList.v2>li>label:hover{

			}

				ul.checkboxList.v2>li>label:hover>span{

				}


	main.p_user_profile ul.addresses{

	}

		main.p_user_profile>section>div>div.zone2>ul.addresses>li{
			display: flex;
			flex-wrap: wrap;
		}

			main.p_user_profile ul.addresses>li>header{
				position: absolute;
			}
			main.p_user_profile ul.addresses>li>header.flow{
				position: static;
				flex: 0 0 50%;
			}

				main.p_user_profile ul.addresses>li>header>h2{
					margin: 0;
					padding: 0;
					font-weight: 600;
					font-size: inherit;
				}

			main.p_user_profile ul.addresses>li>div.address{
				order: 2;
				flex: 0 0 50%;
				font-size: 12px;
			}

				main.p_user_profile ul.addresses>li>div.address>h3{
					font-weight: 600;
					font-size: inherit;
					margin: 0 0 .5em 0;
					padding: 0;
					text-transform: uppercase;
				}

				main.p_user_profile ul.addresses>li>div.address:first-line{
					font-weight: 600;
				}

			main.p_user_profile ul.addresses>li>div.uses{
				order: 1;
				flex: 0 0 50%;
			}
			main.p_user_profile ul.addresses>li div.uses{
				padding-top: 25px;
				font-size: 12px;
			}

				main.p_user_profile ul.addresses>li div.uses>h3{
					font-weight: 600;
					font-size: inherit;
					margin: 0 0 .5em 0;
					padding: 0;
					/*text-transform: uppercase;*/
					color: #888;
				}


				main.p_user_profile ul.addresses>li div.uses>ul{
					list-style: none;
					margin: 0;
					padding: 0;
				}

					main.p_user_profile ul.addresses>li div.uses>ul>li{
						display: block;
						/*padding-left: 1em;*/
						/*position: relative;*/
					}

						main.p_user_profile ul.addresses>li div.uses>ul>li::before{
							content: "—";
							display: inline-block;
							color: #888;
							padding-right: .5em;
						}

						main.p_user_profile ul.addresses>li div.uses>ul>li>a{
							text-decoration: none;
						}

			main.p_user_profile ul.addresses>li>div.actionbar{
				order: 3;
				flex: 0 0 100%;
				border-top: 1px solid black;
				/*display: flex;*/
				/*justify-content: right;*/
				text-align: right;
				padding-top: 20px;
				margin-top: 20px;
				font-size: 15px;
			}

				#app main.p_user_profile ul.addresses>li>div.actionbar button{
					margin: auto 0 auto auto;
					min-width: 200px;
				}

	main.p_user_profile ul.expandable{
		--bgcolor: #1a2029;
		--fgcolor: #FFFFFF;
	}

	main.p_user_profile ul.expandable.white{
		--bgcolor: #FFFFFF;
		--fgcolor: #000000;
	}

		main.p_user_profile ul.expandable>li{
			padding: 0;
			background: #FFFFFF;
			position: relative;
		}

			main.p_user_profile ul.expandable>li>header{
				border-radius: 5px;
				background: var(--bgcolor);
				color: var(--fgcolor);
				margin: -25px;
				padding: 25px;

				display: flex;
				align-items: center;

				font-size: 15px;
			}
			.js main.p_user_profile ul.expandable>li>header.clickable{

			}

				main.p_user_profile ul.expandable>li>header>div{
					flex-grow: 0;
					padding-left: 1em;
				}
				main.p_user_profile ul.expandable>li>header>div:first-child{
					flex-grow: 1;
					flex-shrink: 1;
					padding-left: 0;
				}

				main.p_user_profile ul.expandable>li>header>div.id{

				}
				main.p_user_profile ul.expandable>li>header>div.price{
					display: flex;
				}

					main.p_user_profile ul.expandable>li>header>div.price>div+div{
						margin-left: 1em;
					}




					main.p_user_profile ul.expandable>li>header>div>h2{
						margin: 0;
						padding: 0;
						font-size: 20px;
					}

						.js main.p_user_profile ul.expandable>li>header>div>h2 a{
							text-decoration: none;
						}

					main.p_user_profile ul.expandable>li>header>div>div.title{
						text-transform: uppercase;
						font-size: 12px;
						font-weight: 600;
					}

						.js main.p_user_profile ul.expandable>li>header>div>div.title a{
							text-decoration: none;
						}

						main.p_user_profile ul.expandable>li>header>div>div.title>span{
							text-transform: none;
							font-weight: normal;
						}

					main.p_user_profile ul.expandable>li>header>div>div.recipient{
						font-size: 12px;
						font-style: italic;
					}


					main.p_user_profile ul.expandable>li>header>div>div.amount{
						/*position: absolute;
						top: 50%;
						right: 25px;
						transform: translateY(-50%);*/
						text-align: right;
					}

						main.p_user_profile ul.expandable>li>header>div>div.amount>span{
							font-family: utopia-std-display, serif;
							font-weight: 600;
							font-size: 20px;
						}

						main.p_user_profile ul.expandable>li>header>div>div.amount>div{
							text-transform: uppercase;
							font-size: 12px;
							font-weight: 600;
						}

			main.p_user_profile ul.expandable>li>div.infos{
				margin-top: 25px;
				font-size: 15px;
			}

			main.p_user_profile ul.expandable.white>li>div.infos{
				border-top: 2px solid black;
			}

			main.p_user_profile ul.expandable.white>li>div.infos>.tracking{
				border-bottom: 2px solid black;
				padding: 10px 0;
				font-size: 15px;
			}

				main.p_user_profile ul.expandable>li>div.infos>ul.sides{
					display: flex;
					margin: 0;
					padding: 25px 0;
					align-items: center;
					list-style: none;
				}
				main.p_user_profile ul.expandable>li>div.infos>ul.sides+ul.sides{
					border-top: 1px solid var(--bgcolor);
				}

					main.p_user_profile ul.expandable>li>div.infos>ul.sides>li:first-child{
						display: flex;
						align-items: center;
						flex-grow: 1;
					}
					main.p_user_profile ul.expandable>li>div.infos>ul.sides>li:last-child{
						flex-grow: 0;
					}

						main.p_user_profile ul.expandable>li>div.infos>ul.sides>li>div:not(.row){
							padding-right: 35px;
							display: flex;
							align-items: center;
						}

							main.p_user_profile ul.expandable>li>div.infos>ul.sides>li>div>div,
							main.p_user_profile ul.expandable>li>div.infos>ul.sides>li>div.row>h3{
								font-size: 25px;
								font-weight: 600;
								margin: 0;
								padding: 0;
							}

							main.p_user_profile ul.expandable>li>div.infos>ul.sides>li>div>span{
								padding-left: 15px;
								display: block;
								line-height: 1em;
							}

				main.p_user_profile ul.expandable>li>div.infos>ul.grid{
					display: flex;
					list-style: none;
					margin: 0;
					padding: 0;
					/*align-items: center;*/
					border-top: 1px solid var(--bgcolor);
					border-bottom: 1px solid var(--bgcolor);
				}

				main.p_user_profile ul.expandable>li>div.infos>ul.grid:first-child{
					border-top: 0;
				}

					main.p_user_profile ul.expandable>li>div.infos>ul.grid>li{
						padding: 25px;
						flex: 0 0 50%;
						box-sizing: border-box;
						display: flex;
						flex-wrap: wrap;
						align-content: flex-start;
						position: relative;
					}

					main.p_user_profile ul.expandable>li>div.infos>ul.grid>li.editForm{
						padding-bottom: 87px;
					}

						main.p_user_profile ul.expandable>li>div.infos>ul.grid>li>h3{
							margin: 0;
							padding: 0;
							font-size: 20px;
							font-weight: 600;
							flex: 0 0 100%;
							margin-bottom: 22px;
						}

						main.p_user_profile ul.expandable>li>div.infos>ul.grid>li>header{
							flex: 1 1 30%;
							font-size: 12px;
						}

						main.p_user_profile ul.expandable>li>div.infos>ul.grid>li>div.address{
							flex: 1 1 60%;
							font-size: 12px;
						}

							main.p_user_profile ul.expandable>li>div.infos>ul.grid>li>div.address:first-line{
								font-weight: 600;
							}

							main.p_user_profile ul.expandable>li>div.infos>ul.grid>li>div.empty{
								/*text-align: center;*/
								/*width: 100%;*/
								padding: 25px 0;
							}


						#app main.p_user_profile ul.expandable>li>div.infos>ul.grid>li>a.btn{
							position: absolute;
							bottom: 25px;
							left: 0;
							margin: 0;
							min-width: 200px;
						}

						#app main.p_user_profile ul.expandable>li>div.infos>ul.grid>li:last-child>a.btn{
							left: 25px;
						}

						#app main.p_user_profile ul.expandable>li>div.infos>ul.grid>li.editForm>form{
							position: absolute;
							top: 0;
							left: 0;
							right: 0;
							bottom: 0;
							background: #FFF;
							display: none;
							flex-direction: column;
							justify-content: center;
							/*align-items: center;*/
							padding: 0 25px 0 0;
						}

							#app main.p_user_profile ul.expandable>li>div.infos>ul.grid>li>form>a{
								cursor: pointer;
							}

							#app main.p_user_profile ul.expandable>li>div.infos>ul.grid>li>form>a.cancel{
								color: red;
							}

							#app main.p_user_profile ul.expandable>li>div.infos>ul.grid>li>form>label.select{
								margin-bottom: 20px;
							}

							#app main.p_user_profile ul.expandable>li>div.infos>ul.grid>li>form>div.empty{
								padding: 30px 0;
							}

						#app main.p_user_profile ul.expandable>li>div.infos>ul.grid>li.editForm:last-child>form{
							padding: 0 0 0 25px;
						}
						#app main.p_user_profile ul.expandable>li>div.infos>ul.grid>li.editForm>form.active{
							display: flex;
						}


					main.p_user_profile ul.expandable>li>div.infos>ul.grid>li:first-child{
						padding-left: 0;
					}
					main.p_user_profile ul.expandable>li>div.infos>ul.grid>li:last-child{
						padding-right: 0;
					}
					main.p_user_profile ul.expandable>li>div.infos>ul.grid>li:last-child:first-child{
						margin: 0 auto;
					}
					main.p_user_profile ul.expandable>li>div.infos>ul.grid>li:last-child:not(:first-child){
						border-left: 1px solid var(--bgcolor);
					}

				main.p_user_profile ul.expandable>li>div.infos>div.tools{
					display: flex;
					width: 100%;
					justify-content: space-between;
					padding-top: 25px;
				}

					#app main.p_user_profile ul.expandable>li>div.infos>div.tools>a{
						flex: 0 0 200px;
						margin: 0;
					}

					#app main.p_user_profile ul.expandable>li>div.infos>div.tools>form>button{
						margin: 0;
					}


/*			main.p_user_profile ul.expandable>li>header+*{
				margin-top: 25px;
			}*/

			#app main.p_user_profile ul.expandable+a.btn{
				margin-left: 0;
				margin-right: 0;
			}

		main.p_user_profile ul.expandable>li.disabled{

		}
		
			main.p_user_profile ul.expandable>li.disabled>header{
				opacity: .8;
			}

	#app main.p_user_profile ul.library{
		display: flex;
		flex-wrap: wrap;
		padding: 15px 15px 0 0;
		background: #FFF;
		border-radius: 5px;
	}

		#app main.p_user_profile ul.library>li{
			/*width: 25%;*/
			box-sizing: border-box;
			padding: 0 0 15px 15px;
			margin: 0;
			flex: 1 1 25%;
			max-width: 50%;
		}

			#app main.p_user_profile ul.library>li>.img{
				position: relative;
				background: #e8e8e9;
				width: 100%;
			}

				#app main.p_user_profile ul.library>li>.img::before{
					display: block;
					content: "";
					padding-bottom: 100%;
				}

				#app main.p_user_profile ul.library>li>.img>img{
					display: block;
					position: absolute;
					top: 0;
					left: 0;
					width: 100%;
					height: 100%;
				}

			#app main.p_user_profile ul.library>li>h3{
				margin: 15px 0 0 0;
				padding: 0;
				font-size: inherit;
				font-weight: 600;
			}

			#app main.p_user_profile ul.library>li>span{
				display: block;
			}

			#app main.p_user_profile ul.library>li>ul{
				list-style: none;
				margin: 15px 0 0 0;
				padding: 0;
			}

				#app main.p_user_profile ul.library>li>ul>li{
					border-top: 2px solid #e8e8e9;
					/*text-align: center;*/

					overflow: hidden;
					text-overflow: ellipsis;
					white-space: nowrap;
				}

				#app main.p_user_profile ul.library>li>ul>li::before{
					padding-right: .5em;
				}

/*				#app main.p_user_profile ul.library>li>ul>li:first-child{
					border-top: 0;
				}*/

					#app main.p_user_profile ul.library>li>ul>li>a{
						text-transform: uppercase;
						font-size: 12px;
						font-weight: 600;
						text-decoration: none;
					}

			#app main.p_user_profile ul.library>li.fix{
				padding: 0;
				margin-top: 0;
				margin-bottom: 0;
				height: 0;
				background: 0;
				border-radius: 0;
			}

	#app main.p_user_profile ul.library.nb1,
	#app main.p_user_profile ul.library.nb2{
		display: inline-flex;
	}

		#app main.p_user_profile ul.library.nb1>li,
		#app main.p_user_profile ul.library.nb2>li{
			width: 190px;
			max-width: none;
		}

	#app main.p_user_profile ul.library+a.btn{
		margin-left: 0;
		margin-right: 0;
	}



	.p_user_profile table.cart.list tr.title>th{
		padding-bottom: 0;
	}

		.p_user_profile table.cart.list tr.title>th>h2{
			font-size: 14px;
			text-transform: uppercase;
			font-size: 888;
		}

		.p_user_profile table.cart.list tr.title+tr.item{
			border-color: #E9EAEB;
		}





	#app>main button.submit{
		background: #000;
		color: #FFF;
		display: block;
		margin: 0;
		padding: 0;
		margin-top: 30px;
		width: 100%;
	}

	div.m_slider.userSlider{
		/*width: 100%;*/
		height: 100%;
		padding: 32px;
		padding-left: 0;
		box-sizing: border-box;
		text-align: center;
		background: #245A72;
	}

	.popup div.m_slider.userSlider{
		padding-left: 32px;
	}

		div.m_slider.userSlider>div{
			overflow: hidden;
			height: 100%;
		}

			div.m_slider.userSlider>div>ul.slider{
				transition: transform .4s;
				transition-timing-function: ease-in-out;
				height: 100%;
			}

		div.m_slider.userSlider>div>ul.slider>li>div{
			width: auto;
			display: flex;
			align-items: center;
			justify-content: center;
			height: 100%;
		}

	ul.signinAction{
		display: block;
		list-style: none;
		margin: 0;
		padding: 0;
		text-align: center;
		margin-top: 40px;
		font-size: 15px;
	}

		ul.signinAction>li{
			display: inline-block;
			padding: 0 8px;
			opacity: .5;
		}

			ul.signinAction>li>a{
				color: black;
			}

		ul.signinAction>li:first-child{
			opacity: 1;
		}









main.p_catalog{
	overflow-x: hidden;
}

	#catalogHeader{
		
	}

		#catalogHeader>a{
			display: none;			
		}

		#catalogHeader>ul#submenu{	

		}

			#catalogHeader>ul#submenu>li{
				
			}

				#catalogHeader>ul#submenu>li>a{
					
				}

	#catalogHeader+section{
		margin-top: 60px;
	}






	main.p_catalog.home>section.main{
		background: #EEE;
	}

		main.p_catalog.home>section.main>div{

		}

			main.p_catalog.home>section>div>h1,
			main.p_catalog.home div.m_slider.m_slider_default>div>ul.slider>li>div>div.text>div>h1{
				border-bottom: 3px solid currentColor;
				font-family: soleil, sans-serif;
				margin: 0 0 35px 0;
				padding: 0 0 15px 0;
			}

	section#catalogMain{
		--maxWidth: 1200px;
	}

		section#catalogMain>div{
			display: flex;
		}

			section#catalogMain>div>div{
				flex: 1 1 200px;
			}

				section#catalogMain>div>div>ul{
					display: flex;
					flex-wrap: wrap;

					list-style: none;
					padding: 0;
					margin: -13px;
				}

					section#catalogMain>div>div>ul>li{
						margin: 13px;
						flex: 1 1 40%;
						min-width: 300px;
						padding: 40px;
						padding-bottom: 117px;
						border-radius: 5px;
						box-sizing: border-box;
						position: relative;
					}

					section#catalogMain>div>div>ul>li::before{
						content: "";
						display: block;
						background: currentColor;
						position: absolute;
						bottom: 97px;
						left: 40px;
						right: 40px;
						height: 1px;
					}
					section#catalogMain>div>div>ul>li.fix{
						padding: 0;
						margin-top: 0;
						margin-bottom: 0;
						height: 0;
						background: 0;
						border-radius: 0;
					}
					section#catalogMain>div>div>ul>li.fix::before{
						display: none;
					}

						section#catalogMain>div>div>ul>li>h1{
							border-top: 3px solid currentColor;
							font-family: soleil, sans-serif;
							margin: 0;
							padding: 10px 0 22px 0;
						}

							section#catalogMain>div>div>ul>li>h1>a{
								display: block;
								text-decoration: none;
							}

							section#catalogMain>div>div>ul>li>h1>a>span.autologo{
								font-size: 0 !important;
							}

								section#catalogMain>div>div>ul>li>h1>a>span.autologo::before{
									font-size: 26px;
								}

								section#catalogMain>div>div>ul>li>h1>a>span.autologo::after{
									content: "\e900";
									font-family: 'icomoon' !important;
									speak: never;
									font-style: normal;
									font-weight: normal;
									font-variant: normal;
									text-transform: none;
									-webkit-font-smoothing: antialiased;

									font-size: 29px;
									padding-left: .5em;
									transform: translateY(-15%);
									display: inline-block;
								}

						section#catalogMain>div>div>ul>li>div{
							/*border-bottom: 1px solid currentColor;*/
						}

							section#catalogMain>div>div>ul>li>div{
								display: flex;
								/*padding-bottom: 30px;*/
								/*margin-bottom: 20px;*/
							}

								section#catalogMain>div>div>ul>li>div>div.img{
									flex: 1 1 40%;
									padding-right: 25px;
									box-sizing: border-box;
								}

									section#catalogMain>div>div>ul>li>div>div.img>img{

									}

								section#catalogMain>div>div>ul>li>div>div.text{
									flex: 1 1 60%;
									font-family: soleil, sans-serif;
									font-size: 20px;
									line-height: 1em;
								}

									section#catalogMain>div>div>ul>li>div>div.text>p.hat{
										/*font-size: 20px;*/
										margin: 0;
										padding: 0;
										margin-bottom: 3px;
									}

									section#catalogMain>div>div>ul>li>div>div.text>h2{
										margin: 0;
										padding: 0;
										font-size: inherit;
										font-weight: bold;
									}

										section#catalogMain>div>div>ul>li>div>div.text>h2>a{
											text-decoration: none;
										}

									section#catalogMain>div>div>ul>li>div>div.text>p.subtitle{
										/*font-size: 20px;*/
										margin: 0;
										padding: 0;
										margin-top: 3px;
									}

									section#catalogMain>div>div>ul>li>div>div.text>p.description{

									}

									section#catalogMain>div>div>ul>li>div>div.text>div.author{
										text-transform: uppercase;
										font-size: 12px;
										font-weight: bold;
										margin-top: 10px;
									}

										section#catalogMain>div>div>ul>li>div>div.text>div.author>a{
											text-decoration: none;
										}
										section#catalogMain>div>div>ul>li>div>div.text>div.author>a:hover{
											text-decoration: underline;
										}

									section#catalogMain>div>div>ul>li>div>div.text>div.price{
										font-family: utopia-std-display, serif;
										/*font-size: 25px;*/
										font-weight: bold;
										margin-top: 10px;
									}

										section#catalogMain>div>div>ul>li>div>div.text>div.price .oldprice{
											padding-right: .5em;
											opacity: .8;
										}



											a.add2cartButton,
											div.add2cartButton,
											ul.add2cartButton>li.title{
												border: 2px solid var(--bgcolor);
												color: var(--bgcolor);
												line-height: 38px;
												text-align: center;
												border-radius: 5px;
												font-size: 15px;
												margin-top: 15px;
												font-family: soleil, sans-serif;
												font-size: 15px;
												box-sizing: border-box;
												display: block;
												text-decoration: none;
											}

											div.add2cartButton:has(span.disabled){
												background-color:#D1D2D4;
												border-color:#D1D2D4;
												color:#000000;
												pointer-events: none;
											}

											#app a.add2cartButton:hover,
											#app div.add2cartButton:hover,
											#app ul.add2cartButton:hover>li.title{
												background: var(--bgcolor);
												color: var(--fgcolor);
											}

											ul.add2cartButton{
												display: block;
												list-style: none;
												margin: 0;
												padding: 0;
												height: 42px;
												
											}

												ul.add2cartButton>li{
													background: #FFF;
													line-height: 38px;
													font-weight: bold;
													display: none;
													border: 2px solid var(--bgcolor);
													border-top: 0;

													font-size: 15px;
													position: relative;
												}

												ul.add2cartButton>li.title{
													background: transparent;
													display: block;
													text-align: center;
												}

												ul.add2cartButton>li.title+li::before{
													content: "";
													display: block;
													position: absolute;
													top: -3px;
													left: -2px;
													width: 100%;
													height: 5px;
													border: 2px solid var(--bgcolor);
													border-top: 0;
													border-bottom: 0;
												}

													ul.add2cartButton>li.title::after{
														padding-left: 1em;
														/*content: "⌄";*/
														content: "\e91a";
														font-family: 'icomoon' !important;
														font-size: .25em;
														vertical-align: middle;
														display: inline-block;
													}

													ul.add2cartButton>li>a,
													ul.add2cartButton>li>span{
														display: block;
														text-decoration: none;
														padding: 0 10px;
													}
													ul.add2cartButton>li>a:hover{
														text-decoration: underline;
													}
													ul.add2cartButton>li>span.disabled{
														
													}

											ul.add2cartButton:hover{
												background: #FFF;
												border-radius: 5px;
												z-index: 2;
												position: relative;
											}

												ul.add2cartButton:hover>li{
													display: block;
												}

												ul.add2cartButton:hover>li:last-child{
													border-bottom-right-radius: 5px;
													border-bottom-left-radius: 5px;
												}

												ul.add2cartButton:hover>li.title{
													background: var(--bgcolor);
													color: var(--fgcolor);
												}



						#app section#catalogMain>div>div>ul>li>a.btn{
							position: absolute;
							bottom: 40px;
							left: 40px;
							right: 40px;
							margin: 0;
							border-color: var(--bgcolor);
							background-color: var(--bgcolor);
							color: var(--pcolor);
						}

						#app section#catalogMain>div>div>ul>li>a.btn:hover{
							background-color: transparent;
							color: var(--bgcolor);
						}

					section#catalogMain.folders>div>ul>li>p{

					}

					section#catalogMain.folders>div>ul>li>div{

					}

						section#catalogMain.folders>div>ul>li>div>h2{

						}

						section#catalogMain.folders>div>ul>li>div>p{

						}

						section#catalogMain.folders>div>ul>li>div>p.subtitle{

						}

						section#catalogMain.folders>div>ul>li>div>div.price{

						}

						section#catalogMain.folders>div>ul>li>div>a{
							border: none;
						}

					section#catalogMain.folders>div>ul>li>a{

					}

			section#catalogMain>div>aside{
				flex: 0 0 400px;
				font-family: soleil, sans-serif;
			}

				section#catalogMain>div>aside>div{
					width: 320px;
					margin: 0 0 0 auto;
					background: #000;
					color: #FFF;
					border-radius: 5px;
					box-sizing: border-box;
					padding: 40px;
				}

					section#catalogMain>div>aside>div>h1{
						margin-top: 0;
					}

					section#catalogMain>div>aside>div>p{

					}

					section#catalogMain>div>aside>div>a.btn{

					}

				section#catalogMain>div>aside>div.freeShippingReminder{
					background: #FFF;
					color: #000;
					margin-top: 20px;
				}


	main.p_catalog.home>section.partners{
		background: #EEE;
	}

		main.p_catalog.home>section.partners>div{

		}

			main.p_catalog.home>section.partners>div>ul{

			}

				main.p_catalog.home>section.partners>div>ul>li{

				}



	section#catalogPartners{
		max-width: var(--maxWidth);
		width: 96%;
		margin: 0 auto;
/*		padding-right: 400px;*/
		box-sizing: border-box;
		position: relative;

		display: flex;
		gap: 80px;
	}

		section#catalogPartners>div{
			flex: 1 1 auto;
		}

		section#catalogPartners>aside{
/*			position: absolute;*/
/*			top: 0;*/
/*			right: 0;*/
			max-width: 320px;
			padding: 70px 0;
			flex: 1 1 auto;
		}

			section#catalogPartners>aside>h2{
				border-top: 3px solid black;
				font-family: Soleil, sans-serif;
				font-weight: normal;
				line-height: 1em;
				margin: 0 0 60px 0;
				padding: 20px 0 0 0;
			}

				section#catalogPartners>aside>ul{
					list-style: none;
					margin: 0;
					padding: 0;
					list-style: none;

					display: flex;
					flex-direction: column;
					gap: 25px;
				}

					section#catalogPartners>aside>ul>li{
						display: block;
						--bgcolor:#000000;
						padding: 40px;
						border-radius: 5px;
					}

						section#catalogPartners>aside>ul>li>a{
							text-decoration: none;
							display: block;
/*							border-top: 3px solid currentColor;*/
/*							padding: 10px 0 0 0;*/
							padding:0;
							font-family: soleil, sans-serif;
							font-size: 22.5px;
							font-weight: bold;
						}

							section#catalogPartners>aside>ul>li>a>span.autologo{
								font-size: 0 !important;
								line-height: 26px;
							}

							section#catalogPartners>aside>ul>li>a>span.autologo::before{
								font-size: 26px;
							}

							section#catalogPartners>aside>ul>li>a>span.autologo::after{
								content: "\e900";
								font-family: 'icomoon' !important;
								speak: never;
								font-style: normal;
								font-weight: normal;
								font-variant: normal;
								text-transform: none;
								-webkit-font-smoothing: antialiased;
								font-size: 29px;
								padding-left: .5em;
								transform: translateY(-15%);
								display: inline-block;
							}

						section#catalogPartners>aside>ul>li>p{
							margin: 0;
							padding: 0;
							font-size: 16px;

							display: -webkit-box;
							-webkit-line-clamp: 3;
							-webkit-box-orient: vertical;
							overflow: hidden;
						}


	section#catalogPartners{

	}

		section#catalogPartners>div{

		}

			section#catalogPartners>div>form{
				display: flex;
				align-items: flex-end;
				justify-content: space-between;

				border-top: 3px solid black;
				margin-bottom: 60px;

				flex-wrap: wrap;
			}

				section#catalogPartners>div>form>h2{
					margin: 0;
					font-family: Soleil, sans-serif;
					font-weight: normal;
					line-height: 1em;
				}

				section#catalogPartners>div>form>.options{
					display: flex;
					gap: 10px;
				}

					section#catalogPartners>div>form>.options>label{
						margin-top: 20px;
					}

@media screen and (max-width:600px){
	section#catalogPartners>div>form>.options{
		width: 100%;
	}

		section#catalogPartners>div>form>.options>*{
			flex: 1 1 auto; 
		}
}

				section#catalogPartners>div>form>label{
					margin:22px 0 1px 0;
				}

				section#catalogPartners>div>form>label.select>ul.select+span.val{
					font-family: Soleil, sans-serif;
					font-weight: normal;
					font-size: 33px;
				}

			#storeList,
			#partnerList{
				margin: 0;
				padding: 0;
				margin: 0 calc((var(--vw100) - var(--maxWidth)) / -2);
				position: relative;
			}

				#storeList>div.prev,
				#storeList>div.next,
				#partnerList>div.prev,
				#partnerList>div.next{
/*					display: none;*/
					position: absolute;
					top: 0;
					left: 0;
					width: 75px;
					height: 100%;
					background: rgba(255,255,255,.75);
					background: linear-gradient(to left, rgba(255, 255, 255, 1) 25%, rgba(255, 255, 255, .75) 75%, rgba(255,255,255,0) 100%);
					opacity: 0;
					pointer-events: none;
					transition: opacity .4s, transform .4s;
					transform: translateX(50%);
				}
				#storeList>div.prev,
				#partnerList>div.prev{
					background: linear-gradient(to right, rgba(255, 255, 255, 1) 25%, rgba(255, 255, 255, .75) 75%, rgba(255,255,255,0) 100%);
					transform: translateX(-50%);
				}

				#storeList>div.prev::before,
				#storeList>div.next::after,
				#partnerList>div.prev::before,
				#partnerList>div.next::after{
					content: "\e920";
					font-family: 'icomoon' !important;
					font-size: 20px;
					position: absolute;
					top: 50%;
					left: 50%;
					transform: translate(-50%, -50%) rotate(90deg);
				}
				#storeList>div.next::after,
				#partnerList>div.next::after{
					transform: translate(-50%, -50%) rotate(-90deg);
				}

				#storeList>div.next,
				#partnerList>div.next{
					left: auto;
					right: 0;
				}
				#storeList.prev>div.prev,
				#storeList.next>div.next,
				#partnerList.prev>div.prev,
				#partnerList.next>div.next{
					opacity: .8;
					pointer-events: auto;
					transform: translateX(0);
				}
				#storeList.prev>div.prev,
				#storeList.next>div.next,
				#partnerList.prev>div.prev,
				#partnerList.next>div.next{
					opacity: 1;
					transition: opacity .1s;
					cursor: pointer;
				}

				#storeList>ul,
				#partnerList>ul{
					display: flex;
					list-style: none;

					overflow: auto;
					padding: 0 calc((var(--vw100) - var(--maxWidth)) / 2 - 15px);

					-ms-overflow-style: none;
					scrollbar-width: none;

					margin-bottom: 60px;

					gap: 15px;
				}
				#storeList>ul::-webkit-scrollbar,
				#partnerList>ul::-webkit-scrollbar{
					display: none;
				}

					#storeList>ul>li,
					#partnerList>ul>li{
						display: block;
						margin: 0;
						padding: 0;
						margin-left: 10px;
					}
					#partnerList>ul>li{
						min-width: 100px;
						min-height: 75px;
					}
					#storeList>ul>li:first-child,
					#partnerList>ul>li:first-child{
						margin-left: 0;
					}

						#storeList>ul>li>a,
						#partnerList>ul>li>a{
							display: block;
							cursor: pointer;
							text-decoration: none;
							height: 100%;
							height: 100%;
						}

							#storeList>ul>li>a>.text,
							#partnerList>ul>li>a>.text{
								display: flex;
								width: 100%;
								height: 100%;
								justify-content: center;
								align-items: center;
								text-align: center;
/*								font-size: 1.1em;*/
								font-size: 15px;
							}
							#storeList>ul>li>a>.text:hover,
							#partnerList>ul>li>a>.text:hover{
								color: #0d5c74;
							}

							#storeList>ul>li>a>.text{
								width: auto;
								min-width: 100px;
							}

								#storeList>ul>li>a>.text>.autologo{
									font-size: 0 !important;
								}

									#storeList>ul>li>a>.text>.autologo::before{
										font-size: 25px;
									}

							#storeList>ul>li>a>.img,
							#partnerList>ul>li>a>.img{

							}

								#storeList>ul>li>a>.img img,
								#partnerList>ul>li>a>.img img{
									display: block;
									height: 50px;
									max-width: none;
								}

							#storeList>ul>li>a>span,
							#partnerList>ul>li>a>span{
								display: none;
							}

			section#catalogPartners>div>ul.productList{
				--bgcolor:#000000;
				--fgcolor:#FFFFFF;
			}

				section#catalogPartners>div>ul.productList>li{
					min-width: 200px;
					flex:1 1 calc(20% - 24px);
				}

					section#catalogPartners>div>ul.productList>li a.add2cartButton{
						border-color:#000000;
						background-color:#000000;
						color:#FFFFFF;
					}

					section#catalogPartners>div>ul.productList>li a.add2cartButton:hover{
						border-color:#000000;
						background-color:#FFFFFF;
						color:#000000;
					}

					section#catalogPartners>div>ul.productList>li div.add2cartButton{
						background-color:#D1D2D4;
						border-color:#D1D2D4;
						color:#000000;
						pointer-events: none;
					}

					section#catalogPartners>div>ul.productList>li.allPartnersLink{
						display: flex;
						align-items: stretch;
						justify-content: stretch;
						align-self: stretch;
					}

						section#catalogPartners>div>ul.productList>li.allPartnersLink>a{
							border:2px solid black;
							display: flex;
							border-radius: 5px;
							line-height: 1.4em;
							text-decoration: none;
							font-size: 14px;
							font-weight: bold;
							text-align: center;
							padding: 20px;
							align-items: center;
							width: 100%;
							justify-content: center;
							height: 239px;
/*							aspect-ratio: 1 / 1;*/
							align-self: start;
						}

						section#catalogPartners>div>ul.productList>li.allPartnersLink>a:hover{
							background: #000000;
							color: #FFFFFF;
						}



main.p_catalog.folder{

}

	main.p_catalog.folder>section.main{
		--bgcolor: #AAAAAA;
		--fgcolor: #000000;
		background: #FFF;
	}

		main.p_catalog.folder>section.main>header{
			background: var(--bgcolor);
			color: var(--fgcolor);
		}

			main.p_catalog.folder>section.main>header>div{
				display: flex;
				width: 96%;
				max-width: var(--maxWidth);
				margin: 0 auto;
				padding: 70px 0;
			}
				main.p_catalog.folder>section.main>header>div>div{
					flex: 1 1 50%;
				}

				main.p_catalog.folder>section.main>header>div>div.text{
					font-size: 15px;
				}

					main.p_catalog.folder>section.main>header>div>div.text>h1,
					main.p_catalog.folder>section.main>header>div>div.text>h1>span.autologo::before{
						font-size: 40px;
					}

					main.p_catalog.folder>section.main>header>div>div.text>.description{
						font-size: 20px;
					}

				main.p_catalog.folder>section.main>header>div>div.img{
					margin: -70px 0;
				}

					main.p_catalog.folder>section.main>header>div>div.img>div{
						margin-right: calc( (var(--vw100) - var(--maxWidth)) / -2 );
					}

						main.p_catalog.folder>section.main>header>div>div.img>div>img{
							width: 100%;
							height: 100%;
						}

		main.p_catalog.folder>section.main>header.partnerHeader{
			--bgcolor:#FFFFFF;
			--fgcolor:#000000;
			border-bottom: 1px solid #dbdbdb;
		}

			main.p_catalog.folder>section.main>header.partnerHeader img{
				height: 50px;
				width: auto;
			}

		main.p_catalog.folder>section.main>div{
			padding: 50px 0;
		}

			main.p_catalog.folder>section.main>div>#productListFilter{
				border-top: 3px solid black;
				margin-bottom: 60px;

				display: flex;
				justify-content: space-between;
			}

				main.p_catalog.folder>section.main>div>#productListFilter>h2{
					float: left;
					font-family: soleil, sans-serif;
					margin: 0;
					padding: 0;
					font-size: 24px;
				}

				main.p_catalog.folder>section.main>div>#productListFilter>.options{
					margin-top: -10px;
					display: flex;
					gap: 10px;
				}

@media screen and (max-width:600px){
	main.p_catalog.folder>section.main>div>#productListFilter>.options{
		width: 100%;
	}

		main.p_catalog.folder>section.main>div>#productListFilter>.options>*{
			flex: 1 1 auto; 
		}
}

				main.p_catalog.folder>section.main>div>#productListFilter>label{
					float: right;
					margin-top: 10px;
				}

				main.p_catalog.folder>section.main>div>#productListFilter>label.select.cat{
					float: left;
					margin-top: 10px;
					border:transparent;
				}

					main.p_catalog.folder>section.main>div>#productListFilter>label.select.cat>span.val{
						font-size: 24px;
						padding-left: 0;
						text-transform: none;
					}


/*				main.p_catalog.folder>section.main>div>#productListFilter::after{
					display: block;
					content: "";
					clear: both;
				}*/


			main.p_catalog.folder>section.main>div>ul{
				display: block;
				margin: 0;
				padding: 0;
				list-style: none;
			}

				main.p_catalog.folder>section.main>div>ul>li{
					display: inline-block;
					vertical-align: top;
					width: 20%;
				}


		ul.productList{
			display: flex;
			flex-wrap: wrap;
			align-items: start;
			list-style: none;
			margin: -12px;
			padding: 0;
			justify-content: space-around;

			font-family: soleil, sans-serif;
		}


			ul.productList>li{
				display: block;
				margin: 12px;
				padding: 0;

				flex: 1 1 20%;
				min-width: 250px;
				max-width: 400px;

				text-decoration: none;
			}

				ul.productList>li>div.img{
					margin-bottom: 5px;

					position: relative;

					display: flex;
					align-items: center;
					justify-content: center;
				}

					ul.productList>li>div.img>img{
						width: 100%;
						height: auto;
					}

				ul.productList.mixed>li>div.img{
					background: #E8E8E9;
/*					padding: 10px;*/
					box-sizing: border-box;
					aspect-ratio: 1 / 1;
				}
					ul.productList.mixed>li>div.img>img{
						width: 100%;
						height: 100%;

						width: calc(100% - 30px);
						height: calc(100% - 30px);

/*						position: absolute;
						top: 10px;
						left: 10px;
						right: 10px;
						bottom: 10px;*/

						background: transparent !important;
						object-fit: contain !important;
						object-position: 50% 50% !important;
					}

				ul.productList>li>div.text{
					position: relative;
					padding-top: 60px;

/*					min-height: 150px;*/
					padding-bottom: 40px;

					font-size: 20px;
					line-height: 1em;
				}

					ul.productList>li>div.text>p.hat{
						margin: 0;
						padding: 0;
						margin-bottom: 3px;
					}

					ul.productList>li>div.text>h2{
						margin: 0;
						padding: 0;
						font-size: inherit;
						font-weight: bold;
					}

						ul.productList>li>div.text>h2>a{
							text-decoration: none;
						}

					ul.productList>li>div.text>p.subtitle{
						margin: 0;
						padding: 0;
						margin-top: 3px;
					}

					ul.productList>li>div.text>.author{
						text-transform: uppercase;
						font-size: 12px;
						font-weight: bold;
						margin-top: 10px;
					}

						ul.productList>li>div.text>.author>a{
							text-decoration: none;
						}
						ul.productList>li>div.text>.author>a:hover{
							text-decoration: underline;
						}

					ul.productList>li>div.text>.price{
						font-family: utopia-std-display, serif;
						/* font-size: 25px; */
						font-weight: bold;
						margin-top: 10px;
					}

						ul.productList>li>div.text>.price>del{
							display: inline-block;
							color: #888;
							text-decoration: line-through;
							margin-right: .5em;
							font-size: .8em;
							font-weight: normal;
						}

					ul.productList>li>div.text>a.add2cartButton, 
					ul.productList>li>div.text>div.add2cartButton, 
					ul.productList>li>div.text>ul.add2cartButton{
						position: absolute;
						top: 0;
						width: 100%;
					}

					ul.productList>li>div.text>a.add2cartButton, 
					ul.productList>li>div.text>div.add2cartButton, 
					ul.productList>li>div.text>ul.add2cartButton>li.title{
						margin-top: 0;
					}

					



main.p_product{
	
}


main.p_product.detail{
	
}

	main.p_product.detail>section#productDetail{
		--bgcolor: #e8e8e9;
		--fgcolor: #000000;
		background: var(--bgcolor);
		color: var(--fgcolor);	
	}

		main.p_product.detail>section#productDetail>div{

		}

			main.p_product.detail>section#productDetail>div>div{
				display: flex;
			}

				main.p_product.detail>section#productDetail>div>div>div.img{
					order: 2;
					padding: 0 0 0 25px;
					flex: 0 1 50%;

					display: flex;
					justify-content: center;
				}

					main.p_product.detail>section#productDetail>div>div>div.img>img{
						position: sticky;
						top: 150px;
						max-height: calc(100vh - 80px - 60px - 140px);
					}

				main.p_product.detail>section#productDetail>div>div>div.text{
					order: 1;
					padding: 0 25px 50px 0;
					position: relative;

					font-family: soleil, sans-serif;

					font-size: 22.5px;
					line-height: 1em;

					flex: 1 1 50%;
				}

					main.p_product.detail>section#productDetail>div>div>div.text>a.partenaire{
						display: block;
						border-bottom: 1px solid black;
						text-decoration: none;
						margin-bottom: .5em;
						padding-bottom: .5em;
						font-size: .8em;
						font-family: utopia-std-display, serif;
						font-weight: bold;
					}

					main.p_product.detail>section#productDetail>div>div>div.text>div{

					}

					main.p_product.detail>section#productDetail>div>div>div.text>div:first-child{
						position: sticky;
						top: 150px;
					}

						main.p_product.detail>section#productDetail>div>div>div.text>div>p.hat{
							font-size: 22.5px;
							margin: 0;
							padding: 0;
							margin-bottom: 5px;
						}

						main.p_product.detail>section#productDetail>div>div>div.text>div>h1{
							font-size: 22.5px;
							margin: 0;
							padding: 0;
						}

						main.p_product.detail>section#productDetail>div>div>div.text>div>p.subtitle{
							font-size: 22.5px;
							margin: 0;
							padding: 0;
							margin-top: 5px;
						}

						main.p_product.detail>section#productDetail>div>div>div.text>div>div.author{
							font-size: 13px;
							text-transform: uppercase;
							font-weight: bold;
							margin-top: 20px;
						}

							main.p_product.detail>section#productDetail>div>div>div.text>div>div.author>a{
								text-decoration: none;
							}
							main.p_product.detail>section#productDetail>div>div>div.text>div>div.author>a:hover{
								text-decoration: underline;
							}

						main.p_product.detail>section#productDetail>div>div>div.text>div>div.price{
							font-family: utopia-std-display, serif;
							margin: 35px 0;

							font-weight: bold;
							font-size: 28px;
						}

							main.p_product.detail>section#productDetail>div>div>div.text>div>div.price>del{
								font-size: .8em;
								font-weight: normal;
								display: inline-block;
								margin-right: .5em;
								opacity: .8;
							}

						main.p_product.detail>section#productDetail>div>div>div.text>div>ul.buy{
							display: block;
							list-style: none;
							margin: 32px -3px -3px -3px;
							padding: 0;
							font-size: 15px;
							font-weight: bold;
						}

							main.p_product.detail>section#productDetail>div>div>div.text>div>ul.buy>li{
								display: inline-block;
								margin: 3px;
							}

								main.p_product.detail>section#productDetail>div>div>div.text>div>ul.buy>li>*{
									display: block;
									border-radius: 5px;
									border: 2px solid var(--fgcolor);
									padding: 0 15px;
									line-height: 40px;
								}

								main.p_product.detail>section#productDetail>div>div>div.text>div>ul.buy>li>a{
									background: var(--fgcolor);
									color: var(--bgcolor);
									text-decoration: none;
								}

								main.p_product.detail>section#productDetail>div>div>div.text>div>ul.buy>li>span{
									background: var(--bgcolor);
									color: var(--fgcolor);
								}


						main.p_product.detail>section#productDetail>div>div>div.text>div>div.description{
							font-family: utopia-std-display, serif;

							font-size: 15px;
							line-height: 1.3em;
						}

					main.p_product.detail>section#productDetail>div>div>div.text>div.footer{
						position: absolute;
						bottom: 0;
						left: 0;
						/*width: 100%;*/
						right: 25px;
						border-top: 1px solid currentColor;
						display: flex;

						padding-top: 5px;

						font-size: 15px;
						line-height: initial;
					}

						main.p_product.detail>section#productDetail>div>div>div.text>div.footer>a{
							flex: 1 1 50%;
							text-align: left;

							font-family: soleil, sans-serif;
							font-size: 15px;
							line-height: 26px;
							text-decoration: none;
						}

						main.p_product.detail>section#productDetail>div>div>div.text>div.footer>.shareTool{
							/*flex: 1 0 50%;*/
							width: 100%;
						}

							main.p_product.detail>section#productDetail>div>div>div.text>div.footer>.shareTool>ul{
								display: inline-block;
								list-style: none;
								margin: 0;
								padding: 0;
							}

								main.p_product.detail>section#productDetail>div>div>div.text>div.footer>.shareTool>ul>li{
									display: inline-block;
								}


	main.p_product.detail>section#productArticles{

	}

		main.p_product.detail>section#productArticles>div{
			padding: 50px 0;
		}

					main.p_product.detail>section#productArticles>div>h2{
						margin: 0;
						padding: 0;
						border-top: 3px solid black;
						margin-bottom: 35px;
					}



main.p_cart.p_cart_flow{

}


	main.p_cart.p_cart_flow>section{
		font-family: soleil, sans-serif;
	}

		main.p_cart.p_cart_flow>section>div{
			display: flex;
			flex-wrap: wrap;
			align-items: flex-start;
		}

			main.p_cart.p_cart_flow>section>div>div{
				position: sticky;
				top: 100px;
			}

			main.p_cart.p_cart_flow>section>div h1{
				margin: 0 0 30px 0;
				padding: 0;
				line-height: 1em;
			}

			main.p_cart.p_cart_flow>section>div table th{
				font-weight: normal;
				text-align: left;
			}

				main.p_cart.p_cart_flow>section>div table h2{
					text-transform: uppercase;
					font-weight: bold;
					font-size: 12px;
					display: inline;
				}

				main.p_cart.p_cart_flow>section>div table h2+a{
					text-transform: uppercase;
					font-size: 12px;
					text-decoration: none;
					display: inline;
				}
				main.p_cart.p_cart_flow>section>div table h2+a:hover{
					text-decoration: underline;
				}

			main.p_cart.p_cart_flow>section>div>div.first{
				padding-right: 25px;
				flex: 1 1 70%;
				box-sizing: border-box;
			}

			main.p_cart.p_cart_flow>section>div>div.last{
				container-type: inline-size;

				padding-left: 25px;
				flex: 1 1 30%;
				box-sizing: border-box;
				font-size: 15px;
/*				overflow: hidden;*/
			}

				main.p_cart.p_cart_flow>section>div>div.last>div.recap{
					
				}
	
					main.p_cart.p_cart_flow>section>div>div.last>div.recap>h2{
						font-size: 22px;
					}

				main.p_cart.p_cart_flow>section>div>div.last table.cart.list tr.item>th.product>div>div.img{
					flex: 0 0 80px;
				}

				main.p_cart.p_cart_flow>section>div>div.last table.cart.list tr.item>th.product>div>div.text{
					flex: 1 1 auto;
					overflow: hidden;
					width: 100px;
				}

					main.p_cart.p_cart_flow>section>div>div.last table.cart.list tr.item>th.product>div>div.text>.title,
					main.p_cart.p_cart_flow>section>div>div.last table.cart.list tr.item>th.product>div>div.text>.subtitle{
						font-size: 14px;
					}

					main.p_cart.p_cart_flow>section>div>div.last table.cart.list tr.item>th.product>div>div.text>.author{
						font-size: 10px;
					}

				main.p_cart.p_cart_flow>section>div>div.last table.cart.list tr.item>td.price{
					padding-left: 10px;
				}

			main.p_cart.p_cart_flow>section>div>div.last>h2:first-child{
				margin: 0 0 35px 0;
			}

			main.p_cart.p_cart_flow div.cartNote{
				margin-top: 30px;
			}

			main.p_cart.p_cart_flow div.cartNote{
				margin-top: 30px;
			}

				main.p_cart.p_cart_flow div.cartNote>div{

				}

					main.p_cart.p_cart_flow div.cartNote>div>h2{
						text-transform: uppercase;
						font-weight: bold;
						font-size: 12px;
						display: inline;
						margin: 0;
						padding: 0;
					}

					main.p_cart.p_cart_flow div.cartNote>div>form{

					}

						main.p_cart.p_cart_flow div.cartNote>div>form>textarea{
							width: 100%;
							background: #e8e8e9;
							border-radius: 5px;
							height: 130px;
							border: none;
							padding: 5px;
							margin: 0;
							box-sizing: border-box;
							resize: none;
						}

						#app main.p_cart.p_cart_flow div.cartNote>div>form>button{
							margin: 0 0 0 auto;
							line-height: 20px;
							border: none;
							font-weight: normal;
							font-size: 12px;
							text-decoration: underline;
							line-height: 12px;
							padding: 0;
						}

						#app main.p_cart.p_cart_flow div.cartNote>div>form>#noteFormPending,
						#app main.p_cart.p_cart_flow div.cartNote>div>form>#noteFormSuccess{
							line-height: 12px;
							font-size: 12px;
							font-family: soleil, sans-serif;
						}



					main.p_cart.p_cart_flow div.cartNote>div>div{
						border:2px solid #e8e8e9;
						border-radius: 5px;
						padding: 5px;
					}





			main.p_cart.p_cart_flow>section>div>div.list{

			}

				table.cart.list{
					width: 100%;
					text-align: left;
					border-collapse: collapse;
				}

					table.cart.list tr{
						
					}

/*
						table.cart.list tr>td,
						table.cart.list tr>th{
							border-top: 2px solid #E9EAEB;

							padding: 25px 0;
						}

					table.cart.list tr:first-child{
	
					}

						table.cart.list tr:first-child>td,
						table.cart.list tr:first-child>th{
							border-color: black;
						}
*/

					table.cart.list tr.title{

					}

						table.cart.list tr.title>td,
						table.cart.list tr.title>th{
							padding-bottom: 18px;
							padding-top: 30px;
						}

							table.cart.list tr.title>th>h3{

							}

					table.cart.list tr.title:first-child{

					}

						table.cart.list tr.title:first-child>td,
						table.cart.list tr.title:first-child>th{
							padding-top: 0px;
						}

					table.cart.list tr.item{
						display: flex;
						position: relative;
						align-items: center;

						border-top: 2px solid #E9EAEB;
						padding: 25px 0;
					}
					table.cart.list tr.title+tr.item{
						border-color: #000;
					}

						table.cart.list tr.item>td,
						table.cart.list tr.item>th{
							display: block;
							text-align: center;
						}

						table.cart.list tr.item>td.altqtt{
							white-space: nowrap;
							padding-right: 1em;
						}

						table.cart.list tr.item>th.item{
							flex-grow: 1;
							text-align: left;
						}

						table.cart.list tr.item>th.product{

						}

							table.cart.list tr.item>th.product>div{
								position: relative;
								/*padding-left: 90px;*/
								display: flex;
								align-items: center;
							}

								table.cart.list tr.item>th.product>div>div.img{
									/*position: absolute;*/
									/*top: 50%;*/
									/*left: 0;*/
									/*transform: translateY(-50%);*/
									flex: 0 0 90px;
								}

									table.cart.list tr.item>th.product>div>div.img>img{
										display: block;
										width: 70px;
									}

								table.cart.list tr.item>th.product>div>div.text{
									line-height: 1.2em;
								}

									table.cart.list tr.item>th>div>div.text>.type{
										text-transform: uppercase;
										font-size: 12px;
										font-style: italic;
										font-weight: 100;
										color: #444;
										display: block;
										text-decoration: none;
									}

									table.cart.list tr.item>th.product>div>div.text>.format{
										text-transform: uppercase;
										font-size: 12px;
										font-style: italic;
										font-weight: 100;
										color: #444;
									}

									table.cart.list tr.item>th.product>div>div.text>.title{
										font-size: 17px;
										font-weight: 600;
										text-decoration: none;
									}

									table.cart.list tr.item>th.product>div>div.text>.subtitle{
										font-size: 17px;
										text-decoration: none;
									}

									table.cart.list tr.item>th.product>div>div.text>.author{									
										text-transform: uppercase;
										font-size: 12px;
										font-weight: 600;

										white-space: nowrap;
										overflow: hidden;
										text-overflow: ellipsis;
									}

							table.cart.list tr.item>th.subscription{

							}
								table.cart.list tr.item>th.subscription>div{
									position: relative;
									/*padding-left: 90px;*/
									display: flex;
									align-items: center;
								}
								table.cart.list tr.item>th.subscription>div>div.img{
									/*position: absolute;*/
									/*top: 50%;*/
									/*left: 0;*/
									/*transform: translateY(-50%);*/
									flex: 0 0 90px;
								}

									table.cart.list tr.item>th.subscription>div>div.img>img{
										display: block;
										width: 70px;

										aspect-ratio: 1 / 1;
										object-fit: cover;
									}
								table.cart.list tr.item>th.subscription>div.text{
									line-height: 1.2em;
								}

									table.cart.list tr.item>th.subscription>div>div.text>.label{
										font-size: 17px;
										font-weight: 600;
										text-decoration: none;
									}

									table.cart.list tr.item>th.subscription>div>div.text>.title{
										text-decoration: none;
										text-transform: uppercase;
										font-size: 12px;
										font-weight: 600;
										display: block;
									}
									table.cart.list tr.item>th.subscription>div>div.text>.recipient{
										font-size: 9px;
										font-style: italic;
										color: #444;
									}

									table.cart.list tr.item>th.subscription>div>div.text>.info{
										font-size: 9px;
/*										font-style: italic;*/
/*										color: #444;*/
									}

							table.cart.list tr.item>th.donation{

							}

								table.cart.list tr.item>th.donation>div{
									position: relative;
									/* padding-left: 90px; */
									display: flex;
									align-items: center;
								}

									table.cart.list tr.item>th.donation>div>div.img{
										flex: 0 0 90px;
										height: 70px;
									}

										table.cart.list tr.item>th.donation>div>div.img::before{
											content: "";
											display: block;
											width: 70px;
											height: 70px;
											background: #000000;
											background-image: url(../medias/coeur.svg);

											background-position: 50% 50%;
											background-repeat: no-repeat;
											background-size: 35px auto;
										}

									table.cart.list tr.item>th.donation>div>div.text{
										line-height: 1.2em;
									}

										table.cart.list tr.item>th.donation>div>div.text>.title{
											font-size: 17px;
											font-weight: 600;
											text-decoration: none;
										}

										table.cart.list tr.item>th.article>div>div.text>.subtitle{
											text-decoration: none;
											text-transform: uppercase;
											font-size: 12px;
											font-weight: 600;
										}


							table.cart.list tr.item>th.article{

							}

								table.cart.list tr.item>th.article>div{
									position: relative;
									/* padding-left: 90px; */
									display: flex;
									align-items: center;
								}

									table.cart.list tr.item>th.article>div>div.img{
										--accent: #e8e8e9;

										flex: 0 0 90px;
										height: 70px;
										background-image: linear-gradient(#FFFFFF, #FFFFFF), linear-gradient(#e8e8e9, #e8e8e9);
										background-size: 50px 64px, 70px 70px;
										background-repeat: no-repeat;
										background-position: 10px 5px, 0 0;
										padding: 5px 0 0 10px;

										display: flex;
										flex-direction: column;
										justify-content: stretch;

										box-sizing: border-box;
									}

										table.cart.list tr.item>th.article>div>div.img>img{
											display: block;
											width: 50px;
											flex: 0 0 auto;
										}

										table.cart.list tr.item>th.article>div>div.img::after{
											content: "";
											display: block;
											width: 50px;
/*											background: red;*/
											flex: 1 1 auto;

											background-image: linear-gradient(var(--accent), var(--accent)), linear-gradient(white, white), linear-gradient(to bottom, #e8e8e9 50%, #FFFFFF 50%);
											background-size: 30px 5px, 50px 15px, 30px 4px;
											background-position: 10px 5px, 0px 0px, 10px 15px;
											background-repeat: no-repeat, no-repeat, repeat-y;
											border-bottom: 1px solid #e8e8e9;
										}

									table.cart.list tr.item>th.article>div.text{
										line-height: 1.2em;
									}

										table.cart.list tr.item>th.article>div>div.text>.title{
											font-size: 17px;
											font-weight: 600;
											text-decoration: none;
										}

											table.cart.list tr.item>th.article>div>div.text>.title a{
												text-decoration: none;
											}

										table.cart.list tr.item>th.article>div>div.text>.subtitle{
											text-decoration: none;
											text-transform: uppercase;
											font-size: 12px;
											font-weight: 600;
										}

						table.cart.list tr.item>td.qtt,
						table.cart.list tr.item>td.autorenew{
							/*width: 160px;*/
							flex: 0 0 160px;
						}
						table.cart.list tr.item>td.qtt{
							white-space: nowrap;
						}
						table.cart.list tr.item>td.autorenew{
							font-size: 9px;
							font-style: italic;
							color: #444;
						}

							table.cart.list tr.item>td.autorenew>a{
								text-decoration: none;
								padding-left: 18px;
								text-decoration: none;
								position: relative;
								display: block;
								text-align: left;
							}
							table.cart.list tr.item>td.autorenew>a::before,
							table.cart.list tr.item>td.autorenew>a::after{
								content: "";
								display: block;
								position: absolute;
								top: 2px;
								left: 0;

								width: 10px;
								height: 10px;
							}

							table.cart.list tr.item>td.autorenew>a::before{
								box-sizing: border-box;
								border:2px solid #e8e8e9;
								background: #e8e8e9;
							}
							table.cart.list tr.item>td.autorenew>a.enabled::before{
								border:2px solid #e8e8e9;
								background: #FFFFFF;
							}

							table.cart.list tr.item>td.autorenew>a::after{
								content: "\e91e";
								font-family: 'icomoon' !important;
								font-size: 10px;
								line-height: 10px;
								left:-1px;

								transform: scale(.25);

								opacity: 0;
								transform-origin: 1px 8px;
/*								transition: opacity .3s, transform .3s;*/

							}
/*							table.cart.list tr.item>td.autorenew>a:hover::after{*/
/*								opacity: .5;*/
/*								transform: scale(.75);*/
/*							}*/
							table.cart.list tr.item>td.autorenew>a.enabled::after{
								opacity: 1;
								transform: scale(1);
							}
/*							table.cart.list tr.item>td.autorenew>a.enabled:hover::after{*/
/*								opacity: 1;*/
/*								transform: scale(.75);*/
/*							}*/

							table.cart.list tr.item>td.qtt>a{
								display: inline-block;
								vertical-align: top;
								width: 25px;
								line-height: 40px;
								text-align: center;
								background: #EEE;
								text-decoration: none;
								color: #000;
							}

							#app table.cart.list tr.item>td.qtt>a:hover{
								background: #000;
								color: #FFF;
							}

							table.cart.list tr.item>td.qtt>a:first-child{
								border-radius: 5px 0 0 5px;
							}

							table.cart.list tr.item>td.qtt>form{
								display: inline-block;
								vertical-align: top;
							}

								table.cart.list tr.item>td.qtt>form>label{
									margin: 0;
									padding: 0;
								}

									table.cart.list tr.item>td.qtt>form>label>input{
										border: 2px solid #E9EAEB;
										width: 60px;
										height: 40px;
										box-sizing: border-box;
										text-align: center;
										border-radius: 0;
										background: #FFF;
									}

									table.cart.list tr.item>td.qtt>form>label>span{
										display: none;
									}

							table.cart.list tr.item>td.qtt>form+a{
								border-radius: 0 5px 5px 0;
							}

						table.cart.list tr.item>td.price{
							text-align: right;
							padding-right: 20px;
							/*width: 60px;*/
							/*flex-grow: .1;*/
							flex: 0 0 60px;

							font-size: 20px;
							font-family: utopia-std-display, serif;
							font-weight: 600;
						}

							table.cart.list tr.item>td.price>span{
								display: block;
								font-size: 12px;
								text-transform: uppercase;
								font-weight: 100;
								font-style: italic;
								font-family: soleil, sans-serif;
							}

							table.cart.list tr.item>td.price>del{
								opacity: .5;
								font-size: .75em;
								font-weight: normal;
							}

						main.p_cart.p_cart_flow>section>div table.cart.list tr.item>td.price{
							padding-right: 0;
						}

						table.cart.list tr.item>td.delete{
							position: absolute;
							top: 0;
							right: 0;
						}

							table.cart.list tr.item>td.delete>form{

							}

								#app table.cart.list tr.item>td.delete>form>button{
									-webkit-appearance: none;
									display: block;
									border: none;
									background: transparent;
									color: #000;
									border-radius: none;
									line-height: 1em;
									font-size: 0;
									text-indent: -99999px;

									opacity: .5;
									cursor: pointer;
								}

									#app table.cart.list tr.item>td.delete>form>button::after{
										content: "\e904";
										font-family: 'icomoon' !important;
										speak: never;
										font-style: normal;
										font-weight: normal;
										font-variant: normal;
										text-transform: none;
										-webkit-font-smoothing: antialiased;

										font-size: 12px;
										text-indent: 0;
										display: block;
										line-height: 1em;
									}

								#app table.cart.list tr.item>td.delete>form>button:hover{
									opacity: 1;
								}

					table.cart.list tr.empty{
						opacity: .7;
						border-top: 2px solid black;
					}

						table.cart.list tr.empty div.empty{
							width: 85%;
							margin: 0 auto;
							text-align: center;
							padding-top: 25px;
						}

							table.cart.list tr.empty div.empty h3{
								margin: 0;
								padding: 0;
								text-align: left;
							}

							table.cart.list tr.empty div.empty p{
								margin: 0;
								padding: 0;
								text-align: left;
								font-family: utopia-std-display, serif;
							}
							table.cart.list tr.empty div.empty h3+p{
								margin-top: 12px;
							}

							#app table.cart.list tr.empty div.empty a.btn{
								display: inline-block;
								padding: 0 30px;
								margin: 0;
							}
							#app table.cart.list tr.empty div.empty p+a.btn{
								margin-top: 25px;
							}

				ul#cartinvites{
/*					display: flex;*/
					gap: 20px;
					margin: 0;
					padding: 0;
					list-style: none;

					display: grid;
					grid-template-columns: repeat(auto-fit, minmax(0, 1fr));

					text-align: center;
				}

				table.cart+ul#cartinvites{
					margin-top: 50px;
				}

					ul#cartinvites>li{
/*						flex: 0 0 50%;*/
						background: #000000;
						color: #FFFFFF;
						padding: 40px;
						border-radius: 25px;
						box-sizing: border-box;
					}

						ul#cartinvites>li>div{
							display: flex;
							flex-direction: column;
/*							justify-content: space-between;*/
							justify-content: space-evenly;
							height: 100%;

							max-width: 400px;
							margin: 0 auto;
						}

							ul#cartinvites>li>div>h1{
								margin: 0 0 10px;
							}

								ul#cartinvites>li>div>h1>a{
									text-decoration:none;
								}

					ul#cartinvites>li:first-child:last-child{
						flex: 1 1 auto;
						display: flex;
						gap: 40px;
					}

/*					ul#cartinvites>li:first-child:last-child::before{
						display: block;
						content: "";
						flex: 0 0 50%;
						background: url(https://atelier10.ca/data/upload/img-3159.png);
						background-size: contain;
						background-repeat: no-repeat;
						background-position: 50% 50%;
					}*/


					ul#cartinvites>li.donation{
						background: #0d5c74;
					}

						ul#cartinvites>li.donation form{

						}

							ul#cartinvites>li.donation ul.toggle>li>label>span{
	/*							width: 150px;*/
							}

								ul#cartinvites>li.donation div.half{
									display: flex;
									gap: 10px;
									justify-content: space-between;
									margin-top: 20px;
								}

								ul#cartinvites>li.donation form label.checkbox{
									position: relative;
									padding: 0;
								}
									ul#cartinvites>li.donation form label.checkbox>input{
										position: absolute;
										top: 0;
										left: 0;
										width: 1px;
										height: 1px;
										opacity: 0;
									}
									ul#cartinvites>li.donation form label.checkbox>span{
										display: flex;
										align-items: center;
										gap: .5em;

										position: relative;
										top: 0;
										left: 0;

										text-align: left;
										width:fit-content;
										margin: 0;
										padding: 0;

										font: var(--fontHeader);
										text-transform: uppercase;
										text-align: center;
										line-height: 1em;
									}

										ul#cartinvites>li.donation form label.checkbox>span::before,
										ul#cartinvites>li.donation form label.checkbox>span::after{
											content: "";
											display: block;
											width: 1em;
											height: 1em;
											border:2px solid var(--bgcolor);
											box-sizing: border-box;
										}
										ul#cartinvites>li.donation form label.checkbox>span::after{
											/*position: absolute;
											top: 0;
											left: 0;

											background: var(--bgcolor);
											opacity: 0;
											transform: scale(.3);

											transition: opacity .3s, transform .3s;*/

											position: absolute;
											top: 0;
											left: 0;
											/* background: var(--bgcolor); */
											opacity: 0;
											transform: scale(.25);
											transform-origin: 1px 8px;
											transition: opacity .3s, transform .3s;
											top: -2px;
											left: 4px;
											border: none;
											color: var(--bgcolor);
											content: "\e91e";
											font-family: 'icomoon' !important;
											font-size: 10px;
											line-height: 10px;
											width: 10px;
											text-align: center;
											text-indent: -.5em;
										}
										ul#cartinvites>li.donation form label.checkbox:hover>span::after{
/*											opacity: .5;*/
/*											transform: scale(.5);*/
											opacity: .5;
											transform: scale(.75);
										}

									ul#cartinvites>li.donation form label.checkbox>input:checked+span{

									}

										ul#cartinvites>li.donation form label.checkbox>input:checked+span::before{
											border-color: rgba(255,255,255,.5);
										}

										ul#cartinvites>li.donation form label.checkbox>input:checked+span::after{
											opacity: 1;
											transform: scale(1);
										}

										ul#cartinvites>li.donation form label.checkbox:hover>input:checked+span::after{
											opacity: 1;
											transform: scale(.75);
										}

							ul#cartinvites>li.donation button{
								width: 100%;
								padding: 0;
								margin-top: 20px;
							}




					ul#cartinvites>li.subscription{
						background: #000000;
					}

					ul#cartinvites>li.subscription2{
						background: #1B2028;
/*						text-align: center;*/
					}

					ul#cartinvites>li.subscribe{
						background: #000000;
					}

					ul#cartinvites>li.freeShippingReminder{
						margin: 0;
						background: #FFFFFF;
						color: #000000;
						border:none;
					}

						ul#cartinvites>li.freeShippingReminder>div.freeShippingReminder{
							margin: 0 auto;
							padding: 0;
							border:0;
							border-radius: 0;

							justify-content: space-evenly;
						}

							ul#cartinvites>li.freeShippingReminder>div.freeShippingReminder>div{

							}

							ul#cartinvites>li.freeShippingReminder>div.freeShippingReminder>span{
								font-size: 16px;
							}



			main.p_cart.p_cart_flow>section>div>div.total{

			}

				table.cart.total{
					display: block;
					width: 100%;
					text-align: left;
					border-collapse: collapse;
					box-sizing: border-box;

					border: 2px solid black;
					border-radius: 5px;
					padding: 20px;
				}

				main.p_cart.p_cart_flow>section>div table+table.cart.total{
					margin-top: 30px;
				}

					table.cart.total tbody{
						display: block;
					}

						table.cart.total tr{
							border-top: 2px solid #EEE;
							display: flex;
						}

							table.cart.total tr>th,
							table.cart.total tr>td{
								flex-grow: 2;
							}

							table.cart.total tr>td:last-child{
								text-align: right;
								flex-grow: 1;
							}

							table.cart.total tr:first-child>th,
							table.cart.total tr:first-child>td{
								border-top: none;
							}

						table.cart.total tr:first-child{
							border-top: none;
						}

						table.cart.total tr:last-child,
						table.cart.total tr.total{
							margin-top: 10px;
							border-color: black;
						}

							table.cart.total tr:last-child>th,
							table.cart.total tr:last-child>td,
							table.cart.total tr.total>th,
							table.cart.total tr.total>td{
								padding-top: 10px;
							}

				#app main.p_cart.p_cart_flow>section>div a:not(.empty){
					margin-left: 0;
					margin-right: 0;
				}

			main.p_cart.p_cart_flow>section>div>div{

			}

				ul.steps{
					display: block;
					list-style: none;
					margin: 0;
					padding: 0;

					counter-reset: steps;
				}

					ul.steps>li{
						display: block;

						border: 2px solid black;
						border-radius: 5px;
						padding: 50px;
						margin-top: 5px;
						background: #FFFFFF;

						counter-increment: steps;
					}

						ul.steps>li::before{
							display:block;
							content: counter(steps);
							text-align: center;
							line-height: 48px;
							float: left;
							width: 48px;
							left: 48px;
							border-radius: 100%;
							border: 2px solid black;
							box-shadow: inset 0 0 0 1px white, inset 0 0 0 2px black;
							margin: -25px 13px 0 -25px;
						}

						ul.steps>li.done::before{
							content: "\e91e";
							font-family: 'icomoon' !important;
							speak: never;
							font-style: normal;
							font-weight: normal;
							font-variant: normal;
							text-transform: none;
							-webkit-font-smoothing: antialiased;
							font-size: 15px;
						}

						ul.steps>li.error::before{
							content: "!";
							color: red;
							font-weight: bold;
						}

						ul.steps>li>h2{
							margin: -25px 0 25px 0;
							padding: 0;
							font-size: 22px;
/*							line-height: 50px;*/

							min-height: 50px;
							display: flex;
							flex-direction: column;
							justify-content: center;
						}
						ul.steps>li>h2:last-child{
							margin-bottom: -25px;
						}

							ul.steps>li>h2>span{
								font-size: 1rem;
								line-height: 1em;
								font-weight: normal;
								padding-top: .5em;
							}

						form#selectPaymentCard{
							margin-bottom: 1em;
						}

						#saveCardDiv{
							margin-top: 1em;
						}

						#app ul.steps>li button.btn{
							margin: 40px 0 0 auto;
							min-width: 200px;
						}

					ul.steps>li:first-child{
						margin-top: 0;
						padding: 25px;
					}

						ul.steps>li:first-child::before{
							margin: 0 13px 0 0;
						}

						ul.steps>li:first-child>h2{
							margin:0;
						}

					ul.steps>li.disabled{
						opacity: .5;
					}




main.p_cart_flow .addressPreview,
main.p_cart_flow .paymentPreview{
	display: flex;
	max-width: 500px;
	margin: 1em auto;
}


	main.p_cart_flow .addressPreview>div,
	main.p_cart_flow .paymentPreview>div{
		font-size: 12px;
		padding-left: 1vw;
		line-height: 1.2em;
		width: 50%;
		box-sizing: border-box;
	}

		main.p_cart_flow .addressPreview>div:first-line{

		}
		main.p_cart_flow .paymentPreview>div:first-line{
			font-weight: bold;
		}

	main.p_cart_flow .addressPreview>div.name,
	main.p_cart_flow .paymentPreview>div.info{
		font-size: 15px;
		padding-left: 0;
		padding-right: 1vw;
	}

main.p_cart_flow .paymentPreview .addressPreview,
main.p_cart_flow .last.verif .addressPreview,
main.p_cart_flow .last.verif .paymentPreview{
	display: block;
	margin: 0;
}

	main.p_cart_flow .paymentPreview .addressPreview>div,
	main.p_cart_flow .paymentPreview .addressPreview>div.name,
	main.p_cart_flow .last.verif .addressPreview>div,
	main.p_cart_flow .last.verif .paymentPreview>div,
	main.p_cart_flow .last.verif .addressPreview>div.name,
	main.p_cart_flow .last.verif .paymentPreview>div.info{
		padding: 0;
		font-size: 12px;
		width: 100%;
	}

main.p_cart_flow .last.verif>h3{
	margin: 20px 0;
	padding: 20px 0 0 0;
	border-top: 2px solid black;
}

main.p_cart_flow .last.verif>h3:first-child{
	margin-top: 0;
}

main.p_cart_flow #paymentMethodPreview{
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 2px solid black;
}

.cartPromoCode{
	margin: 45px 0;
}

	.cartPromoCode>div{

	}

		.codeDetail{
			display: block;
			border: 2px solid black;
			border-radius: 5px;
			padding: 20px;
		}

			.codeDetail div.code{
				font-weight: bold;
				white-space: nowrap;
				font-family: utopia-std-display, serif;
				font-size: 20px;
				margin-bottom: 8px;
				margin-top: -.25em;
				line-height: 1em;
			}

			.codeDetail div.text{
				font-size: 12px;
				line-height: 1em;
			}

			.codeDetail a{
				display: block;
				font-size: 12px;
				margin-top: 8px;
			}


		.cartPromoCode>div>form{
			display: inline-block;
		}

			.cartPromoCode>div>form>div{
				font-size: 12px;
				line-height: 1em;
			}

			.cartPromoCode>div>form>label{
				margin-top: 20px;
			}

		.cartPromoCode>div>form#promocodeForm{
			display: flex;
			align-items: flex-end;
		}

			.cartPromoCode>div>form#promocodeForm>label{
				flex: 50% 1 1;
			}

				.cartPromoCode>div>form#promocodeForm>label>input{
					border-top-right-radius: 0;
					border-bottom-right-radius: 0;
				}

			#app .cartPromoCode>div>form#promocodeForm>button{
				flex: 30px 0 0;
				border-top-left-radius: 0;
				border-bottom-left-radius: 0;
				margin: 0;
				overflow: hidden;
				padding: 0;
				height: 40px;
				position: relative;
				text-indent: -9999px;
			}

			#app .cartPromoCode>div>form#promocodeForm>button::before{
				content: "\e90b";
				font-family: 'icomoon' !important;
				font-size:.25em;

				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				/*text-align: center;*/
				text-indent: 0;
				line-height: 15px;
				font-size: 11px;
				transform: rotate(180deg);
				display: flex;
				justify-content: center;
				align-items: center;
			}


ul.msg_cart{
	display: block;
	background: #e8e8e9;
	border-radius: 5px;
	padding: 20px 40px;
	list-style: none;
}

	ul.msg_cart>li{
		padding-left: 1em;
		position: relative;
		line-height: 1em;
	}
		ul.msg_cart>li::before{
			position: absolute;
			top: 0;
			left: 0;
			line-height: 1em;
			content: "–";
		}
	ul.msg_cart>li+li{
		margin-top: .5em;
	}
	ul.msg_cart>li:first-child:last-child{
		text-align: center;
		padding-left: 0;
	}
		ul.msg_cart>li:first-child:last-child::before{
			display: none;
		}

.freeShippingReminder{
	border: 1px solid #999;
	border-radius: 5px;
	padding: 20px;
	font-size: 12px;
	font-family: soleil, sans-serif;

	margin-top: 45px;
}

	.freeShippingReminder>div{
		font-size: 21px; /*1.4em;*/
		line-height: 1.2em;
		margin-bottom: .5em;
	}

		.freeShippingReminder>div>strong{
			color: #F36258;
		}

	.freeShippingReminder>span{
		text-decoration: underline;
	}


main.p_subscription{

}

	main.p_subscription div.deal{
		position: fixed; /*sticky;*/
		top: 80px;
		left: 0;
		width: 200px;
		height: auto;
		z-index: 10;
		transform: translate(-50%, -100%) rotate(-45deg) translate(0%, 100%);
		transform-origin: 50% 100%;
/*		pointer-events: none;*/
	}

		main.p_subscription div.deal>div{
			background: #FDFC0A;
			color: #000000;
/*			border-bottom: 10px solid white;*/
			white-space: nowrap;
			font-family: soleil, sans-serif;
			font-size: 12px;
			line-height: 1.2em;

			width: 200px;
			padding: 30px 0 10px 0;
			text-align: center;

			transform: translate(0%, 0%);
			transform-origin: 50% 100%;

/*			box-shadow: 0 0 0 5px #FFFFFF;*/

			pointer-events: auto;
			transition: transform .5s, opacity .5s;
		}

		main.p_subscription div.deal:hover{

		}

/*		main.p_subscription div.deal>div:hover,*/
		main.p_subscription div.deal:hover>div{
/*			opacity: 0;*/
			transform: translate(0%, -50%) scale(.5);
			opacity: .25;
		}

		main.p_subscription div.deal>div>span{
			display: block;
			font-size: 2em;
			line-height: 1.2em;
			font-weight: bold;
		}

	main.p_subscription section.top{
		background: #1B2028;
	}

		main.p_subscription section.top>div{

		}

			main.p_subscription section.top>div>div{
				display: inline-block;
				vertical-align: middle;
				box-sizing: border-box;
			}

			main.p_subscription section.top>div>div.text{
				width: 30%;
				padding-right: 30px;
			}

			main.p_subscription section.top>div>div.list{
				width: 70%;
				padding-left: 30px;
			}

				main.p_subscription section.top>div>div.list>ul{
					list-style: none;
					margin: -5px;
					padding: 0;

					margin-right: calc((var(--vw100) - var(--maxWidth)) / -2 + 20px);
				}

					main.p_subscription section.top>div>div.list>ul>li{
						display: inline-block;
						vertical-align: top;
						height: 330px;
						height: calc((100vh - 80px - 50px + 10px) / 2 - 10px);
						width: 50%;
						width: calc(50% - 10px);
						border-radius: 5px;
						margin: 5px;

						text-align: center;

						position: relative;

						overflow: hidden;
					}

					main.p_subscription section.top>div>div.list>ul>li.clickable{
						transition: transform .4s;
					}

					main.p_subscription section.top>div>div.list>ul>li.clickable:hover{
						transform: scale(.99);
					}

						main.p_subscription section.top>div>div.list>ul>li::before,
						main.p_subscription section.top>div>div.list>ul>li::after{
							content: "";
							display: inline-block;
							vertical-align: middle;
							height: 100%;
						}

						main.p_subscription section.top>div>div.list>ul>li>ul,
						ul.imggrid{
							position: absolute;
							width: 150%;
							aspect-ratio: 1 / 1;
							top: 50%;
							left: 50%;
							transform: translate(-50%, -50%) rotate(25deg);

							list-style: none;
							margin: 0;
							padding: 0;

/*							columns: 4;*/
							display: grid;
						  	grid-template-columns: repeat(4, 1fr);
						  	grid-template-rows: auto;
							grid-template-areas:
								"ie1 i09 ie3 i08"
								"i13 i09 i03 i08"
								"i13 i02 i03 i07"
								"i10 i02 i04 i07"
								"i10 i01 i04 i06"
								"i11 i01 i05 i06"
								"i11 i14 i05 i16"
								"i12 i14 i15 i16"
								"i12 ie2 i15 ie4";
							gap:10px;

							filter: grayscale(1);
							opacity: .08;

							pointer-events: none;
							z-index: 1;
						}

							main.p_subscription section.top>div>div.list>ul>li>ul>li,
							ul.imggrid>li{
/*								padding: 10px;*/
								page-break-inside: avoid;
								break-inside: avoid;
/*								grid-row: span 2;*/
							}

								main.p_subscription section.top>div>div.list>ul>li>ul>li>img,
								ul.imggrid>li>img{
									display: block;
									width: 100%;
									height: auto;
								}

							main.p_subscription section.top>div>div.list>ul>li>ul>li:nth-child(1),
							ul.imggrid>li:nth-child(1){
								grid-area:i01;
							}
							main.p_subscription section.top>div>div.list>ul>li>ul>li:nth-child(2),
							ul.imggrid>li:nth-child(2){
								grid-area:i02;
							}
							main.p_subscription section.top>div>div.list>ul>li>ul>li:nth-child(3),
							ul.imggrid>li:nth-child(3){
								grid-area:i03;
							}
							main.p_subscription section.top>div>div.list>ul>li>ul>li:nth-child(4),
							ul.imggrid>li:nth-child(4){
								grid-area:i04;
							}
							main.p_subscription section.top>div>div.list>ul>li>ul>li:nth-child(5),
							ul.imggrid>li:nth-child(5){
								grid-area:i05;
							}
							main.p_subscription section.top>div>div.list>ul>li>ul>li:nth-child(6),
							ul.imggrid>li:nth-child(6){
								grid-area:i06;
							}
							main.p_subscription section.top>div>div.list>ul>li>ul>li:nth-child(7),
							ul.imggrid>li:nth-child(7){
								grid-area:i07;
							}
							main.p_subscription section.top>div>div.list>ul>li>ul>li:nth-child(8),
							ul.imggrid>li:nth-child(8){
								grid-area:i08;
							}
							main.p_subscription section.top>div>div.list>ul>li>ul>li:nth-child(9),
							ul.imggrid>li:nth-child(9){
								grid-area:i09;
							}
							main.p_subscription section.top>div>div.list>ul>li>ul>li:nth-child(10),
							ul.imggrid>li:nth-child(10){
								grid-area:i10;
							}
							main.p_subscription section.top>div>div.list>ul>li>ul>li:nth-child(11),
							ul.imggrid>li:nth-child(11){
								grid-area:i11;
							}
							main.p_subscription section.top>div>div.list>ul>li>ul>li:nth-child(12),
							ul.imggrid>li:nth-child(12){
								grid-area:i12;
							}
							main.p_subscription section.top>div>div.list>ul>li>ul>li:nth-child(13),
							ul.imggrid>li:nth-child(13){
								grid-area:i13;
							}
							main.p_subscription section.top>div>div.list>ul>li>ul>li:nth-child(14),
							ul.imggrid>li:nth-child(14){
								grid-area:i14;
							}
							main.p_subscription section.top>div>div.list>ul>li>ul>li:nth-child(15),
							ul.imggrid>li:nth-child(15){
								grid-area:i15;
							}
							main.p_subscription section.top>div>div.list>ul>li>ul>li:nth-child(16),
							ul.imggrid>li:nth-child(16){
								grid-area:i16;
							}


						main.p_subscription section.top>div>div.list>ul>li>div{
							display: inline-block;
							vertical-align: middle;
							width: calc(100% - 50px);
							padding: 25px 0;

							position: relative;
							z-index: 2;
						}

							main.p_subscription section.top>div>div.list>ul>li>div>.title{
								font-family: soleil, sans-serif;
								font-size: 30px;
								font-weight: bold;
							}

								main.p_subscription section.top>div>div.list>ul>li>div>.title>a{
									text-decoration: none;
								}

									main.p_subscription section.top>div>div.list>ul>li>div>.title>a>span{

									}
									main.p_subscription section.top>div>div.list>ul>li>div>.title>a>span.autologo{
										font-size: 0 !important;
									}

										main.p_subscription section.top>div>div.list>ul>li>div>.title>a>span.autologo::before{
											font-size: 30px;
										}

							main.p_subscription section.top>div>div.list>ul>li>div>.description{
								margin-top: 10px;
							}
							main.p_subscription section.top>div>div.list>ul>li>div>.tagline{

							}

					main.p_subscription section.top>div>div.list>ul>li:first-child{
						width: 100%;
						width: calc(100% - 10px);
					}

	#app>main.p_subscription section.group{
		text-align: center;
		background: var(--bgcolor);
		color: var(--fgcolor);

		position: relative;
		overflow: hidden;
	}

		main.p_subscription section.group>ul.imggrid{
			z-index: 1;
		}

		main.p_subscription section.group>div{
			padding: 50px 0;
			position: relative;
			z-index: 2;
		}

			main.p_subscription section.group>div>h2{
				/*Titre*/
				margin: 0;
			}

			main.p_subscription section.group>div>p{
				/*Texte*/
			}

			main.p_subscription section.group>div>h3{
				margin: 4em 0 .5em 0;
				position: relative;
				font-weight: normal;
				text-transform: uppercase;
				font-family: soleil, sans-serif;

				display: flex;
				align-items: center;
			}

				main.p_subscription section.group>div>h3::before,
				main.p_subscription section.group>div>h3::after{
					content: "";
					display: block;
					background: currentColor;

					height: 1px;

					flex: 1 1 auto;
				}

				main.p_subscription section.group>div>h3>span{
					display: inline-block;
					padding: 0 1em;
/*					background: var(--bgcolor);*/
					position: relative;
					z-index: 2;
					flex: 0 0 auto;
				}

			/*toggle*/

			main.p_subscription section.group>div>ul.toggle{
				border-color: var(--fgcolor);
			}

			.loading main.p_subscription section.group>div>ul.toggle{
				display: none;
			}

				main.p_subscription section.group>div>ul.toggle>li{

				}

					main.p_subscription section.group>div>ul.toggle>li>span{
						border-color: var(--fgcolor);
						color: var(--fgcolor);
						background: var(--bgcolor);

						font-family: soleil, sans-serif;
						font-weight: 600;
					}

				main.p_subscription section.group>div>ul.toggle>li.active{

				}

					main.p_subscription section.group>div>ul.toggle>li.active>span{
						background: var(--fgcolor);
						color: var(--bgcolor);
						box-shadow: 0 0 0 2px var(--fgcolor);
					}


			main.p_subscription section.group>div>ul.list{
				/*numérique / physique*/
				list-style: none;
				display: block;
				margin: 0;
				padding: 0;
/*			}

			main.p_subscription section.group>div>ul.toggle+ul.list{*/
				margin-top: 35px;
			}

				main.p_subscription section.group>div>ul.list>li{
					display: block;
					margin: 0;
					padding: 0;
				}

				.js main.p_subscription section.group>div>ul.list>li{
					display: none;
				}
				.js main.p_subscription section.group>div>ul.list>li.active{
					display: block;
				}

					.js main.p_subscription section.group>div>ul.list>li>h3{
						display: none;
					}

					main.p_subscription section.group>div>ul.list>li>ul{
						/*display: block;*/
						display: inline-flex;
						justify-content: center;
						flex-wrap: wrap;
						list-style: none;
						margin: -7px;
						padding: 0;
					}

						main.p_subscription section.group>div>ul.list>li>ul>li{
							position: relative;

							display: inline-block;
							vertical-align: top;
							width: 225px;
							background: #FFF;
							color: #000;
							border-radius: 20px;
							padding: 25px;
							margin: 7px;
						}

						main.p_subscription section.group>div>ul.list>li>ul>li.wPellet{
							box-shadow: 0 0 0 7px #C3C3C3;
							z-index: 2;
						}

							main.p_subscription section.group>div>ul.list>li>ul>li>h4{
								color: var(--bgcolor);
								text-transform: uppercase;
								font-weight: 100;
								font-size: 20px;
								font-family: soleil, sans-serif;
								margin: 0 0 15px 0;
								padding: 0;
								line-height: 1em;
							}

							main.p_subscription section.group>div>ul.list>li>ul>li>div.oldprice{
								color: #888;
								text-decoration: line-through;
							}

							main.p_subscription section.group>div>ul.list>li>ul>li>div.price{
								font-size: 35px;
								font-weight: 600;
								margin-bottom: 33px;
							}

							main.p_subscription section.group>div>ul.list>li>ul>li>div.pricematch{
								text-transform: uppercase;
								font-family: soleil, sans-serif;
								font-size: 12px;
								font-weight: 600;
								margin-top: -31px;
								line-height: 1em;
								margin-bottom: 19px;
							}

							main.p_subscription section.group>div>ul.list>li>ul>li>div.pellet{
								position: absolute;
								top: -25px;
								right: -25px;
								width: 90px;
								height: 90px;
								border-radius: 100%;
								background: #C3C3C3;
								color: #000;
							}

								main.p_subscription section.group>div>ul.list>li>ul>li>div.pellet>em{
									display: block;
									position: absolute;
									top: 50%;
									transform: translateY(-50%);
									text-transform: uppercase;
									font-style: normal;
									font-size: 12px;

									font-family: soleil, sans-serif;
									line-height: 1em;
									font-weight: 500;
								}

							main.p_subscription section.group>div>ul.list>li>ul>li>form{
								margin-bottom: 33px;
							}

								main.p_subscription section.group>div>ul.list>li>ul>li>form>h4{
									font-family: soleil, sans-serif;
									margin: 0 0 10px 0;
									line-height: 1em;
								}
								main.p_subscription section.group>div>ul.list>li>ul>li>form>ul.toggle2{
									display: flex;
									flex-direction: column;
									gap: 2px;
									width: 100%;
								}
									main.p_subscription section.group>div>ul.list>li>ul>li>form>ul.toggle2>li{
										margin: 0;
										border-color: var(--bgcolor);
										overflow: hidden;
									}
									main.p_subscription section.group>div>ul.list>li>ul>li>form>ul.toggle2>li:first-child{
										border-top-left-radius: 5px;
										border-top-right-radius: 5px;
									}
									main.p_subscription section.group>div>ul.list>li>ul>li>form>ul.toggle2>li:last-child{
										border-bottom-left-radius: 5px;
										border-bottom-right-radius: 5px;
									}

										main.p_subscription section.group>div>ul.list>li>ul>li>form>ul.toggle2>li>label{

										}

											main.p_subscription section.group>div>ul.list>li>ul>li>form>ul.toggle2>li>label>span{
												border: none;
												border-radius: 0;
												padding: 0;

												background-color: var(--bgcolor);
												color: var(--fgcolor);

												font-size: 15px;
												font-family: soleil, sans-serif;
												font-weight: bold;
											}

								main.p_subscription section.group>div>ul.list>li>ul>li>form>label.checkbox{
									position: relative;
									cursor: pointer;
									margin-top: 10px;
								}

									main.p_subscription section.group>div>ul.list>li>ul>li>form>label.checkbox>input{
										position: absolute;
										top: 0;
										left: 0;
										width: 1px;
										height: 1px;
										opacity: 0;
									}

										main.p_subscription section.group>div>ul.list>li>ul>li>form>label.checkbox>span{
											display: flex;
											align-items: center;
											gap: .5em;

											position: relative;
											top: 0;
											left: 0;

											text-align: left;
											width:fit-content;
											margin: 0;
											padding: 0;

											font: var(--fontHeader);
											text-transform: uppercase;
											text-align: center;
											line-height: 1em;
										}

											main.p_subscription section.group>div>ul.list>li>ul>li>form>label.checkbox>span::before,
											main.p_subscription section.group>div>ul.list>li>ul>li>form>label.checkbox>span::after{
												content: "";
												display: block;
												width: 1em;
												height: 1em;
												border:2px solid var(--bgcolor);
												box-sizing: border-box;
											}
											main.p_subscription section.group>div>ul.list>li>ul>li>form>label.checkbox>span::after{
												position: absolute;
												top: 0;
												left: 0;

/*												background: var(--bgcolor);*/
												opacity: 0;
												transform: scale(.25);

												transform-origin: 1px 8px;

												transition: opacity .3s, transform .3s;

												top:-2px;
												left: 4px;

												border:none;
												color: var(--bgcolor);

												content: "\e91e";
												font-family: 'icomoon' !important;
												font-size: 10px;
												line-height: 10px;
												width: 10px;
												text-align: center;

												text-indent: -.5em;
											}
											main.p_subscription section.group>div>ul.list>li>ul>li>form>label.checkbox:hover>span::after{
												opacity: .5;
												transform: scale(.75);
											}

										main.p_subscription section.group>div>ul.list>li>ul>li>form>label.checkbox>input:checked+span{

										}
											main.p_subscription section.group>div>ul.list>li>ul>li>form>label.checkbox>input:checked+span::before{
												border-color: #e8e8e9;
											}


											main.p_subscription section.group>div>ul.list>li>ul>li>form>label.checkbox>input:checked+span::after{
												opacity: 1;
												transform: scale(1);
											}

											main.p_subscription section.group>div>ul.list>li>ul>li>form>label.checkbox:hover>input:checked+span::after{
												opacity: 1;
												transform: scale(.75);
											}

							#app>main.p_subscription section.group>div>ul.list>li>ul>li>a.btn{
								background: var(--bgcolor);
								color: var(--fgcolor);
								border-color: var(--bgcolor);
							}

							#app>main.p_subscription section.group>div>ul.list>li>ul>li>a.btn:hover{
								color: var(--bgcolor);
								background: var(--fgcolor);
							}

							main.p_subscription section.group>div>ul.list>li>ul>li>div.desc{

							}

								main.p_subscription section.group>div>ul.list>li>ul>li>div.desc>ul{
									display: block;
									list-style: none;
									margin: 0;
									padding: 0;
								}

									main.p_subscription section.group>div>ul.list>li>ul>li>div.desc>ul>li{
										display: block;
										padding: 10px 0;
										border-top: 2px solid #000;
									}

									main.p_subscription section.group>div>ul.list>li>ul>li>div.desc>ul>li:first-child{
										border-top: none;
									}

							main.p_subscription section.group>div>ul.list>li>ul>li>img{
								/* Image here */
							}

	main.p_subscription>footer{
		position: sticky;
		bottom: 0;
		background: #FFFFFF;
		border-top:1px solid black;
		padding: 5px;
		z-index: 2;
	}
		main.p_subscription>footer>div{
			display: flex;
			justify-content: space-between;
		}

			main.p_subscription>footer>div>ul{
				display: flex;
				gap: 5px;
				list-style: none;
				margin: 0;
				padding: 0;
/*				line-height: 50px;*/
			}

				main.p_subscription>footer>div>ul>li{
					--color:#000000;
					position: relative;

					display: flex;
					flex-direction: column;
					justify-content: center;

					background: var(--color);
					color: #FFFFFF;
					display: flex;
					border-radius: 5px;
					width: 175px;
					padding: 0 20px;

					font-family: soleil, sans-serif;
					font-size: 12px;
					line-height: 1em;
				}
					main.p_subscription>footer>div>ul>li::before{
						position: absolute;
						top: 0;
						left: 0;
						bottom:0;
						width: 50px;
						line-height: 50px;
						text-align: center;

						font-size: 17px;
						font-family: 'icomoon' !important;
					}
					main.p_subscription>footer>div>ul>li>strong{
						font-weight: bold;
						display: block;
						margin: 0;
						padding: 0;
						text-transform: uppercase;
					}
					main.p_subscription>footer>div>ul>li>p{
						display: block;
						margin: 0;
						padding: 0;
					}
				main.p_subscription>footer>div>ul>li.g_zzeTd{
					/* NP */
					padding-left: 50px;
				}
					main.p_subscription>footer>div>ul>li.g_zzeTd::before{
						content: "\e913";
					}
				main.p_subscription>footer>div>ul>li.g_zzeTs{
					/* Doc */
					padding-left: 50px;
				}
					main.p_subscription>footer>div>ul>li.g_zzeTs::before{
						content: "\e912";
					}
				main.p_subscription>footer>div>ul>li.g_zzeTb{
					/* Pieces */
					padding-left: 50px;
				}
					main.p_subscription>footer>div>ul>li.g_zzeTb::before{
						content: "\e911";
					}

				main.p_subscription>footer>div>ul>li.more{
					background: #FFF;
					color: #000;
					width: auto;
				}

			main.p_subscription>footer>div>div{

			}

				main.p_subscription>footer>div>div>a.btn{
					width: 175px;
				}

main.p_author{

}

	ul.letterFilter{
		display: block;
		text-align: center;
		margin: 0;
		padding: 0;
	}

		ul.letterFilter>li{
			display: inline-block;
		}

			ul.letterFilter>li>a{
				display: block;
				text-decoration: none;
				font-family: soleil, sans-serif;
				padding: 5px;
				border-radius: 5px;
				line-height: 1em;
			}

			ul.letterFilter>li>a:hover{
				background: #EEE;
			}

		ul.letterFilter>li.active{

		}

			#app ul.letterFilter>li.active>a{
				font-weight: bold;
				background: #000000;
				color: #FFFFFF;
			}

	#filterContainer{
		display:flex;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 50px;
	}

	#searchFilter{
/*		margin: 20px auto 50px;*/
		width: 30%;
		max-width: 280px;
		display: flex;
		position: relative;
	}

		#app>main #searchFilter>label{
			margin-top: 0;
			flex-grow: 1;
		}

			#app>main #searchFilter>label>input{
				border-top-right-radius: 0;
				border-bottom-right-radius: 0;
				padding: 0 30px 0 15px;
			}

		#app>main #searchFilter>button{
			border-top-left-radius: 0;
			border-bottom-left-radius: 0;
			width: auto;
			margin: 0;
			font-size: 0;
			height: 40px;
			padding: 0 10px;
			width:45px;
		}

			#searchFilter>button::before{
				font-size: 20px;
				line-height: 40px;
			}

	#app #searchReset{
		display:block;
		text-align: center;
		text-decoration: none;
/*		color: #e8e8e9;*/
/*		font-weight: bold;*/
		font-family: soleil, sans-serif;
		font-size:12px;
		opacity: .5;

		position: absolute;
		top: 50%;
		right: 55px;
		overflow: hidden;

		font-size: 0;
		transform: translateY(-50%);
	}

		#app #searchReset::before{
			display:block;
			font-size: 8px;
			background: #000000;
			color: #FFFFFF;
			border-radius: 100%;
			width: 16px;
			height: 16px;
			text-align: center;
			line-height: 16px;
		}

	#app #searchReset:hover{
		opacity: 1;
	}

	.noResults{
		margin: 0 auto;
		width: 80%;
		max-width: 500px;
		padding: 100px 10px;
		box-sizing: border-box;
		text-align: center;
		position: relative;
	}

		.noResults::before,
		.noResults::after{
			display: block;
			content: "";
			position: absolute;
			width: 20px;
			height: 1px;
			background: #000000;
			top: 50%;
		}

		.noResults::before{
			left: 100%;
		}
		.noResults::after{
			right: 100%;
		}


main.p_author_detail{
	background: #EEE;
}

	#app>main.p_author_detail>section{
		background: #EEE;
	}

	#authorDetail{

	}

		#authorDetail>div{

		}

			#authorDetail>div>div{

			}

				#authorDetail>div>div>div{ /* .lvX */

				}

					#authorDetail>div>div>div>div.infos{
						display: flex;
					}

						#authorDetail>div>div>div>div.infos>div.image{
							order: 1;
							margin-right: 35px;
							max-width: 40%;
						}

							#authorDetail>div>div>div>div.infos>div.image img{
/*								height: 500px;*/
							}

						#authorDetail>div>div>div>div.infos>div.infos{
							order: 2;
							display: flex;
							flex-direction: column;
							justify-content: flex-start;
							max-width: 600px;
						}

							#authorDetail>div>div>div>div.infos>div.infos>h1{
								font-size: var(--fontSizeTitleBig);
								line-height: 1em;
								font-family: soleil, sans-serif;
/*								border-top: 2px solid black;*/
								margin-top: 0;
							}

							#authorDetail>div>div>div>div.infos>div.infos>.title{
								font-family: soleil, sans-serif;
								font-size: var(--fontSizeSmall);
								text-transform: uppercase;
								margin-top: -1.5em;
							}

							#authorDetail>div>div>div>div.infos>div.infos>.description{
								flex-grow: 1;
								margin: 1em 0;
							}

							#authorDetail>div>div>div>div.infos>div.infos>footer{
/*								border-top: 2px solid black;*/
							}

								#authorDetail>div>div>div>div.infos>div.infos>footer>ul.links{
									display: flex;
									justify-content: flex-start;
									margin: 0;
									padding: 5px 0 0 0;

									margin-top: ;
								}

									#authorDetail>div>div>div>div.infos>div.infos>footer>ul.links>li{
										display: block;
										margin: 0;
										padding: 0;
										background: #000;
										color: #FFF;
										border-radius: 5px;
										margin-right: 10px;
									}

										#authorDetail>div>div>div>div.infos>div.infos>footer>ul.links>li>a{
											display: block;
											min-width: 20px;
											padding: 0 5px;
											height: 30px;
											font-size: 12px;
											line-height: 30px;
											text-transform: uppercase;
											text-decoration: none;
											font-family: soleil, sans-serif;
											font-weight: bold;
											text-align: center;
										}

											#authorDetail>div>div>div>div.infos>div.infos>footer>ul.links>li>a::before{
												font-size: 15px;
											}

	main.p_author_detail>section{

	}

		#app>main.p_author_detail>section:not(:first-child)>div{
			padding-top:0;
		}

			main.p_author_detail>section>div>h2{
				font-size: 24px;
				font-family: soleil, sans-serif;
				border-top: 2px solid black;
			}

				main.p_author_detail #productListDiv ul.productList{
					margin-top: 0;
				}

	section#catalogList{

	}

		#productListDiv{
			
		}

			#productListDiv ul.productList{
				background: #FFF;
				border-radius: 5px;
			}

	section#productArticles{
		
	}



/* search */

main.p_search_sitesearch360{
	overflow-x: hidden;
}

	#app>main.p_search_sitesearch360>section{
		background: #EEE;
	}

		#searchbox{
			
		}

		#rechercheResults{
			
		}

		#app #rechercheResults button,
		#app #unibox-suggest-box button{
			margin: 0;
			padding: 0;
			border-radius: 0;
			border:none;
		}

			#rechercheResults>section{

			}

				#rechercheResults>section>nav{

				}

					#rechercheResults>section>nav>.ss360-tc-b{
						display: none;
					}

					#rechercheResults>section>nav>ul{
						margin: 0;
					}

						#rechercheResults>section>nav>ul>li{

						}

							#app #rechercheResults>section>nav>ul>li>button{
								border-radius: none;
							}

						#rechercheResults>section>nav>ul>li.ss360-nav__menu-item--active{

						}

							#rechercheResults>section>nav>ul>li.ss360-nav__menu-item--active>button{

							}


				

/*todo - make this popup width 655px?*/
#subscriptionPopup{
	text-align: center;

	--bgcolor: #888;
	--fgcolor: #FFF;

	font-family: soleil, sans-serif;
}

	#subscriptionPopup>form{
		display: flex;
		align-items: stretch;
		flex-wrap: wrap;
		width: 100%;
	}

		#subscriptionPopup>form>header{
			display: flex;
			align-items: stretch;
			width: 100%;
			height: 100px;

			background-color: var(--bgcolor);
			color: var(--fgcolor);
		}

			#subscriptionPopup>form>header>h1{
				margin: 0;
				padding: 0;
				width: 55%;

				display: flex;
				border-right: 1px solid black;
				align-items: center;
				justify-content: center;

				line-height: 1em;

				border-color: var(--fgcolor);
			}

				#subscriptionPopup>form>header>h1>span.autologo::before{
					line-height: 100px;
				}

			#subscriptionPopup>form>header>div{
				width: 45%;
				border-left: 1px solid black;

				display: flex;
				align-content: center;
				justify-content: center;
				flex-wrap: wrap;

				border-color: var(--fgcolor);
			}

				#subscriptionPopup>form>header>div>h2{
					flex: 0 0 100%;
					margin: 0;
					padding: 0;

					text-transform: uppercase;
					font-size: 15px;
				}

				#subscriptionPopup>form>header>div>div.price{
					flex: 0 0 100%;
					margin: 0;
					padding: 0;

					font-family: utopia-std-display, serif;
					font-size: 25px;
				}

		#subscriptionPopup>form>div{
			width: 55%;
			border-right: 1px solid black;
			box-sizing: border-box;
			padding: 35px;

			border-color: var(--fgcolor);

			display: flex;
			flex-wrap: wrap;
			align-content: center;
		}

		#subscriptionPopup.start>form>div>*{
			flex: 0 0 100%;
		}

			#subscriptionPopup>form>header+div>h4{
				margin: 0 0 25px 0;
				font-size: 17px;
				font-weight: 600;
				padding: 0;
				line-height: 1em;
			}

			#subscriptionPopup>form>header+div>ul.toggle2{
				display: block;
				list-style: none;
				margin: 0;
				padding: 0;
			}

				#subscriptionPopup>form>header+div>ul.toggle2>li{
					border-color: var(--bgcolor);
					color: var(--bgcolor);
					border-radius: 5px;
				}

					#subscriptionPopup>form>header+div>ul.toggle2>li>label>span{
						padding: 0;
						border-left: 0;
						color: var(--bgcolor);
						border-radius: 5px;
					}

					#subscriptionPopup>form>header+div>ul.toggle2>li>label>input:checked+span{
						background: var(--bgcolor);
						color: var(--fgcolor);
						box-shadow: 0 0 0 2px var(--bgcolor);
					}

			#subscriptionPopup>form>header+div>label.checkbox{
				padding: 0;
				margin: 20px 0;
			}

				#subscriptionPopup>form>header+div>label.checkbox>input{
					display: none;
				}

				#subscriptionPopup>form>header+div>label.checkbox>span{
					/*font-size: 10px;*/
					font: var(--fontHeader);
					text-transform: uppercase;
					text-align: center;
					padding: 0;
					color: #888888;
				}

				#subscriptionPopup>form>header+div>label.checkbox>span::before{
					content: "";
					display: inline-block;
					margin: 0 5px 0 0;
					background: #FFFFFF;
					border: 2px solid #DADADA;
					border-radius: 2px;

					width: 1.2em;
					height: 1.2em;
					box-sizing: border-box;
					vertical-align: middle;
				}

			#subscriptionPopup>form>header+div>label.checkbox>input:checked+span{
				color: #000000;
			}

				#subscriptionPopup>form>header+div>label.checkbox>input:checked+span::before{
					background: var(--bgcolor);
					border-color: var(--bgcolor);
				}

			#subscriptionPopup>form>header+div>input.btn{
				-webkit-appearance: none;
			}

			#subscriptionPopup>form p.info{
				text-align: left;
				font-family: utopia-std-display, serif;
				font-size: 12px;
			}

			#subscriptionPopup>form hr{
				display: block;
				height: 2px;
				border: none;
				background: var(--bgcolor);
				margin: 17px 0 0 0;
				padding: 0;
			}

		#subscriptionPopup>form>div+div{
			width: 45%;
			border-left: 1px solid black;
			box-sizing: border-box;
		}

			#subscriptionPopup>form>div+div>ul{
				list-style: none;
				margin: 0;
				padding: 0;
				display: block;

				font-family: utopia-std-display, serif;
				font-size: 14px
			}

				#subscriptionPopup>form>div+div>ul>li{
					display: block;
					border-top: 2px solid black;
					padding: 8px 0;
				}

				#subscriptionPopup>form>div+div>ul>li:first-child{
					border-top: 0;
					padding-top: 0;
				}
				#subscriptionPopup>form>div+div>ul>li:last-child{
					padding-bottom: 0;
				}

		#subscriptionPopup>form div.buttons{
			border: none;
			margin: 1em 0 0 0;
			padding: 0;
			display: flex;
			width: 100%;
			/*flex-wrap: nowrap;*/
		}

			#subscriptionPopup>form div.buttons>input.btn{
				flex: 35%;
				color: #FFF;
				border-color: #FFF;
				background-color: transparent;
			}

			#subscriptionPopup>form div.buttons>input.btn.inv{
				color: #1B2028;
				background: #FFF;
			}


		#subscriptionPopup.addNew2Cart>form div.buttons{
		}

			#subscriptionPopup.addNew2Cart>form div.buttons>input.btn{
				/*flex: 35%;*/
				color: var(--bgcolor);
				border-color: var(--bgcolor);
				background-color: var(--fgcolor);
			}

			#subscriptionPopup.addNew2Cart>form div.buttons>input.btn.inv{
				color: var(--fgcolor);
				background: var(--bgcolor);
			}


/*todo - make this popup width 655px?*/
#subscriptionPopup.addSelf2Cart{

}

		#subscriptionPopup.addSelf2Cart>form{
			width: auto;
			background: #1B2028;
			color: #FFF;
			display: block;
			padding: 50px;
		}

/*todo - make this popup width 950px?*/
#subscriptionPopup.addNew2Cart{
	padding-right: 290px;
}

		#subscriptionPopup.addNew2Cart>form{
			width: 100%;
		}

			#subscriptionPopup.addNew2Cart>form>div{
				width: 100%;
				border: none;
			}

			#subscriptionPopup.addNew2Cart>form>header+div{
				display: block;
				padding-top: 18px;
				max-height: calc(80vh - 100px);
				overflow: auto;
			}

			#subscriptionPopup.addNew2Cart>form>div+div{
				position: absolute;
				top: 0;
				right: 0;
				bottom: 0;
				width: 290px;
				background: #1B2028;
				color: #FFF;
				text-align: left;
			}

main.p_subscription_activate{

}



.js #app>main form.autosubmit button[type="submit"],
.js #app>main form.autosubmit input[type="submit"]{
	display: none;
}


.js form.ajax.working{
	pointer-events: none;
	opacity: .5;
}



.js .fx{
	opacity: 0;
}

.js .fx.visible{
	opacity: 1;
	transition: opacity	.7s;
}


.m_hr.fx{
	opacity: 0;
	transform: scaleX(0);
}

.m_hr.fx.visible{
	opacity: 1;
	transform: scaleX(1);
	transition: opacity	1.5s, transform 1.5s;
	transform-origin: 50% 0;
}

.m_hr_numbered.fx{
	transform: translateY(-20px);
}

.m_hr_numbered.fx.visible{
	transform: translateY(0px);
}

.m_medias{
	
}
	
	#app .waitingForConfirmation{
		background: #000;
		background: rgba(33,33,33,.15);
		padding: 50px;
		text-align: center;
	}

		#app .waitingForConfirmation::before{
			content: "\e904";
			font-size: 30px;
			font-family: 'icomoon' !important;
			line-height: 30px;
			width: 30px;
			text-align: center;
		}
		#app .m_medias_video .waitingForConfirmation::before{
			/* default icon for video */
		}
		#app .m_medias_audio .waitingForConfirmation::before{
			/* default icon for audio */
		}
	/*		#app .m_medias_social .waitingForConfirmation.bandcamp_track::before{
				content: "\e908";
			}*/
	/*		#app .m_medias_social .waitingForConfirmation.soundcloud_track::before{
				content: "\e908";
			}*/

		#app .m_medias_social .waitingForConfirmation::before{
			/* default icon for social */
			content: "\e909";
		}
			#app .m_medias_social .waitingForConfirmation.facebook::before{
				content: "\e905";
			}
			#app .m_medias_social .waitingForConfirmation.twitter::before{
				content: "\e908";
			}
	/*		#app .m_medias_social .waitingForConfirmation.tiktok::before{
				content: "\e908";
			}*/


		#app .waitingForConfirmation>button{
/*			margin-left: auto;*/
/*			margin-right: auto;*/
			cursor: pointer;
			margin: 2.5em auto 0 auto;
		}

		#app .waitingForConfirmation>a{
			font-family: soleil, sans-serif; 
			margin:1em 0 0 0;
			font-size: 16px;
			opacity: .7;
			display: block;
		}


	.m_medias>div{
		position: relative;
	}

		.m_medias>div>iframe{
			border:none;
			width: 100%;
		}

	.m_medias>div.s_100px{
		width: 100%;
		height: 100px;
	}
		.m_medias>div.s_100px>iframe{
			width: 100%;
			height: 100%;
		}

	.m_medias>div.s_250px{
		width: 100%;
		height: 250px;
	}
		.m_medias>div.s_250px>iframe{
			width: 100%;
			height: 100%;
		}

	.m_medias>div.s_500px{
		width: 100%;
		height: 500px;
	}
		.m_medias>div.s_500px>iframe{
			width: 100%;
			height: 100%;
		}

	.m_medias>div.s_100vh{
		width: 100%;
		height: calc(100vh - 100px);
	}
		.m_medias>div.s_100vh>iframe{
			width: 100%;
			height: 100%;
		}


	.m_medias>div.s_169{
		width: 100%;
		max-width: calc((100vh - 100px) / 9 * 16);
		margin: 0 auto;
/*		padding-bottom: 56.25%;*/
	}
		.m_medias>div.s_169::before{
			content: "";
			display: block;
			padding-bottom: 56.25%;
		}

		.m_medias>div.s_169>iframe{
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
		}

	.m_medias>div.s_43{
		width: 100%;
		max-width: calc((100vh - 100px) / 3 * 4);
		margin: 0 auto;
/*		padding-bottom: 75%;*/
	}
		.m_medias>div.s_43::before{
			content: "";
			display: block;
			padding-bottom: 75%;
		}

		.m_medias>div.s_43>iframe{
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
		}

	.m_medias>div.s_square{
		width: 100%;
/*		padding-bottom: 100%;*/
		max-width: calc(100vh - 100px);
		margin: 0 auto;
	}
		.m_medias>div.s_square::before{
			content: "";
			display: block;
			padding-bottom: 100%;
		}

		.m_medias>div.s_square>iframe{
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
		}

	.m_medias>div.s_vertical{
		height: calc(100vh - 100px);
		width: calc((100vh - 150px) / 100 * 56.25);
		margin: 0 auto;
	}

		.m_medias>div.s_vertical>iframe{
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
		}

/*
@media screen and (max-width:1249px){
	body::before{
		content: "Veuillez utiliser un écran avec une largeur de 1250px ou plus.";
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		color: #999;
		font-size: 20px;
		font-weight: bold;
		padding: 25px;
		box-sizing: border-box;
		text-align: center;
		max-width: 100vw;
		width: 100%;
	}

	#app{
		display: none;
	}
}
*/

#mailDebug{
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 999;
	background: red;
	transform: translate(-50%, -50%);
	padding: 20px;
	border-radius: 10px;
}



span.definition{
	position: relative;
}

	span.definition>span.word{
		/*text-decoration: underline;*/
		background-image: linear-gradient(to left, currentColor 50%, transparent 50%);
		background-size: 6px 1px;
		background-position: 50% 90%;
		background-repeat: repeat-x;
	}

	span.definition>span.note{
		display: none;
		background: #FFFFFF;
		position: absolute;
		padding: 5px;
		border-radius: 5px;
		bottom: 100%;
		left: 50%;
		pointer-events: none;
		/*box-shadow: 0 0 10px #000;*/
		width: 200px;
		transform: translate(-50%, -5px);
		border: 1px solid black;
		font-size: 12px;
		z-index: 20;
	}

		span.definition>span.note::before{
			content: "";
			display: block;
			position: absolute;
			bottom: 0;
			left: 50%;
			width: 20px;
			height: 20px;
			background: #FFFFFF;
			transform-origin: 0	100%;
			transform: scaleY(.65) translate(0, 15px) rotate(-45deg);
			/*border-bottom-left-radius: 5px;*/
			border-top-right-radius: 100%;
			z-index: 2;
			transition: opacity .1s .2s;
			border: 1.5px solid black;
			border-top: none;
			border-right: none;
			box-sizing: border-box;
		}

	span.definition:hover>span.note{
		display: block;
	}

/*Please make it better*/
input.error{
	color: red;
}
input.error+span{
	color: red;
}


.infiniteLoading{
	background: #EEE;
	padding: 50px 20px;
	text-align: center;
	font-size: 30px;
	font-weight: bold;
}
	.infiniteLoading::before{
		content: "⋯";
		font-size: 30px;
		animation: bounce 1s ease-in-out infinite alternate;
	}
	@keyframes bounce { 0% { opacity: .8; } 100% { opacity: .3; } }






body:has(#app>#commentszone){
	overflow: hidden;
}

#app>#commentszone{
	position: fixed;
	top: 50px;
	left: 0;
	right: 0;
	bottom: 0;

	z-index: 100;
}

	#app>#commentszone::before{
		content: "";
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;

		background: #000000;
		background: rgba(0,0,0,0.3);
		opacity: 0;
		transition: opacity .4s;
	}

	#app>#commentszone>#commentsbox{
		position: fixed;
		top: 50px;
		right: 0;
		width: 40vw;
		max-width: 450px;
		min-width: 320px;
		background: #FFFFFF;
		border-right: 0;
		bottom: 0;

		transform: translateX(100%);
		transition: transform .4s;
	}
		#app>#commentszone>#commentsbox>#comments{
			width: 100%;
			height: 100%;
			overflow: auto;
			position: relative;
			box-sizing: border-box;
			border-left: 1px solid var(--accentColor);
		}

		#app>#commentszone>#commentsbox>#comments div.icon-close{
			position: absolute;
			top: 33px;
			right: 20px;
			font-size: 0;
			cursor: pointer;
		}

			#app>#commentszone>#commentsbox>#comments div.icon-close::before{
				display: block;
				color: var(--accentColor);
				font-size: 15px;
				padding: 8px;
				border-radius: 100%;
			}

		#app>#commentszone>#commentsbox>#comments div.icon-close:hover{

		}

			#app>#commentszone>#commentsbox>#comments div.icon-close:hover::before{
				background: var(--accentColor);
				color: var(--bgColor);
			}

#app>#commentszone.visible{

}

	#app>#commentszone.visible::before{
		opacity: 1;
		transition: opacity .4s;
	}

	#app>#commentszone.visible>#commentsbox{
		transform: translateX(0);
		transition: transform .4s;
	}

#comments{
	padding: 25px;

	overflow: auto;

	--accentColor: #555555;
	--bgColor: #EEEEEE;

	background: var(--bgColor);

	max-width: 450px;
	margin: 0 auto;
	border: 1px solid var(--accentColor);
	border-top: 0;
	border-bottom: 0;

	font-family: soleil, sans-serif;
}

#comments.loading{
	pointer-events: none;
	opacity: .8;
}

	#comments h2,
	#comments a{
		color: var(--accentColor);
	}

	#comments h2{
		border-top: 3px solid var(--accentColor);
		margin: 0;
		padding: 0;

		font-size: var(--fontSizeTitle);
		margin-bottom: 20px;
	}

	#comments button{
		background: var(--accentColor);
		color: var(--accentForeground);
	}

	#comments form{

	}

	#comments>div>ul{
		margin: 40px 0 0 0;
		padding: 0;
		list-style: none;
	}

		#comments>div>ul>li{
			border-top: 1px solid var(--accentColor);
			padding: 20px 0;
			position: relative;
		}
		#comments>div>ul>li:first-child{
			border-top: none;
		}

			#comments>div>ul>li>div.name{
				color: var(--accentColor);
				text-transform: uppercase;
				font-weight: bold;
				font-size: var(--fontSizeSmall);
				line-height: 1em;
			}

			#comments>div>ul>li>div.date{
				color: var(--accentColor);
				font-size: var(--fontSizeMini);
				text-transform: uppercase;
				line-height: 1em;
				margin-top: 7px;
			}

			#comments>div>ul>li>div.message{
				margin: 1em 0;
			}

			#comments>div>ul>li>div.likes{
				color: var(--accentColor);
			}

				#comments>div>ul>li>div.likes .likeButton>div.icon{
					font-size: 20px;
				}

			#comments>div>ul>li>div.message{

			}

			#comments #commentForm{
				border: 2px solid var(--accentColor);
				border-radius: 5px;
				padding: 10px;

				max-height: 50px;
				transition: max-height .4s;
				overflow: hidden;
			}
			#comments #commentForm.login{
				max-height: none;
			}

				#comments #commentForm>label{
					display:block;
/*					padding: 10px;*/
					font-family: soleil, sans-serif;
					font-size: 15px;
					line-height: 1.2em;
					color: var(--accentColor);

					margin: -10px;
					padding: 10px;

					cursor: pointer;
				}

				#comments #commentForm>div.form{
					display:none;
					flex-wrap: wrap;
					justify-content: flex-end;
					justify-content: end;
				}
				#comments #commentForm>div.form:first-child{
					display: block;
				}

					#comments #commentForm>div.form>textarea{
						margin: -10px -10px 10px -10px;
						padding: 10px;
						font-family: soleil, sans-serif;
						font-size: 15px;
						border:none;
						background:transparent;
						line-height: 1.2em;
						width: 100%;
						height: 120px;
						color: var(--accentColor);
						resize: none;
					}
					#comments #commentForm>div.form>textarea::placeholder{
						color: var(--accentColor);
					}
					#comments #commentForm>div.form>textarea::-ms-input-placeholder{
						color: var(--accentColor);
					}
					#comments #commentForm>div.form>textarea:focus{
						outline:0;
					}


					#comments #commentForm>div.form>.btn,
					#comments #commentForm>div.form>button{
						background-color: transparent;
						border-color: var(--accentColor);
						color: var(--accentColor);
						margin: 0 10px 0 0;
						line-height: 30px;
						padding: 0 15px;
						cursor: pointer;
					}
					#comments #commentForm>div.form>.btn.inv,
					#comments #commentForm>div.form>button.inv{
						background-color: var(--accentColor);
						color: var(--accentForeground);
					}
					#comments #commentForm>div.form>.btn:last-child,
					#comments #commentForm>div.form>button:last-child{
						margin: 0;
					}

					#comments #commentForm>div.form>.btn:hover,
					#comments #commentForm>div.form>button:hover{
						background-color: var(--accentColor);
						color: var(--accentForeground);
					}
/*					#comments #commentForm>div.form>.btn.inv:hover,
					#comments #commentForm>div.form>button.inv:hover{
						background-color: var(--accentColor);
						color: var(--accentForeground);
					}*/

					#comments #commentForm>div.form p{
						display:block;
						margin: 0 0 20px 0;
						width: 100%;
					}

			#comments #commentForm.active,
			#comments #commentForm:focus-within{
				max-height: 175px;
			}

				#comments #commentForm.active>label,
				#comments #commentForm:focus-within>label{
					display:none;
				}

				#comments #commentForm.active>div.form,
				#comments #commentForm:focus-within>div.form{
					display:flex;
				}

			#comments>div>ul>li>div.more{
				position: absolute;
				top: 10px;
				right: 0px;
				width: 30px;
				height: 30px;
/*				background: fuchsia;*/

				margin: 0;
				padding: 0;				
			}

				#comments>div>ul>li>div.more::before{
					display: block;
					position: absolute;
					top: 0;
					left: 0;

					content: "\e923";
					font-size: 5px;
					font-family: 'icomoon' !important;
					color: var(--accentColor);
					line-height: 30px;
					width: 30px;
					text-align: center;
				}

			#comments>div>ul>li>div.more>ul{
				position: absolute;
				top: 21px;
				right: 0;

				display: block;
				margin: 0;
				padding: 0;
				list-style: none;

				border: 2px solid var(--accentColor);

				transform: translateY(-10px) scale(.2); 
				transform-origin: 100% 0;
				opacity: 0;
				pointer-events: none;

				transition: opacity .6s, transform .5s;

/*				display: none;*/
				border-radius: 5px;
			}

				#comments>div>ul>li>div.more>ul>li{
					background: #FFFFFF;
					color: var(--accentColor);
					box-sizing: border-box;
					white-space: nowrap;
/*					font-size: var(--fontSizeSmall);*/
					font-size: var(--fontSizeMini);

					border-top: 2px solid var(--accentColor);

					cursor: pointer;
				}
				#comments>div>ul>li>div.more>ul>li:first-child{
					border-top:none;
					border-top-left-radius: 5px;
					border-top-right-radius: 5px;
				}
				#comments>div>ul>li>div.more>ul>li:last-child{
					border-bottom-left-radius: 5px;
					border-bottom-right-radius: 5px;
				}

					#comments>div>ul>li>div.more>ul>li>a{
						display: block;
						padding: 5px;
						text-decoration: none;
					}

				#comments>div>ul>li>div.more>ul>li:hover{
					
				}

					#comments>div>ul>li>div.more>ul>li:hover>a{
						background: var(--accentColor);
						color: var(--accentForeground);
					}

			#comments>div>ul>li>ul:empty{
				display: none;
			}

			#comments>div>ul>li>div.more:hover{

			}

				#comments>div>ul>li>div.more:hover::before{
/*					background: var(--accentColor);*/
/*					color: var(--accentForeground);*/
				}

				#comments>div>ul>li>div.more:hover>ul{
/*					display: block;*/

					transform: translateY(0) scale(1);
					opacity: 1;

					transition: opacity .3s, transform .3s;
					animation: pevents .3s forwards;
				}

@keyframes pevents {
  99% {
    pointer-events: none;
  }
  100% {
    pointer-events: auto;
  }
}

main>#comments{
	max-width: none;
}

@media screen and (min-width: 600px){
	main>#comments{
		display: flex;
		justify-content: center;
	}

		main>#comments>div{
			flex: 0 0 50%;
			max-width: ;
			padding-right: 12.5px;
			max-width: 450px;
		}
		main>#comments>div+div{
			padding-right: 0;
			padding-left: 12.5px;
		}

			main>#comments #commentForm{
				max-height: 175px;
			}

				main>#comments #commentForm>label,
				main>#comments #commentForm>div.form .cancel{
					display: none;
				}
				main>#comments #commentForm>div.form{
					display: flex;
				}

			main>#comments ul{
				margin-top: 0;
			}
			main>#comments ul>li:first-child{
				padding-top: 0;
			}
}




#app>main.p_mailchimp>section.size_special{
	align-items: start;
	height: auto;
	--maxWidth: var(--largeWidth);
}

	#app>main.p_mailchimp>section.size_special>div{
		margin:auto;
	}

		#app>main.p_mailchimp>section.size_special ul.checkboxList.v2>li{
			flex: 1 1 30%;
			flex: 1 1 calc(33.3% - 10px);
		}




.processing{
	pointer-events: none;
	opacity: .5;
}












#cookie{
	position: fixed;
	bottom: 5px;
	left: 5px;
	z-index: 999;

	font-size: 14px;
	line-height: 1.3em;

	color: #000;
	background: #FFFFFF;
/*	border:1px solid #e8e8e9;*/
	border-radius: 25px;

	background: rgba(245,245,245,.9);
	backdrop-filter: saturate(1.8) blur(20px);
	-webkit-backdrop-filter: saturate(1.8) blur(20px);

	padding: 40px;
	max-height: calc(100vh - 10px);

	width: calc(var(--vw100) - 10px);
	max-width: 600px;
	box-sizing: border-box;
	font-size: inherit;
	overflow: auto;
}

	#cookie>p{
		display: block;

		font-family: utopia-std-display, serif;
		font-size: 19px;
		line-height: 1.2em;

		margin: 0;
		padding: 0;
	}

	#cookie a{
		text-decoration: underline;
		color: inherit;
	}

	#cookie>ul{
		display: none;
		margin-top: 20px;
	}

		#cookie>ul.visible{
			display: block;
		}

		#cookie>ul.checkboxList.v2>li{
			width: 100%;
			flex: 1 1 100%;
			max-width: 100%;
		}

			#cookie>ul.checkboxList.v2>li>label{
				width: 100%;
			}

	#cookie>div{
		display: flex;
		margin-top: 20px;
		gap: 10px;

		justify-content: space-between;
		align-items: center;
		flex-wrap: wrap;
		white-space: nowrap;
	}

		#cookie>div>div{
			display: flex;
			gap: 0 10px;

			align-items: center;
			flex-wrap: wrap;
		}

		#cookie>div button{
			margin: 0;
			cursor: pointer;
		}

@media screen and (max-width:510px){
	#cookie{
		padding: 25px;
	}
}











































































body:has(#app>#commentszone){
	overflow: hidden;
}

#app>#commentszone{
	position: fixed;
	top: 50px;
	left: 0;
	right: 0;
	bottom: 0;

	z-index: 100;
}

	#app>#commentszone::before{
		content: "";
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;

		background: #000000;
		background: rgba(0,0,0,0.3);
		opacity: 0;
		transition: opacity .4s;
	}

	#app>#commentszone>#commentsbox{
		position: fixed;
		top: 50px;
		right: 0;
		width: 40vw;
		max-width: 450px;
		min-width: 320px;
		background: #FFFFFF;
		border-right: 0;
		bottom: 0;

		transform: translateX(100%);
		transition: transform .4s;
	}
		#app>#commentszone>#commentsbox>#comments{
			width: 100%;
			height: 100%;
			overflow: auto;
			position: relative;
			box-sizing: border-box;
			border-left: 1px solid var(--accentColor);
		}

		#app>#commentszone>#commentsbox>#comments div.icon-close{
			position: absolute;
			top: 33px;
			right: 20px;
			font-size: 0;
			cursor: pointer;
		}

			#app>#commentszone>#commentsbox>#comments div.icon-close::before{
				display: block;
				color: var(--accentColor);
				font-size: 15px;
				padding: 8px;
				border-radius: 100%;
			}

		#app>#commentszone>#commentsbox>#comments div.icon-close:hover{

		}

			#app>#commentszone>#commentsbox>#comments div.icon-close:hover::before{
				background: var(--accentColor);
				color: var(--bgColor);
			}

#app>#commentszone.visible{

}

	#app>#commentszone.visible::before{
		opacity: 1;
		transition: opacity .4s;
	}

	#app>#commentszone.visible>#commentsbox{
		transform: translateX(0);
		transition: transform .4s;
	}

#comments{
	padding: 25px;

	overflow: auto;

	--accentColor: #555555;
	--bgColor: #EEEEEE;

	background: var(--bgColor);

	max-width: 450px;
	margin: 0 auto;
	border: 1px solid var(--accentColor);
	border-top: 0;
	border-bottom: 0;

	font-family: soleil, sans-serif;
}

#comments.loading{
	pointer-events: none;
	opacity: .8;
}

	#comments h2,
	#comments a{
		color: var(--accentColor);
	}

	#comments h2{
		border-top: 3px solid var(--accentColor);
		margin: 0;
		padding: 0;

		font-size: var(--fontSizeTitle);
		margin-bottom: 20px;
	}

	#comments button{
		background: var(--accentColor);
		color: var(--accentForeground);
	}

	#comments form{

	}

	#comments>div>ul{
		margin: 40px 0 0 0;
		padding: 0;
		list-style: none;
	}

		#comments>div>ul>li,
		#comments>div>ul>li>ul>li{
			border-top: 1px solid var(--accentColor);
			padding: 20px 0;
			position: relative;
		}
		#comments>div>ul>li:first-child,
		#comments>div>ul>li>ul>li:first-child,
		#comments>div>ul>li>ul>li.title+li{
			border-top: none;
		}

			#comments>div>ul li>div.name{
				color: var(--accentColor);
				text-transform: uppercase;
				font-weight: bold;
				font-size: var(--fontSizeSmall);
				line-height: 1em;
			}

				#comments>div>ul li>div.name>div.staff{
					display: inline-block;
					background: var(--accentColor);
					color: var(--accentForeground);
					font-size: .75em;
					padding: .25em .5em;
					border-radius: 5px;
					margin-left: .5em;

					position: relative;
					top: -.2em;
				}

			#comments>div>ul li>div.date{
				color: var(--accentColor);
				font-size: var(--fontSizeMini);
				text-transform: uppercase;
				line-height: 1em;
				margin-top: 7px;
			}

			#comments>div>ul li>div.message{
				margin: 1em 0;
			}

		#comments>div>ul li.starred{

		}

			#comments>div>ul li.starred>div.name{

			}

				#comments>div>ul li.starred>div.name::before{
					color: var(--accentColor);
					content: "\e922";
					font-family: 'icomoon' !important;
					font-size: 1em;
					display: inline-block;
					margin-right: .5em;
				}

			#comments>div>ul li.starred>div.message{
				position: relative;
			}

				#comments>div>ul li.starred>div.message::before{
					content: "";
					display: block;
					background: var(--accentColor);
					border-radius: 5px;

					position: absolute;
					top: -70px;
					left: -10px;
					right: -10px;
					bottom: -50px;

					opacity: .1;


				}

			#comments>div>ul li>div.likes{
				color: var(--accentColor);
			}

				#comments>div>ul li>div.likes .likeButton>div.icon{
					font-size: 20px;
				}

			#comments>div>ul li>div.notification{
				color: var(--accentColor);
				position: absolute;
				top: 110px;
				left: 50px;
				border-radius: 5px;
				padding: 0 .5em;
			}
			#comments>div>ul li:first-child>div.notification{
				top: 115px;
			}
			#comments>div>ul li:last-child>div.notification{

			}

				#comments>div>ul ul li>div.notification{
					top: 110px;
				}

				#comments>div>ul ul li:first-child>div.notification{
					top: 90px;
				}

				#comments>div>ul ul li:last-child>div.notification{
					
				}


			#comments>div>ul li>div.notification:hover{
/*				background: #E8E8E9;*/
				cursor: pointer;
			}

			#comments>div>ul li.starred>div.notification:hover{
/*				background: #FFF;*/
			}

				#comments>div>ul li>div.notification .notificationButton>div.icon{
					font-size: 20px;
				}

				#comments>div>ul li>div.notification .notificationButton>div.txt{ 
					position: absolute;
					top: 50%;
					left: 35px;
					transform: translateY(-50%);
				}

			#comments>div>ul li>div.message{

			}

			#comments #commentForm{
				border: 2px solid var(--accentColor);
				border-radius: 5px;
				padding: 10px;

				max-height: 50px;
				transition: max-height .4s;
				overflow: hidden;
			}
			#comments #commentForm.login{
				max-height: none;
			}

				#comments #commentForm>label{
					display:block;
/*					padding: 10px;*/
					font-family: soleil, sans-serif;
					font-size: 15px;
					line-height: 1.2em;
					color: var(--accentColor);

					margin: -10px;
					padding: 10px;

					cursor: pointer;
				}

				#comments #commentForm>div.form{
					display:none;
					flex-wrap: wrap;
					justify-content: flex-end;
					justify-content: end;

					position: relative;
				}
				#comments #commentForm>div.form:first-child{
					display: block;
				}

					#comments #commentForm>div.form>textarea{
						margin: -10px -10px 10px -10px;
						padding: 10px;
						font-family: soleil, sans-serif;
						font-size: 15px;
						border:none;
						background:transparent;
						line-height: 1.2em;
						width: 100%;
						height: 120px;
						color: var(--accentColor);
						resize: none;
					}
					#comments #commentForm>div.form>textarea::placeholder{
						color: var(--accentColor);
					}
					#comments #commentForm>div.form>textarea::-ms-input-placeholder{
						color: var(--accentColor);
					}
					#comments #commentForm>div.form>textarea:focus{
						outline:0;
					}


					#comments #commentForm>div.form>label.replyAs{
						position: absolute;
						bottom: 0;
						left: 0;
						margin: 0;
						padding: 0;
					}

						#comments #commentForm>div.form>label.replyAs>input{
							display: none;
						}

						#comments #commentForm>div.form>label.replyAs>span{
							color: var(--accentColor);
							white-space: nowrap;
							line-height: 1em;

							display: flex;
							gap: .5em;
						}

							#comments #commentForm>div.form>label.replyAs>span::before,
							#comments #commentForm>div.form>label.replyAs>span::after{
								content: "";
								display: block;
								width: 1em;
								height: 1em;
								border: 2px solid var(--accentColor);
								box-sizing: border-box;
							}

							#comments #commentForm>div.form>label.replyAs>span::before{
								margin-top: 1px;
							}

							#comments #commentForm>div.form>label.replyAs>span::after{
								position: absolute;
								top: 0;
								left: 0;
								/* background: var(--bgcolor); */
								opacity: 0;
								transform: scale(.25);
								transform-origin: 1px 8px;
								transition: opacity .3s, transform .3s;
								top: 1pxpx;
								left: 5px;
								border: none;
								color: var(--accentColor);
								content: "\e91e";
								font-family: 'icomoon' !important;
								font-size: 10px;
								line-height: 10px;
								width: 10px;
								text-align: center;
								text-indent: -.5em;
							}

						#comments #commentForm>div.form>label.replyAs:hover>input+span{
						}

							#comments #commentForm>div.form>label.replyAs:hover>input+span::after{
								opacity: .5;
								transform: scale(.75);
							}

						#comments #commentForm>div.form>label.replyAs>input:checked+span{
						}

							#comments #commentForm>div.form>label.replyAs>input:checked+span::before{
								border-color: #E8E8E9;
							}
							#comments #commentForm>div.form>label.replyAs>input:checked+span::after{
								opacity: 1;
								transform: scale(1);
							}

						#comments #commentForm>div.form>label.replyAs:hover>input:checked+span{
						}

							#comments #commentForm>div.form>label.replyAs:hover>input:checked+span::after{
								opacity: 1;
								transform: scale(.75);
							}

					#comments #commentForm>div.form>.btn,
					#comments #commentForm>div.form>button{
						background-color: transparent;
						border-color: var(--accentColor);
						color: var(--accentColor);
						margin: 0 10px 0 0;
						line-height: 30px;
						padding: 0 15px;
						cursor: pointer;
					}
					#comments #commentForm>div.form>.btn.inv,
					#comments #commentForm>div.form>button.inv{
						background-color: var(--accentColor);
						color: var(--accentForeground);
					}
					#comments #commentForm>div.form>.btn:last-child,
					#comments #commentForm>div.form>button:last-child{
						margin: 0;
					}

					#comments #commentForm>div.form>.btn:hover,
					#comments #commentForm>div.form>button:hover{
						background-color: var(--accentColor);
						color: var(--accentForeground);
					}
/*					#comments #commentForm>div.form>.btn.inv:hover,
					#comments #commentForm>div.form>button.inv:hover{
						background-color: var(--accentColor);
						color: var(--accentForeground);
					}*/

					#comments #commentForm>div.form p{
						display:block;
						margin: 0 0 20px 0;
						width: 100%;
					}

			#comments #commentForm.active,
			#comments #commentForm:focus-within{
				max-height: 175px;
			}

				#comments #commentForm.active>label,
				#comments #commentForm:focus-within>label{
					display:none;
				}

				#comments #commentForm.active>div.form,
				#comments #commentForm:focus-within>div.form{
					display:flex;
				}

			#comments>header{
				margin-top: 20px;
			}

				#comments>header>h2{
					font-size: 12px;
					text-transform: uppercase;
					border-top: 0;
					margin: 0;
					padding: 0;
				}

					#comments>header>ul.toggle{
						display: flex;
						border-color: var(--accentColor);

						border-width: 1px;
					}

						#comments>header>ul.toggle>li{
							flex: 1 1 auto;
							border-color: var(--accentColor);
						}

							#comments>header>ul.toggle>li>label{

							}

								#comments>header>ul.toggle>li>label>span{
									display: block;
									width: auto;
									border-color: var(--accentColor);
									line-height: 25px;
									border-left-width: 1px;
								}
								#comments>header>ul.toggle>li:first-child>label>span{
									border: 0;
									border-radius: 4px 0 0 4px;
								}
								#comments>header>ul.toggle>li:last-child>label>span{
									border-radius: 0 4px 4px 0;
								}
								#comments>header>ul.toggle>li>label>input:checked+span{
									background-color: var(--accentColor);
									color: var(--accentForeground);
									box-shadow: 0 0 0 1px var(--accentColor);
								}


			#comments>div>ul li>div.more{
				position: absolute;
				top: 10px;
				right: 0px;
				width: 30px;
				height: 30px;
/*				background: fuchsia;*/

				margin: 0;
				padding: 0;				
			}

				#comments>div>ul li>div.more::before{
					display: block;
					position: absolute;
					top: 0;
					left: 0;

					content: "\e923";
					font-size: 5px;
					font-family: 'icomoon' !important;
					color: var(--accentColor);
					line-height: 30px;
					width: 30px;
					text-align: center;
				}

			#comments>div>ul li>div.more>ul{
				position: absolute;
				top: 21px;
				right: 0;

				display: block;
				margin: 0;
				padding: 0;
				list-style: none;

				border: 2px solid var(--accentColor);

				transform: translateY(-10px) scale(.2); 
				transform-origin: 100% 0;
				opacity: 0;
				pointer-events: none;

				transition: opacity .6s, transform .5s;

/*				display: none;*/
				border-radius: 5px;
			}

				#comments>div>ul li>div.more>ul>li{
					background: #FFFFFF;
					color: var(--accentColor);
					box-sizing: border-box;
					white-space: nowrap;
/*					font-size: var(--fontSizeSmall);*/
					font-size: var(--fontSizeMini);

					border-top: 2px solid var(--accentColor);

					cursor: pointer;
				}
				#comments>div>ul li>div.more>ul>li:first-child{
					border-top:none;
					border-top-left-radius: 5px;
					border-top-right-radius: 5px;
				}
				#comments>div>ul li>div.more>ul>li:last-child{
					border-bottom-left-radius: 5px;
					border-bottom-right-radius: 5px;
				}

					#comments>div>ul li>div.more>ul>li>a{
						display: block;
						padding: 5px;
						text-decoration: none;
					}

				#comments>div>ul li>div.more>ul>li:hover{
					
				}

					#comments>div>ul li>div.more>ul>li:hover>a{
						background: var(--accentColor);
						color: var(--accentForeground);
					}

			#comments>div>ul>li>a.replyTop{
				display: inline-block;
				color: var(--accentColor);
				font-weight: bolder;
				font-size: 12px;
				text-transform: uppercase;
				padding: 0;
				margin-bottom: 1em;
				text-decoration: none;
				padding-bottom: 20px;
			}

			#comments>div>ul>li>ul{
				display: block;
				list-style: none;
				margin: 0;
				padding: 0;

				border-left: 2px solid var(--accentColor);
				padding-left: 1em;
			}

			#comments>div>ul>li>ul:empty{
				display: none;
			}

/*				#comments>div>ul>li>ul>li.title{
					color: var(--accentColor);
					font-weight: bolder;
					font-size: 12px;
					text-transform: uppercase;
					padding: 0;
					margin-bottom: 1em;
				}*/

				#comments>div>ul>li>ul>li:first-child{
					padding-top: 0;
				}

				#comments>div>ul>li>ul>li:last-child{
					padding-bottom: 0;
				}

			#comments>div>ul>li>a.reply{
				text-align: right;
			}

			#comments>div>ul li>div.more:hover{

			}

				#comments>div>ul li>div.more:hover::before{
/*					background: var(--accentColor);*/
/*					color: var(--accentForeground);*/
				}

				#comments>div>ul li>div.more:hover>ul{
/*					display: block;*/

					transform: translateY(0) scale(1);
					opacity: 1;

					transition: opacity .3s, transform .3s;
					animation: pevents .3s forwards;
				}

@keyframes pevents {
  99% {
    pointer-events: none;
  }
  100% {
    pointer-events: auto;
  }
}

main>#comments{
	max-width: none;
}

@media screen and (min-width: 600px){
	main>#comments{
		display: flex;
		justify-content: center;
	}

		main>#comments>div{
			flex: 0 0 50%;
			max-width: ;
			padding-right: 12.5px;
			max-width: 450px;
		}
		main>#comments>div+div{
			padding-right: 0;
			padding-left: 12.5px;
		}

			main>#comments #commentForm{
				max-height: 175px;
			}

				main>#comments #commentForm>label,
				main>#comments #commentForm>div.form .cancel{
					display: none;
				}
				main>#comments #commentForm>div.form{
					display: flex;
				}

			main>#comments ul{
				margin-top: 0;
			}
			main>#comments ul>li:first-child{
				padding-top: 0;
			}
}