.logo {
	font-family: "Fjalla One", sans-serif;
	font-weight: 600;
	font-style: normal;
	font-size: 36px;
	display: flex;
	gap: 10px;
}
.logo img {
	width: 50px;
}
#menu-navigation a.nav-link {
	padding-top: 24px !important;
	padding-bottom: 24px !important;
}
.btn {
	padding: 10px 20px !important;
}
.plan-entrainement-choix,
textarea,
select {
	border-radius: 16px;
	border: 1px solid #f0672822;
	background-color: #f0672822;
	padding: 4px 16px;
	width: fit-content;
	gap: 10px;
	color: rgb(105, 105, 113);
}
textarea {
	padding: 8px 12px;
}
.plan-entrainement-bouton {
	border-radius: 16px;
	border: 1px solid #f06728;
	background-color: #f06728;
	padding: 4px 16px;
	width: fit-content;
	gap: 10px;
	color: #fff;
	cursor: pointer;
}
.plan-entrainement-choix:hover {
	cursor: pointer;
	border: 1px solid #f06728;
	background-color: #f06728;
	color: #fff;
}
.plan-entrainement-choix.selected {
	border: 1px solid #f06728;
	background-color: #f06728;
	color: #fff;
}
.plan-entrainement-div:hover p,
.plan-entrainement-div2:hover p {
	color: rgb(105, 105, 113);
}
.plan-entrainement-div:hover,
.plan-entrainement-div2:hover {
	background-color: #fff !important;
}
.plan-entrainement-div,
.plan-entrainement-div2 {
	display: flex;
	gap: 10px;
}
.plan-entrainement-div input,
.plan-entrainement-div2 input {
	border-radius: 16px;
	border: 1px solid #f0672822;
	background-color: #f0672822;
	padding: 4px 12px;
}

.plan-entrainement-distances,
.plan-entrainement-nb-seances-div,
.plan-entrainement-jours-div,
.plan-entrainement-douleurs,
.plan-entrainement-objectif {
	display: flex;
	gap: 10px;
}
.plan-entrainement-etape {
	margin-top: 30px;
}
#plan-entrainement-viser-temps {
	margin-top: 12px;
}
body.template-course p,
body.template-course li,
body.template-course label {
	font-size: 18px;
}
#plan-entrainement-douleurs-precisez {
	display: flex;
	flex-direction: column;
}
.plan-entrainement-bravo {
	font-family: "Caveat", cursive;
	font-optical-sizing: auto;
	font-style: normal;
	font-size: 36px;
}
.subtitle,
.subtitle a,
.subtitle li {
	color: #fff;
	font-size: 16px !important;
	margin-right: 6px;
	display: flex;
	margin-top: 16px;
}

.subtitle .breadcrumb-item,
.subtitle .breadcrumb-item a {
	margin-top: 0px;
	margin-right: 0px;
}

.subtitle .fa-preparun {
	margin-right: 6px;
	font-size: 20px;
}
.subtitle-ancres {
	position: absolute;
}
.subtitle-ancres a {
	border-radius: 20px;
	background-color: #000;
	padding: 4px 18px;
	color: #fff;
	text-decoration: none;
	width: fit-content;
	margin-right: 18px;
}
.subtitle-ancres a:hover {
	background-color: #fff;
	color: #000;
}
.course-pricing {
	font-size: 16px !important;
	text-align: left;
}
.fa-circle-check {
	color: rgb(0, 146, 0);
}
.fa-circle-xmark {
	color: firebrick;
}
#offre-2 {
	position: relative;
}

/* common */
.ribbon {
	width: 150px;
	height: 150px;
	overflow: hidden;
	position: absolute;
}
.ribbon::before,
.ribbon::after {
	position: absolute;
	z-index: -1;
	content: "";
	display: block;
	border: 5px solid #2980b9;
}
.ribbon span {
	position: absolute;
	display: block;
	width: 225px;
	padding: 10px 0;
	background-color: #3498db;
	box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
	color: #fff;
	font: 700 14px/1 "Lato", sans-serif;
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
	text-transform: uppercase;
	text-align: center;
}

/* top left*/
.ribbon-top-left {
	top: -10px;
	left: -10px;
}
.ribbon-top-left::before,
.ribbon-top-left::after {
	border-top-color: transparent;
	border-left-color: transparent;
}
.ribbon-top-left::before {
	top: 0;
	right: 0;
}
.ribbon-top-left::after {
	bottom: 0;
	left: 0;
}
.ribbon-top-left span {
	right: -25px;
	top: 30px;
	transform: rotate(-45deg);
}

/* top right*/
.ribbon-top-right {
	top: -5px;
	right: -5px;
	z-index: 999;
}
.ribbon-top-right::before,
.ribbon-top-right::after {
	border-top-color: transparent;
	border-right-color: transparent;
}
.ribbon-top-right::before {
	top: 0;
	left: 0;
}
.ribbon-top-right::after {
	bottom: 0;
	right: 0;
}
.ribbon-top-right span {
	left: -25px;
	top: 30px;
	transform: rotate(45deg);
}

