:root{
	--color-or: #e7c15b;
	--color-argent: #7a7a7a;
	--color-platine: #ced0dd;
	--color-palladium: #7f7679;
	--color-black50:rgba(0,0,0,0.5);
	--color-darkgray:#404040;
	--color-gray:#697686;
	--color-middlegray:#e9e9e9;
	--color-grayblue:#2b3649;
	--color-white50:rgba(255,255,255,0.5);
	--color-green:#128A5A;
	--color-red:#de383a;
	--color-btnRed:#de383a;
	--color-light-green:#d8eee5;
	--color-light-red:#FFC6C6;
}

@import url('https://fonts.googleapis.com/css2?family=Open+Sans&display=swap');
body{
	font-family: 'Open Sans', sans-serif;
}
.pointer {cursor:pointer;}

.text-bold{font-weight:bold;}

.bgPrimary {background-color:var(--color-primary);}
.bgSecondary {background-color:var(--color-secondary);}
.bgGray {background-color:var(--color-gray);}
.bgMiddleGray {background-color:var(--color-middlegray);}
.bgDarkGray {background-color:var(--color-darkgray);}
.bgWhite50 {background-color:var(--color-white50);}
.bgGreen {background-color:var(--color-green);}
.bgRed {background-color:var(--color-red);}
.bgOr {background-color:var(--color-or);}
.bgLightGreen {background-color:var(--color-light-green) !important;}
.bgLightRed {background-color:var(--color-light-red) !important;}
.bgGrayBlue, .bg-color {background-color:var(--color-grayblue) !important;}
.colorOr {color:var(--color-or) !important;;}
.colorBlack50  {color:var(--color-black50) !important;;}
.colorGreen {color:var(--color-green) !important;;}
.colorRed {color:var(--color-red) !important;;}
.colorGrayBlue {color:var(--color-grayblue) !important;}
.colorDarkGray {color:var(--color-darkgray) !important;}
.colorPalladium {color:var(--color-palladium) !important;}
.colorPlatine {color:var(--color-platine) !important;}

.fs-10 {font-size:0.625rem !important;}
.fs-13 {font-size:0.8125rem !important;}
.fs-14 {font-size:0.875rem !important;}
.fs-16 {font-size:1rem !important;}
.fs-19 {font-size:1.2rem !important;}
.fs-24 {font-size:1.5rem !important;}
.fs-48 {font-size:3rem !important;}


.navbar {padding:0rem 1rem;}
.navbar-brand { padding:unset; font-size:1rem;}
.navbar-toggler, .navbar-text {	padding:unset; border:none; font-size:1rem;color:black;}
.navbar-text button {color:black;}
.navbar-toggler-icon{color:black;}
.navbar-toggler:focus, .navbar-toggler-icon:focus {outline:none;}

/* Burger: stronger contrast on phone/tablet against the header (compact size) */
.navbar-head-spec .navbar-toggler {
	border: 1.5px solid rgba(0, 0, 0, 0.55);
	border-radius: 0.2rem;
	padding: 0.15rem 0.3rem;
	margin: 0.25rem 0.4rem;
	background-color: rgba(255, 255, 255, 0.85);
}
.navbar-head-spec .navbar-toggler-icon {
	/* Thicker / higher-contrast bars (Bootstrap 4 SVG icon via filter) */
	filter: contrast(1.4) brightness(0.15);
	width: 1.15em;
	height: 1.15em;
}

