:root {
	--color-light: rgb(255,255,255);
	--color-red: rgb(198,17,63);
}




/* GLOBALS */
html, body {
	font-family: 'Roboto';
	padding: 0px;
	margin: 0px;
	background-color: var(--color-light);
	background-image: url("/assets/gfx/header-gradient.svg");
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: left top;
}

.content {
	overflow-x: hidden;
}

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

.content-wrapper {
	width: 100%;
	max-width: 1600px;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
	padding-left: 20px;
	padding-right: 20px;
	position: relative;
}


/* TITLE */
.title {
	height: 140px;
}

.title .content-wrapper {
	padding-top: 40px;
	padding-bottom: 40px;
	background-image: url("/assets/gfx/title-background.png");
	background-repeat: no-repeat;
	background-position: top right;
	background-size: auto 80%;
	height: 100%;
}

.title .logo {
	height: 50%;
	display: inline-block;
	position: absolute;
	left: 40px;
	top: 38%;
	transform: translateY(-50%);
}

.title .logo img {
	height: 100%;
}

.title h1 {
	color: var(--color-red);
	font-size: 30px;
	position: absolute;
	margin: 0px;
	top: 50%;
	transform: translateY(-50%);
	text-align: center;
	width: 100%;
	box-sizing: border-box;
	padding-left: 280px;
	padding-right: 260px;
}


/* CATEGORIES */
.categories {
	padding-left: 0px;
	padding-right: 0px;
}

.categories ul {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
	padding: 0px;
	margin: 0px;
	list-style: none;
}

.categories ul li {
	box-sizing: border-box;
	padding: 30px 20px 20px 20px;
	position: relative;
	padding-bottom: 70%;
	cursor: pointer;
}

.categories ul li p {
	color: var(--color-light);
	text-align: center;
	font-size: 22px;
	margin: 0px;
	font-weight: 700;
}

.categories ul li img {
	width: calc(100% - 40px);
	bottom: 20px;
	left: 20px;
	position: absolute;
}



/* BREADCRUMB */
.breadcrumb {
	list-style: none;
	padding: 0px;
	margin: 0px;
	margin-bottom: 10px;
	display: grid;
	column-gap: 10px;
	grid-template-columns: 40px 1fr;
	color: var(--color-light);
	display: none;
}

.product .breadcrumb {
	display: grid;
}

.breadcrumb li {
	position: relative;
}

.breadcrumb ul.arrow {
	display: grid;
	width: 60%;
	list-style: none;
	padding: 0px;
	margin: 0px;
	margin-bottom: 10px;
	grid-template-columns: 3fr 2fr 2fr 2fr;
	height: 20px;
	margin-left: auto;
	margin-right: auto;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	cursor: pointer;
}