/* bottom left*/
.ribbon-bottom-left {
	bottom: -10px;
	left: -10px;
}
.ribbon-bottom-left::before,
.ribbon-bottom-left::after {
	border-bottom-color: transparent;
	border-left-color: transparent;
}
.ribbon-bottom-left::before {
	bottom: 0;
	right: 0;
}
.ribbon-bottom-left::after {
	top: 0;
	left: 0;
}
.ribbon-bottom-left span {
	right: -25px;
	bottom: 30px;
	transform: rotate(225deg);
}

/* bottom right*/
.ribbon-bottom-right {
	bottom: -10px;
	right: -10px;
}
.ribbon-bottom-right::before,
.ribbon-bottom-right::after {
	border-bottom-color: transparent;
	border-right-color: transparent;
}
.ribbon-bottom-right::before {
	bottom: 0;
	left: 0;
}
.ribbon-bottom-right::after {
	top: 0;
	right: 0;
}
.ribbon-bottom-right span {
	left: -25px;
	bottom: 30px;
	transform: rotate(-225deg);
}
.card-pricing .pricing-list {
	padding: 0px;
}
.informations-course h2,
.plan-entrainement-recap h2 {
	margin-top: 34px;
	margin-bottom: 8px;
}
.card-pricing {
	cursor: pointer;
}
body.template-course .card-pricing:hover {
	box-shadow: 0 0.1rem 0.95rem rgba(0, 0, 0, 0.25) !important;
}

#plan-entrainement-creer {
	margin-left: -40px;
}
/** début loeader **/
.lds-ellipsis {
	color: #f06728;
}
.lds-ellipsis,
.lds-ellipsis div {
	box-sizing: border-box;
}
.lds-ellipsis {
	display: inline-block;
	position: relative;
	width: 80px;
	height: 80px;
}
.lds-ellipsis div {
	position: absolute;
	top: 33.33333px;
	width: 13.33333px;
	height: 13.33333px;
	border-radius: 50%;
	background: currentColor;
	animation-timing-function: cubic-bezier(0, 1, 1, 0);
}
.lds-ellipsis div:nth-child(1) {
	left: 8px;
	animation: lds-ellipsis1 0.6s infinite;
}
.lds-ellipsis div:nth-child(2) {
	left: 8px;
	animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(3) {
	left: 32px;
	animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(4) {
	left: 56px;
	animation: lds-ellipsis3 0.6s infinite;
}
@keyframes lds-ellipsis1 {
	0% {
		transform: scale(0);
	}
	100% {
		transform: scale(1);
	}
}
@keyframes lds-ellipsis3 {
	0% {
		transform: scale(1);
	}
	100% {
		transform: scale(0);
	}
}
@keyframes lds-ellipsis2 {
	0% {
		transform: translate(0, 0);
	}
	100% {
		transform: translate(24px, 0);
	}
}
/* fin loader */

div.recap-paiement-course p {
	font-size: 16px;
}

#card-element {
	padding: 12px;
	border: 1px solid #cbd5e0;
	border-radius: 8px;
	background-color: #fff;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
	margin-bottom: 1em;
}
#encard-plan-entrainement #deja-achete {
	background-color: #ffffff22;
	border-radius: 6px;
	font-size: 14px;
	padding: 12px;
}
.fa-star,
.fa-star-half-stroke {
	color: #ffc106;
}
#cgv-embed {
	background-color: #efefef;
	border: 1px solid #cdcdcd;
	padding: 15px;
	font-size: 12px;
	width: 100%;
	height: 200px;
	overflow: auto;
	margin-top: 14px;
}

#cgv-embed p,
#cgv-embed h2 {
	font-size: 12px;
}
#plan-entrainement-cgv {
	width: 20px;
	height: 26px;
	appearance: none; /* supprime le style natif */
	background-color: #eee;
	border: 1px solid #ccc;
	cursor: pointer;
}

#plan-entrainement-cgv:checked {
	background-color: #f06728;
}
.breadcrumb {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	padding: 0;
	margin: 0;
	font-size: 14px;
}

.breadcrumb li {
	display: flex;
	align-items: center;
	color: #fff;
	margin-top: 0px !important;
	margin-right: 0px !important;
	font-size: 16px !important;
}

.breadcrumb li + li::before {
	content: ">";
	margin: 0 8px;
	color: #fff;
}

.breadcrumb a {
	text-decoration: none;
	color: #fff;
	margin-top: 0px !important;
	margin-right: 0px !important;
	font-size: 16px;
}

.breadcrumb a:hover {
	text-decoration: underline;
}
.liste-courses {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1rem;
}

body.homepage .liste-courses {
	grid-template-columns: repeat(4, 1fr);
}

.liste-courses a {
	text-decoration: none;
	color: #000;
}
.item {
	background: #ffffff;
	border-radius: 10px;
	box-shadow: 0 0.1rem 0.95rem rgba(0, 0, 0, 0.1) !important;
	cursor: pointer;
	text-decoration: none;
	height: 100%;
}
.item:hover {
	box-shadow: 0 0.1rem 0.95rem rgba(0, 0, 0, 0.7) !important;
	background-color: #f0672822;
}
body.homepage .item:hover {
	background-color: #ffffffcc;
}
.liste-courses div.banniere {
	height: 200px;
	background-repeat: no-repeat;
	background-position: top;
	background-size: cover;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
}
.liste-courses .item-padding {
	padding: 20px;
}
.liste-courses h4.titre {
	color: #000;
}
.liste-courses .item .ville,
.liste-courses .item .date {
	font-size: 15px;
}
.liste-courses .item .distances .distance {
	width: fit-content;
	border: 1px solid #25224b66;
	padding: 0px 8px;
	border-radius: 20px;
	font-size: 14px;
	background-color: #25224b22;
}
.liste-courses .item .distances {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 4px;
	margin-top: 6px;
}
.template-courses .section-banner {
	padding-bottom: 40px !important;
	padding-top: 100px !important;
}

