@import url("https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400;1,500;1,600;1,700;1,800&display=swap");
/**** Global style *****/
*,
p {
	margin: 0;
	padding: 0;
	font-family: "Open Sans", sans-serif;
}

:root {
	--primary-color: #8b1b59;
	--orange-color: #f37320;
	--dark-color: #313248;
	--gray: #babec1;
	--bg-slate: #f6f6f6;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: "Open Sans", sans-serif;
}
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: "Open Sans", sans-serif;
	overflow-x: hidden;
	color: var(--dark-color);
}
.bg-slate {
	background-color: var(--bg-slate);
}
.bg-primary-color {
	background-color: var(--primary-color);
}
button {
	background-color: transparent;
	border: none;
}
.btn-theme {
	background-color: var(--orange-color);
	color: #ffffff;
	font-weight: 500;
	font-size: clamp(16px, 3vw, 22px);
	padding: 5px 30px;
}
.btn-theme:hover {
	background-color: var(--orange-color);
	color: #ffffff;
}
.text-theme {
	color: var(--primary-color);
}
.text-orange {
	color: var(--orange-color);
}
.fw-400 {
	font-weight: 400 !important;
}
.fw-500 {
	font-weight: 500 !important;
}
.fw-600 {
	font-weight: 600 !important;
}
.fw-700 {
	font-weight: 700 !important;
}
/***Header****/
.first-header {
	display: flex;
	/* align-items: center; */
	justify-content: space-between;
	flex-direction: column;
}
.input-search-container {
	position: relative;
}
.input-search {
	border: none;
	border-bottom: 2px solid var(--primary-color);
	padding: 2px;
	color: var(--primary-color);
	outline: none;
	font-weight: 400;
	width: 100%;
	font-size: clamp(12px, 3vw, 16px);
	padding-right: 25px;
}
.input-search::placeholder {
	color: var(--dark-color);
}
.btn-search {
	background-color: transparent;
	border: none;
	position: absolute;
	top: 0;
	right: 0;
}
/* .input-search:not(:placeholder-shown) + button.btn-search {
	right: 15px;
} */
/* ***Navbar */
.navbar-custom .navbar-nav {
	background: #f6f6f6;
	padding: 10px;
	margin-top: 10px;
	border-radius: 10px;
	align-items: end;
}
.navbar-custom.navbar > .container-fluid {
	justify-content: end !important	;
}
.navbar-custom .navbar-toggler:focus {
	box-shadow: none;
}
.custom-nav-link {
	color: var(--dark-color) !important;
	font-size: clamp(16px, 3vw, 18px);
	font-weight: 500;
	line-height: 20px;
}
.custom-nav-link:hover,
.custom-nav-link:active,
.custom-nav-link.active {
	color: var(--orange-color) !important;
}