.breadcrumb ul.arrow li {
	background-image: url("/assets/gfx/arrow.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: auto 100%;
}

.breadcrumb ul.arrow li:nth-child(2) {
	opacity: 0.8;
	background-position: center right;
}

.breadcrumb ul.arrow li:nth-child(3) {
	opacity: 0.6;
	background-position: center right;
}

.breadcrumb ul.arrow li:nth-child(4) {
	opacity: 0.4;
	background-position: center right;
}

.breadcrumb p {
	width: 100%;
	margin: 0px;
	box-sizing: border-box;
	padding: 10px 20px;
	font-weight: 700;
}

/* CATEGORY */
.category {
	padding-left: 0px;
	padding-right: 0px;
}

.category ul.categories-grid {
	list-style: none;
	display: grid;
	grid-template-columns: 100px 240px 1fr;
	column-gap: 10px;
	padding: 0px;
	margin: 0px;
}

.category ul.categories-grid li:nth-child(1) div {
	text-align: center;
	box-sizing: border-box;
	padding: 10px;
	font-weight: 400;
	font-size: 14px;
	cursor: pointer;
}

.category ul.categories-grid li:nth-child(1) img {
	width: 80%;
	margin-bottom: 10px;
}

.category ul.categories-grid li:nth-child(2) div {
	text-align: center;
	box-sizing: border-box;
	padding: 20px 10px 10px 10px;
	font-weight: 700;
	font-size: 22px;
}

.category ul.categories-grid li:nth-child(2) img {
	width: 100%;
}

.category ul.categories-grid li:nth-child(1) p,
.category ul.categories-grid li:nth-child(2) p {
	margin: 0px;
	color: var(--color-light);
}

.category ul.categories-grid li:nth-child(1) div ul {
	display: grid;
	width: 60%;
	list-style: none;
	padding: 0px;
	margin: 0px;
	margin-bottom: 10px;
	grid-template-columns: 3fr 2fr 2fr 2fr;
	height: 30px;
	margin-left: auto;
	margin-right: auto;
}

.category ul.categories-grid li:nth-child(1) div ul li {
	background-image: url("/assets/gfx/arrow.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: auto 100%;
}

.category ul.categories-grid li:nth-child(1) div ul li:nth-child(2) {
	opacity: 0.8;
	background-position: center right;
}

.category ul.categories-grid li:nth-child(1) div ul li:nth-child(3) {
	opacity: 0.6;
	background-position: center right;
}

.category ul.categories-grid li:nth-child(1) div ul li:nth-child(4) {
	opacity: 0.4;
	background-position: center right;
}

.category ul.products {
	list-style: none;
	padding: 0px;
	margin: 0px;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
	row-gap: 10px;
	column-gap: 10px;
}

.category ul.products li {
	cursor: pointer;
	position: relative;
	padding-bottom: 73%;
	box-sizing: border-box;
	padding-top: 16px;
	padding-left: 20px;
	padding-right: 20px;
}

.category ul.products li p {
	box-sizing: border-box;
	width: 100%;
	color: var(--color-light);
	width: 100%;
	margin: 0px;
	text-align: center;
	font-weight: 700;
}

.category ul.products li .pre-preview {
	width: calc(100% - 4px);
	left: 2px;
	bottom: 2px;
	position: absolute;
	aspect-ratio: 3/2;
	padding: 0px;
	background-color: var(--color-light);
}

.category ul.products li .preview {
	width: 80%;
	padding: 0px;
	aspect-ratio: 3/2;
	background-color: var(--color-light);
	bottom: 7%;
	left: 10%;
	position: absolute;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

.btn-backtocategories {
	cursor: pointer;
}


/* PRODUCT */
.product-grid {
	display: grid;
	padding: 0px;
	margin: 0px;
	margin-top: 40px;
	list-style: none;
	column-gap: 40px;
	grid-template-columns: 1fr 1fr 1fr;
}

.product-grid h2 {
	font-size: 32px;
	margin: 0px;
}

.product-grid h3 {
	font-size: 24px;
	margin: 0px;
	margin-bottom: 2px;
}

.product-grid p {
	margin-top: 0px;
	margin-bottom: 14px;
	line-height: 1.5;
	font-size: 14px;
}

.product-grid li.center {
	text-align: center;
}

.product-grid .product-image {
	max-width: 100%;
	margin-top: 30px;
	max-height: 700px;
	border: none;
}

.product-grid .table-title {
	color: var(--color-light);
	margin-top: 20px;
	box-sizing: border-box;
	padding: 5px 10px;
	font-weight: 400;
	margin-bottom: 0px;
}

.product-grid .technicals {
	list-style: none;
	display: grid;
	grid-template-columns: auto auto;
	padding: 0px;
	margin: 0px;
	font-size: 14px;
}

.product-grid .technicals li {
	padding: 5px 10px;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-right-width: 1px;
	border-right-style: solid;
}

.product-grid .technicals li:nth-child(even) {
	border-right: none;
}

/* BUTTON */
.button {
	border-radius: 4px;
	color: var(--color-light);
	text-decoration: none;
	margin-top: 20px;
	box-sizing: border-box;
	padding: 12px 30px;
	display: inline-block;
}

/* FOOTER */
.footer {
	text-align: center;
	padding-top: 50px;
}

.footer p {
	font-size: 12px;
}


/* GALLERY */
.gallery {
	padding: 0px;
	margin: 0px;
	margin-top: 20px;
	border-style: solid;
	border-width: 1px;
	list-style: none;
}

.gallery li {
	padding-bottom: 1px !important;
}

.gallery img {
	width: 100%;
	border: none;
	margin-bottom: -5px;
}


/* MAGNIFIC POPUP */
.mfp-content {
	max-width: 1300px !important;
	background-color: var(--color-light);
	box-sizing: border-box;
}

.mfp-figure figure {
	background-color: var(--color-light);
}

.mfp-bottom-bar {
	box-sizing: border-box;
	padding-left: 10px;
	padding-right: 10px;
}

.mfp-iframe-holder .mfp-close, .mfp-image-holder .mfp-close {
	right: 0px;
}

.mfp-title,
.mfp-iframe-holder .mfp-close, .mfp-image-holder .mfp-close {
	color: rgb(0,0,0);
}

img.mfp-img {
	padding-left: 10px;
	padding-right: 10px;
}



/* RESPONSIVES */
@media screen and (max-width: 1600px) {

	.category ul.categories-grid li:nth-child(1) div {
		font-size: 12px;
	}

	.category ul.categories-grid {
		grid-template-columns: 80px 160px 1fr;
	}

	.category ul.categories-grid li:nth-child(2) div {
		font-size: 16px;
	}

	.category ul.products {
		grid-template-columns: 1fr 1fr 1fr 1fr;
	}

}

@media screen and (max-width: 1100px) {

	.category ul.categories-grid {
		grid-template-columns: 1fr;
	}

	.category ul.categories-grid li.category-column:nth-child(1),
	.category ul.categories-grid li.category-column:nth-child(2) {
		display: none;
	}

	.breadcrumb {
		display: grid;
	}

	.product-grid {
		grid-template-columns: 1fr 200px 1fr;
	}

	.product-grid h2 {
		font-size: 28px;
	}

}

@media screen and (max-width: 900px) {

	.categories ul {
		grid-template-columns: 1fr 1fr 1fr 1fr;
	}

	.categories ul li p {
		font-size: 20px;
	}

	.title h1 {
		font-size: 24px;
	}

	.product-grid {
		grid-template-columns: 1fr;
	}

	.product-grid li {
		padding-bottom: 20px;
	}

	.product-grid li.center {
		order: 1;
	}

	.product-grid li.left {
		order: 2;
	}

	.product-grid li.right {
		order: 3;
	}

}

@media screen and (max-width: 800px) {

	.category ul.products {
		grid-template-columns: 1fr 1fr 1fr;
	}

}

@media screen and (max-width: 700px) {

	.categories ul {
		grid-template-columns: 1fr 1fr 1fr;
	}

	.title h1 {
		display: none;
	}

	.category ul.products {
		grid-template-columns: 1fr 1fr;
	}

	.category ul.products li p {
		font-size: 14px;
	}

}

@media screen and (max-width: 500px) {

	.categories ul {
		grid-template-columns: 1fr 1fr;
	}

	.title {
		height: 110px;
	}

	.title .logo {
		left: 20px;
	}

	.title .content-wrapper {
		background-size: auto 60%;
	}

}

@media screen and (max-width: 400px) {

	.category ul.products {
		grid-template-columns: 1fr;
	}

}