.template-course .section-banner {
	padding-bottom: 20px !important;
	padding-top: 100px !important;
}

#responsive-sticky {
	display: none;
}
body.template-course .date-depart {
	font-size: 24px;
	font-weight: bold;
	color: #fff;
	line-height: 32px;
	margin-bottom: 18px;
	margin-top: 16px;
	white-space: nowrap;
	margin-top: 48px;
	text-align: right;
	justify-content: space-between;
	align-items: center;
}
.date-j {
	font-size: 52px;
	color: #ddd;
	font-weight: bold;
	text-align: right;
}
span.plan-entrainement-bravo .parfait {
	font-size: 42px;
	font-weight: 900;
}
.plan-entrainement-fleche {
	height: 100px;
	margin: 0 auto;
}
footer .logo,
footer i {
	color: #fff;
}
footer .liste-regions a {
	text-decoration: none;
}

#colonne-droite-visuel {
	padding: 0px;
	margin-top: -320px;
	margin-bottom: 20px;
}

.template-annexes #header-titre {
	padding-top: 150px !important;
}
@media only screen and (max-width: 768px) {
	body.template-course .date-depart {
		font-size: 16px;
		margin-right: 0px;
		text-align: left;
		line-height: 20px;
		white-space: nowrap;
	}

	.g-60,
	.gx-60,
	.g-5,
	.gy-5 {
		--bs-gutter-x: none;
	}

	.liste-courses {
		grid-template-columns: repeat(1, 1fr); /* 3 colonnes égales */
	}

	.subtitle {
		flex-direction: column;
		gap: 6px;
		font-size: 14px !important;
	}

	.subtitle-ancres {
		flex-direction: row;
		gap: 1px;
		font-size: 14px !important;
	}

	.breadcrumb a {
		font-size: 14px !important;
	}
	.breadcrumb li {
		font-size: 14px !important;
	}
	.breadcrumb li + li::before {
		margin: 0 4px !important;
		font-size: 14px !important;
	}
	.subtitle .fa-preparun,
	.subtitle {
		font-size: 14px;
	}

	.subtitle-ancres a {
		font-size: 14px !important;
		margin-right: 4px;
		line-height: 23px;
	}
	div.subtitle.subtitle-ancres {
		display: inline-flex;
	}
	div.subtitle.subtitle-ancres a {
		float: inline-start;
		margin-top: 6px;
		white-space: nowrap;
	}
	#responsive-sticky {
		display: block;
		position: fixed;
		bottom: 10px;
		background-color: #f06728;
		right: 10px;
		padding: 12px;
		color: #fff;
		border-radius: 14px;
		z-index: 999999;
		font-size: 15px;
		text-decoration: none;
		left: 10px;
		text-align: center;
	}

	#plan-entrainement-creer {
		margin-left: 0px;
	}
	body.template-course p,
	body.template-course li,
	body.template-course label {
		font-size: 18px;
	}
	h1 {
		font-size: 28px;
	}
	h2 {
		font-size: 22px;
	}
	.service-3-wrapper {
		padding: 15px !important;
	}
	.date-j-depart {
		flex-direction: column;
		display: flex;
		padding-top: 0px;
		margin-left: auto;
		width: 130px;
	}
	.date-j-depart table {
		width: auto;
		border-collapse: collapse;
	}
	.date-j-depart > div {
		width: 50%;
	}
	.date-j-depart2 {
		display: none;
	}
	.date-j {
		font-size: 32px;
	}
	#header-titre {
		padding-bottom: 0px !important;
	}
	.informations-course h2 {
		margin-top: 0px;
	}
	#colonne-droite-visuel {
		display: none;
	}
	.plan-entrainement-distances,
	.plan-entrainement-nb-seances-div,
	.plan-entrainement-jours-div,
	.plan-entrainement-douleurs,
	.plan-entrainement-objectif {
		flex-direction: column;
	}
	.plan-entrainement-etape {
		font-size: 16px;
	}
	span.plan-entrainement-bravo .parfait {
		font-size: 32px;
	}
	span.plan-entrainement-bravo {
		font-size: 24px;
	}
	.plan-entrainement-fleche {
		height: 50px;
		margin: 0 auto;
	}
	.plan-entrainement-div input,
	.plan-entrainement-div2 input {
		height: 38px;
	}
	.plan-entrainement-div,
	.plan-entrainement-div2 {
		flex-direction: column;
		gap: 0px;
	}

	.template-annexes #header-titre {
		padding-top: 100px !important;
		padding-bottom: 30px !important;
	}
	body.homepage .hero-cta,
	body.homepage .hero-author-wrapper,
	body.homepage .hp-nb-plans {
		margin: 0 auto;
	}
}
#creer-plan-entrainement-arrow {
	height: 100px;
	width: 100px;
	margin: 0 auto;
}
.div-demo {
	padding-left: 150px;
	padding-top: 32px;
	padding-right: 175px;
}

