@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;1,200;1,300;1,400;1,500;1,600;1,700&display=swap");

/**** Global style *****/
*,
p {
	margin: 0;
	padding: 0;
	font-family: "Poppins", sans-serif;
	color: var(--dark);
}

:root {
	--primary: #246068;
	--blue: #3a4a66;
	--secondary: #a88e55;
	--green: #93d500;
	--red: #e54d1e;
	--dark: #56595c;
	--gray: #ebe8e8;
}

body {
	position: relative;
	overflow-x: hidden;
	min-height: 100vh;
}

body::before {
	content: " ";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	opacity: 0.08;
	background-image: url("../images/bg.png");
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	background-position: center;
	z-index: -1;
}

h1,
h2,
h3,
h4,
h5 {
	font-family: "Poppins", sans-serif;
	margin: 0;
}

li {
	list-style: none;
}

a {
	text-decoration: none;
}

button.btn-inherit {
	background-color: transparent;
	border: none;
}

.app-container {
	padding-left: 1rem;
	padding-right: 1rem;
	margin: auto;
}

body {
	font-family: "Poppins", sans-serif;
	overflow-x: hidden !important;
	color: var(--gray);
}

.app-logo {
	width: 100px;
}

.bg-primary {
	background-color: var(--primary);
}

.color-secondary {
	color: var(--secondary);
}

.gap-6 {
	gap: 4rem;
}

.w-94 {
	width: 94%;
}

a.color-secondary:hover,
a.color-secondary:active,
a.color-secondary:focus,
button.color-secondary:hover,
button.color-secondary:active,
button.color-secondary:focus {
	color: var(--blue);
}

.color-primary {
	color: var(--primary);
}

a.color-primary:hover,
a.color-primary:active,
a.color-primary:focus,
button.color-primary:hover,
button.color-primary:active,
button.color-primary:focus {
	color: var(--secondary);
}

button {
	background-color: transparent;
	border: none;
}

.btn-theme {
	background-color: var(--primary);
	color: #ffffff;
	font-weight: 500;
	font-size: clamp(14px, 3vw, 20px);
	padding: 10px 30px;
	transition: all ease 300ms;
	border-radius: 30px;
}

.btn-theme:hover {
	background-color: var(--secondary);
	color: #ffffff;
}

.btn-half.btn-left {
	border-radius: 30px 0 0 30px;
}

.btn-half.btn-right {
	border-radius: 0 30px 30px 0;
}

.btn-hover-danger {
	background-color: var(--red);
	color: #ffffff;
}

.text-theme {
	color: var(--primary);
}

.fw-400 {
	font-weight: 400 !important;
}

.fw-500 {
	font-weight: 500 !important;
}

.fw-600 {
	font-weight: 600 !important;
}

.fw-700 {
	font-weight: 700 !important;
}

.fs-16 {
	font-size: 16px !important;
}

.fs-18 {
	font-size: 18px !important;
}

.border-t {
	border-top: 4px solid var(--blue);
}

.border-b {
	border-bottom: 4px solid var(--blue);
}

.border-radius-10 {
	border-radius: 10px;
}

.item-col-c {
	display: flex;
	flex-direction: column;
	align-items: center;
}

/***Header****/
.input-search-container {
	position: relative;
}

.input-search {
	border: none;
	border-bottom: 2px solid var(--dark);
	padding: 2px;
	color: var(--dark);
	outline: none;
	font-weight: 400;
	width: 100%;
	font-size: clamp(12px, 3vw, 16px);
	padding-right: 25px;
}

.input-search::placeholder {
	color: var(--dark);
}

.btn-search {
	background-color: transparent;
	border: none;
	position: absolute;
	top: 0;
	right: 0;
}

/* ***Navbar */
.navbar-custom .navbar-toggler:focus {
	box-shadow: none;
}

.custom-nav-link {
	color: var(--dark) !important;
	font-size: clamp(14px, 3vw, 16px);
	font-weight: 400;
	line-height: 20px;
	font-family: "Poppins";
	white-space: nowrap;
}

.custom-nav-link:hover,
.custom-nav-link:active,
.custom-nav-link.active {
	color: var(--secondary) !important;
}

.navbar-toggler:focus {
	outline: 1px solid #00a5cd !important;
	box-shadow: none !important;
}

.basket {
	width: 30px;
}

/* Menu Mobile */
.sidebar {
	position: absolute;
	top: 0;
	background-color: var(--blue);
	width: 300px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 3rem 10px;
	height: 100vh;
	z-index: 999;
	transition: all ease 0.5s;
}

