/* abril-fatface-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Abril Fatface';
  font-style: normal;
  font-weight: 400;
  src: url('../font/abril/abril-fatface-v25-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


#cp_sidevertical_menu_top .top-menu a:not([data-depth="0"]) {
  display: block;
}
#cp_sidevertical_menu_top .top-menu a {
font-weight: 500;
line-height: 25px;
text-transform: capitalize;
white-space: initial;
width: auto;
padding: 6px 0;
text-align: left;
border-bottom: 1px solid #f0f0f0;
}
#header #sidevertical_menu {
	width: 100%;
	margin-inline-start:0;
	display: block;
}
#header #sidevertical_menu #top-menu.top-menu[data-depth="0"] {
	padding: 11px 20px 30px;
	margin: 0;
}
.header-top-main #sidevertical_menu .top-menu .navbar-toggler {
	display: inline-block;	
	padding: 0;
	background-color: #f2f2f2;
	border-radius: 50%;
}
.verticalmenu-side #cpnav1cmsblock .header-deal {
	float: none;
	text-align: center;
}

.mobile-menu {
	z-index: 2;
	position: relative;
	float: none;
	padding: 37px 0 0;
	cursor: pointer;
	margin-inline-end: 12px;
	display: inline-block;
	vertical-align: top;
}
.verticalmenu-side #_desktop_user_info {
	display: none;
}
.mobile-menu .material-icons.menu-open {
	font-size: 30px;
}
#cp_sidevertical_menu_top > #_desktop_top_menu .mobile > ul.top-menu > li:last-child a {
border: none;
}
.header-top #cp_sidevertical_menu_top .top-menu .navbar-toggler {
display: inline-block;
padding: 0;
}
#cp_sidevertical_menu_top .top-menu[data-depth="1"] li a {
	padding-inline-start: 12px;
	margin-inline-start: 10px;
}
#cp_sidevertical_menu_top .top-menu[data-depth="2"] li a {
padding-inline-start: 22px;
}
#cp_sidevertical_menu_top .top-menu[data-depth="3"] li a {
padding-inline-start: 27px;
}
#cp_sidevertical_menu_top .top-menu li span .material-icons {
font-size: 15px;
}
#left-column .header-top-main.bg_main.fixed #cp_sidevertical_menu_top{
margin:0 0 10px;
}
.topcolumntop .top-menu [data-depth="2"] li {
width: 100%;
}
.verticalmenu-side #cpheadercms1 .contact-link {
	color: #000;
}
#cp_sidevertical_menu_top .top-menu[data-depth="1"] li a::before, 
#cp_sidevertical_menu_top .top-menu[data-depth="2"] li a::before, 
#cp_sidevertical_menu_top .top-menu[data-depth="3"] li a::before {
	content: "";	
	position: absolute;
	left: 8px;
	top: 13px;	
    display: inline-block;
    height: 10px;
    width: 10px;
    -webkit-mask-image: url(../img/arrow-icon.svg);
    -webkit-mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-image: url(../img/arrow-icon.svg);
    mask-position: center;
    mask-repeat: no-repeat;
    background-color: #6b8499;
    mask-size: 6px;
    font-size: 6px;
    -webkit-mask-size: 6px;
    vertical-align: middle;
    margin-inline-end: 3px;
}
#cp_sidevertical_menu_top .top-menu[data-depth="2"] li a::before {
	left: 15px;
}
html body.active {
	overflow: hidden;
}

.header-top #cp_sidevertical_menu_top .top-menu .sub-menu {
box-shadow: none;
-moz-box-shadow: none;
-webkit-box-shadow: none;
z-index: inherit;
display: block;
position: static;
overflow: hidden;
margin-left: 0;
width: 100%;
min-width: 100%;
background-color: #fff;
border: 0;
padding: 0px;
}
#cp_sidevertical_menu_top .top-menu .pull-xs-right.hidden-sm-down .material-icons.right,
.vertical-side-top-text .head-wishlist .ap-total-wishlist, .vertical-side-top-text .head-compare .ap-total-compare {
display: none;
}
.vertical-side-top-text {
	float: left;
	width: 100%;
	background: #f2f2f2;
	text-align: center;
	padding: 14px 10px;
}
.vertical-side-top-text .head-wishlist,.vertical-side-top-text .head-compare,.vertical-side-top-text #_desktop_user_info-side{
	text-align: center;
	float: none;
	display: inline-block;
	vertical-align: top;
  	margin: 0;
}
.vertical-side-top-text .head-wishlist a, .vertical-side-top-text .head-compare a, .vertical-side-top-text #_desktop_user_info-s {
	background: none !important;
	-webkit-mask-image: none;
	font-size:var(--body-font-size) !important;
	height: auto;
	width: auto;
	text-align: center;
	float: none;
	display: inline-block;
	color: #000 !important;
	line-height: inherit;
	vertical-align: middle;
	margin: 0;
}
.vertical-side-top-text .head-wishlist {
	border-inline: 1px solid #d4d4d4;
	height: 16px;
	padding: 0 10px;
	margin: 0 10px;
	vertical-align: middle;
}
.vertical-side-top-text .head-wishlist a {
	vertical-align: top;
	line-height: 16px;
}
.verticalmenu-side #cpheadercms1{
	text-align: center;
	padding: 5px;
	display: inline-block;
}
.verticalmenu-side {
	float: left;
	width: 100%;
}
#cp_sidevertical_menu_top .verticalmenu-side .vertical_language {
	padding: 20px;
	border-block-start: 1px solid #e5e5e5;
	margin: 0;
}
.verticalmenu-side #cpnav1cmsblock {
	text-align: center;
	width: 100%;
	padding: 20px;
	border-block-start: 1px solid #e5e5e5;
	color: #303840;
}
.verticalmenu-side #verticalmenu_desktop_user_info a:hover {
	color: #303840;
}
.vertical_currency li, .vertical_language li {
	display: inline-block;
	vertical-align: top;
	margin: 3px;
}
.vertical_currency a.dropdown-item {
	padding: 2px 9px;
	border: 1px solid #e5e5e5;
	border-radius: 4px;
}
.vertical_language a.dropdown-item {
  padding: 0;
  text-transform: uppercase;
}
.vertical_language img {
  margin-inline-end: 6px;
}
#cp_sidevertical_menu_top #_desktop_currency_selector , #cp_sidevertical_menu_top #_desktop_language_selector {
display: none;
}
#cp_sidevertical_menu_top .dropdown-menu {
	display: block;
	float: left;
	width: 100%;
	position: relative;
	border: none;
	padding: 0;
	margin-block-start: 0;
	text-align: center;
}
.verticalmenu-side .vertical_language, .verticalmenu-side .vertical_currency {
	float: left;
	width: 100%;
	padding: 20px;
}
#cp_sidevertical_menu_top .link.hidden-lg-up {
display: block !important;
}
#verticalmenu_desktop_user_info {
	display: inline-block;
	vertical-align: top;
	text-align: center;
	margin: 0;
}
@keyframes catAnim{
0% { opacity: 0; }
100% { opacity: 1; }
}
@media(max-width: 1200px){
  #cp_sidevertical_menu_top .top-menu .sub-menu ul[data-depth="1"] > li{
      min-width: 180px;
  }
}
#cp_sidevertical_menu_top .top-menu .popover {
  max-width: inherit;
}
.top-menu a.dropdown-item.dropdown-submenu[data-depth="1"] {
	display: block;
	font-weight: 500;
	min-width: 205px;	
}
#cp_sidevertical_menu_top .top-menu a:hover,
#cp_sidevertical_menu_top .top-menu .sub-menu a:hover,
#cp_sidevertical_menu_top .top-menu > li:hover > a {
  text-decoration: none;
}
#cp_sidevertical_menu_top .top-menu .menu-images-container img{ max-width: 100%; padding-left: 15px; }
#cp_sidevertical_menu_top .top-menu .sub-menu {
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  z-index: inherit;
  display: block;
  position: relative;
  overflow: hidden;
  margin-left: 0;
  width: 100%;
  min-width: 100%;
  background-color: #fff;
  border: 0;
  padding: 0;
  top: 0 !important;
}
.vertical-side-top-text #_desktop_user_info-side a {
	color: #303840;
	text-transform: capitalize;
}
#cp_sidevertical_menu_top {
  background-color: #fff;
  box-shadow: 0 8px 15px 0 rgba(0,0,0,0.1);
  height: 100%;
  left: 0;
  margin-left: 0;
  overflow: auto;
  padding: 0;
  position: fixed;
  top: 0;
  opacity: 0;
  transition: transform 0.3s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.4s cubic-bezier(0.77, 0.2, 0.05, 1);
  transform: translateX(-102%);
  width: 327px;
  z-index: 9999;
}
#cp_sidevertical_menu_top.slide {
  transform: translateX(0rem);
  opacity: 1;
}
#left-column #cp_sidevertical_menu_top #_desktop_top_menu { padding: 0;}
#left-column #cp_sidevertical_menu_top {
  border-radius: 5px;
  position: relative;
  width: 100%;
}
#index #cp_sidevertical_menu_top #top-menu {
  position: relative;
  display: block !important;
}
#left-column #cp_sidevertical_menu_top #top-menu { display: block; }
#left-column #cp_sidevertical_menu_top #top-menu {
  background-color: #ffffff;
  border: 1px solid #e5e5e5;
  margin-top: 15px;
}
#cp_sidevertical_menu_top .top-menu > li:hover > .sub-menu.second_depth,
#cp_sidevertical_menu_top .top-menu li:hover .sub-menu.second_depth {
  display: none !important;
}
#cp_sidevertical_menu_top .top-menu > li .sub-menu .top-menu li:hover > .sub-menu.second_depth {
  display: block !important;
}
#cp_sidevertical_menu_top .block-title { cursor: pointer; }
#cp_sidevertical_menu_top #top-menu { float: left; width: 100%; }
.header-top #cp_sidevertical_menu_top #top-menu.top-menu[data-depth="0"] {
  padding: 11px 20px 21px;
}
#cp_sidevertical_menu_top #top-menu li {
  position: relative;
  margin: 0;
  display: block;
}
#cp_sidevertical_menu_top .material-icons.menu-close { float: right; }
#cp_sidevertical_menu_top .menu-title {
  cursor: pointer;
  display: block;
  float: left;
  font-weight: 500;
  letter-spacing: 0.3px;
  line-height: 25px;
  overflow: hidden;
  padding: 7px 15px;
  position: relative;
  text-transform: capitalize;
  width: 100%;
  color: #303840;
}
#cp_sidevertical_menu_top .more-view {
  color: #303840;
  display: inline-block;
  padding: 10.9px 28px 10.9px 30px;
  width: 100%;
  font-weight: 500;
  margin: 0 15px;
}
#cp_sidevertical_menu_top li:hover .more-view { color: #9bbab1; }
.more-wrap { color: #303840; cursor: pointer; font-weight: 500; }
#cp_sidevertical_menu_top .more-wrap .material-icons {
  float: right;
  right: 0;
  font-size: 16px;
  line-height: 25px;
}
@media(max-width: 1449px){
  #header #cp_sidevertical_menu_top #top-menu { display: block; }
  #cp_sidevertical_menu_top .top-menu .sub-menu { top: 10px !important; }
}
@media(max-width: 991px){
  .mobile-menu { padding: 5px 0; float: left; margin: 0; }
}
@media (max-width: 767px){
  #cp_sidevertical_menu_top { width: 300px; }
}
@media (max-width: 480px){
  .mobile-menu { padding: 0; }
}

/* =================================================================
   BELLE ÉPOQUE — Personnalisation menu latéral
   ================================================================= */


