@import url('https://fonts.googleapis.com/css2?family=Gelasio:ital,wght@0,600;1,600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Source+Sans+3:ital,wght@0,200..900;1,200..900&display=swap');


/*=============================================
=            TEMP            =
=============================================*/
#header_user,
#categories_block_left {
	display: none !important;
}


/*=============================================
=            RESPONSIVE            =
=============================================*/
/* MD */
@media (max-width: 1199px) { 

}
/* SM */
@media (max-width: 991px) {

}
/* XS */
@media (max-width: 767px) {

}


/*=============================================
=            Général            =
=============================================*/

:root {
	--font-title: "Gelasio", serif;
	--font-main: "Source Sans 3", sans-serif;
	--font-icons: "Font Awesome 5 Free";

	--color-primary-10:  #3a1d05;
	--color-primary-20:  #743a0a;
	--color-primary-30:  #b05615;
	--color-primary-40:  #f58a20;
	--color-primary-50:  #f79f46;
	--color-primary-60:  #f9b46c;
	--color-primary-70:  #fbc992;
	--color-primary-80:  #fdddb8;
	--color-primary-90:  #feedd9;
	--color-primary-95:  #fff6ec;
	--color-primary-99:  #fffdfa;

	--color-gradient-french-flag: linear-gradient(to right, #002654 33.33%, white 33.33% 66.66%, #ce1126 66.66%);

	--color-theme-accent: var(--color-primary-40);
	--color-theme-accent-dark: var(--color-primary-30);
	--color-theme-main-light: var(--color-primary-95);

	--size-container: 1170px;
	--size-gap-normal: 15px;
}

/* MD */
@media (max-width: 1199px) { 
	:root {
		--size-container: 940px;
	}
}
/* SM */
@media (max-width: 991px) {
	:root {
		--size-container: 750px;
	}
}
/* XS */
@media (max-width: 767px) {
	:root {
		--size-container: 100vw;
	}
}

html[lang] {
	background: white !important;
	background-image: none !important;
}
body {
	
}
body #page,
p,
li,
#page :is(h1,h2,h3,h4,h5) {
	font-family: var(--font-main);
	font-optical-sizing: auto;
}
#page h1 {
	/* font-family: var(--font-title); */
	/* font-weight: 600; */
}
body #page {
	color: #444;
	font-size: 15px;
}
a, a:active, a:visited {
	color: #222;
}
a:hover {
	text-decoration: underline;
}

.button.button-small {
	font-family: var(--font-main);
}
.page-heading {
	font-size: 1.35em;
	font-weight: 700;
}

/*----------  Adminbar  ----------*/
div#adminbar div.container_adminbar, div#adminbar div.container_adminbar a {
	font-family: var(--font-main);
}


/*=============================================
=            Reinsurance Top            =
=============================================*/
.reinsuranceTop-container {
	background: #222;
	overflow: hidden;
	color: rgba(255,255,255,.8);
	font-size: .9em;
	
}
.reinsuranceTop-container .container {
	position: relative;
	height: 1.75em;
}
.reinsuranceTop ul {
	position: relative;
	margin: 0;
	padding: 0;
	list-style: none;
	height: 100%;
}

.reinsuranceTop li {
	position: absolute;
	left: 0;
	top: 2px;
	width: 100%;
	opacity: 0;
	transform: translateY(-100%);
	transition: transform 0.6s ease, opacity 0.6s ease;
	text-align: center;
}

/* Etat visible */
.reinsuranceTop li.is-active {
	opacity: 1;
	transform: translateY(0);
}

/* Sortie vers le bas */
.reinsuranceTop li.is-exit {
	opacity: 0;
	transform: translateY(100%);
}




/*=============================================
=            Header            =
=============================================*/
header {
	background: #ffffff;
	background: linear-gradient(90deg,rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 59%, rgba(15, 14, 12, 1) 60%, rgba(15, 14, 12, 1) 100%);
	box-sizing: border-box;
	padding-bottom: 0;
}
#mainHeader {
	display: flex;
}
#headerBackground {
	flex: 1;
	background: url('../img/header-bg.jpg') no-repeat right top;
	background-size: cover;
}
header .row #header_logo {
	padding: .5em 0;
	position: relative;
}
header .row #header_logo a { 
	position: relative;
	z-index: 2;
}
header .badgePrintedInFrance {
	position: absolute;
	width: 4.5em;
	height: auto;
	top: 5%;
	left: 95%;
	z-index: 2;
	transform: rotate(15deg);
}
/* MD */
@media (max-width: 1199px) { 
	header .row #header_logo {
		width: 20em;
	}
}
/* SM */
@media (max-width: 991px) {
	header .row #header_logo {
		width: 15em;
	}
	header .badgePrintedInFrance {
		width: 3.5em;
		left: 97%;
	}
}
/* XS */
@media (max-width: 767px) {
	header {
		background: white;
	}
	#mainHeader {
		justify-content: center;
	}
	#headerBackground {
		display: none;
	}
}

/*=============================================
=            Navbar            =
=============================================*/
#navbar {
	background: #333;
	color: white !important;
	height: 3em;
}
#navbar .container {
	display: flex;
	justify-content: space-between;
	height: 100%;
	font-size: 1.1em;
}
#navbar .container::before,
#navbar .container::after {
	display: none;
}
#navbar .container > *,
#navbar .container ul {
	display: flex;
	margin-bottom: 0;
	align-items: center;
}
#navbar .container ul.navbar-responsive { /*! TO REMOVE */
	display: none ;
}
#navbar .container > #navbarResponsiveToggleBtn {
	display: none;
}
#navbar .container > ul li {
	height: 100%;
	text-transform: uppercase;
	font-size: .9em;
	font-weight: 500;
}
#navbar .container ul a {
	color: white;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	padding: .5em 1em;
	position: relative;
	
}
#navbar .container > ul a::after {
	content: '';
	display: block;
	width: 100%;
	height: 4px;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%) scaleX(0);
	background: var(--color-primary-40);
	position: absolute;
	transition: .10s linear;
}
#navbar .container > ul a:hover::after {
	transform: translateX(-50%) scaleX(1);
}
#navbar .container > ul a:hover {
	text-decoration: none;
	/* background: rgba(255,255,255,.9); */
	/* color: rgba(0,0,0,.8); */
}
#header_menu {
	gap: 2em;
}
#header_menu i {
	font-size: 1em;
}
#header_menu a {
	display: flex;
	gap: .5em;
	padding: .5em ;
	transition: .1s ease-in-out;
}
#header_menu a:hover {
	text-decoration: none;
}
#header_menu #login {
	position: relative;
}
#header_menu #login > ul {
	position: absolute;
	display: none;
	top: 95%;
	background: white;
	z-index: 101;
	text-transform: none;
	width: 200px;
	padding: 1em 0;
	box-shadow: 0 5px 5px rgba(0,0,0,.4);
	border-radius: 3px;
	font-size: 1.1em;
	outline: 200em solid transparent;
	animation: headerMenuLoginOverlay linear 1s forwards;
	font-size: .85em;
}
@keyframes headerMenuLoginOverlay {
	0% {
		outline-color: rgba(0,0,0,0);
	}
	100% {
		outline-color: rgba(0,0,0,.3);
	}
}
#header_menu #login > ul::after {
	content: "";
	position: absolute;
	bottom: 100%;
	left: 20px;
	display: block;
	width: 0;
	height: 0;

	--size-headerMenuLogin-triangle: 4px;

	border-left: var(--size-headerMenuLogin-triangle) solid transparent;
	border-right: var(--size-headerMenuLogin-triangle) solid transparent;
	border-bottom: var(--size-headerMenuLogin-triangle) solid #ffffff;
}
#header_menu #login:hover > ul {
	display: block;	
}
#header_menu #login > ul > li a {
	color: rgba(0,0,0,.8);
	padding: .25em 1em;
	justify-content: flex-start;
}
#header_menu #login > ul > li a:hover {
	text-decoration: underline;
}

#header_menu .customerName {
	font-size: .85em;
	display: flex;
	align-items: center;
	gap: .5em;
}
#header_menu .customerName a.account {
	padding: 0;
}
#header_menu .customerName a.account:hover {
	text-decoration: underline;
}

#header_menu #quote.hasQuote a {
	position: relative;
}