.sidebar a {
	color: #fff;
	font-size: 20px;
	line-height: 30px;
	font-weight: 400;
}

.sidebar a.active {
	color: var(--secondary);
	font-weight: 600;
}

.btn-close {
	position: absolute;
	padding: 1rem;
	top: 10px;
	right: 10px;
}

.btn-close i {
	color: #fff !important;
	font-weight: bold;
}

/*** Footer ***/
footer {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
}

footer .logo_footer {
	height: 80px;
}

.footer-list-item {
	margin-bottom: 5px;
}

.footer-list-item a {
	color: var(--dark);
	font-weight: 400;
	font-style: normal;
	font-size: 16px;
	text-wrap: nowrap;
}

footer .cecop {
	height: 80px;
}

footer ul {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
}

.footer-list-item a:hover {
	color: var(--secondary);
}

/**** Srool bar  */
html::-webkit-scrollbar {
	width: 8px;
}

html::-webkit-scrollbar-track {
	box-shadow: inset 0 0 5px gray;
	border-radius: 4px;
}

html::-webkit-scrollbar-thumb {
	background: var(--secondary);
	border-radius: 4px;
}

/* **** Accueil main */
.home-grid {
	position: relative;
}

.home-grid img {
	height: 200px;
}

.home-grid h3 {
	color: var(--blue);
	font-size: clamp(16px, 3vw, 32px);
	line-height: clamp(22px, 3vw, 48px);
	font-weight: 700;
	transition: all ease 300ms;
}

.home-grid:hover h3 {
	/* transform: scale(1.5) translate(50px, 10px); */
	font-size: clamp(18px, 3.3vw, 36px);
	color: var(--secondary);
}