/* ---- Liens depth 0 — police + style ---- */
#cp_sidevertical_menu_top #top-menu.top-menu[data-depth="0"] > li > a {
  font-family: 'Abril Fatface', serif !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  letter-spacing: .04em !important;
  text-transform: none !important;
  color: #303840 !important;
  padding: 10px 0 !important;
  border-bottom: 1px solid #f0f0f0 !important;
  transition: color .2s, opacity .2s;
  -webkit-font-smoothing: antialiased;
  display: flex !important;
  align-items: center;
  justify-content: space-between;
}

/* ---- Hover depth 0 ---- */
#cp_sidevertical_menu_top #top-menu.top-menu[data-depth="0"] > li > a:hover {
  opacity: .72;
  text-decoration: none !important;
}

/* ---- Couleurs par catégorie ---- */
#cp_sidevertical_menu_top #cpcategory-2  > a { color: #2DB2AC !important; }
#cp_sidevertical_menu_top #cpcategory-21 > a { color: #EF9F27 !important; }
#cp_sidevertical_menu_top #cpcategory-23 > a { color: #F0997B !important; }
#cp_sidevertical_menu_top #cpcategory-24 > a { color: #5DCAA5 !important; }
#cp_sidevertical_menu_top #cpcategory-22 > a { color: #AFA9EC !important; }
#cp_sidevertical_menu_top #cpcategory-26 > a { color: #888780 !important; }
#cp_sidevertical_menu_top #cpcategory-27 > a { color: #888780 !important; }