#header_menu #quote.hasQuote a::after {
	content: '';
	display: block;
	width: 8px;
	height: 8px;
	position: absolute;
	top: .15em;
	right: .15em;
	border-radius: 50%;
	background: var(--color-primary-40);
}
#header_menu .cartBadge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--color-primary-40);
	color: white;
	font-size: .75em;
	width: 1.5em;
	height: 1.5em;
	border-radius: 50%;
	font-weight: 700;
}
/* MD */
@media (max-width: 1199px) { 
	
}
/* SM */
@media (max-width: 991px) {
	
	#navbar .container > ul {
		display: none;
	}
	#navbar .container > #navbarResponsiveToggleBtn {
		display: flex;
		font-size: 1.2em;
	}
	#header_menu ul {
		gap: 1em;
	}
	#header_menu a {
		transition: none;
	}
	#header_menu i {
		font-size: 1.2em;
	}
	#header_menu .customerName {
		display: none;
	}
	
	
	/* menu responsive */
	body.activeResponsiveMenu {
		overflow: hidden;
	}
	.activeResponsiveMenu #navbar .container {
		position: fixed;
		z-index: 99;
		top: 0;
		left: 0;
		width: 100vw;
		height: 100vh;
		background: white;
		color: rgba(0,0,0,.8);
		display: block;
		max-width: unset;
		padding-left: 0;
		padding-right: 0;
	}

	.activeResponsiveMenu #navbar .container > #navbarResponsiveToggleBtn {
		justify-content: flex-end;
		padding: 1em;
		border-bottom: 1px solid  rgba(0,0,0,.1);
	}
	.activeResponsiveMenu #navbar .container > #navbarResponsiveToggleBtn > i {
		font-size: 1.5em;
	}
	.activeResponsiveMenu #navbar .container > #navbarResponsiveToggleBtn > i::before {
		content: "\f00d";
	}

	.activeResponsiveMenu #navbar .container > ul {
		display: block;
		font-size: 1.2em;
		border-bottom: 1px solid rgba(0,0,0,.1);;
	}
	#navbar .container > ul li {
		height: auto;	
	}
	#navbar .container > ul li a {
		padding: 1em;
		justify-content: space-between;
	}
	#navbar .container > ul li a::after {
		content: '\f054';
		font-family: var(--font-icons);
		font-weight: 900;
		font-size: 1em;
		display: block;
		width: auto;
		position: relative;
		transform: none !important;
		left: unset;
		bottom: unset;
		height: auto;
		background: none;
		color: rgba(0,0,0,.3);
	}
	#navbar .container > .navbar-standard a {
		color: rgba(0,0,0,.8);
	}

	.activeResponsiveMenu #header_menu {
		margin: 1em 1em 0em 1em;
	}
	.activeResponsiveMenu #navbar .container ul a {
		color: rgba(0,0,0,.8);
	}
	.activeResponsiveMenu #header_menu ul.main_menu {
		flex-wrap: wrap;
	}
	.activeResponsiveMenu #header_menu ul.main_menu .customerName {
		width: 100%;
		font-size: 1.2em;
		transition: none;
		display: flex;
	}
	.activeResponsiveMenu #header_menu #login > a {
		display: none;
	}
	.activeResponsiveMenu #header_menu #login .myaccount_lnk_list {
		display: block;
		position: relative;
		top: unset;
		z-index: unset;
		width: auto;
		box-shadow: unset;
		border-radius: unset;
		outline: unset;
		font-size: .95em;
	}
	.activeResponsiveMenu #header_menu #login .myaccount_lnk_list li a {
		padding-left: 0;
	}
	.activeResponsiveMenu #header_menu :is(#quote,#cart) {
		display: none !important;
	}
	
}


/*=============================================
=            Center Column            =
=============================================*/
#center_column {
	background: white;
	position: relative;
	min-height: 500px;
	padding-bottom: 3em;
}
#center_column > * {
	padding-left: 15px;
	padding-right: 15px;
}
#columns .rte img {
	max-width: 100%;
	height: auto;
}

/*=============================================
=            Breadcrumb            =
=============================================*/
#center_column .breadcrumb:nth-child(2) {
	display: block;
}
#center_column > .breadcrumb {
	margin-left: 15px;
}
#center_column .breadcrumb {
	font-size: .85em;
	font-weight: 500;
}
.breadcrumb,
.breadcrumb a {
	border: none;
	background: none;
	color: #555;
}
.breadcrumb a {
	padding-right: 5px;
}
.breadcrumb a::before {
	display: none;
}
.breadcrumb a::after {
	background: none;
}
.breadcrumb a:hover {
	color: #333;
	text-decoration: underline;
}

ol.breadcrumb + div.pull-right {
	display: none;
}

/* SM */
@media (max-width: 991px) {
	.breadcrumb {
		padding: 0;
	}
}
/* XS */
@media (max-width: 767px) {
	#center_column .breadcrumb:nth-child(2) {
		display: none;
	}
}


/*=============================================
=            Accueil            =
=============================================*/
#index #center_column > div {
	padding-left: 0;
	padding-right: 0;
	font-size: 1.25em;
	line-height: 1.5em;
}
#index #center_column > div > .container::before,
#index #center_column > div > .container::after{
	display: none;
}
#index #center_column > div h3 {
	margin-top: 0;
}
#index #center_column > div .actions {
	display: flex;
	align-items: center;
	gap: 1em;
}
#index .homeBtn {
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--color-primary-40);
	color: white;
	text-decoration: none;
	padding: .75em 2em;
	border-radius: 3em;
	transition: .1s;
	font-weight: 700;
	font-size: .9em;
	text-align: center;
	line-height: 1em;
}
#index .homeBtn:hover {
	text-decoration: none;
	background: var(--color-primary-30);
}
#index .homeBtnNeutral {
	background: #333;
}
#index .homeBtnNeutral:hover {
	background: #222;
}
#index .homeBtnNeutralLight {
	background: #ccc;
	color: rgba(0,0,0,.8);
}

#index .homeBtnNeutralLight:hover {
	background: #aaa;
}
/* XS */
@media (max-width: 767px) {
	#index #center_column > div {
		font-size: 1em;
	}
	#index .homeBtn {
		font-size: .95em;
		padding: 0.5em 1.5em;
	}
}


/*----------  Hero  ----------*/
#homeHero {
	background: #292929;
	height: 25em;
	color: rgba(255,255,255,.8);
	overflow: hidden;
	position: relative;
}
#homeHero::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;

	opacity: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");
	background-repeat: repeat;

	mix-blend-mode: overlay;

	z-index: 2;
}
#homeHero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	display: block;
	width: 100%;
	height: 100%;
	background:
		radial-gradient(circle at 32% 45%, var(--color-primary-20), transparent 50%),
		radial-gradient(circle at 50% 50%, #2a2a2a 0%, #151515 80%);
	animation: homeHeroGlow 2s ease-in-out infinite alternate;
}
@keyframes homeHeroGlow{
	0%{
		transform: scale(1);
		opacity: .8;
	}
	100%{
		transform: scale(2);
		opacity: 1;
	}
}
#homeHero .container {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2em;
	align-items: center;
	height: 100%;
	position: relative;
	z-index: 3;
}
#homeHero .illustration {
	position: relative;
}
#homeHero .illustrationWrapper {
	position: absolute;
	top: 0;
	overflow: hidden;
	mask: url('../img/guitarPick.svg') no-repeat center;
	-webkit-mask: url('../img/guitarPick.svg') no-repeat center;

	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;

	-webkit-mask-position: center;
	mask-position: center;

	-webkit-mask-size: 70%;
	mask-size: 70%;
}
#homeHero .illustrationWrapper::before{
	content: "";
	position: absolute;
	inset: -40px;
	background: radial-gradient(circle, var(--color-primary-40), transparent 60%);
	filter: blur(20px);
	z-index: -1;
}
#homeHero .illustration img {
	width: 18em;
}

#homeHero .illustrationWrapper:nth-of-type(1) {
	left: 0;
	transform: translateY(-10em) rotate(-20deg);
	animation: homeHeroIllustration1 1.5s forwards;
}
@keyframes homeHeroIllustration1 {
	0% {
		transform: translateY(-15em) rotate(-22deg) scale(1.01);
		filter: drop-shadow(5px 5px 20px rgba(0,0,0,1));
	}
	100% {
		transform: translateY(-10em) rotate(-20deg) scale(1);
		filter: drop-shadow(2px 2px 2px rgba(0,0,0,1));
	}
}
#homeHero .illustrationWrapper:nth-of-type(2) {
	right: 0;
	transform: translateY(-8em) rotate(10deg);
	animation: homeHeroIllustration2 2s forwards;
}
@keyframes homeHeroIllustration2 {
	0% { transform:  translateY(-11em) rotate(12deg) scale(1.02); filter: drop-shadow(3px 3px 10px rgba(0,0,0,1)); }
	100% { transform:  translateY(-8em) rotate(10deg) scale(1); filter: drop-shadow(2px 2px 2px rgba(0,0,0,1)); }
}


#homeHero .illustrationWrapper::after{
	content: "";
	position: absolute;
	inset: -20%;
	pointer-events: none;

	background: linear-gradient(
		120deg,
		transparent 0%,
		rgba(255,255,255,0.00) 35%,
		rgba(184, 140, 140, 0.55) 50%,
		rgba(255,255,255,0.00) 65%,
		transparent 100%
	);

	transform: translate3d(-60%, 0, 0) rotate(10deg);
	opacity: 1;

	mix-blend-mode: screen;
	will-change: transform, opacity;
	
}
#homeHero .illustrationWrapper:nth-of-type(1)::after{
	animation: pickFlash 900ms ease-out .75s 1 forwards;
}
#homeHero .illustrationWrapper:nth-of-type(2)::after{
	animation: pickFlash 900ms ease-out 1.2s 1 forwards;
}
@keyframes pickFlash{
	0%{
		opacity: 0;
		transform: translate3d(-70%, 0, 0) rotate(10deg);
	}
	15%{
		opacity: 0.9;
	}
	100%{
		opacity: 0;
		transform: translate3d(70%, 0, 0) rotate(10deg);
	}
}