.template-course .div-demo {
	padding-left: 76px;
	padding-top: 24px;
	padding-right: 74px;
	width: inherit;
}

.template-course .demo-plan-entrainement .header {
	border-top-right-radius: 26px;
	border-top-left-radius: 23px;
}
.template-course .project-info {
	padding: 0px !important;
}
.template-course .plan-entrainement-titre {
	padding: 20px !important;
}
.template-course #encard-plan-entrainement {
	border-top-right-radius: 20px;
	border-top-left-radius: 20px;
}

.demo-plan-entrainement .header {
	border-top-right-radius: 34px;
	border-top-left-radius: 34px;
}
@media only screen and (max-width: 1400px) {
	.div-demo {
		padding-left: 116px;
		padding-top: 24px;
		padding-right: 89px;
	}

	.demo-plan-entrainement .header {
		border-top-right-radius: 30px;
		border-top-left-radius: 28px;
	}
}

@media only screen and (max-width: 1200px) {
	.div-demo {
		padding-left: 229px;
		padding-top: 46px;
		padding-right: 265px;
	}

	.demo-plan-entrainement .header {
		border-top-right-radius: 34px;
		border-top-left-radius: 32px;
	}
}

@media only screen and (max-width: 991px) {
	.div-demo {
		padding-left: 169px;
		padding-top: 35px;
		padding-right: 195px;
	}

	.demo-plan-entrainement .header {
		border-top-right-radius: 35px;
		border-top-left-radius: 28px;
	}
}

@media only screen and (max-width: 768px) {
	.div-demo {
		padding-left: 126px;
		padding-top: 25px;
		padding-right: 146px;
	}

	.demo-plan-entrainement .header {
		border-top-right-radius: 34px;
		border-top-left-radius: 28px;
	}
}

@media only screen and (max-width: 576px) {
	.div-demo {
		padding-left: 130px;
		padding-top: 27px;
		padding-right: 156px;
	}

	.demo-plan-entrainement .header {
		border-top-right-radius: 34px;
		border-top-left-radius: 28px;
	}
}

@media only screen and (max-width: 992px) {
	.hide-on-responsive {
		display: none;
	}
}
body.homepage .video-wrapper {
	min-height: calc(100vh - 0px);
	overflow: hidden;
}

body.homepage .video-size {
	height: 100%;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	opacity: 0.3;
}

body.homepage h1 {
	font-size: 42px;
}
body.homepage .fonctionnement-timeline-numero {
	font-size: 32px;
	font-weight: bold;
}
body.homepage .picto {
	font-size: 32px;
}
.demo-plan-entrainement {
	width: 100%;
	height: auto;
	opacity: 1;
	background-color: #fff;
	height: 523px;
	border-top-right-radius: 34px;
	border-top-left-radius: 34px;
	position: relative;
}

.demo-plan-entrainement .header {
	width: 100%;
	object-fit: contain;
	height: auto !important;
	border-bottom-right-radius: 0px;
	border-bottom-left-radius: 0px;
}

.demo-plan-entrainement .contenu {
	padding: 20px 10px;
}

.demo-plan-entrainement .titre {
	background-color: #f06728;
	color: #fff;
	position: absolute;
	top: 110px;
	left: 10px;
	padding: 2px 5px;
}
.demo-plan-entrainement .titre1 {
	font-weight: bold;
}
.demo-plan-entrainement .titre2 {
	font-size: 13px;
}

body.template-course .demo-plan-entrainement .titre {
	left: 8px;
	right: 10px;
	top: 80px;
}
body.template-course .demo-plan-entrainement .titre2 {
	font-size: 11px;
}
body.template-course .demo-plan-entrainement .profil {
	color: #000;
}
body.template-course .demo-plan-entrainement .seances {
	color: #000;
}

.demo-plan-entrainement .profil {
	background-color: #efefef;
	padding: 10px;
	font-size: 12px;
}
.demo-plan-entrainement .profil .titre-profil {
	font-weight: bold;
	font-size: 14px;
	margin-bottom: 6px;
}
.demo-plan-entrainement .profil p {
	margin-top: 2px;
	margin-bottom: 2px;
	padding-top: 2px;
	padding-bottom: 2px;
	font-size: 10px;
	border-bottom: 1px solid #dedede;
}
.demo-plan-entrainement .profil p:last-child {
	border-bottom: 0px solid #dededeff;
}

.demo-plan-entrainement .titre-seance {
	display: flex;
}

.demo-plan-entrainement .titre-seance .titre0 {
	background-color: #f06728;
	border-radius: 50%;
	font-size: 10px;
	color: #fff;
	padding: 3px 4px;
	width: 20px;
	height: 20px;
	margin-right: 4px;
	margin-left: 4px;
}
.demo-plan-entrainement .titre-seance .titre1 {
	font-weight: bold;
	font-size: 14px;
	display: flex;
}