/*** Footer ***/
footer.footer {
	border-top: 3px solid var(--primary-color);
}
.footer-list {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.footer-list-item {
	margin-bottom: 0.5rem;
}
.footer-list-item a {
	color: var(--dark-color);
	font-weight: 400;
	font-style: normal;
}
.footer-list-item a:hover {
	color: var(--primary-color);
}
/**** Srool bar  */
html::-webkit-scrollbar {
	width: 8px;
}

html::-webkit-scrollbar-track {
	box-shadow: inset 0 0 5px var(--bg-slate);
	border-radius: 5px;
}
html::-webkit-scrollbar-thumb {
	background: var(--primary-color);
	border-radius: 5px;
}

/* **** Accueil main */
.home-grid {
	position: relative;
}
.home-grid h3 {
	color: var(--primary-color);
	font-size: clamp(16px, 3vw, 40px);
	line-height: clamp(22px, 3vw, 48px);
	font-weight: 700;
}
.event-overlay {
	background-color: rgba(243, 242, 244, 0.5);
	padding: 10px;
	width: 50%;
	position: absolute;
	top: 30px;
	box-sizing: content-box;
	text-align: center;
	padding: 20px 0;
}
.grid-name-container {
	position: absolute;
	top: 30px;
	left: 30px;
}
/* Gammes pages */
.image-product {
	width: 100%;
	height: 100%;
}
.breadcrumb-link {
	color: var(--dark-color) !important;
	font-style: italic;
}
.breadcrumb-item.active {
	color: var(--orange-color);
}
.page-title {
	color: var(--primary-color);
	font-weight: 700;
	font-size: clamp(16px, 3vw, 40px);
}
.page-title-border {
	border-bottom: 2px solid var(--primary-color);
	display: inline-block;
}
.gammes-item {
	color: var(--dark-color);
	font-weight: 400;
	list-style: disc;
	margin-bottom: 5px;
}
.gammes-item.active {
	font-weight: 500;
	color: var(--orange-color);
}
.filter-container {
	display: flex;
	gap: 10px;
}
.filter-input-prix {
	outline: none;
}
.product-card {
	border: none;
	color: var(--dark-color);
	text-align: center;
}
h5.card-title {
	color: var(--dark-color);
	font-weight: 500;
	font-size: clamp(16px, 3vw, 20px);
}
.product-price {
	color: var(--primary-color);
	font-weight: 500;
}
.c-pagination .c-page-link {
	display: inline-block;
	color: var(--dark-color);
	font-weight: 500;
	margin-right: 5px;
	border: none;
	background-color: transparent;
	padding: 0;
}
.pagination-title {
	font-family: "Open sans";
}
.c-page-link.active {
	color: var(--orange-color) !important;
}
/***Connexion **/
.connexion-page {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100vh;
}
.login-form-container {
	border-radius: 20px;
}
.connexion-page-info {
	font-family: "Open sans", sans-serif;
	color: var(--primary-color);
}
.custom-label {
	color: var(--dark-color);
}
.custom-form-control {
	border-color: var(--primary-color);
}
.custom-form-control:focus {
	border-color: var(--primary-color);
	box-shadow: 0 0 0 0.1rem var(--primary-color);
}
.forget-password-link {
	color: var(--dark-color);
}
.forget-password-link:hover {
	color: var(--primary-color);
	text-decoration: underline;
}
.eye-icon {
	position: absolute;
	top: 5px;
	right: 10px;
	font-size: 20px;
}
/*****Contact ****/
.contact-form-group {
	/* display: flex;
	align-items: center;
	gap: .5rem; */
}
.contact-form-label {
	font-family: "Open sans";
	font-weight: 400;
	font-style: normal;
}
.contact-form-control {
	border-radius: 0 !important;
	background-color: var(--gray);
	border: 1px solid var(--gray);
}
.contact-form-control:focus {
	border-color: var(--primary-color);
	box-shadow: 0 0 0 0.05rem var(--primary-color);
}
.textarea-control {
	min-height: 100px !important;
	max-height: 100px;
}
.contact-form-chek-input {
	border-color: var(--gray);
}
.contact-form-chek-input:checked {
	background-color: var(--orange-color);
	box-shadow: none;
	border-color: var(--gray);
}
.contact-infos {
	padding-top: 1rem;
	border-top: 3px solid var(--primary-color);
}
.contact-infos p {
	font-family: "Open sans";
}
/*** Demande de devis ********/
.demande-text-infos p {
	margin: 0;
	font-weight: 500;
	font-family: "Open sans";
	font-style: normal;
	line-height: 22px;
}
/* ***Detail produit */
hr.divider {
	background-color: var(--primary-color);
	height: 4px;
	opacity: 1;
	border: none;
	margin: 1.5rem 0;
}
.produit-info p {
	font-weight: 400;
	color: #000;
	margin: 0;
	line-height: 20px;
}
.produit-ref {
	font-weight: 600;
	font-style: italic;
}
.produit-price {
	color: var(--primary-color) !important;
}
span.price {
	font-size: 25px !important;
}
.product-input {
	border: 1px solid #313248;
	outline: none;
}
.produit-img {
	height: 35vh;
}
.produit-img-large {
	height: 35vh;
}
.produit-table td {
	border-right: 1px solid #000;
}
.produit-table tr:not(:last-child) {
	border-bottom: 1px solid #000;
}
.product-commande-infos h6 {
	font-weight: 700;
	font-size: 20px;
}
.product-commande-infos p.text-infos {
	font-weight: 600;
	font-style: italic;
	color: var(--primary-color);
}
.input-total-quantity {
	border: 2px solid var(--orange-color);
	border-radius: 5px;
	padding: 5px;
	font-weight: 600;
	outline: none;
}
/**** Mon compte  */
.account-info p,
.account-info h6 {
	margin: 0;
}
.account-info p {
	font-weight: 400;
}
.compte-btn-container {
	border-left: 3px solid var(--primary-color);
}
.fz-icon {
	font-size: 12px;
}
.compte-btn-container {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

/* ***********Panier****** */
.panier-table thead {
	background-color: var(--primary-color);
	color: #ffffff;
}
.panier-table tr th {
	font-style: normal;
	font-weight: 600 !important;
}
.panier-table tr td {
	font-style: normal;
	font-weight: 400 !important;
}
.panier-table tr {
	vertical-align: middle;
}
.panier-table table tr:last-child {
	border-bottom: 3px solid var(--primary-color) !important;
}
.produit-picture-container img {
	width: 100px;
}
.panier-input {
	border: 2px solid var(--primary-color);
	outline: none;
	width: 50px;
	padding: 2px;
}
.btn-action-del {
	background-color: transparent;
	border: none;
	font-size: 24px;
	color: var(--primary-color);
}
.total-commande-infos h6,
.total-commande-infos p {
	font-weight: 600;
	margin: 0;
}
.livraison-adresses h5 {
	border-bottom: 2px solid var(--primary-color);
	padding-bottom: 0.5rem;
	margin-bottom: 1rem;
	font-weight: 700;
	font-size: 24px;
}
.livraison-adresses label {
	font-weight: 600;
	font-size: 14px;
}
.form-list-address {
	width: 70%;
	font-weight: 500;
	border: 2px solid #000;
	background-color: #ffffff;
	padding: 3px 2px;
}
.livraison-adresses p {
	font-style: normal;
	font-weight: 600;
	margin-bottom: 10px;
	font-size: 16px;
}
.edit-address-btn {
	color: var(--orange-color);
}
.confirm-commande-page p {
	font-weight: 600;
	margin-bottom: 0.5rem;
	font-size: 20px;
}
.primary-link {
	color: var(--primary-color);
}
.primary-link:hover {
	color: var(--primary-color);
}
.mail-contact,
.mail-contact:hover {
	color: var(--dark-color);
}