#homeHero h2 {
	margin-top: 0;
	margin-bottom: 0.10;
	font-size: 1.75em;
	font-weight: 700;
	color: white;
}
#homeHero .subTitle {
	font-size: 1.25em;
	font-weight: 700;
	margin-bottom: .5em;
	color: white;
}
#homeHero .description strong {
	color: white;
	font-weight: 600;
}
#homeHero .actions {
	margin-top: 1em;
}

/* MD */
@media (max-width: 1199px) { 
	#homeHero {
		height: 20em;
	}
	#homeHero .illustration img {
		width: 16em;
	}
	#homeHero .illustrationWrapper:nth-of-type(1) {
		top: 1em;
	}
	#homeHero .illustrationWrapper:nth-of-type(2) {
		top: .5em;
	}
	#homeHero h2 {
		font-size: 1.5em;
	}
	#homeHero .subTitle {
		font-size: 1.1em;
	}
}
/* SM */
@media (max-width: 991px) {
	#homeHero {
		height: 15em;
	}
	#homeHero .illustration img {
		width: 13em;
	}
	#homeHero .illustrationWrapper:nth-of-type(1) {
		top: 2.5em;
	}
	#homeHero .illustrationWrapper:nth-of-type(2) {
		top: 2em;
		right: -1em;
	}
	#homeHero h2 {
		font-size: 1.25em;
	}
	#homeHero .subTitle {
		font-size: 1em;
		font-weight: 400;;
	}
	#homeHero .description {
		display: none;
	}
}
/* XS */
@media (max-width: 767px) {
	#homeHero {
		height: 10em;
	}
	#homeHero .container {
		grid-template-columns: 2fr 3fr;
	}
	#homeHero .illustration img {
		width: 9em;
	}
	#homeHero .illustrationWrapper:nth-of-type(1) {
		top: 5em;
	}
	#homeHero .illustrationWrapper:nth-of-type(2) {
		top: 4em;
	}
	#homeHero h2 {
		margin-bottom: 0;
	}
	#homeHero .actions {
		margin-top: 0.5em;
	}
}
/* XS modifié */
@media (max-width: 520px) {
	#homeHero .illustrationWrapper:nth-of-type(1) {
		display: none;
	}
	#homeHero .illustrationWrapper:nth-of-type(2) {
		top: 3.5em;
	}
}


/*----------  Reinsurance  ----------*/
#homeReinsurance {
	background: linear-gradient(135deg, #1f1f1f, #151515);
	position: relative;
	padding: 1em 0;
	color: #fff;
	overflow: hidden;
	border-top: 2px solid rgba(255,255,255,.8);
}
#homeReinsurance {
	position: relative;
	z-index: 1;
}
#homeReinsurance ul {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 1em;
}
#homeReinsurance li {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
	padding: 1em;
	text-align: center;
	font-size: .75em;
	line-height: 1.35em;
	padding: 0em 5em;
	gap: .35em;
}
#homeReinsurance li .illustration {
	font-size: 2em;
	height: 1.25em;
	color: var(--color-primary-40);
	transform: scale(0);
	transition: .20s;
	transition-delay: calc(var(--list-item-key) * .25s);
}
#homeReinsurance ul.inView li .illustration {
	transform: scale(1);
}
#homeReinsurance li .illustration .oneIcon {
	width: 1.25em;
	height: 1.25em;
	font-size: .75em;
	font-weight: 700;
	border: 2px solid var(--color-primary-40);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1em;
}
#homeReinsurance li:not(:last-of-type) {
	border-right: 1px solid rgba(255,255,255,.2);
}
#homeReinsurance li .title {
	font-weight: 700;
	font-size: 1.25em;
}
#homeReinsurance li .description {
	color: rgba(255,255,255,.8);
}
/* MD */
@media (max-width: 1199px) { 
	#homeReinsurance li {
		padding-left: 1em;
		padding-right: 1em;
	}
}
/* SM */
@media (max-width: 991px) {
	#homeReinsurance {
		padding: 0.5em 0;
	}
	#homeReinsurance li {
		padding-left: .5em;
		padding-right: .5em;
	}
	#homeReinsurance li .illustration {
		font-size: 1.5em;
	}
	#homeReinsurance li .title {
		font-size: 1.1em;
	}
}
/* XS */
@media (max-width: 767px) {
	#homeReinsurance {
		padding: 0;
	}
	#homeReinsurance .container {
		height: 3em;
		overflow: hidden;
	}
	#homeReinsurance ul {
		grid-template-columns: 1fr;
		animation: responsiveHomeReinsurance 10s infinite;
	}
	#homeReinsurance li {
		display: block;
		line-height: 1em;
	}
	#homeReinsurance li:not(:last-of-type) {
		border-right: none;
	}
	#homeReinsurance li .illustration {
		display: inline-flex;
		margin-right: .5em;
	}
	#homeReinsurance li .title {
		display: inline-flex;
	}
	#homeReinsurance li .description span {
		display: none;
	}
}
@keyframes responsiveHomeReinsurance {
	0% { opacity: 0; transform: translateY(.35em);}
	10%,30% { opacity: 1; transform: translateY(.35em);}
	35%,55% { transform: translateY(-2.95em); }
	60%,80% { transform: translateY(-6em);opacity: 1; }
	90% { transform: translateY(-6em); opacity: 0;}
	99% { transform: translateY(.35em); }
	100% { opacity: 0;}

}


/*----------  Configurateur  ----------*/
#homeConfigurateur {
	padding: 4em 0;
	background: radial-gradient(
			50% 100% at 90% 85%,
			rgba(0,0,0,.1) 0%,
			rgba(0,0,0,.05) 40%,
			#ffffff 75%
		);
}
#homeConfigurateur .container {
	display: grid;
	grid-template-columns: 2fr 3fr;
	gap: 2em;
	height: 100%;
	align-items: center;
}
#homeConfigurateur .illustration {
	position: relative;
}
#homeConfigurateur .illustration img {
	width: 20em;
}
#homeConfigurateur .illustration img.homeConfigurateurArrow {
	width: 2.5em;
	position: absolute;
	right: 2em;
	transform: scale(0);
	transition: .2s;
}
#homeConfigurateur .illustration.inView img.homeConfigurateurArrow {
	transform: scale(1);
}
#homeConfigurateur .illustration img.homeConfigurateurArrow1 {
	top: 0;
}
#homeConfigurateur .illustration img.homeConfigurateurArrow2 {
	bottom: 0;
	width: 3em;
	transition-delay: .5s;
}
#homeConfigurateur h2 {
	font-weight: 700;
	color: rgba(0,0,0,.8);
	margin-top: 0;
}
#homeConfigurateur .description ul {
	display: flex;
	flex-direction: column;
	gap: .5em;;
}
#homeConfigurateur .description li {
	display: flex;
	gap: 1em;;
}
#homeConfigurateur .description li::before {
	content: "\f058";
	font-family: var(--font-icons);
	font-weight: 400;
	color: green;
}
#homeConfigurateur .description li strong {
	color: var(--color-primary-30);
}
#homeConfigurateur .actions {
	margin-top: 1em;
}
/* MD */
@media (max-width: 1199px) { 
	#homeConfigurateur {
		padding: 3em 0;
	}
	#homeConfigurateur .illustration img.homeConfigurateurArrow {
		right: 0;
	}
	#homeConfigurateur .illustration img.homeConfigurateurArrow2 {
		right: -.5em;
	}
	#homeConfigurateur h2 {
		font-size: 1.35em;
	}
}
/* SM */
@media (max-width: 991px) {
	#homeConfigurateur .container {
		grid-template-columns: 1fr;
	}
	#homeConfigurateur .illustration {
		text-align: center;
	}
	#homeConfigurateur .illustration img.homeConfigurateurArrow1 {
		right: 20%;
	}
	#homeConfigurateur .illustration img.homeConfigurateurArrow2 {
		right: unset;
		left: 20%;
		bottom: unset;
		transform: rotate(180deg) scale(0);
	}
	#homeConfigurateur .illustration.inView img.homeConfigurateurArrow2 {
		transform: rotate(180deg) scale(1);
	}
	#homeConfigurateur h2 {
		font-size: 1.25em;
	}
	#homeConfigurateur .actions {
		justify-content: center;
	}
}
/* XS */
@media (max-width: 767px) {
	#homeConfigurateur {
		font-size: 1.05em;
	}
	#homeConfigurateur .illustration img {
		width: 13em;
	}
	#homeConfigurateur .illustration img.homeConfigurateurArrow1 {
		right: 5%;
	}
	#homeConfigurateur .illustration img.homeConfigurateurArrow2 {
		display: none;
	}
	#homeConfigurateur h2 {
		font-size: 1.15em;
	}
}