/* Header auth: compact button that fits the gold bar / mobile header */
.header-auth-links {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.5rem;
	justify-content: flex-end;
	max-width: 100%;
	margin: 0.2rem 0.35rem;
}
.header-auth-links--mobile {
	justify-content: center;
	margin: 0.35rem 0.5rem;
}
.header-auth-links .btn-header-auth {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.3rem;
	margin: 0.1rem;
	padding: 0.18rem 0.55rem;
	font-size: 0.75rem;
	font-weight: 600;
	line-height: 1.2;
	border-radius: 0.25rem;
	border: 1px solid transparent;
	white-space: nowrap;
	max-width: 100%;
	text-decoration: none;
	box-shadow: none;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
.header-auth-links .btn-header-auth > .fas,
.header-auth-links .btn-header-auth > .far {
	font-size: 0.85em;
	flex-shrink: 0;
}

/* Gold top bar (#btn-conn): outline on lg+, filled grayblue below lg for contrast */
.navbar-head-spec .header-auth-links .btn-header-auth {
	background-color: transparent;
	border-color: var(--color-grayblue);
	color: var(--color-grayblue) !important;
}
.navbar-head-spec .header-auth-links .btn-header-auth:hover,
.navbar-head-spec .header-auth-links .btn-header-auth:focus {
	background-color: var(--color-grayblue);
	border-color: var(--color-grayblue);
	color: #fff !important;
	text-decoration: none;
}
@media (max-width: 991.98px) {
	.navbar-head-spec .header-auth-links .btn-header-auth {
		background-color: var(--color-grayblue);
		border-color: var(--color-grayblue);
		color: #fff !important;
	}
	.navbar-head-spec .header-auth-links .btn-header-auth:hover,
	.navbar-head-spec .header-auth-links .btn-header-auth:focus {
		background-color: #1f2838;
		border-color: #1f2838;
		color: #fff !important;
	}
}

/* Dark photo header (mobile auth under logo): gold filled button */
.headBackground .header-auth-links .btn-header-auth {
	background-color: var(--color-or);
	border-color: var(--color-or);
	color: var(--color-grayblue) !important;
	padding: 0.28rem 0.75rem;
}
.headBackground .header-auth-links .btn-header-auth:hover,
.headBackground .header-auth-links .btn-header-auth:focus {
	background-color: #d4ad45;
	border-color: #d4ad45;
	color: var(--color-grayblue) !important;
	text-decoration: none;
}

@media (max-width: 575.98px) {
	.header-auth-links .btn-header-auth {
		white-space: normal;
		text-align: center;
		padding-left: 0.45rem;
		padding-right: 0.45rem;
	}
}

#logo {text-align:center;}

.nav-link {font-size:0.8rem;}
a.nav-link{color:LightGray;}
.nav-item.active {background-color:var(--color-or);border-radius:0.3rem;font-weight:bold;}
.nav-item.active>.nav-link { color:black;}

/* CTA outline for RDV nav item only — last item in the normal nav flow */
.nav-item.nav-item-rdv > .nav-link {
	border: 1px solid var(--color-or);
	border-radius: 2rem;
	padding: 0.3rem 0.85rem;
	margin: 0.15rem 0.25rem;
	color: var(--color-or);
	font-weight: bold;
	line-height: 1.25;
	white-space: nowrap;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
.nav-item.nav-item-rdv > .nav-link > .fa-phone {
	margin-right: 0.4rem;
}
.nav-item.nav-item-rdv:hover > .nav-link,
.nav-item.nav-item-rdv:focus-within > .nav-link {
	background-color: rgba(231, 193, 91, 0.12);
	color: var(--color-or);
}
.nav-item.nav-item-rdv.active {
	background-color: transparent;
	border-radius: 0;
	font-weight: inherit;
}
.nav-item.nav-item-rdv.active > .nav-link {
	background-color: var(--color-or);
	border-color: var(--color-or);
	color: var(--color-grayblue);
	font-weight: bold;
}

.navbar-nav a.nav-link {padding-left: 0.5rem;}

.prefooter li a.active {font-weight:bold; color:var(--color-or) !important;}

.bgfooter {background-color:var(--color-bgfooter); color:var(--color-black50);}

.title-div {font-size:1.875rem;color:var(--color-black50);padding-left:1rem;}
.title-div>span {color:var(--color-or);font-weight:bold;}

.title-div-light {font-size:1.875rem;color:var(--color-platine);padding-left:1rem;}
.title-div-light>span {color:white;font-weight:bold;}

.navSlide {color:var(--color-black50);font-size:3rem;}

.btn-adjust {padding-bottom:0.25rem;}
.btn-adjust:hover{color:var(--color-or);}

.homeChart {height:26.9rem;background-color:white;}
.nav-link.graph-tab {border-top:unset !important;border-left:unset !important; border-radius:unset !important;background-color:var(--color-bgfooter);border-bottom:1px solid var(--color-middlegray);border-right:1px solid var(--color-middlegray);}
.graph-tab.active {border:unset;background-color:white;}

.nav-link.graph-tab.or>span{color:var(--color-or); font-weight:bold;}
.nav-link.graph-tab.argent>span{color:var(--color-argent); font-weight:bold;}
.nav-link.graph-tab.platine>span{color:var(--color-platine); font-weight:bold;}
.nav-link.graph-tab.palladium>span{color:var(--color-palladium); font-weight:bold;}

.footer-img {width:3.125rem;}
.slide-img {width:100%;}

.breadcrumb {background-color:transparent; border-radius:unset;padding:unset;font-size:0.8rem;}
.breadcrumb a {text-decoration:underline;}
.breadcrumb-item.active {font-weight:bold;}

.news-link {font-weight:bold;color:var(--color-grayblue);text-decoration:none;}

.btn-color {background-color:var(--color-or); border-color:var(--color-or); font-weight:bold; padding:0.1rem 0.75rem;}
.btn-color:hover { color: #fff; background-color: #5a6268; border-color: #545b62; }
.btn-color:not(:disabled):not(.disabled).active, .btn-color:not(:disabled):not(.disabled):active, .show>.btn-color.dropdown-toggle { color: #fff; background-color: #545b62; border-color: #4e555b;}
.btn-color.focus, .btn-color:focus { box-shadow: 0 0 0 0.2rem rgba(130,138,145,.5); }

.p-btn {padding:0.1rem 0.75rem;}

.btn-grayBlue {background-color:var(--color-grayblue); border-color:var(--color-grayblue); color:white; font-weight:bold; padding:0.1rem 0.75rem;}
.btn-grayBlue:hover { color: white50; background-color: #5a6268; border-color: #545b62; }
.btn-grayBlue:not(:disabled):not(.disabled).active, .btn-grayBlue:not(:disabled):not(.disabled):active, .show>.btn-grayBlue.dropdown-toggle { color: #fff; background-color: #545b62; border-color: #4e555b;}
.btn-grayBlue.focus, .btn-grayBlue:focus { box-shadow: 0 0 0 0.2rem rgba(130,138,145,.5); }

.btn-green {background-color:var(--color-green); border-color:var(--color-green);color: #fff !important; font-size:0.8rem;}
.btn-red {background-color:var(--color-btnRed); border-color:var(--color-btnRed);color: #fff !important; font-size:0.8rem;}
.btn-black50 {background-color:var(--color-black50); border-color:var(--color-black50);color: #fff !important; font-size:0.8rem;}

.badge-type { padding: 0.6rem; }

.card-body {font-size:0.8rem;padding:0.85rem 1.25rem 0.25rem 1.25rem;}
.form-control, .custom-select {font-size:0.8rem; line-height:1rem; height: calc(1rem + 0.75rem + 2px); }
.form-group {margin-bottom:0.5rem;}

a.colorOr:hover {color:unset !important;}

.coursJourTitle{ margin-bottom:0.2rem;}
.coursJourContent div {margin-bottom:0.2rem;}
.coursJourContent div:last-child {margin-right:0rem;}

.media {height:100%;}
.media div:first-child{width:50% !important;}

img.oj2 { position: relative; top: -3rem; left: 2rem; }
img.oj1 {	z-index: 1; }

.plus { color: var(--color-green) !important; }
.moins { color: var(--color-red) !important; }
.stagne { color: var(--color-darkgray) !important; }

.img-tbl {width:1.8rem;}
.img-tbl-lg {width:3.5rem;}

.tabOr.active{ background-color:var(--color-or) !important; color:white !important; position:relative;}
.tabOr.active::after{content: '';position: absolute;left: 42%;top: 75%;width: 0;height: 0;border-left: 20px solid transparent;border-right: 20px solid transparent;border-top: 20px solid var(--color-or);clear: both;}

.tabArgent.active{ background-color:var(--color-argent) !important; color:white !important; position:relative;}
.tabArgent.active::after{content: '';position: absolute;left: 42%;top: 75%;width: 0;height: 0;border-left: 20px solid transparent;border-right: 20px solid transparent;border-top: 20px solid var(--color-argent);clear: both;}

.tabGardienor.active{ background-color:var(--color-grayblue) !important; color:white !important; position:relative;}
.tabGardienor.active::after{content: '';position: absolute;left: 42%;top: 75%;width: 0;height: 0;border-left: 20px solid transparent;border-right: 20px solid transparent;border-top: 20px solid var(--color-grayblue);clear: both;}

.listCat {color:var(--color-black50); font-size:0.9rem;}
.listCat li:after {content:'|'; padding-left:0.2rem; padding-right:0.2rem;}
.listCat li:last-child:after {content:''}
.listCat li a, .listCat li a:visited {color:var(--color-black50)}
.listCat li a.active {color:var(--color-or);font-weight:bold;}

.arrowOr {position:relative;}
.arrowOr::after{content: '';position: absolute;left: 38%;top: 85%;width: 0;height: 0;border-left: 20px solid transparent;border-right: 20px solid transparent;border-top: 20px solid var(--color-or);clear: both;}

.divConfirm { border:0.1rem solid var(--color-green); background-color:var(--color-middlegray);}

@media (max-width:768px){
	#logo img{max-width:87%;}
}
@media (min-width:500px) and (max-width:768px){
	.media{display:unset;}
	.arrowOr::after{left: 44%;}
	.height-achat{
		height:2rem;
	}
	.img-tbl-lg {width:1.8rem;}
}

@media(min-width:768px){
	#logo img{max-width:90%;}
	.slide-img {max-height:21.875rem;width:unset;}
	.coursJourContent div {margin-right:0.2rem;}
	.arrowOr::after{left: 46%;}
	.height-achat{ height:2rem;	}
}

@media(min-width:1025px){
	#btn-connexion, #div-btn-connexion, .JQmob {display:none;}
	.media div:first-child{width:25% !important;}
}

/* Connexion client — carte login OTP */
.login-card-modern {
	border: none;
	border-radius: 0.5rem;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
	overflow: hidden;
	transition: opacity 0.28s ease, transform 0.28s ease;
}
.login-card-header {
	border-bottom: 1px solid var(--color-middlegray);
	padding: 0.85rem 1rem;
	letter-spacing: 0.04em;
}
.login-card-body {
	padding: 1.25rem 1.5rem 1.5rem;
}
.login-card-lead {
	color: var(--color-darkgray);
	line-height: 1.45;
}
.login-label {
	font-size: 0.8125rem;
	font-weight: bold;
	color: var(--color-black50);
	margin-bottom: 0.35rem;
}
.login-email-row {
	margin-right: -5px;
	margin-left: -5px;
	margin-bottom: 0.35rem;
}
.login-email-row > [class*="col"] {
	padding-right: 5px;
	padding-left: 5px;
}
.login-email-row .login-input-group {
	width: 100%;
	flex-wrap: nowrap;
	align-items: stretch;
}
.login-email-row .login-input-group .input-group-prepend,
.login-email-row .login-input-group .input-group-text,
.login-email-row .login-input-group .form-control {
	height: calc(1.5em + 0.75rem + 2px);
}
.login-email-row .login-input-group .input-group-text {
	display: flex;
	align-items: center;
	justify-content: center;
	padding-top: 0.375rem;
	padding-bottom: 0.375rem;
}
.login-email-row .login-submit-btn {
	white-space: nowrap;
	height: calc(1.5em + 0.75rem + 2px);
	padding: 0.375rem 0.85rem;
	line-height: 1.5;
}
@media (min-width: 768px) {
	.login-email-row .login-submit-btn {
		width: auto;
	}
}
.login-input-group .login-input-icon {
	background: var(--color-middlegray);
	border-color: #ced4da;
	color: var(--color-or);
}
.login-input-group .form-control {
	border-left: none;
}
.login-input-group .form-control:focus {
	box-shadow: none;
	border-color: #ced4da;
}
.login-input-group:focus-within .input-group-text,
.login-input-group:focus-within .form-control {
	border-color: var(--color-or);
}
.login-submit-btn {
	border-radius: 0.35rem;
	letter-spacing: 0.03em;
}
.login-submit-btn:hover {
	color: #fff;
}
.login-otp-input {
	font-size: 1.75rem;
	font-weight: bold;
	letter-spacing: 0.45em;
	padding: 0.65rem 0.5rem;
	border: 2px dashed var(--color-middlegray);
	border-radius: 0.35rem;
	max-width: 14rem;
	margin: 0 auto;
}
.login-otp-input:focus {
	border-color: var(--color-or);
	border-style: solid;
	box-shadow: 0 0 0 0.15rem rgba(231, 193, 91, 0.25);
}
.login-resend-link {
	font-size: 0.8125rem;
	color: var(--color-argent);
}
.login-resend-link:hover {
	color: var(--color-or);
	text-decoration: none;
}
.login-card-exit {
	opacity: 0;
	transform: translateX(-12px);
}
.login-card-enter {
	animation: loginCardEnter 0.4s ease forwards;
}
@keyframes loginCardEnter {
	from {
		opacity: 0;
		transform: translateY(10px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
@media (max-width: 767.98px) {
	.login-email-row {
		margin-bottom: 0.5rem;
	}
	.login-email-row > .col-12 + .col-12 {
		margin-top: 0.5rem;
	}
}

.rdv-type-card { cursor: pointer; }
.rdv-type-card input { position: absolute; opacity: 0; pointer-events: none; }
.rdv-type-inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	min-height: 8.5rem;
	padding: 1.25rem 0.75rem;
	background: #fff;
	border: 2px solid #d9d9d9;
	border-radius: 0.4rem;
	transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}
.rdv-type-icon { font-size: 1.6rem; color: var(--color-grayblue); margin-bottom: 0.6rem; }
.rdv-type-label { font-weight: 700; color: var(--color-grayblue); }
.rdv-type-card:hover .rdv-type-inner,
.rdv-type-card.is-selected .rdv-type-inner,
.rdv-type-card:has(input:checked) .rdv-type-inner {
	border-color: var(--color-or);
	background: #fff8e6;
	box-shadow: 0 0 0 1px var(--color-or);
}
.rdv-contact-choice { border: 1px solid var(--color-or); }

/*=====================================================================================================================================================================
 Hack bootstrap
/=====================================================================================================================================================================*/
.list-inline-item:not(:last-child) { margin-right:0rem !important;}