.grid-name-container {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.home-contact-section {
	background-image: url(../images/contact.png);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: right;
	display: flex;
	justify-content: flex-end;
}

.home-contact-section a {
	color: var(--primary);
	font-weight: 700;
	font-size: 24px;
}

/*********** Connexion **************/
.connexion-page {
	min-height: 100vh;
}

.connexion-logo {
	width: 250px;
}

.connexion-page-title {
	color: var(--blue);
	font-weight: 600;
	font-size: clamp(18px, 3vw, 36px);
}

.connexion-content {
	position: absolute;
	top: 45%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 50%;
}

.login-form-container {
	border: 1px solid var(--dark);
	border-radius: 40px;
	background-color: white;
}

.login-form-label {
	color: var(--blue);
	font-size: 18px;
	font-weight: 600;
}

.login-form-control {
	border: 1px solid var(--dark);
}

.login-form-control:focus {
	border-color: var(--primary);
	box-shadow: 0 0 0 0.1rem var(--primary);
}

.forget-password-link {
	color: var(--dark);
	text-align: center;
}

.forget-password-link:hover {
	color: var(--dark);
	text-decoration: underline;
}

.eye-icon {
	position: absolute;
	top: 5px;
	right: 10px;
	font-size: 20px;
}

/* **********Gammes ********************* */
.page-title2 {
	font-weight: 600;
	color: var(--blue);
	margin: 0;
}

.page-title3 {
	font-weight: 600;
	font-size: 24px;
	color: var(--blue);
	margin: 0;
}

.breadcrumb-link {
	color: var(--dark) !important;
	font-style: normal;
	font-weight: 400;
	font-size: 16px;
}

.breadcrumb-item.active {
	color: var(--secondary);
}

.page-title {
	color: var(--blue);
	font-weight: 600;
	font-size: clamp(16px, 3vw, 36px);
}

.page-title-border {
	border-bottom: 3px solid var(--blue);
	display: inline-block;
}

.gammes-item {
	color: var(--dark);
	font-weight: 400;
	list-style: none;
	/* margin-bottom: 10px; */
	font-size: 18px;
	margin: 0;
	position: relative;
}

.gammes-item::before {
	content: "";
	width: 10px;
	height: 10px;
	display: flex;
	position: absolute;
	left: -17px;
	top: 10px;
	background-color: var(--blue);
}

.gammes-item.active {
	font-weight: 500;
	color: var(--secondary);
}

.gammes-item.active::before {
	background-color: var(--secondary) !important;
}

.filter-container {
	display: flex;
	gap: 10px;
}

.filter-input-prix {
	outline: none;
}

.product-card {
	border: none;
}

.card-img-container {
	border: 2px solid var(--blue);
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 2rem;
	height: 400px;
	width: 100%;
	background-color: #fff;
}

.card-img-container img {
	transition: all ease 300ms;
}

.image-product {
	object-fit: contain;
	height: 350px;
}

.card-img-container img:hover {
	transform: scale(1.1);
}

.card-product-body {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.card-product-body h5,
.card-ref {
	color: var(--dark);
	font-weight: 400;
	font-size: clamp(14px, 3vw, 16px);
	font-family: "Poppins";
	margin: 0;
	line-height: 30px;
}

.card-price {
	color: var(--primary);
	font-weight: 600;
	font-family: "Poppins";
	font-style: normal;
	font-size: clamp(14px, 3vw, 16px);
}

/*****Contact ****/
.custom-form-label {
	font-family: "Poppins";
	font-weight: 400;
	font-style: normal;
	color: var(--dark);
	font-size: 16px;
}

.custom-form-control {
	border: 1px solid var(--gray);
	background-color: var(--gray) !important;
	border-radius: 20px;
}

.custom-form-control:focus {
	border-color: var(--blue);
	box-shadow: 0 0 0 0.02rem var(--blue);
}

.textarea-control {
	min-height: 150px !important;
	max-height: 150px;
	background-color: #f1f1f1;
}

.custom-form-check-input {
	border-color: var(--dark);
	width: 24px;
	height: 24px;
	margin-right: 4px;
}

.form-check-label {
	line-height: 34px;
}

.form-check {
	padding: 0;
	display: flex;
	align-items: center;
}

.custom-form-check-input:checked {
	background-color: var(--primary);
	box-shadow: none;
	border-color: var(--gray);
}

.require-text {
	opacity: 0.8;
	font-size: 12px;
}

.info-devis {
	font-size: 14px;
	line-height: 18px;
}

/*************Detail produit ********/
.product-img-thumbnails {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 3px;
}

.slider {
	height: 450px;
	overflow: hidden;
	transition: all ease-out 0.75;
}

.product-img-thumbnail {
	cursor: pointer;
	display: block;
	width: 90px;
	height: 100px;
	object-fit: contain;
}

.product-img-thumbnail-container {
	margin: 5px 0;
	width: 140px;
	padding: 20px;
	border: 2px solid #d5d5d5;
}

.product-img-thumbnail-container:has(img.active-thumbnail) {
	border-color: #00a5cd !important;
}

.img-featured-container {
	background-color: #fff;
	height: 100%;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px;
	border: 2px solid var(--blue);
}

.img-featured {
	width: 100%;
	object-fit: contain;
    max-height: 100vh;
}

.carousel-container {
	border: 2px solid var(--blue);
	padding: 5px 2rem;
	margin-bottom: 2rem;
}

.c-carousel-item {
	height: 300px;
	box-sizing: content-box;
}

.carousel-produit-image {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

hr.divider {
	background-color: var(--primary);
	height: 4px;
	opacity: 1;
	border: none;
	margin: 1.5rem 0;
}

.carateristiques-produits p {
	font-weight: 600;
	font-size: 14px;
}

.product-price {
	font-size: 20px;
	left: 28px;
	color: var(--primary) !important;
}

.input-total-quantity {
	border: 2px solid var(--secondary);
	border-radius: 5px;
	padding: 5px;
	font-weight: 600;
	outline: none;
	width: 100px;
}

/**** Mon compte  */
.account-info p,
.account-info h6 {
	margin: 0;
}

.account-info p {
	font-weight: 400;
}

.compte-btn-container {
	border-left: 5px solid var(--blue);
}

.fz-icon {
	font-size: 12px;
}

.compte-btn-container {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 2rem;
}

.btn-compte {
	display: flex;
	align-items: center;
	gap: 1rem;
	color: #fff !important;
	font-size: 16px;
}

.btn-compte span,
.btn-compte i {
	color: #fff;
}

/* ***********Panier****** */
.panier-table thead {
	background-color: var(--primary);
	color: #ffffff;
	border: none;
}

.panier-table tr th {
	font-style: normal;
	font-weight: 400 !important;
	color: #ffffff;
	font-size: 18px;
	letter-spacing: 0.02em;
	padding: 12px 14px;
}

.panier-table thead th:first-child {
	border-top-left-radius: 40px;
	border-bottom-left-radius: 40px;
}

.panier-table thead th:last-child {
	border-top-right-radius: 40px;
	border-bottom-right-radius: 40px;
}

.panier-table tr td {
	font-style: normal;
	font-weight: 400 !important;
	font-size: 16px;
}

.panier-table tr {
	vertical-align: middle;
}

.panier-table table tbody tr:last-child {
	border-bottom: 4px solid #707070 !important;
}

.produit-picture-container img {
	width: 100px;
	height: 100px;
}

.admin-produit-picture-container img {
	width: 50px;
	height: 50px;
}

.panier-input {
	border: 2px solid var(--secondary);
	outline: none;
	width: 70px;
	padding: 5px;
	border-radius: 10px;
}

.btn-action-del {
	background-color: transparent;
	border: none;
	font-size: 24px;
	color: var(--dark);
}

.total-ht,
.total-ttc {
	font-weight: 400;
	font-size: 19px;
	line-height: 24px;
	margin: 0;
}

.total-ttc {
	color: var(--red);
}

.livraison-adresses h5 {
	border-bottom: 4px solid #707070;
	padding-bottom: 0.7rem;
	margin-bottom: 1rem;
	font-weight: 600;
	font-size: 20px;
	color: var(--blue);
}

.livraison-adresses label {
	font-weight: 400;
	font-size: 16px;
	line-height: 28px;
}

.form-list-address {
	width: 70%;
	font-weight: 500;
	border: 2px solid var(--dark);
	background-color: #ffffff;
	padding: 3px 10px;
	border-radius: 30px;
}

.livraison-adresses p {
	font-style: normal;
	font-weight: 400;
	font-size: 16px;
	line-height: 28px;
}

.text-info-red,
.text-info-red strong {
	font-size: 18px;
	line-height: 24px;
	font-weight: 400;
	color: var(--red);
}

.panier-text-info {
	font-size: 16px;
	font-weight: 400;
}

/* **Mail confirmation */
.confirm-commande-container {
	border: 1px solid var(--dark);
	border-radius: 40px;
	background-color: white;
}

/*****Form image preview ****/

.custom-form-group>.img-preview {
	display: flex;
	flex-wrap: wrap;

	&>img {
		width: 30%;
		object-fit: contain;
		padding: 5px;

	}
}

/*****Admin BO ****/

.card i.left-icon {
	font-size: 5rem;
	margin-left: 2rem;

}


/* MARKDOWN */

red {
    color: red!important;
}

aliceblue {
    color: aliceblue!important;
}

antiquewhite {
    color: antiquewhite!important;
}

aquamarine {
    color: aquamarine!important;
}

azure {
    color: azure!important;
}

beige {
    color: beige!important;
}

bisque {
    color: bisque!important;
}

blanchedalmond {
    color: blanchedalmond!important;
}

blueviolet {
    color: blueviolet!important;
}

brown {
    color: brown!important;
}

burlywood {
    color: burlywood!important;
}

cadetblue {
    color: cadetblue!important;
}

chartreuse {
    color: chartreuse!important;
}

chocolate {
    color: chocolate!important;
}

coral {
    color: coral!important;
}

cornflowerblue {
    color: cornflowerblue!important;
}

cornsilk {
    color: cornsilk!important;
}

crimson {
    color: crimson!important;
}

cyan {
    color: cyan!important;
}

darkblue {
    color: darkblue!important;
}

darkcyan {
    color: darkcyan!important;
}

darkgoldenrod {
    color: darkgoldenrod!important;
}

darkgray {
    color: darkgray!important;
}

darkgreen {
    color: darkgreen!important;
}

darkgrey {
    color: darkgrey!important;
}

darkkhaki {
    color: darkkhaki!important;
}

darkmagenta {
    color: darkmagenta!important;
}

darkolivegreen {
    color: darkolivegreen!important;
}

darkorange {
    color: darkorange!important;
}

darkorchid {
    color: darkorchid!important;
}

darkred {
    color: darkred!important;
}

darksalmon {
    color: darksalmon!important;
}

darkseagreen {
    color: darkseagreen!important;
}

darkslateblue {
    color: darkslateblue!important;
}

darkslategray {
    color: darkslategray!important;
}

darkslategrey {
    color: darkslategrey!important;
}

darkturquoise {
    color: darkturquoise!important;
}

darkviolet {
    color: darkviolet!important;
}

deeppink {
    color: deeppink!important;
}

deepskyblue {
    color: deepskyblue!important;
}

dimgray {
    color: dimgray!important;
}

dimgrey {
    color: dimgrey!important;
}

dodgerblue {
    color: dodgerblue!important;
}

firebrick {
    color: firebrick!important;
}

floralwhite {
    color: floralwhite!important;
}

forestgreen {
    color: forestgreen!important;
}

gainsboro {
    color: gainsboro!important;
}

ghostwhite {
    color: ghostwhite!important;
}

gold {
    color: gold!important;
}

goldenrod {
    color: goldenrod!important;
}

greenyellow {
    color: greenyellow!important;
}

grey {
    color: grey!important;
}

honeydew {
    color: honeydew!important;
}

hotpink {
    color: hotpink!important;
}

indianred {
    color: indianred!important;
}

indigo {
    color: indigo!important;
}

ivory {
    color: ivory!important;
}

khaki {
    color: khaki!important;
}

lavender {
    color: lavender!important;
}

lavenderblush {
    color: lavenderblush!important;
}

lawngreen {
    color: lawngreen!important;
}

lemonchiffon {
    color: lemonchiffon!important;
}

lightblue {
    color: lightblue!important;
}

lightcoral {
    color: lightcoral!important;
}

lightcyan {
    color: lightcyan!important;
}

lightgoldenrodyellow {
    color: lightgoldenrodyellow!important;
}

lightgray {
    color: lightgray!important;
}

lightgreen {
    color: lightgreen!important;
}

lightgrey {
    color: lightgrey!important;
}

lightpink {
    color: lightpink!important;
}

lightsalmon {
    color: lightsalmon!important;
}

lightseagreen {
    color: lightseagreen!important;
}

lightskyblue {
    color: lightskyblue!important;
}

lightslategray {
    color: lightslategray!important;
}

lightslategrey {
    color: lightslategrey!important;
}

lightsteelblue {
    color: lightsteelblue!important;
}

lightyellow {
    color: lightyellow!important;
}

limegreen {
    color: limegreen!important;
}

linen {
    color: linen!important;
}

magenta {
    color: magenta!important;
}

mediumaquamarine {
    color: mediumaquamarine!important;
}

mediumblue {
    color: mediumblue!important;
}

mediumorchid {
    color: mediumorchid!important;
}

mediumpurple {
    color: mediumpurple!important;
}

mediumseagreen {
    color: mediumseagreen!important;
}

mediumslateblue {
    color: mediumslateblue!important;
}

mediumspringgreen {
    color: mediumspringgreen!important;
}

mediumturquoise {
    color: mediumturquoise!important;
}

mediumvioletred {
    color: mediumvioletred!important;
}

midnightblue {
    color: midnightblue!important;
}

mintcream {
    color: mintcream!important;
}

mistyrose {
    color: mistyrose!important;
}

moccasin {
    color: moccasin!important;
}

navajowhite {
    color: navajowhite!important;
}

oldlace {
    color: oldlace!important;
}

olivedrab {
    color: olivedrab!important;
}

orangered {
    color: orangered!important;
}

orchid {
    color: orchid!important;
}

palegoldenrod {
    color: palegoldenrod!important;
}

palegreen {
    color: palegreen!important;
}

paleturquoise {
    color: paleturquoise!important;
}

palevioletred {
    color: palevioletred!important;
}

papayawhip {
    color: papayawhip!important;
}

peachpuff {
    color: peachpuff!important;
}

peru {
    color: peru!important;
}

pink {
    color: pink!important;
}

plum {
    color: plum!important;
}

powderblue {
    color: powderblue!important;
}

rosybrown {
    color: rosybrown!important;
}

royalblue {
    color: royalblue!important;
}

saddlebrown {
    color: saddlebrown!important;
}

salmon {
    color: salmon!important;
}

sandybrown {
    color: sandybrown!important;
}

seagreen {
    color: seagreen!important;
}

seashell {
    color: seashell!important;
}

sienna {
    color: sienna!important;
}

skyblue {
    color: skyblue!important;
}

slateblue {
    color: slateblue!important;
}

slategray {
    color: slategray!important;
}

slategrey {
    color: slategrey!important;
}

snow {
    color: snow!important;
}

springgreen {
    color: springgreen!important;
}

steelblue {
    color: steelblue!important;
}

tan {
    color: tan!important;
}

thistle {
    color: thistle!important;
}

tomato {
    color: tomato!important;
}

transparent {
    color: transparent!important;
}

turquoise {
    color: turquoise!important;
}

violet {
    color: violet!important;
}

wheat {
    color: wheat!important;
}

whitesmoke {
    color: whitesmoke!important;
}

yellowgreen {
    color: yellowgreen!important;
}



silver {
    color: silver!important;
}

gray {
    color: gray!important;
}

white {
    color: white!important;
}

maroon {
    color: maroon!important;
}

red {
    color: red!important;
}

purple {
    color: purple!important;
}

fuchsia {
    color: fuchsia!important;
}

green {
    color: green!important;
}

lime {
    color: lime!important;
}

olive {
    color: olive!important;
}

yellow {
    color: yellow!important;
}

navy {
    color: navy!important;
}

blue {
    color: blue!important;
}

teal {
    color: teal!important;
}

aqua {
    color: aqua!important;
}

underline {
    text-decoration: underline!important;
}

striped {
    text-decoration: line-through!important;
}