/*----------  Pour qui  ----------*/
#homeCustomers {
	background: radial-gradient(
		circle at center,
		#2b2b2b 0%,
		#1a1a1a 70%
	);
	padding: 2em 0 3em;
	overflow: hidden;
}
#homeCustomers h2 {
	text-align: center;
	margin-bottom: 1.5em;
	color: white;
}
#homeCustomers .container > ul {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2em;
}
#homeCustomers .container > ul > li {
	background: rgba(0,0,0,.7);
	color: white;
	padding: 2em;
	border-radius: .5em;
	box-shadow: 0 0 100px var(--color-primary-10);
	position: relative;
	overflow: hidden;
}
#homeCustomers .container > ul > li::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;

	opacity: .4;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");
	background-repeat: repeat;

	mix-blend-mode: overlay;

	z-index: 1;
}
#homeCustomers .container > ul > li.professional {
	background: url('../img/homeCustomersProfessionals.jpg') no-repeat center center;
	background-size: cover;
}
#homeCustomers .container > ul > li.private {
	background: url('../img/homeCustomersPrivate.jpg') no-repeat center center;
	background-size: cover;
}
#homeCustomers .container > ul > li::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000;
	z-index: 1;
	opacity: 1;
	transition: 3s;
}
#homeCustomers .container > ul.inView > li::before {
	opacity: 0;
}
#homeCustomers .container > ul > li > * {
	position: relative;
	z-index: 2;
}
#homeCustomers ul ul {
	display: flex;
	gap: .5em;
	flex-direction: column;
}
#homeCustomers ul ul li {
	display: flex;
	gap: 1em;
	align-items: center;
}
#homeCustomers ul ul li::before {
	content: "";
	width: 1em;
	height: 1em;
	background-color: var(--color-primary-40);
	mask: url('../img/guitarPick.svg') no-repeat center;
	-webkit-mask: url('../img/guitarPick.svg') no-repeat center;
	transform: scale(0);
	transition: .2s;
	transition-delay: calc(var(--list-item-key) * .25s);
}
#homeCustomers ul.inView ul li::before {
	transform: scale(1);
}
#homeCustomers .title {
	font-weight: 700;
	text-transform: uppercase;
	font-size: 1.2em;
	margin-bottom: 0.75em;
}
/* MD */
@media (max-width: 1199px) { 
	#homeCustomers {
		padding: 1em 0 2em;
	}
	#homeCustomers h2 {
		margin-bottom: 1em;
	}
}
/* SM */
@media (max-width: 991px) {
	#homeCustomers h2 {
		font-size: 1.25em;
		margin-bottom: 0.75em;
	}
	#homeCustomers .container > ul {
		gap: 1em;
	}
	#homeCustomers .container > ul > li {
		padding: 1em;
	}
	#homeCustomers .container > ul > li > * {
		font-size: 1.05em;
		margin-bottom: .25em;
	}
	#homeCustomers .container > ul > li > ul {
		font-size: .85em;
		gap: 0;
	}
}
/* XS */
@media (max-width: 767px) {
	#homeCustomers h2 {
		font-size: 1.15em;
	}
	#homeCustomers .container > ul {
		grid-template-columns: 1fr;
	}
	#homeCustomers .container > ul > li > ul {
		font-size: 1em;
	}
}

/*----------  Impression France  ----------*/
#homeWorkshop {
	background:
	radial-gradient(circle at 80% 30%, rgba(247,147,30,0.08), transparent 50%),
	#f5f5f5;
	padding: 4em 0;
	overflow: hidden;
}
#homeWorkshop .container {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2em;
	align-items: center;
	height: 100%;
}
#homeWorkshop .illustration {
	position: relative;
}
#homeWorkshop .illustration > img {
	position: absolute;
	width: 20em;
	border: 6px solid white;
	box-shadow: 2px 2px 5px rgba(0,0,0,.5);
}
#homeWorkshop .illustration > img:nth-of-type(1) {
	transform: translate(-5em,-30em) rotate(0deg);
	transition: 1s ease-out;
}
#homeWorkshop.inView .illustration > img:nth-of-type(1) {
	transform: translate(-5em,-12em) rotate(-5deg);
}
#homeWorkshop .illustration > img:nth-of-type(2) {
	right: 0;
	transform: translate(-2em, -35em) rotate(9deg);
	transition: 1.5s ease-out;
}
#homeWorkshop.inView .illustration > img:nth-of-type(2) {
	transform: translate(-2em, -5em) rotate(3deg);
}
#homeWorkshop .illustration .badgePrintedInFrance {
	position: absolute;
	top: 0;
	right: 0;
	width: 7em;
	z-index: 2;
	transform: translate(-5em,-13em) rotate(10deg) scale(0);
	transition: .5s;
	transition-delay: 1s;
}
#homeWorkshop.inView .illustration .badgePrintedInFrance {
	transform: translate(-5em,-13em) rotate(5deg) scale(1);
}
#homeWorkshop h2 {
	font-weight: 700;	
}
#homeWorkshop .description a {
	text-decoration: underline;
}
#homeWorkshop .description a:hover {
	text-decoration: none;
}
#homeWorkshop .actions {
	margin-top: 1em;
}
/* MD */
@media (max-width: 1199px) { 
	#homeWorkshop .container {
		grid-template-columns: 2fr 3fr;
	}
	#homeWorkshop .illustration > img {
		width: 15em;
		border-width: 3px;
	}
	#homeWorkshop.inView .illustration > img:nth-of-type(1) {
		top: 3em;
	}
	#homeWorkshop .illustration > img:nth-of-type(2) {
		top: 3em;
	}
	#homeWorkshop .illustration .badgePrintedInFrance {
		top: 3em;
		right: -2em;
		width: 5em;
	}
}
/* SM */
@media (max-width: 991px) {
	#homeWorkshop {
		padding: 2em 0 1em;
	}
	#homeWorkshop .container {
		grid-template-columns: 1fr;
		gap: 1em;
	}
	#homeWorkshop .illustration {
		text-align: center;
	}
	#homeWorkshop .illustration > img {
		position: relative;
	}
	#homeWorkshop.inView .illustration > img:nth-of-type(1) {
		top: 2em;
		transform: translate(0,-2em) rotate(-5deg);
	}
	#homeWorkshop .illustration > img:nth-of-type(2) {
		top: 5em;
	}
	#homeWorkshop .illustration.inView > img:nth-of-type(2) {
		transform: translate(0, -5em) rotate(3deg);
	}
	#homeWorkshop.inView .illustration .badgePrintedInFrance {
		transform: translate(-3em,-1em) rotate(5deg) scale(1);
		filter: drop-shadow(0 0 2px white);
	}
	#homeWorkshop h2 {
		font-size: 1.3em;
	}
	#homeWorkshop .actions {
		justify-content: center;
	}
}
/* XS */
@media (max-width: 767px) {
	#homeWorkshop .illustration > img {
		width: 11em;
	}
}


/*----------  Témoignages  ----------*/
#homeTestimonials {
	padding: 3em 0;
	background: rgba(0,0,0,.03);
	border-top: 1px solid rgba(0,0,0,.04);
	position: relative;
}
#homeTestimonials .container {
	display: flex;
	align-items: center;
	gap: 2em;
	padding: 0em 1em;
}
#homeTestimonials .navBtn {
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	font-size: .85em;
	width: 2em;
	height: 2em;
	line-height: 1em;
	color: rgba(0,0,0,.3);;
	background: rgba(0,0,0,.05);;
	border-radius: 50%;
}