.demo-plan-entrainement .titre-seance .titre2 {
	font-size: 12px;
	background-color: #f06728;
	color: #fff;
	padding: 0px 2px;
	height: 16px;
	margin-left: auto;
}
.demo-plan-entrainement .descriptif-seance {
	font-size: 14px;
	line-height: 16px;
	margin-top: 4px;
	padding-bottom: 4px;
}
.demo-plan-entrainement .details-seance {
	font-size: 14px;
	padding-top: 4px;
}
.demo-plan-entrainement .seance {
	border-top: 1px solid #dedede;
}
.demo-plan-entrainement .seance .titre2 i {
	margin-right: 4px;
}
.demo-plan-entrainement .scrollable {
	overflow-y: auto;
	height: 347px;
}
.demo-plan-entrainement .details-renfo > div {
	width: 30%;
	display: flex;
	flex-direction: column;
}

.demo-plan-entrainement .details-renfo > div img {
	width: auto;
	height: auto;
}
.demo-plan-entrainement .details-renfo {
	display: flex;
	gap: 10px;
}
.demo-plan-entrainement .details-renfo .description-renfo {
	font-size: 11px;
	margin-top: 4px;
	line-height: 11px;
	text-align: center;
}
.demo-plan-entrainement .seance {
	position: relative;
}
.demo-plan-entrainement .flou {
	overflow: hidden;
}
.demo-plan-entrainement .flou::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 120px;
	background: linear-gradient(to bottom, transparent, white); /* ou la couleur de fond */
	pointer-events: none;
}
.demo-plan-entrainement .seances {
	position: relative;
}
.demo-plan-entrainement .seance-fake {
	width: 100%;
	height: auto;
	border-radius: 0;
}
.text-primary {
	color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;
}
.scollable-horizontale {
	overflow-x: auto;
	white-space: nowrap;
	height: 46px;
	width: 100%;
	margin-bottom: 12px;
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none; /* IE 10+ */
}
.scollable-horizontale::-webkit-scrollbar {
	display: none; /* Chrome, Safari, Edge */
}

body.homepage div.div-demo {
	padding-left: 151px;
	padding-top: 31px;
	padding-right: 174px;
	height: 100%;
	background-image: url(/assets/images/mockup-telephone-2.webp);
	background-size: cover;
	background-repeat: no-repeat;
}
body.comment-ca-fonctionne div.div-demo {
	padding-left: 151px;
	padding-top: 31px;
	padding-right: 175px;
	height: 100%;
	background-image: url(/assets/images/mockup-telephone-2.webp);
	background-size: cover;
	background-repeat: no-repeat;
}
body.comment-ca-fonctionne .demo-plan-entrainement .header {
	border-top-right-radius: 27px;
	border-top-left-radius: 23px;
}

@media only screen and (max-width: 768px) {
	body.comment-ca-fonctionne div.div-demo {
		background-image: url(/assets/images/mockup-telephone-3.webp);
	}
	body.comment-ca-fonctionne div.div-demo {
		padding-left: 71px;
		padding-top: 23px;
		padding-right: 69px;
	}
	body.comment-ca-fonctionne .demo-plan-entrainement .titre {
		top: 80px;
		left: 8px;
		right: 8px;
	}
	body.comment-ca-fonctionne .demo-plan-entrainement .titre1 {
		font-size: 14px;
	}
	body.comment-ca-fonctionne .demo-plan-entrainement .titre2 {
		font-size: 11px;
	}
	body.comment-ca-fonctionne .demo-plan-entrainement .titre-seance .titre1 {
		font-size: 13px;
	}
	body.comment-ca-fonctionne .demo-plan-entrainement .descriptif-seance {
		font-size: 12px;
	}

	.scollable-horizontale > a {
		margin-bottom: 8px;
	}
	body.comment-ca-fonctionne #header-titre {
		padding-bottom: 60px !important;
	}
	body.homepage div.div-demo {
		background-image: url(/assets/images/mockup-telephone-3.webp);
	}
	body.homepage div.div-demo {
		padding-left: 71px;
		padding-top: 23px;
		padding-right: 69px;
	}

	body.homepage .demo-plan-entrainement .titre {
		top: 80px;
		left: 8px;
		right: 8px;
	}
	body.homepage .demo-plan-entrainement .titre1 {
		font-size: 14px;
	}
	body.homepage .demo-plan-entrainement .titre2 {
		font-size: 11px;
	}
	body.homepage .demo-plan-entrainement .titre-seance .titre1 {
		font-size: 13px;
	}
	body.homepage .demo-plan-entrainement .descriptif-seance {
		font-size: 12px;
	}
}
.error {
	color: red;
	background-color: #ffe6e6;
	padding: 0.5rem;
	border: 1px solid red;
	border-radius: 4px;
	margin-top: 0.5rem;
	font-size: 0.9rem;
}
.logistics-navbar .nav-link {
	text-transform: none !important;
}

footer .titre {
	margin-top: 0;
	margin-bottom: 0.5rem;
	font-family: "Lexend", sans-serif;
	font-weight: 600;
	line-height: 1.3;
	color: var(--bs-heading-color);
}