/* ---- Masquer contenu adulte dans le menu ---- */
#cp_sidevertical_menu_top #cpcategory-28 { display: none !important; }

/* ---- Couleurs liens CMS ---- */
#cp_sidevertical_menu_top #cms-page-4 > a,
#cp_sidevertical_menu_top #cms-page-2 > a,
#cp_sidevertical_menu_top #cms-page-7 > a { color: #303840 !important; }
#cp_sidevertical_menu_top .link > a { color: #303840 !important; }

/* ---- Item actif ---- */
#cp_sidevertical_menu_top .top-menu > li.current > a {
  font-style: italic !important;
}

/* ---- Séparateur décoratif ---- */
#cp_sidevertical_menu_top #top-menu.top-menu[data-depth="0"] > li > a::after {
  content: '✦';
  font-size: 9px;
  color: #ccc;
  margin-left: 8px;
  flex-shrink: 0;
  font-style: normal;
  font-family: sans-serif !important;
}
#cp_sidevertical_menu_top #top-menu.top-menu[data-depth="0"] > li:last-child > a::after {
  content: '';
}

/* ---- Accordéon : icones +/- ---- */
#cp_sidevertical_menu_top .top-menu .collapse-icons .material-icons.add,
#cp_sidevertical_menu_top .top-menu .collapse-icons .material-icons.remove,
#cp_sidevertical_menu_top .top-menu a.has-children .material-icons.add,
#cp_sidevertical_menu_top .top-menu a.has-children .material-icons.remove {
  font-size: 16px;
  line-height: 1;
  color: #aaa;
  transition: color .2s;
}