#homeTestimonials .navBtn::before {
	content: "\f060";
	font-family: var(--font-icons);
	font-weight: 900;
	transition: .1s;
}
#homeTestimonials .navBtn:hover::before {
	color: rgba(0,0,0,.9);
}
#homeTestimonials .navBtn[data-direction="next"]::before {
	content: "\f061";
}
#homeTestimonials .container > ul {
	flex: 1;
	margin-bottom: 0;
}
#homeTestimonials .container > ul li {
	display: none;
	justify-content: center;
}
#homeTestimonials .container > ul li.visible {
	display: flex;
}
#homeTestimonials .container > ul li .content {
	display: flex;
	flex-direction: column;
	gap: .5em;
	align-items: center;
	text-align: center;
	border-radius: .5em;
	font-size: .9em;
	opacity: 0;
	transform: translateY(-1em);
	transition: all .35s ease;
}
#homeTestimonials .container > ul li.visible .content.in {
	opacity: 1;
	transform: translateY(0);
}
#homeTestimonials .stars::before {
	content: "\f005\f005\f005\f005\f005";
	font-family: var(--font-icons);
	font-weight: 900;
	color: var(--color-primary-40);
	letter-spacing: 3px;
	font-size: .75em;
}
#homeTestimonials .message {
	font-style: italic;
}
#homeTestimonials .author {
	font-weight: 700;
	font-size: .85em;;
}
#homeTestimonials .pager {
	position: absolute;
	bottom: .5em;
	left: 0;
	right: 0;
	display: flex;
	justify-content: center;
	gap: .25em;
}
#homeTestimonials .pagerDot {
	display: block;
	width: .35em;
	height: .35em;
	border-radius: .5em;
	background: rgba(0,0,0,.1);
	cursor: pointer;
	transition: .5s;
}
#homeTestimonials .pagerDot.active {
	background-color: var(--color-primary-70);
	pointer-events: none;
	width: 1.5em;
	position: relative;
	overflow: hidden;
}
#homeTestimonials .pagerDot.active::before {
	content: "";
	position: absolute;
	background: var(--color-primary-40);
	width: 100%;
	height: 100%;
	display: block;
	animation: homePageDotActive 6s forwards linear;
	transform-origin: left center;
}
@keyframes homePageDotActive {
	0% { transform: scaleX(0); }
	100% { transform: scaleX(1); }
}
/* MD */
@media (max-width: 1199px) { 
	#homeTestimonials {
		padding: 2em 0;
	}
}
/* XS */
@media (max-width: 767px) {
	#homeTestimonials .navBtn {
		display: none;
	}
}



/*----------  Références  ----------*/
#homeReferences {
	padding: 2em 0;
}
#homeReferences ul {
	display: flex;
	flex-wrap: wrap;
	gap: 1em;
	align-items: center;
	justify-content: center;
}
#homeReferences ul li {
	position: relative;
	
	
	transform: scale3d(0,1,1);
}
#homeReferences ul.inView li {
	animation: homePickReference .35s forwards;
	animation-delay: calc(var(--list-item-key) * .15s);
}
@keyframes homePickReference {
	0% { transform:scale3d(0,1,1); }
	100% { transform: scale3d(1,1,1); }
}
#homeReferences ul li img {
	position: relative;
	z-index: 2;
	filter: drop-shadow(0px 0px 2px rgba(0,0,0,.2));
	width: 5.4em;
}
#homeReferences ul li::after {
	content:'';
	position: absolute;
	display: block;
	width: 70%;
	height: 1em;
	top: 40%;
	left: 50%;
	transform: translate(-50%,-50%);
	background: rgba(0,0,0,1);
	filter:blur(10px);
	z-index: 1;
}
#homeReferences .actions {
	margin-top: 1em;
	justify-content: center;
}
/* MD */
@media (max-width: 1199px) { 
	#homeReferences ul li img {
		width: 4.5em;
	}
}


/*----------  Coin pro  ----------*/
#homeProfessionalCorner {
	background: #101014;
	padding: 4em 0;
	color: white;
	overflow: hidden;
	position: relative;
}
#homeProfessionalCorner::before {
	content: "";
	background: url('../img/homeProfessionalCornerBg.jpg') no-repeat center center;
	background-size: cover;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	transform: translateX(20%);
	transition: 3s;
}
#homeProfessionalCorner.inView::before {
	opacity: .5;
	transform: translateX(10%);
}
#homeProfessionalCorner .container {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2em;
	position: relative;
	z-index: 2;
}
#homeProfessionalCorner .proBadge {
	display: inline-flex;
	background: var(--color-primary-40);
	color: rgba(0,0,0,.8);;
	font-weight: 700;
	padding: .15em 1em;
	font-size: .75em;
	line-height: 1em;
	margin-bottom: 0.5em;
}
#homeProfessionalCorner h2 {	
	font-weight: 700;
	margin-bottom: 1em;
	margin-top: 0;
}
#homeProfessionalCorner .description {
	margin-bottom: 2em;
}
#homeProfessionalCorner ul {
	display: flex;
	flex-direction: column;
	gap: 1em;
}
#homeProfessionalCorner li {
	display: flex;
	align-items: center;
	gap: 1em;
}
#homeProfessionalCorner li i {
	width: 1.5em;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--color-primary-40);
}
#homeProfessionalCorner li strong {
	display: inline-block;
	position: relative;
}
#homeProfessionalCorner li strong::before {
	content: "";
	position: absolute;
	bottom: 0;
	display: block;
	width: 100%;
	height: 2px;
	background: var(--color-primary-40);
	transition: 1.5s ease-out;
	transform: scaleX(0);
	transition-delay: 1s;
}
#homeProfessionalCorner.inView li strong::before {
	transform: scaleX(1);
}
#homeProfessionalCorner .actions {
	margin-top: 3em;
}
/* MD */
@media (max-width: 1199px) { 
	#homeProfessionalCorner {
		padding: 2em 0;
	}
	#homeProfessionalCorner .container {	
		grid-template-columns: 3fr 2fr;
	}
}
/* SM */
@media (max-width: 991px) {
	#homeProfessionalCorner .container {	
		grid-template-columns: 1fr;
	}
}
/* XS */
@media (max-width: 767px) {
	#homeProfessionalCorner h2 {
		margin-bottom: 0;
		font-size: 1.35em;
	}
	#homeProfessionalCorner .description {
		margin-bottom: 1em;
	}
	#homeProfessionalCorner .actions {
		margin-top: 2em;
	}
}


/*----------  Production rapide  ----------*/
#homeFastProduction {
	overflow: hidden;;
	background: repeating-linear-gradient(
			-45deg,
			rgba(0,0,0,0.01),
			rgba(0,0,0,0.01) 2px,
			transparent 2px,
			transparent 8px
		),
		linear-gradient(
			90deg,
			rgba(255, 150, 0, 0.04),
			#f7f7f7 40%
		);
	padding: 2em 0;
	position: relative;
}
#homeFastProduction h2 {
	font-weight: 700;
	margin-bottom: 1em;
	color: rgba(0,0,0,.8);
}
#homeFastProduction .container {
	display: grid;
	grid-template-columns: 2fr 3fr;
	gap: 2em;
	align-items: center;
	position: relative;
	z-index: 2;
}
#homeFastProduction .illustration {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

#homeFastProduction .illustration::before {
    content: "";
    position: absolute;
    bottom: 30px;
    left: 50%;
    width: 8em;
    height: 10px;
    border-radius: 50%;
    transform: translateX(-50%);
    background: rgba(0,0,0,0.75);
    filter: blur(5px);
    z-index: 1;
}
#homeFastProduction.inView .illustration::before {
   	animation: realShadowBounce 2.5s linear forwards;
}
@keyframes realShadowBounce {
    0%   { transform: translateX(-50%) scale(0.1); opacity: 0; }
    20%  { transform: translateX(-50%) scale(1); opacity: 0.6; }
    35%  { transform: translateX(-50%) scale(0.6); opacity: 0.2; }
    50%  { transform: translateX(-50%) scale(1); opacity: 0.6; }
    62%  { transform: translateX(-50%) scale(0.8); opacity: 0.3; }
    72%  { transform: translateX(-50%) scale(1); opacity: 0.6; }
    80%  { transform: translateX(-50%) scale(0.9); opacity: 0.4; }
    87%  { transform: translateX(-50%) scale(1); opacity: 0.6; }
    100% { transform: translateX(-50%) scale(1); opacity: 0.5; }
}
#homeFastProduction .illustration img {
    -webkit-mask-image: url('../img/guitarPick.svg');
    mask-image: url('../img/guitarPick.svg');
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    position: relative;
    z-index: 2;
    width: 15em;
    transform-origin: center bottom;
	margin-left: 35%;
}
#homeFastProduction.inView .illustration img {
    animation: realDropBounce 2.5s linear forwards;
}
@keyframes realDropBounce {
    0%   { transform: translateY(-600px) rotate(-40deg); opacity: 0; }
    20%  { transform: translateY(0) rotate(-20deg); opacity: 1; }
    35%  { transform: translateY(-120px) rotate(-10deg); }
    50%  { transform: translateY(0) rotate(-22deg); }
    62%  { transform: translateY(-50px) rotate(-18deg); }
    72%  { transform: translateY(0) rotate(-20deg); }
    80%  { transform: translateY(-15px) rotate(-19deg); }
    87%  { transform: translateY(0) rotate(-20deg); }
    93%  { transform: translateY(-4px) rotate(-20deg); }
    100% { transform: translateY(0) rotate(-20deg); }
}

#homeFastProduction .description strong {
	display: inline-block;
	position: relative;
}
#homeFastProduction .description strong.france::before {
	content: "";
	position: absolute;
	bottom: 1px;
	left: 0;
	width: 100%;
	height: 2px;
	background: var(--color-gradient-french-flag);
}