footer .titre {
	font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
	footer .titre {
		font-size: 1.5rem;
	}
}
body.comment-ca-fonctionne .etape {
	font-weight: bold;
}
body.comment-ca-fonctionne .service-3-title {
	font-size: 1.5rem;
}
.offre-label {
	font-weight: 600;
}
body.template-annexes .conditions-generales-titre {
	font-size: 24px;
	font-weight: bold;
	color: #25224b;
}
body.template-course .conditions-generales-titre {
	font-size: 14px;
	font-weight: bold;
	color: #000;
}
.informations-course h3,
.plan-entrainement-recap h3 {
	font-size: 1.4rem;
	margin-top: 32px;
}
body.template-course #telecharger-plan {
	border-radius: 0px !important;
	width: 100%;
}
.plan-entrainement-distances {
	flex-wrap: wrap;
}
body.template-courses ul.choix-departement-region {
	display: flex;
	flex-wrap: wrap;
	padding-left: 0px;
	margin-top: 12px;
}
body.template-courses ul.choix-departement-region li {
	border-radius: 20px;
	background-color: #000;
	padding: 2px 12px;
	width: fit-content;
	margin-right: 8px;
	list-style: none;
	margin-bottom: 8px;
	cursor: pointer;
}
body.template-courses ul.choix-departement-region li a {
	text-decoration: none;
	color: #fff;
	font-size: 14px;
}

body.template-courses ul.choix-departement-region li:hover {
	background-color: #f06728;
}
body.blog-categories #liste-categories > div:hover {
	cursor: pointer;
}
body.blog-categories #liste-categories > div h2 {
	color: #fff !important;
}

body.blog-categorie .card-article,
body.blog-categories .card-article {
	background: #ffffff;
	border-radius: 10px;
	box-shadow: 0 0.1rem 0.95rem rgba(0, 0, 0, 0.1) !important;
	cursor: pointer;
	text-decoration: none;
	height: 100%;
	padding: 0px;
}
body.blog-categorie .visuel-article,
body.blog-categories .visuel-article {
	width: 100%;
	height: auto;
	border-top-right-radius: 10px;
	border-top-left-radius: 10px;
}
body.blog-categorie .titre-article,
body.blog-categories .titre-article {
	color: #fff;
	font-size: 16px;
	font-weight: 300;
}
body.blog-categorie .contenu-article,
body.blog-categories .contenu-article {
	padding: 16px;
	background-color: #25224b;
	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px;
}
body.blog-categorie .date-article,
body.blog-categories .date-article,
body.blog-categories .categorie-article {
	color: #eee;
	font-size: 13px;
	margin-top: 8px;
	margin-bottom: 0px;
}
body.blog-categorie .visuel-categorie,
body.blog-categories .visuel-categorie {
	width: 100%;
	padding-top: 80%;
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
	background-repeat: no-repeat;
	height: auto;
	padding-left: 20px;
	padding-right: 20px;
}
body.blog-categories h2,
body.blog-categories h2 {
	padding-left: 24px;
}

#liste-categories,
#liste-articles {
	margin-top: 10px;
	margin-bottom: 30px;
}

#liste-categories > div,
#liste-articles > div {
	margin-top: 0px;
}
#liste-articles {
	display: flex;
	flex-wrap: wrap;
}

#liste-articles > .col-md-3 {
	display: flex;
	flex-direction: column;
}
body.blog-categorie .visuel-categorie h3,
body.blog-categories .visuel-categorie h3 {
	font-size: 18px;
	background-color: #f06728;
	width: fit-content;
	padding: 2px 6px;
	color: #fff;
}
#liste-articles > div {
	display: flex;
	flex-direction: column;
	height: 100%;
}
body.blog-categorie .date-article i,
body.blog-categories .date-article i,
body.blog-categories .categorie-article i {
	margin-right: 6px;
	font-size: 12px;
}
body.blog-article .visuel {
	height: 300px;
	width: auto;
	border-radius: 20px;
	float: right;
}
body.blog-article .section-banner {
	background-color: #25224b;
}
body.blog-article .date-article,
body.blog-article .date-temps {
	color: #eee;
	font-size: 14px;
	margin-top: 16px;
}

body.blog-article .date-article i,
body.blog-article .date-temps i {
	margin-right: 6px;
	font-size: 13px;
}
body.blog-article .breadcrumb a,
body.blog-article .breadcrumb {
	color: #eee;
}

body.blog-article .breadcrumb i {
	margin-left: 8px;
	margin-right: 8px;
	line-height: 25px;
}

body.blog-article .date-temps {
	margin-left: 24px;
}
body.blog-article .date-temps-article {
	display: flex;
}
body.blog-article .article-contenu hr {
	display: none;
}

body.blog-article .article-contenu h2 {
	margin-bottom: 8px;
	margin-top: 16px;
}
body.blog-article .article-contenu h3 {
	margin-bottom: 8px;
	margin-top: 16px;
	font-size: 20px;
	font-weight: 400;
}
body.blog-article .sommaire ul {
	list-style: none;
	padding-left: 0px;
}

body.blog-article .sommaire li {
	font-size: 14px;
}

body.blog-article .sommaire i {
	margin-right: 6px;
}
body.blog-article .sommaire a.active {
	background-color: red;
	transition: background-color 0.3s ease;
}

@media only screen and (max-width: 992px) {
	body.blog-article .visuel {
		height: auto;
		width: 100%;
		border-radius: 20px;
		margin-bottom: 24px;
	}
	.reverse-responsive {
		flex-direction: column-reverse;
	}
}
body.backoffice #header-titre {
	background-color: #fff;
	padding: 50px 0px 4px 0px;
}
body.backoffice #plans {
	font-size: 13px;
}
body.backoffice #plans td {
	vertical-align: top;
}
body.backoffice #plans thead th {
	background-color: #ccc;
	color: #000;
}
body.backoffice.plan .entete {
	font-weight: bold;
}

