
/**********************************************************************************************************************************/
/* FRAME TEXT
/**********************************************************************************************************************************/
.frame-type-text{
	line-height: 1.9em;
	font-weight: 400;
	font-size: 1rem;
	font-size: clamp(1rem, 0.95rem + 0.25vw, 1.25rem);
}

.frame-type-text * + p{
	margin-top: 20px;
}


.frame-redblock{
	border: 3px solid var(--rouge);
	border-radius: var(--round);
	padding: var(--margin);
	position: relative;
}

.frame-redblock header{
	position: absolute;
	top: 0;
	transform: translateY(-50%);
	padding: 10px 20px;
	color: var(--rouge);
	background: #FFFFFF;
	display: inline-flex;
}

.frame-redblock header *{
	font-weight: 700 !important;
	font-size: 140%;
}

.text-small{
	font-size:60%;
}

.frame-space-before-small{
	margin-top: var(--padding);
}

/**********************************************************************************************************************************/
/* BOUTON
/**********************************************************************************************************************************/
.bouton {
	background: #FFFFFF;
	padding: 15px 50px 15px 20px;
	border-radius: 320px;
	display: inline-flex;
	position: relative;
	font-weight: 600;
	color: inherit;
	border: 1px solid transparent;
	cursor: pointer;
	font-size: 0.8125rem;
	font-size: clamp(0.8125rem, 0.775rem + 0.1875vw, 1rem);
	line-height: normal;
}

@media only screen and (min-width: 900px) {
	.bouton {
		padding: 20px 70px 20px 30px;
	}
}


.bouton.rouge{
	background: var(--rouge);
	color: #FFFFFF;
}

.bouton.rouge:hover{
	border-color: var(--rouge);
}

.bouton.lines{
	background: none;
	border-color: #000000;
}

.bouton.lines:hover{
	background: #FFFFFF;
	border-color: transparent;
}

.bouton::after {
	width: 28px;
	height: 28px;
	content: '';
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	background-color: currentColor;
	mask-image: url('../../fleche.svg');
	mask-repeat: no-repeat;
	mask-position: center;
	mask-size: contain;
	-webkit-mask-image: url('../../Icons/fleche.svg');
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-webkit-mask-size: contain;
	transition: all .2s ease;
}

@media only screen and (min-width: 900px) {
	.bouton::after {
		width: 40px;
		height: 40px;
	}
}

.bouton:hover{
	color: var(--rouge);
	background: #FFFFFF;
}


/**********************************************************************************************************************************/
/* SURTITRE
/**********************************************************************************************************************************/
.header-surtitre{
	font-weight: 700;
	font-size: 20px;
}

.frame:not(.frame-redblock) h2.header-titre,
.frame-type-text h2{
  font-size: 1.25rem;
  font-size: clamp(1.25rem, 1.1rem + 0.75vw, 2rem);
  font-weight: 900;
  line-height: 1.3em;
}

.header-surtitre + *{
	margin-top: 15px;
}

.has-bg-asset .header-surtitre {
	background: rgba(255,255,255, .6);
	padding: 5px 10px;
	border-radius: 5px;
}

/**********************************************************************************************************************************/
/* MAIN H1
/**********************************************************************************************************************************/
h1{
	font-size: 1.875rem;
	font-size: clamp(1.875rem, 1.5rem + 1.875vw, 3.75rem);
	font-weight: 900;
}


/**********************************************************************************************************************************/
/* SPACES
/**********************************************************************************************************************************/
.frame-space-before-medium {
	margin-top: calc(var(--margin)*2);
}

@media only screen and (min-width: 900px) {
	.frame-space-before-medium {
		margin-top: var(--margin);
	}
}

.frame-space-after-medium{
	margin-bottom: var(--margin);
}

.frame-space-before-extra-large{
	margin-top: var(--megaspace);
}

.frame-space-after-extra-large{
	margin-bottom: var(--megaspace);
}

.frame-space-before-nospace{
	margin-top: calc(var(--megaspace)*-1);
}

/**********************************************************************************************************************************/
/* SWIPER
/**********************************************************************************************************************************/
.swiper-container{
	border-radius: 20px;
	position: relative;
}

.swiper-container .swiper-button-next,
.swiper-container .swiper-rtl .swiper-button-prev,
.swiper-container .swiper-button-prev {
	right: 0;
	left: auto;
	width: 32px;
	height: 32px;
	background: #FFF;
	border-radius: 320px;
	display: flex;
	justify-content: center;
	box-shadow: 0 4px 48px 0 rgba(0, 0, 0, 0.05);
	background: #FFFFFF;
	transform: translateX(50%);
}

@media only screen and (min-width: 600px) {
	.swiper-container .swiper-button-next,
	.swiper-container .swiper-rtl .swiper-button-prev,
	.swiper-container .swiper-button-prev {
		width: 48px;
		height: 48px;
	}
}

.swiper-container .swiper-button-next:hover::after,
.swiper-container .swiper-rtl .swiper-button-prev:hover::after,
.swiper-container .swiper-button-prev:hover::after{
	color: var(--rouge);
}

.swiper-container .swiper-button-prev {
	left: 0;
	right: auto;
}

.swiper-container .swiper-button-prev {
		transform: translateX(-50%);
	}
@media only screen and (min-width: 600px) {
	
}

.swiper-container .swiper-button-next::after, .swiper-container .swiper-button-prev::after {
	font-size: 1rem;
font-size: clamp(1rem, 0.95rem + 0.25vw, 1.25rem);
	color: #000000;
}

.swiper-container .swiper-pagination-bullet {
	width: 12px;
	height: 12px;
	background: #FFFFFF;
}

.swiper-container .swiper-pagination-bullet-active {
	background: var(--rouge);
}

.swiper-container .swiper-button-disabled{
  display: none;
}

.swiper-container .swiper-pagination{
	bottom: 0;
}

.swiper-container .swiper-pagination{
  transform: translateY(150%);
  bottom: 0 !important;
  text-align: right;
  padding-right: var(--padding);
}

.swiper-container .swiper-pagination.inset{
	transform: translateY(-100%);
	text-align: center;
	padding-right: 0;
}

.swiper-container .swiper-pagination-bullet:not(.swiper-pagination-bullet-active){
  background: #000000;
}

.swiper-container .swiper-pagination.inset .swiper-pagination-bullet:not(.swiper-pagination-bullet-active){
	background: #FFFFFF;
}

.swiper-container .swiper-slide{
	height: auto;
}

strong{
	font-weight: 700;
}

.ce-gallery img {
	display: block;
	width: 100%;
	height: auto;
}

.frame-type-text p + h2,
.frame-type-text ul + h2{
	margin-top: var(--margin);
	margin-bottom: var(--padding);
}

.frame-type-text p + ul{
	margin-top: 20px;
}

.frame-type-text a:not(.bouton){
	color: var(--rouge);
}

.frame-type-text a:not(.bouton):hover{
	background: var(--rouge-milieu);
}