#homeFastProduction .actions {
	margin-top: 2em;
}
/* MD */
@media (max-width: 1199px) { 
	#homeFastProduction .illustration img {
		width: 12em;
	}
}
/* SM */
@media (max-width: 991px) {
	#homeFastProduction .container {
		grid-template-columns: 1fr 2fr;
	}
}
/* XS */
@media (max-width: 767px) {
	#homeFastProduction .container {
		grid-template-columns: 1fr;
		gap: 0;
	}
	#homeFastProduction .illustration img {
		width: 9em;
	}
	#homeFastProduction h2 {
		font-size: 1.25em;
		text-align: center;
	}
	#homeFastProduction .actions {
		justify-content: center;
	}
}


/*----------  Long description  ----------*/
#index #center_column > #homeLongDescription {
	padding: 2em 0;
	font-size: 1.1em;
	
}
#homeLongDescription h2 {
	font-size: 1.3em;
	font-weight: 700;
	color: var(--color-primary-30);
}
#index #center_column > #homeLongDescription h3 {
	margin-top: 2em;
	font-size: 1.1em;
	font-weight: 700;
	color: var(--color-primary-30);
}
#homeLongDescription li {
	display: flex;
	gap: .5em;
	margin-bottom: 0.5em;
}
#homeLongDescription li::before {
	content: "";
	width: 1em;
	height: 1em;
	margin-top: 0.2em;
	display: block;
	background-color: var(--color-primary-40);
	mask: url('../img/guitarPick.svg') no-repeat center;
	-webkit-mask: url('../img/guitarPick.svg') no-repeat center;
}
/* SM */
@media (max-width: 991px) {
	#index #center_column > #homeLongDescription {
		font-size: .9em;
	}
}

/*=============================================
=            Catégories            =
=============================================*/

#category #center_column ul.product_list li,
#category #center_column #subcategories li {
	border: none;
	padding: 0;
}
#category h5 {
	margin-top: 0;
	margin-bottom: 0.25em;
	font-size: 1.1em;
}
#category h5:has(+ .product-subTitle) {
	margin-bottom: 0;
}
#category .product-subTitle {
	font-size: 1.1em;
	margin-bottom: 0.5em;
	display: flex;
	align-items: center;
	gap: .5em;
}
#category .product-subTitle i {
	color: var(--color-primary-40);
}
/*----------  Intro  ----------*/
#category #intro {
	display: flex;
	gap: 15px;
	margin-top: 1em;
	margin-bottom: 2em;
}
#category h1 {
	font-family: var(--font-title);
	text-transform: none;
	font-size: 2.2em;
	line-height: 1.1em;
	font-weight: 400;
	color: var(--color-theme-main);
	margin-top: 0;
}

#category #intro .cat_desc {
	flex: 3;
	font-size: 1.2em;
	line-height: 1.35em;
	margin-bottom: 0.5em;
}
#category .cat_image {
	flex: 1;
	text-align: center;
}
#category .cat_image img {
	max-width: 100%;
}
#category :is(li .cat_desc,.product-desc) {
	font-size: 1.1em;
	line-height: 1.5em;
}
#category .bottom-pagination-content {
	border-top: none;
}

#ietc_productconfigurationassistant #subcategories {
	margin-top: 2em;
}
.ietc_productconfigurationassistant #subcategories > ul::before,
.ietc_productconfigurationassistant #subcategories > ul::after,
.ietc_productconfigurationassistant ul.product_list::before,
.ietc_productconfigurationassistant ul.product_list::after {
	display: none !important;
}
.ietc_productconfigurationassistant :is(#subcategories > ul,ul.product_list) {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2em;
}
#category.ietc_productconfigurationassistant #center_column :is(#subcategories > ul,ul.product_list) > li {
	flex-direction: column;
	align-items: center;
	background: #fafafa;
	padding: 1em ;
	border-radius: .5em;
}
.ietc_productconfigurationassistant .content_sortPagiBar {
	display: none;
}
.ietc_productconfigurationassistant :is(#subcategories > ul,ul.product_list) img {
	border-radius: .5em;
}

#ietc_productconfigurationassistant ul#order_step + div {
	display: none;
}
#ietc_productconfigurationassistant ul#order_step .step_current span {
	color: var(--color-primary-40);
}

/* MD */
@media (max-width: 1199px) {
	#category h1 {
		font-size: 1.75em;
	}
}
/* SM */
@media (max-width: 991px) {
	#category #intro .cat_desc {
		font-size: 1.1em;
	}
	#category h5 {
		font-size: 1em;
	}
	#category .product-desc {
		font-size: 1em;
	}

}
/* XS */
@media (max-width: 767px) {
	#category #intro {
		flex-direction: column;
		gap: 0;
	}
	#category h1 {
		padding-bottom: 0;
		font-size: 1.35em;
	}
	.ietc_productconfigurationassistant :is(#subcategories > ul,ul.product_list) {
		grid-template-columns: 1fr;
	}
	.ietc_productconfigurationassistant :is(#subcategories > ul,ul.product_list) > li {
		flex-direction: row;
		align-items: flex-start;
	}
}

/*----------  Extrasites  ----------*/
.topoExtraSite {
	margin: 2em 0 3em;
	display: flex;
	gap: 15px;
	align-items: center;
}
.topoExtraSite p {
	margin-bottom: 0;
}
/* XS */
@media (max-width: 767px) {
	.topoExtraSite {
		display: block;
	}
	.topoExtraSite img {
		width: auto;
		max-height: 3.5em;
		margin-bottom: 1em;
	}
}


/*----------  Sous-catégories  ----------*/
#subcategories {
	border-top: none;
	
	margin: 0 15px;
	padding: 0;
}
#subcategories h3 {
	font-family: var(--font-title);
	font-weight: 400;
	font-size: 1.4em;
	background: var(--color-theme-main);
	text-transform: uppercase;
	color: white;
	margin: 0;
	padding: .3em .5em;

	display: none;
}
#subcategories ul {
	margin: 0;
	/* padding: 15px;
	border: 1px solid var(--color-theme-main); */

	padding: 0;
	border: none;
}
#subcategories ul li,
#category .product_list li,
#search .product_list li {
	float: none;
	display: flex;
	gap: 30px;
	width: 100%;
	height: auto;
	padding-bottom: 1em;
}
#subcategories ul li:not(:last-of-type),
#category ul.product_list li:not(:last-of-type),
#search ul.product_list li:not(:last-of-type) {
	border-bottom: 1px solid rgba(0,0,0,.05);
}
#category #center_column #subcategories ul li:last-of-type,
#category ul.product_list ul li:last-of-type,
#search ul.product_list ul li:last-of-type {
	margin-bottom: 0;
	padding-bottom: 0;
}
#subcategories ul li::before,
#subcategories ul li::after {
	display: none;
}
#subcategories ul li .subcategory-image,
#category .product_list li .product-image,
#search .product_list li .product-image {
	flex: 1;
}
#subcategories ul li .subcategory-image a,
#subcategories ul li:hover .subcategory-image a {
	border: none;
	padding: 0;
}
#subcategories ul li .subcategory-description,
#category .product_list li .product-name-description,
#search .product_list li .product-name-description {
	flex: 4;
	text-align: left;
}
#subcategories ul li .subcategory-name,
#category ul.product_list .product-name,
#search ul.product_list .product-name {
	font-family: var(--font-main);
	text-transform: none;
	font-size: 1.2em;
	font-weight: 700;
	color: #555454;
}
#subcategories ul li .cat_desc {
	display: block;
}
#category .more-btn a,
#search .more-btn a {
	display: inline-block;
	background: var(--color-theme-main);
	padding: .35em 2em;
	text-transform: uppercase;
	font-weight: 700;
	color: white;
	border-radius: 2px;
	transition: all .05s ease-in-out;
	margin-top: 0.5em;
	margin-bottom: 1em;
	text-align: center;
}
#category .more-btn a.show-product-btn {
	background-color: var(--color-objectcategory-print);
}
#category .more-btn a:hover,
#search a.show-product-btn:hover {
	text-decoration: none;
	transform: translateY(1px);
}


/*----------  PCA  ----------*/
#ietc_productconfigurationassistant ul#order_step {
	display: flex;
}
#ietc_productconfigurationassistant ul#order_step > * {
	flex: 1;
}
#ietc_productconfigurationassistant ul#order_step li {
	display: flex;
}
#ietc_productconfigurationassistant h3 {
	font-size: 1.35em;
}
/* XS */
@media (max-width: 767px) {
	#ietc_productconfigurationassistant ul#order_step {
		flex-direction: column;
	}
	#ietc_productconfigurationassistant h3 {
		font-size: 1.05em;
	}
}