body.backoffice.plan td {
	vertical-align: top;
	border-bottom: 1px solid #ccc;
}

body.backoffice.plan td:first-child {
	vertical-align: top;
	width: 190px;
	border-bottom: 1px solid #ccc;
}
body.backoffice.plan .prompt {
	font-family: "Courier New", Courier, monospace;
	font-size: 12px;
}

body.backoffice.plan #plan {
	width: 100%;
	height: 100px;
	margin-top: 0px;
}
body.backoffice.plans .plan-statut {
	border-radius: 4px;
	padding: 4px 8px;
	width: fit-content;
}

body.backoffice.plans .plan-statut-pas-termine {
	background-color: #000;
	color: #fff;
}
body.backoffice.plans .plan-statut-a-creer {
	background-color: #c57a00;
	color: #fff;
}
body.backoffice.plans .plan-statut-cree {
	background-color: #489a00;
	color: #fff;
}
div#infos_utiles h2 {
	color: #fff;
	margin-top: 6px;
}
div#infos_utiles h3 {
	color: #fff;
	margin-top: 24px;
	margin-bottom: 10px;
	font-size: 24px;
}
div#infos_utiles h4 {
	color: #fff;
	margin-top: 24px;
	margin-bottom: 10px;
	font-size: 20px;
}
div#infos_utiles h2 i {
	margin-right: 12px;
}
div#infos_utiles {
	background-color: #25224b;
	color: #fff;
	padding: 40px;
	border-radius: 24px;
	margin-left: -40px;
	margin-top: 16px;
}
div#infos_utiles p,
div#infos_utiles li {
	font-size: 18px;
}
div#infos_utiles table {
	border: 1px solid white;
	margin-top: 16px;
	margin-bottom: 16px;
}
div#infos_utiles td,
div#infos_utiles th {
	border: 1px solid white;
	padding: 4px 8px;
	font-size: 16px;
}

div#infos_utiles th {
	background-color: white;
	color: #25224b;
}

@media only screen and (max-width: 1200px) {
	#liste-categories {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		grid-gap: 10px;
		margin: 0px;
	}
	#liste-articles {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-gap: 10px;
		margin: 0px;
	}
	#liste-categories > div,
	#liste-articles > div {
		width: 100%;
		padding: 0px;
	}
}

@media only screen and (max-width: 992px) {
	#liste-categories {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-gap: 10px;
	}
	#liste-articles {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-gap: 10px;
		margin: 0px;
	}
	#liste-categories div.visuel-categorie {
		min-height: 150px;
	}
}

@media only screen and (max-width: 600px) {
	#liste-articles {
		grid-template-columns: repeat(1, 1fr);
	}
}
.courses-choix-date {
	margin-top: 32px;
}
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover {
	border: 1px solid #f06728 !important;
	background: #f06728 !important;
	font-weight: normal;
	color: #ffffff;
}
.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
	border: 1px solid #4d447b !important;
	background: #4d447b !important;
	color: #ffffff !important;
}
.liste-courses {
	margin-top: 32px;
}
.nb-courses-trouvees {
	background: #f06728 !important;
	color: #ffffff !important;
	padding: 0px 4px;
}
.courses-filtres {
	margin-top: 20px;
	color: rgb(77, 68, 123);
}
.courses-filtres i {
	margin-right: 8px;
}
#datepicker {
	margin-top: 12px;
	border-radius: 16px;
	border: 1px solid #f0672822;
	background-color: #f0672822;
	padding: 4px 16px;
	width: 130px;
}

.courses-type-epreuve {
	margin-top: 32px;
}
#courses-type {
	margin-top: 8px;
}
.choix-region {
	font-size: 14px;
}
#datepicker-clean {
	margin-left: 12px;
	cursor: pointer;
}
@media (min-width: 1200px) {
	h1,
	.h1 {
		font-size: 3rem;
	}
}
@media (min-width: 1200px) {
	h3,
	.h3 {
		font-size: 2rem;
	}
}
.card-lieu-date {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
/* pour supprimer le bold des titres dans les articles de blog */
body.blog-article h2 > strong {
	font-weight: 600;
}
#plan-avis {
	background-color: #efefef;
	padding: 24px;
}
.colonne-droite-partager-contenu {
	display: flex;
	padding: 0px 24px 24px 24px;
	gap: 24px;
}
#colonne-droite-partager {
	border: 4px solid #25224b;
	border-radius: 32px;
	margin-bottom: 32px;
	margin-top: 24px;
	background-color: #ffffffff;
	z-index: 9;
}
#colonne-droite-partager i,
.partage-fin-plan i {
	font-size: 30px;
	background-color: #25224b33 !important;
	padding: 16px;
	border-radius: 8px;
}
#colonne-droite-partager i:hover,
.partage-fin-plan i:hover {
	color: #ffffff !important;
	background-color: #25224b !important;
}
.partage-fin-plan {
	padding: 0px;
}
.course-decompte {
	display: flex;
	margin-top: 0px;
}
.partage-mobile {
	background-color: #efefef;
}
.partage-mobile i {
	font-size: 24px;
	background-color: #25224b33 !important;
	padding: 16px;
	border-radius: 8px;
}
.partage-mobile #colonne-droite-partager {
	border: none;
	margin: 0px;
	margin-top: 10px;
	padding: 12px;
	width: fit-content;
	margin-bottom: 12px;
}
.partage-mobile #colonne-droite-partager .plan-entrainement-titre {
	padding: 10px !important;
	font-size: 18px;
}
.partage-mobile #colonne-droite-partager .colonne-droite-partager-contenu {
	padding: 0px 0px 24px 8px;
}
@media (min-width: 768px) {
	.partage-mobile {
		background-color: #fffbf9;
	}
}
@media (max-width: 768px) {
	.partage-mobile {
		margin-top: 50px;
	}
}
#colonne-droite-upsell {
	margin-top: 32px;
}
#colonne-droite-upsell .card-img-top {
	display: none;
}
#colonne-droite-upsell .card-body {
	border-radius: 10px;
}
#colonne-droite-upsell .card-pricing.active .card-body::before {
	border-radius: 10px;
}
#colonne-droite-visuel.plan-profil {
	border: 4px solid #25224b;
	background-color: #ffffff;
	color: #25224b;
	border-radius: 15px;
}