/* --- État fermé : masquer remove --- */
#cp_sidevertical_menu_top .top-menu .collapse-icons .material-icons.remove,
#cp_sidevertical_menu_top .top-menu a.has-children .material-icons.remove {
  display: none;
}
#cp_sidevertical_menu_top .top-menu .collapse-icons .material-icons.add,
#cp_sidevertical_menu_top .top-menu a.has-children .material-icons.add {
  display: block;
}

/* --- État ouvert : afficher remove, masquer add --- */
#cp_sidevertical_menu_top .top-menu .collapse-icons[aria-expanded="true"] .material-icons.remove,
#cp_sidevertical_menu_top .top-menu a.has-children[aria-expanded="true"] .material-icons.remove {
  display: block !important;
  color: #2DB2AC;
}
#cp_sidevertical_menu_top .top-menu .collapse-icons[aria-expanded="true"] .material-icons.add,
#cp_sidevertical_menu_top .top-menu a.has-children[aria-expanded="true"] .material-icons.add {
  display: none !important;
}

/* ---- Lien avec enfants cliquable sur toute la largeur ---- */
#cp_sidevertical_menu_top .top-menu a.has-children {
  cursor: pointer;
}
#cp_sidevertical_menu_top .top-menu a.has-children .pull-xs-right {
  pointer-events: none;
  float: right;
}

/* ---- Sous-menus collapse ---- */
#cp_sidevertical_menu_top .top-menu .sub-menu.collapse {
  display: none !important;
}
#cp_sidevertical_menu_top .top-menu .sub-menu.collapse.in,
#cp_sidevertical_menu_top .top-menu .sub-menu.collapse.show {
  display: block !important;
  animation: slideDown .22s ease;
}
@keyframes slideDown {
  from { opacity: 0; transform: translateY(-6px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ---- Liens sous-catégories depth 1 ---- */
#cp_sidevertical_menu_top .top-menu[data-depth="1"] > li > a {
  font-family: 'Abril Fatface', serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  color: #555 !important;
  padding: 8px 0 8px 20px !important;
  border-bottom: 1px dashed #f0f0f0 !important;
  letter-spacing: .03em !important;
  text-transform: none !important;
}
#cp_sidevertical_menu_top .top-menu[data-depth="1"] > li > a:hover {
  color: #2DB2AC !important;
  text-decoration: none !important;
}