/*=============================================
=            Produit            =
=============================================*/
#product #center_column div[itemscope] {
	padding-left: 0;
	padding-right: 0;
}
#product section.page-product-box {
	min-height: unset;
}
#product #center_column .primary_block:has(.pb-left-column #views_block .img-responsive) {
	min-height: 25em;
}
#product .pb-center-column h1 {
	font-family: var(--font-title);
	font-size: 2em;
}
#product .pb-center-column #short_description_block #short_description_content p {
	line-height: 1.35em;
}
#short_description_block p:has(img) {
	display: none;
}
.price .our_price_display, .our_price_display_online_only {
	font-family: var(--font-main);
}
.box-info-product .exclusive, 
.button.button-medium, 
.button.button-medium.exclusive, 
#btn-demande-devis a, 
#btn-demande-devis-no-login a, 
#customization_popup_btn, 
#configurateurStart {
	background: var(--color-theme-accent);
	font-family: var(--font-main);
	text-transform: uppercase;
	
}
.btn, #btn-demande-devis a, #btn-demande-devis-no-login a, #add_to_cart input.btn.exclusive, #configurateurStart {
	border-radius: 5em;
}
.box-info-product .exclusive, .button.button-medium, .button.button-medium.exclusive #btn-demande-devis a, #btn-demande-devis-no-login a, #customization_popup_btn {
	border-radius: 5em;
}
.box-info-product .exclusive:hover, 
#btn-demande-devis a:hover,
#btn-demande-devis-no-login a:hover, 
#customization_popup_btn:hover, 
.button.button-medium:hover, 
.button.button-medium.exclusive:hover, 
#configurateurStart:hover {
	background: var(--color-theme-accent-dark);
}
#product .primary_block {
	margin-bottom: 1em;	
}

#box-info-product-left .attribute_label, 
#box-info-product-left .attribute_list label, 
#ietc_productcustomization fieldset label {
	font-size: 1em !important;
}
#box-info-product-left .attribute_list select,
#ietc_productcustomization fieldset select {
	font-size: .95em;

}
#show_price_button {
	font-size: .85em;
	font-weight: 600;
}
#product #ietc_productcustomization {
	padding-top: 0.6em;
	font-size: 1em;
}
#product #quantity_wanted_div::after {
	content: "";
	clear: both;
	display: block;
}

#product #bloc-panier .price {
	display: flex;
	flex-direction: column;
}
#our_price_display_no_tax_online_only {
	order: -1;
	margin-bottom: 0;
}

#product #bloc-panier .price .tax {
	font-size: .65em;
}
.price .our_price_display,
.our_price_display_online_only {
	font-size: 1.3em;
	font-weight: 400;

}
#our_price_display_no_tax, #our_price_display_no_tax_online_only {
	font-weight: bold;
	font-size: 2.5em;
	line-height: 1em;
	color: var(--color-theme-accent);
}

#box-info-product-right h2 {
	background: #e4e4e4;
}

/* MD */
@media (max-width: 1199px) {
	#product .pb-center-column h1 {
		font-size: 1.75em;
	}
}
/* SM */
@media (max-width: 991px) {
	#product .pb-center-column h1 {
		font-size: 1.35em;
	}
}
/* XS */
@media (max-width: 767px) {
	#product .pb-center-column h1 {
		font-size: 1.2em;
	}
}
/*----------  Reinsurance  ----------*/
#more-infos-cart {
	--color-reinsurance-main: rgba(0,0,0,.7);;
	padding: 1.2em 0;
	background: rgba(0,0,0,.15);
	background: radial-gradient(circle at 30% 80%, rgba(247,147,30,0.08), transparent 50%), #f5f5f5;
	color: var(--color-reinsurance-main) !important;
	position: relative;
	overflow: hidden;
	font-size: .95em
}

#more-infos-cart .more-infos-cart-element {
	display: flex;
	align-items: center;
}
#more-infos-cart .more-infos-cart-element > span,
#more-infos-cart .more-infos-cart-element > a {
	display: block;
	flex: 1;
	font-weight: 600;
	margin-left: 15px;
	color: var(--color-reinsurance-main);
}
#more-infos-cart .more-infos-cart-element::before {
	font-family: 'Font Awesome 5 Free';
	content: "\f05a";
	line-height: 1em;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.2em;
	font-weight: 700;
	color: white;
	background: var(--color-primary-60);
	width: 2em;
	height: 3em;
	box-sizing: border-box;
	padding-bottom: 0.5em;
	mask: url('../img/guitarPick.svg') no-repeat center;
	-webkit-mask: url('../img/guitarPick.svg') no-repeat center;

	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;

	-webkit-mask-position: center;
	mask-position: center;
}
#more-infos-cart .more-infos-cart-delivery.more-infos-cart-element::before {
	content: "\f48b";
}
#more-infos-cart .more-infos-cart-files.more-infos-cart-element::before {
	content: "\f07c";
}
#more-infos-cart .more-infos-cart-quote.more-infos-cart-element::before {
	content: "\f15c";
}
/* SM */
@media (max-width: 991px) {
	
	#more-infos-cart .container {
		display: grid;
		grid-template-columns: repeat(3,1fr);
		gap: 1em;
	}
	#more-infos-cart .container::before,
	#more-infos-cart .container::after {
		display: none;
	}
	#more-infos-cart .more-infos-cart-element {
		width: auto;
		padding-left: 0;
		padding-right: 0;
	}
	
	#more-infos-cart .more-infos-cart-element::before {
		font-size: 1em;
	}
	
}
/* XS */
@media (max-width: 767px) {
	#product #more-infos-cart {
		margin-left: 0 !important;
		margin-right: 0 !important;
		padding-top: 0.5em;
		padding-bottom: 0.5em;
		font-size: .85em;
	}
	#more-infos-cart .container {
		padding-left: 1em !important;
		padding-right: 1em  !important;
		
		grid-template-columns: 1fr;
		gap: .5em;
	}
	#more-infos-cart .more-infos-cart-element::before {
		font-size: .75em;
	}
}

/*----------  Tarifs dégressifs  ----------*/


section.product_quantity_discount {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	background: rgba(255,255,255,.95);;
	width: 100vw;
	height: 100vh;
}
section.product_quantity_discount.visible {
	display: block;
}
section.product_quantity_discount .container {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
#quantity_wanted_p {
	position: relative;
}
#product .discountLabel {
	display: inline-block;
	margin-left: 1em;
	text-decoration: underline;
	font-weight: 400;
	font-size: .85em;
	cursor: pointer;
	position: absolute;
	left: 100%;
	min-width: 13em;
}
#product .discountLabel:hover {
	text-decoration: none;
}
section.product_quantity_discount .closeBtn {
	position: absolute;
	top: .5em;
	right: 0;
	font-size: 1.5em;
	cursor: pointer;
}
/* MD */
@media (max-width: 1199px) {
	section.product_quantity_discount .container {
		width: 95%;
	}
}
/* SM */
@media (max-width: 991px) {
	
}
/* XS */
@media (max-width: 767px) {
	
}

/*----------  Caractéristiques  ----------*/
#product .product_description {
	margin-top: 0;
}
#page .page-product-box.product_description .rte {
	padding-top: 0;
}
#product .product_description h2#specificationsTitle {
	font-size: 1.7em;
	color: var(--color-theme-main);
	border-bottom: 1px dashed var(--color-theme-main);
	padding-bottom: 0.5em;
	margin-bottom: 0.5em;
	margin-top: 1.5em;
}

#product .product_description .rte td {
	border: 1px solid #ccc;
}

/*----------  Tabs  ----------*/
#product #product_tab {
	position: relative;
	border-bottom: 1px solid #dadbd7;
	margin-top: 2em;
}

#product #product_tab ul {
	margin: 0;
	padding: 0;
}
#product #product_tab li {
	margin: 0 .5em 0 0;
	padding: .7em 2em;
	display: inline-block;
	border: 1px solid #f1f2ed;
	border-bottom: 1px solid #dadbd7;
	background: #f1f2ed;
	margin-bottom: -1px;
	cursor: pointer;

	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
}
#product #product_tab li.active {
	border: 1px solid #dadbd7;
	border-bottom: 1px solid white;
	background: white;
}
#product #product_tab li i {
	margin-right: .5em;
}

/* XS */
@media (max-width: 767px) {
	#product #product_tab li {
		display: block;
	}
}




/* XS */
@media (max-width: 767px) {
	
	#product #center_column > *,
	#product .primary_block.container {
		padding-left: 0;
		padding-right: 0;
	}
	#box-info-product-right {
		margin-top: 1em;
	}
	
	#product .primary_block {
		margin-bottom: 0;
	}
	
	#product #image-block {
		text-align: center;
	}
	#product #image-block img {
		max-width: 180px;
	}
	#product .pb-left-column #views_block {
		width: 100%;
	}
	#product #thumbs_list {
		width: 100%;
	}
	#product #thumbs_list li {
		width: 51px;
	}
	#product #thumbs_list ul#thumbs_list_frame {
		height: 56px;
	}
	#product h1 {
		font-size: 2.3em;
		margin-top: 0;
		padding-bottom: 0em;
	}
	#product .pb-center-column {
		margin-bottom: 2em;
	}
	.pb-center-column #short_description_block #short_description_content {
		font-size: 1.1em;
	}
	#product .box-info-product {
		padding-right: 0;
		padding-left: 0;
	}
	#box-info-product-left-wrapper {
		padding-left: 0;
		padding-right: 0;
	}
	#box-info-product-left {
		margin-left: 0;
	}
	#box-info-product-left .product_attributes .title {
		font-size: 1em;
	}
	#product #infos-pao {
		font-size: 1em;
	}
	#box-info-product-right {
		margin-top: 1em;
		padding-left: 0;
	}
	#product .buttons_bottom_block {
		padding-left: 0;
	}
	#deliverydate_countdown_content {
		width: 100%;
	}
	#product #configurateurStart,
	#product #btn-demande-devis,
	#product #btn-demande-devis-no-login,
	#product #add_to_cart input.exclusive,
	#product #customization_popup_btn {
		width: 100% !important;
		text-align: center;
	}
	#btn-demande-devis a, #btn-demande-devis-no-login a, #customization_popup_btn {
		text-align: center;
	}

	/* gobelets */
	.more_info_sheets_grid_4 {
		padding-left: 0;
		padding-right: 0;
	}
}