#colonne-droite-visuel.plan-profil h2 {
	color: #25224b;
}
div.date-j-depart .flipdown {
	margin-top: 17px;
}
@media (max-width: 768px) {
	div#infos_utiles {
		margin-left: 0px;
		margin-right: 0px;
		border-radius: 0px;
		padding: 20px;
	}
	body.template-course .date-depart {
		margin-top: 34px;
	}
}
@media (min-width: 768px) {
	.flipdown {
		width: 200px !important;
	}
	.date-j-depart {
		margin-left: auto;
	}
}
.plan-date-j {
	margin-top: 22px;
}
#infos_utiles .table-wrapper {
	overflow-x: auto;
	width: 100%;
}

#infos_utiles .table-wrapper table {
	width: 100%;
	min-width: 600px; /* ou plus, selon ton contenu */
	border-collapse: collapse;
}
.avis-etoiles svg {
	height: 30px;
	width: 30px;
	cursor: pointer;
}
.avis-etoiles {
	display: flex;
	gap: 0px;
}
#avis-texte {
	width: 90%;
	height: 90px;
	border-color: #333;
	border-radius: 0px;
	background-color: #fff;
}
#avis-texte-envoyer {
	background-color: #25224b;
	color: #fff;
	border-radius: 0px;
	border: none;
	padding: 8px 16px;
	font-size: 16px;
	cursor: pointer;
	margin-top: 8px;
	margin-bottom: 8px;
}
#avis-texte-envoyer:hover {
	background-color: #f06728;
}
.plan-avis-contenu p {
	margin-bottom: 4px;
	margin-top: 8px;
}
.plan-avis-contenu {
	margin-left: 32px;
}
body.template-paiement .testimonial-3-wrapper .testimonial-details {
	font-size: 13px;
}
body.template-paiement .quote-icon {
	display: none;
}
body.template-paiement #menu-navigation {
	visibility: hidden;
}
body.template-course img.course-affiche {
	border-radius: 10px;
	z-index: 99;
	background-color: #fff; /* pour les images transparentes */
}
.card-shodow {
	padding: 40px;
	display: flex;
	flex-direction: column;
	gap: 20px;
	border-radius: 10px;
	background-color: #fff;
	transition: all 0.5s ease-in-out;
	box-shadow: 0 0.1rem 0.95rem rgba(0, 0, 0, 0.1) !important;
}
.bandeau-admin {
	background-color: yellow;
	color: #000;
	width: 100%;
	padding: 24px;
	margin-top: 24px;
	margin-bottom: 24px;
}
.dashboard-kpi {
	font-size: 32px;
	font-weight: 900;
	color: #000;
}
.dashboard-kpi-bloc {
	text-align: center;
}
.informations-course a[target="_blank"] {
	color: rgb(105, 105, 113) !important;
	text-decoration: underline;
}
body.backoffice .erreur {
	color: red;
	background-color: #ffe6e6;
	padding: 0.5rem;
	border: 1px solid red;
	border-radius: 4px;
	margin-top: 0.5rem;
	font-size: 0.9rem;
	width: fit-content;
}

body.backoffice .confirmation {
	color: rgb(11, 120, 1);
	background-color: rgba(11, 120, 1, 0.092);
	padding: 0.5rem;
	border: 1px solid rgb(11, 120, 1);
	border-radius: 4px;
	margin-top: 0.5rem;
	font-size: 0.9rem;
	width: fit-content;
}
.course_introuvable {
	border: 1px solid #25224b;
	border-radius: 14px;
	margin-top: 24px;
	font-size: 18px;
	width: 100%;
	padding: 36px;
	background-color: #25224b;
	color: #fff;
	display: flex;
}
.course_introuvable i {
	font-size: 64px;
	margin-right: 32px;
}
.course_introuvable span.titre {
	font-size: 24px;
	font-weight: bold;
}

.course_introuvable div,
.course_introuvable span {
	text-decoration: none !important;
}