/*=============================================
=            Mon devis            =
=============================================*/
#module-ietc_devis-default #mon-devis-introduction {
	width: 67%;
}
#module-ietc_devis-default #block-to-my-quotes {
	width: 33%;
}
/* SM */
@media (max-width: 991px) {
	#module-ietc_devis-default #mon-devis-introduction,
	#module-ietc_devis-default #block-to-my-quotes {
		width: 100%;
	}
}


.address li.address_update a {
	font-size: .9em;
}


/*=============================================
=            Mes adresses            =
=============================================*/
#addresses .address li.address_update a {
	font-size: .8em;
}




/*=============================================
=            Mon compte            =
=============================================*/
#module-ietc_sendfiles-default h1,
#module-ietc_sendorderslip-default h1,
#module-ietc_devis-mesdevis h1 {
	padding-left: 15px;
}

#my-account ul.myaccount-link-list li a {
	font-family: var(--font-main);
}
.myaccount-link-listNEW {
	font-size: .9em;
}


/*=============================================
=            Envoi de fichiers            =
=============================================*/
#sendFilesContainer .title {
	font-size: 1.1em;
}
:is(#ietc_sendfiles,#ietc_sendorderslip) ul.step li {
	font-size: 1em;
}





/*=============================================
=            Dates de livraison (page)            =
=============================================*/
#module-ietc_deliverydate-default #center_column > p:nth-of-type(3) {
	margin-left: var(--size-gap-normal);
	margin-right: var(--size-gap-normal);
}


/*=============================================
=            Panier            =
=============================================*/
ul.step li.step_current span, 
ul.step li span, 
ul.step li.step_done a {
	font-size: .85em;
}
.needfiles_caption {
	font-size: 1.1em;
}
.cart_description .product-name a {
	font-size: .95em;
}
#cart_summary tbody td.cart_description small {
	font-size: .95em;
}
#order .info-validation-bat {
	font-size: .9em;
}
#order .price {
	font-size: .95em;
}
:is(#module-bankwire-payment,#module-cheque-payment) .price {
	font-size: 1em;
}

/*=============================================
=            Confirmation de commande            =
=============================================*/
#order-confirmation #center_column > div.box {
	margin-left: var(--size-gap-normal);
	margin-right: var(--size-gap-normal);
}



/*=============================================
=            Historique            =
=============================================*/
#history #block-history .order-product {
	font-size: .95em;
}




/*=============================================
=            Contact            =
=============================================*/


#contact form.contact-form-box {
	margin-left: var(--size-gap-normal);
	margin-right: var(--size-gap-normal);
}

/*=============================================
=            Tchat            =
=============================================*/
/* XS */
@media (max-width: 767px) {
	#lhc_status_container,
	#lhc_container {
		display: none;
	}
}


/*=============================================
=            Prefooter            =
=============================================*/
.prefooter-container {
	background: radial-gradient(circle at 80% 30%, rgba(247,147,30,0.08), transparent 70%), #f5f5f5;
	--color-prefooter-icons: rgba(0,0,0,.4);;
}
#prefooter .row {
	display: flex;
	gap: 1em;
	justify-content: space-between;
	padding: 1em 0;
}
#prefooter .row::before,
#prefooter .row::after {
	display: none !important;
}
#prefooter .row > div {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-direction: column;
	flex: 1;
	gap:  .5em;
	font-size: 1.1em;
	color: rgba(0,0,0,.6);
	text-align: center;
}
#prefooter .row > div i {
	font-size: 1.5em;
}
.prefooter-container .icon {
	margin-right: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 1em;
	background: var(--color-primary-60);
	mask: url('../img/guitarPick.svg') no-repeat center;
	-webkit-mask: url('../img/guitarPick.svg') no-repeat center;
	width: 3.5em;
	height: 4.5em;
	box-sizing: border-box;
	color: var(--color-prefooter-icons);
	padding-bottom: 0.5em;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;

	-webkit-mask-position: center;
	mask-position: center;
}
#prefooter [class^="icon-"] {
	font-size: 1em;
	background: transparent;
	margin-right: 0;
}
#prefooter [class^="icon-"]::before {
	content: '';
	width: 1em;
	height: 1em;
	display: inline-block;
	-webkit-mask-position: center center;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
	background: var(--color-prefooter-icons);
}
#prefooter .icon-france {
	font-size: 2em;
	line-height: unset;
}
#prefooter .icon-france::before {
	-webkit-mask-image: url('../img/france.svg');
	mask-image: url('../img/france.svg');
}
#prefooter .row > div > div {
	font-size: .9em;
	display: flex;
	flex-direction: column;
	align-items: center;
}
#prefooter .row > div > div:not(.icon) span {
	font-size: .85em;
}
/* SM */
@media (max-width: 991px) {
	#prefooter .row > div {
		font-size: 1em;
	}
	#prefooter .row > div i {
		font-size: 1.6em;
	}
	
}
/* XS */
@media (max-width: 767px) {
	#prefooter .row {
		justify-content: center;
		gap: 0 2em;
		flex-direction: column;
		
	}
	#prefooter .row > div {
		flex-direction: row;
		flex: 0;
		text-align: left;
	}
	#prefooter .row > div i {
		font-size: 1em;
	}
	#prefooter .row > div > div:not(.icon) {
		align-items: flex-start;
	}
	#prefooter .row > div br {
		display: none;
	}
}

/*=============================================
=            Footer            =
=============================================*/
#footer #block_reinsurance,
#footer-last-links,
#block_ietcbranch_footerlinks,
.hookFooter {
	display: none !important;
}
.footer-container {
	background: #333;
}
.footer-container #footer {
	padding-top: 2em;
	color: rgba(255,255,255,.6);
	padding-bottom: 1em;
}

#footer .companyName {
	font-size: 1.2em;
	color: rgba(255,255,255,.9);
	font-weight: 700;
	margin-bottom: 0.5em;
}
#footer a.contactBtn {
	margin-top: 0.75em;
	margin-bottom: 0.75em;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .5em;
	background: transparent;
	border: 1px solid rgba(255,255,255,.8);
	color: rgba(255,255,255,.8);
	text-decoration: none;
	padding: .5em 2em;
	border-radius: 2px;
	transition: .1s;
	font-weight: 700;
}

#footer .actions {
	display: flex;
	gap: 1em;
	align-items: center;
}
#footer a.socialBtn {
	font-size: 2em;
	color: rgba(255,255,255,.8);
}

#footer .openingTimeTable {
	margin-top: 1em;
}
#footer .openingTimeTable th {
	padding-left: 0;
	min-width: 13em;
}

#footer .contactBtn:hover {
	background: rgba(255,255,255,.2);
}

#footer .footerLinks * {
	text-shadow: none !important;
}
.footer-container #footer h4 {
	color: rgba(255,255,255,.9);
	font-size: 1.1em;
	font-weight: 700;
	font-family: var(--font-main);
}
.footer-container #footer ul li a {
	font-weight: normal;
	color: rgba(255,255,255,.6);
}
#copyright {
	font-size: .85em;
	text-align: center;
	padding-bottom: 0;
}
/* SM */
@media (max-width: 991px) {
	#footer #contact {
		text-align: center;
	}
	#footer #contact .actions {
		justify-content: center;
	}
	#footer .openingTimeTable {
		display: flex;
		flex-direction: column;
		justify-content: center;
		margin-bottom: 2em;
	}
}
/* XS */
@media (max-width: 767px) {
	.footer-container #footer {
		padding-left: 0;
		padding-right: 0;
	}
	.footer-container #footer h4::after {
		display: none !important;
	}
	#footer :is(#menu,#more-infos) ul {
		display: flex;
		flex-wrap: wrap;
		gap: .5em 1em;
	}
	#footer .openingTimeTable :is(table,tbody) {
		display: block;
	}
	#footer .openingTimeTable tr {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: .25em;
	}
	#footer .openingTimeTable :is(th,td) {
		width: auto;
		min-width: unset;
		padding: 0 !important;
	}
	#footer .openingTimeTable :is(th) {
		width: 100%;
		text-align: center;
		margin-top: 1em;
	}
}