@charset "UTF-8";
/* CSS Document */
/* Rouge bordeaux CD : #FF506e */

html{
	font-family:Montserrat,sans-serif !important;
	font-size:14px
}

.bazz-widget{
 display: none;
}


header{
 background-color: #293847;
 padding: 0px !important;
 margin-bottom:0px !important;
}

body.sommaireV2 header{
	background-color: transparent !important;
 	padding: 0px !important;
 	margin-bottom:0px !important;
}

.logo-header{
 text-align: center;
 width:100%
}

.tx-blue{
 color:#293847;
}

footer.cdiscount{
 min-height: 200px;
 background-color: #ececec !important;
 /*border-top:2px solid #293847; */
 display: block;
 text-align: center;
 color:#312C2C;
	padding-top: 5px
}

#resapharos{
 /* border:1px solid #ccc;
 padding:10px; */
}

.menu{
 text-align: center;
 padding: 5px;
 border-bottom:1px solid #293847;
}

#wrapper{
 padding-bottom: 0px !important;
 background-repeat: no-repeat;
 background: url('https://www.lacentraledesferries.com/images/fond_mer.jpg') top left no-repeat;
 /* background-size: cover; */
}

#cadre-reservation{
padding: 8px;
border-radius:5px;
background-color: #fff !important;
position: relative;
/* top:-35px */
top:20px;
}

.hautpage{
 text-align: center;
 padding: 5px;
 background-color: #fff;
 /* margin:10px; */
}

.hautpage a{
	padding: 5px;
}

footer a, footer a:hover{
 color:#293847
}

#promo_off h2:before{
 content: "\f21a";
 font: normal normal normal 24px/1 FontAwesome;
 color:#293847;
 padding-right: 10px;
}

#promo_off .logo{
 float:left;
 font-size:24px;
 color:#FF0000
}

#promo_off h2 span.first{
 color:#ea3c25;
 font-size:24px;
}

#promo_off h2 span.second{
 color:#293847;
 font-size:14px;
}


h1,h2,h3{
  font-family:Montserrat,sans-serif !important;
}

h1{
 font-size:20px;
 color:#293847;
 font-weight:800;
}

h1 span{
 color:#3732ff;
}

#banniere{
 /* background: url('https://www.lacentraledesferries.com/images/vagues.png') top left no-repeat; */
 /* margin-top:20px;
 margin-bottom: 20px; */
 padding-left: 0px;
  
}

#banniere h1{
 color:#3732ff;
 margin-bottom:0px;
 padding-bottom: 0px;
 line-height: 10px;
}

#banniere h2{
 color:#293847 !important;
 font-size:18px;
 font-weight:400;
 margin-bottom: 0px;
 padding-bottom: 0px;
}

#banniere h1{
 color:#293847 !important;
 font-size:18px;
 font-weight:400;
 margin-bottom: 0px;
 padding-bottom: 0px;
}

.titre_reserver-traversee{
 text-align: center;
 font-size:16px !important;
}

#banniere .logo{
padding-right: 30px;
text-align: center;
float: left;
}

#banniere .titre{
margin: 10px 0 0 -20px;
display: inline-table;
}

#promo .logo, #iframe .logo{
padding-right: 30px;
text-align: center;
float: left;
}

#promo .titre, #iframe .titre{
margin: 10px 0 0 -20px;
display: inline-table;
}

#promo .header-titre, #iframe .header-titre{
	margin: 10px 0;
}

body #promo h2, #iframe h2{
 color:#3732ff;
 margin-bottom:0px;
 padding-bottom: 0px;
 line-height: 10px !important;
 font-size: 14px;
}

#iframe h1{
 color:#3732ff;
 margin-bottom:0px;
 padding-bottom: 0px;
 line-height: 10px !important;
 font-size: 14px;
 font-weight: 500;
}

body #promo h3, #iframe h3{
 color:#293847 !important;
 font-size:12px;
 font-weight:400;
 margin-bottom: 0px;
 padding-bottom: 0px;
}


/* = MOCKUP == MOCKUP = */

#haut{
	position: relative;
}

.col-menu-mobile{
	position:absolute;
	top:15px;
	left:20px;
	z-index: 1300;
}

#menu_lateral{
	background-color: #efefef;
    height: auto;
    left: -210px;
    padding-top: 10px;
    position: absolute;
    top: 0;
	width:200px;
	min-height:400px;
	z-index: 1000;
	box-shadow: 8px 0px 5px #555;
}

#menu_lateral ul{
	padding: 0px;
	margin: 0px;
}

#menu_lateral li{
	list-style: none;
	padding: 3px 5px;
}

#menu_lateral li a{
 	color:#293847 !important;
 	font-size:12px;
 	font-weight:400;
}

#page{
	position:relative;
}

.fond-masquant-bleue{
	/* background-image: url('fondbleue.png'); */
	/* background-color: rgba(6,6,6,0.70); */
	opacity: 0.5;
	z-index: 2000;
}

.a-menu-l{
	cursor: pointer
}

.menu .navbar{
	height: 20px;
	display: inline-table;
}

.menu nav ul{
	text-align: center;
	list-style-type: none;
}

.menu nav a{
	color:#293848;
	font-size:12px;
	font-weight:400;
}

.menu nav a:hover{
	color:#FF506e; /* rouge bordeaux CD */
	text-decoration: none;
}

.menu nav .text{
	position: relative;
	top:2px;
}

.menu nav .img{
	width:100%;
	height: 15px;
	overflow:hidden;
}

.menu nav img{
	position: relative;
	top:-100%;
	width:15px;
	height: auto
}

.menu nav .item-menu{
	padding:10px 25px 0 25px;
}

.menu nav li:hover img{
	top:0;
}

.menuoff nav span{
	width:15px;
	height: 15px;
	overflow: hidden;
	display: inline-block;
	margin-left: 5px;
}

.cercle{
	width: 130px;
	height: 130px;
	margin:0 0 0 0;
	box-shadow: 2px 2px 2px rgba(0,0,0,.1);
	border-radius: 50%;
	text-align: center;
	background-color: #fff;
	display: inline-table
}

.cercle img{
	/* max-width:57%;
	max-height:57%; */
	margin-top:25%;
	text-align: center;
}

.contenu-cercle{
	vertical-align: middle;
	text-align: center;
}

section.les-bonnes-raisons{
	padding: 10px 0 10px 0;
	background-color: #efefef;
	/* border-top:2px solid #293847; */
}

.les-bonnes-raisons p{
	text-align: justify;
	font-size:12px;
	line-height: 1em;
}

.les-bonnes-raisons h3{
	margin-bottom: 5px;
	font-size:14px;
	color:#293847;
	font-weight: 600;
	text-align: center
}

.item-promo{
	margin-bottom: 10px;
	text-align: center
}

.item-promo h4{
	font-size:14px;
	color:#293847;
	font-weight: 600;
	margin-bottom: 10px;
}

.item-promo p{
	line-height: 1.3em;
}

#promo .logo-ip{
	text-align: center;
	/*border-top:8px solid #3732ff;
	background-color: #3732ff; */
	margin:20px 0;
	
}

#promo .logo-ip img{
	max-height: 180px;
}

.les-bonnes-raisons h2{
	font-weight:600;
	font-size: 3rem;
	color:#293847;
	text-align: center;
}

.les-bonnes-raisons h2 span{
	
}

.les-bonnes-raisons h2 span img{
	height: 50px;
	width:auto;
	position: relative;
	top:9px;
}

.contenant-article-cdiscount{
	background-color: #fff;
	padding: 5px;
}

.texte-footer{
	padding: 0 5px 5px 5px;
}


/* deb media */
@media screen and (max-width: 767px) {
	
	ul.sort-destination{
		margin-left: 0px;
		padding-left: 0px;
	}
	
	section.menu{
		/* display: none; */
	}

	.col-menu-mobile{
		top:5px;
		left:5px;
	}
	
	body #wrapper{
		top:0px !important;
		margin-top: 0px !important;
	}
	
	#iframe img, #promo .logo img{
		width: 50px;
		height: auto;
	}
	
	body #banniere{
		margin-top:0px;
		margin-bottom: 0px;
		top:-20px !important
	}
	
	#banniere h1, #promo h2{
		font-size:14px;
		line-height: 0.1em;
	}
	
	#banniere h2, #promo h3{
		font-size:12px;
	}
	
	div#nettoyeurheader{
		height: 1px !important;
		clear: both
	}
	
	#cadre-reservation{
		top:0px;
		margin-bottom: 20px;
	}
	
	#promo .item-promo{
		margin-bottom: 30px;
	}
	
	.menu nav li{
	display: inline-block;
	width:auto;
	color:#293847;
	font-size:14px;
	margin-left: 10px;
	font-family: Arial;		
}
	
	.menu nav .img{
		display: block;
		text-align: center;
	}

	.menu nav img{
		width:15px;
		height: auto;
		vertical-align: middle;
		position: relative;
	}
	
	.les-bonnes-raisons h2 img{
		max-height: 70px;
		width: auto;
	}
	
	.contenant-article-cdiscount{
		margin-top: 30px;
	}
	
	.logo-tac{
		text-align: center;
		padding-bottom: 10px;
	}
	
	.jyvais{
		text-align: center;
	}
	
	.texte-bonne-raison{
		text-align: center;
		margin-top: 5px;
	}
	
	.titre-ordi{
		display:none;
	}
	
	.titre-mobile{
		text-align:center;
		font-weight:600;
	}
	
	#iframe .header-titre{
		text-align:center;
	}
	
	.plusdemarge{
		margin-top: 10px !important;
		margin-bottom: 10px !important;
	}
	
	body{
		padding: 0px !important
	}

/* Fin 767 */
}
/* Fin 767 */

@media screen and (min-width: 768px) {
	.logo-ip{
		max-height:180px;
	}
	
	.plusdemarge{
		margin-top: 20px !important;
		margin-bottom: 20px !important;
	}
	
	.menu nav ul{
		
	}
	
	.menu nav li{
	display: inline-block;
	/* width:150px; */
	color:#293847;
	font-size:14px;
	margin-left: 10px;
	font-family: Arial;	
	padding:10px 25px 0 25px;
	border-right:1px solid #d7d9e4;
}

	.menu nav img{
		width:15px;
		height: auto;
		vertical-align: middle;
		position: relative;
	}
	
	.item-lbr{
		margin: 10px 0;
	}
	
	.img-tac{
		float:left;
		margin: 0 15px 10px 10px;
	}
	
	.titre-mobile{
		display:none;
	}
	
}

@media only screen and (max-width: 1006px) {
	#wrapper {
		padding-top: 0px !important;
		margin-top: 0px !important;
	}
	
	#banniereOff {
		top: -40px !important;
		position: relative;
		z-index: auto;
	}
	
	body .contenant-article-cdiscount #banniere{
		top:10px !important;
	}
}
/* fin media */

.bonnes-raisons-container{
	margin-top: 10px
}

.les-bonnes-raisons h2{
	font-size:18px;

}

#banniere{
	margin-left: 10px;
	margin-top: 10px;
}

.logo-site img{
	max-width:90%;
	height: auto
}

.item-promo img{
	max-width:100%;
	height: auto
}

.menu ul{
	margin: 0px;
	padding: 0px;
}

.nettoyeur{
	height: 2px;
	clear: both
}

#iframe{
	/* border-bottom:2px solid #293847; */
}

footer .contenu{
	padding: 0px 5px;
}



.lessImportantTitle{
	color:#EA3C25;
}
.thirdDegTitle{
	font-weight: bolder;
	text-decoration: underline;
}

#lien-page-pied ul{
	list-style: none;
	text-align: center;
	padding-left: 0px;
}

#lien-page-pied li{
	display: inline-table
}

#lien-page-pied a{
	font-size:12px;
	color:#3732ff; /* rouge bordeaux CD */
	text-decoration: none;
}

#lien-page-pied span{
	font-size:10px;
	margin-left:6px;
}

h1{
	font-size:20px;
	color:#FF506e;
	margin-top: 10px !important
}

h2{
	font-size:18px;
	color:#FF506e;
}

h3{
	font-size:16px;
	color:#FF506e;
}

.texte p{
	text-align: justify;
	font-size: 14px;
}

#formulaire_contact ul{
	list-style: none;
	margin: 0px;
	padding: 0px !important
}

#formulaire_contact li{
	list-style: none;
}

#formulaire_contact legend{
	font-size:16px
}

#formulaire_contact label{
	font-size:14px
}

#formulaire_contact boutons input{
	background-color:#efefef;
}

.contenu-texte{
	min-height: 300px;
	padding-bottom: 10px !important;
	margin-bottom: 10px;
}

#banniere{
	margin:0px !important;
	padding: 0px !important;
}

.arbo{
	font-size:12px;
	padding-top: 5px;
}

.arbo a{
	font-size:12px;
	color:#FF506e;
}

.reserver{
	text-align:center;
}

.reserver a{
	color:#fff;
	background-color:#FF506e;
	padding:10px 5px 10px 10px;
	border-radius:5px;
}

#promo{
	padding-bottom: 10px;
}

li{
	text-align: justify;
	font-size: 14px;
}

.logo-compagnie .spip_logos{
	float:none; 
}

.liste-traversee li span{
	width:300px;
	color:#293847;
	font-family:Montserrat,sans-serif !important;
	font-size:14px;
	margin-bottom: 5px;
	display: inline-table;
}

.liste-traversee li{
	margin-bottom: 5px;
}

.liste-traversee li a{
	color:#fff;
	background-color:#FF506e;
	padding:4px;
	border-radius:3px;
}

#zone-traversee{
	border-top:1px solid #FF506e;
	margin-top:10px;
	padding-top: 10px;
}

#zone-traversee h2{
	margin-bottom: 20px
}

.nettoyeur{
	clear: both;
	height: 1px !important;
	width:100%;
}

.liste-compagnie{
	margin:10px 0;
}

.liste-compagnie .logo-compagnie{
	min-height: 120px;
	vertical-align: middle
}


.liste-compagnie .spip_logos{
	float:none; 
	padding: 0px !important;
	margin: 0px !important;
}

.item-compagnie{
	border: 5px solid #fff;
	-moz-box-shadow: 8px 8px 12px #aaa; 
	-webkit-box-shadow: 8px 8px 12px #aaa; 
	box-shadow: 8px 8px 12px #555; 
}

.item-compagnie:hover{
	border: 5px solid #fff;
	-moz-box-shadow: 9px 9px 14px #aaa; 
	-webkit-box-shadow: 89px 9px 14px #aaa; 
	box-shadow: 9px 9px 14px #555; 
}

.description-bonne-raison{
	display:none;
	border: #EA3C25 solid 2px;
	border-radius: 10px;
	color: #293847;
	background-color: #fff;

}

.description-bonne-raison span, .description-bonne-raison span>p{
	font-size: 20px;
}

.voir-rea{
	display: flex;
}

.image-secondaire{
	border-right: 2px solid black;
	text-align: center;
}

.btn-plus{
	background-color: #3732ff;
	text-transform: uppercase;
	font-weight: 600;
	text-align: center;
  color: white;
  border: none;
  outline: none;
}






.btn-plus-reserves .btn{
	text-decoration: none; background-color:#3732ff;
	color: #FFFF;
}

.btn-plus-reserves .btn:hover{
	background-color: #F1F1F1;
	color: #3732ff;
}

.pays-plus-reserves>a{
	text-decoration: none; text-transform: uppercase; color: #acb4cc;
}

.pays-plus-reserves>a:hover{
	color: #3732ff;
}

.destination-item:hover {
	box-shadow: 0px 40px 45px 0px rgba(199, 204, 217, 0.97);
	/*border: solid 1px rgba(0, 0, 0, 0.1);*/
	transition: all ease 300ms;
}

#rubrique-5 .menu_rubriques ul{
	list-style:none;
	text-align: center;
	padding: 0px;
	margin:0px;
}

#rubrique-5 .menu_rubriques li{
	display: inline-table;
	margin:0 5px;
}

#rubrique-5 .menu_rubriques li a{
	background-color:#293847;
	color:#fff;
	padding:5px 10px;
	border-radius:5px;
	font-size:16px;
}  

#rubrique-5 .menu_rubriques li a:hover{
	background-color:#3732ff;
	text-decoration: none
}

.btn.focus, .btn:focus{
	box-shadow: 0 0 0 0.1rem rgba(255,255,255,.25) !important;
}

#rubrique-5 .titre-btn-faq{
	font-size:18px;
	font-weight: 500
}

.contenu-texte{
	min-height: 350px
}

.contenu-texte .chapo{
	font-weight: 500
}

.contenu-texte .titre-article{
	margin-bottom: 20px;
}

iframe{  
   /* pointer-events:none; */
}


.cliciframe{
	display: none;
}

#fpopup{
	position:fixed;
	top:10px;
	width:80%;
	max-width:600px;
	min-height: 200px;
	background-color:#fff;
	box-shadow: 1px 1px 12px #555;
	border:1px solid #ccc;
	padding:5px;
	display: none;
	z-index: 100;
	margin-left:auto;
	margin-right: auto;
}

.fermer-popup{
	cursor:pointer;
	color:#fff;
	font-weight:500;
	background-color:#3732ff;
	border-radius:3px;
	padding:5px;
	display: inline-block;
	font-size:11px
	
}

.ouvrir-popup-vehicule{
	cursor:pointer;
	color:#fff;
	border-color:#096ec8;
	background-color:#096ec8;
	margin-bottom: 10px;
	padding: 10px;
	border-radius:5px;
	display: inline-block;
}

body #iframe #entete-formu-vehicule h3{
	color:#3732ff !important;
	font-size:14px !important;
	font-family:"Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-weight: 500;
	text-align:center;
}

#form_dimension_vehicule li{
	margin-bottom: 1px;
	padding: 1px;
}

.bt-soumettre a:hover{
	color:#fff;	
}

#resultat-dimension{
	padding-bottom: 10px;
}

#formulaire_login label{
	width:200px
}

#formulaire_login{
	max-width:350px;
	width:100%;
	margin-left:auto;
	margin-right: auto;
	border:1px solid #ccc;
	padding: 5px;
}

#formulaire_login .details{
	text-align: left;
}

#formulaire_login .details a{
	font-size:11px
}

#formulaire_login .boutons{
	text-align: center
}

.bouton-logout{
	text-align: right;
	margin-right: 8px;
	margin-bottom: 8px;
}

.bouton-logout a{
	background-color: brown;
	color:#fff;
	padding: 5px;
	border-radius:3px;
	text-align: center;
	font-size:12px
}

#autre{
	margin-top: 10px;
	margin-bottom: 40px;
}

#autre h3{
	color:#293847;
	font-size:18px;
}

#autre h4 a{
	color:#3732ff;
	font-size:14px;
}

#autre .lien-suite{
	text-align: center;
	margin-top: 10px;
	margin-bottom: 10px;
}


#autre .lien-suite a{
	background-color:#293847;
	color:#fff;
	font-size:16px;
	margin: 5px 10px;
	padding: 10px 20px;
	border-radius:5px;
	width:98%; 
	display: inline-block;
}

.article-12 .boutons{
	text-align: center;
}

.article-12 .boutons input{
	max-width: 300px;
	background-color: cornflowerblue;
	color:#fff;
	display: inline-block
}

.article-12 .saisie_fichiers input{
	border:none;
}

.article-12 .saisie_fichiers label{
	padding-left: 10px
}

.sommaire .flex-column{
	max-height: 200px;
	text-align: center
}

.note{
	padding-top: 15px;
	font-size:11px;
	font-style: italic;
}

.article-bon-plan h1{
	margin-bottom: 15px;
}

.rubrique-bon-plan h1{
	margin-bottom: 25px;
}

.rubrique-bon-plan .ligne-promo{
	box-shadow: 0px 10px 12px 0px rgba(199, 204, 217, 0.97);
    background-color: white;
	margin-bottom: 20px;
	min-height: 455px;
}

.ligne-promo .texte-bon-plan{
	padding:0px 10px 0px 10px;
	min-height: 195px !important;
	display: block;
}

.rubrique-bon-plan .texte-bon-plan .ps{
	font-size: 10px;
	font-style: italic;
}

.rubrique-bon-plan .texte-bon-plan .intro{
	
}

.rubrique-bon-plan .texte-bon-plan .intro p{
	font-size: 12px;
}

.rubrique-bon-plan .texte-bon-plan h3{
	font-size: 16px;
}

.lien-bon-plan{
	margin-bottom: 10px;
	margin-top: 10px;
	text-align: center;
	
}

.lien-bon-plan a{
	color:#fff;
	padding:5px 10px;
	text-align: center;
	background-color: #FF506e;
	border-radius:5px;
	font-size: 12px;
	font-weight: 700;
}

.lire_suite_bp{
	margin-top: 10px;
	margin-bottom: 10px;
	text-align: center;
}

.lire_suite_bp a{
	color:#fff;
	padding:5px 5px;
	text-align: center;
	background-color: #FF506e;
	border-radius:5px;
	font-size: 12px;
	font-weight: 500;
}

.texte-maintenance{
	font-size: 14px;
	font-weight: 500;
	text-align: center
}

#jerefusecook, #jacceptcook{
	/* padding:10px;
	box-shadow: rgb(136, 136, 136) 4px 4px 25px; */
	cursor:pointer;
	color:#007bff;
	display: block;
	text-align: right
}

#politique-cookie{
	background-color: #efefef;
}

#politique-cookie h2{
	padding-top: 10px;
}

div.editer{
	padding: 5px !important;
}

.boutons button{
	background-color: dodgerblue;
	color:#fff;
	padding: 10px 30px;
	border-radius:5px;
	border:none;
}

footer p a.spip_in{
	color:dodgerblue;
}

.texte_le_ferry{
	width:1000px;
	text-align: justify;
	margin-right: auto !important;
	margin-left: auto !important;
}

@media only screen and (max-width: 1006px) {
	.texte_le_ferry{
	width:96%;
	text-align: justify;
	margin-right: auto !important;
	margin-left: auto !important;
	}
}

.lw { font-size: 60px; }

.rs-table {
display: block;
width: 100%;
}

.rs-tbody {
display: flex;
flex-wrap: wrap;
}

.rs-tr {
width: 33%;
margin-top: 30px;
}

.rs-th {
display: block;
max-width: 75%;
text-align: left;
}

.rs-td {
display: block;
max-width: 75%;
}

#logo-bas-cdiscount{
	position:relative;
	top:-10px;
}

#banniere .banniere-1{
	background-color:#FF506E;
	min-height: 300px;
	background: url('banniere-lacentrale.jpg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}

#banniere .banniere-2{
	background-color:#FF506E;
	min-height: 300px;
	/* text-align:center; */
	display: flex;
    justify-content: center; /* Centre horizontalement */
    align-items: center; /* Centre verticalement */
	
}

#banniere .banniere-3{
	background-color:#FF506E;
	min-height: 300px;
	display: flex;
    justify-content: center; /* Centre horizontalement */
    align-items: center; /* Centre verticalement */
	
}

#banniere .banniere-2 img, #banniere .banniere-3 img{
	 max-width: 100%; /* Pour que l'image ne dépasse pas la taille du div */
	 height: auto;
  	 display: block;	
}

#banniere-pied{
	/* background-color:#FF506E; */
	background-color:#FFf;
}

.iframeContainer {
position: relative;
border-radius: 10px;
min-height: 400px;
margin: auto;
max-width: 1280px;
}
.sectionifam { margin-bottom: -280px; }
@media (max-width: 1332px) and (min-width: 820px) { .sectionifam { margin-bottom: -160px; } }
@media (max-width: 819px) { .sectionifam { margin-bottom: -220px; } }


/* ===== Formidable SPIP -> look Bootstrap (responsive) ===== */
#formulaire_formidable_contact2{
  max-width: 960px;
  margin: 0 auto;
  padding: 1rem;
}

/* “Card” */
#formulaire_formidable_contact2 form{
  background: #fff;
  border: 1px solid rgba(0,0,0,.125);
  border-radius: .75rem;
  padding: 1.25rem;
  box-shadow: 0 .5rem 1rem rgba(0,0,0,.06);
}

/* Groupe en grille */
#formulaire_formidable_contact2 .editer-groupe.row{
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin: 0;
}

/* Chaque champ */
#formulaire_formidable_contact2 .editer{
  width: 100%;
  margin: 0;
}

/* Labels */
#formulaire_formidable_contact2 .editer-label{
  display: inline-block;
  font-weight: 600;
  margin-bottom: .35rem;
}

/* Inputs / select / textarea style Bootstrap */
#formulaire_formidable_contact2 input.text,
#formulaire_formidable_contact2 input.email,
#formulaire_formidable_contact2 input[type="text"],
#formulaire_formidable_contact2 input[type="email"],
#formulaire_formidable_contact2 select,
#formulaire_formidable_contact2 textarea{
  width: 100%;
  display: block;
  padding: .6rem .75rem;
  font-size: 1rem;
  line-height: 1.4;
  color: #212529;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: .5rem;
  transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
  box-sizing: border-box;
}

/* Focus */
#formulaire_formidable_contact2 input:focus,
#formulaire_formidable_contact2 select:focus,
#formulaire_formidable_contact2 textarea:focus{
  outline: 0;
  border-color: #86b7fe;
  box-shadow: 0 0 0 .25rem rgba(13,110,253,.25);
}

/* Placeholder / aide */
#formulaire_formidable_contact2 .form-text,
#formulaire_formidable_contact2 p[id^="format_email_"]{
  display: block;
  margin-top: .35rem;
  font-size: .875rem;
  color: #6c757d;
}

/* Obligatoire */
#formulaire_formidable_contact2 .obligatoire{
  font-weight: 500;
  color: #dc3545; /* bootstrap danger */
}

/* Boutons */
#formulaire_formidable_contact2 .boutons{
  margin-top: 1rem;
  display: flex;
  justify-content: flex-end;
  gap: .75rem;
  align-items: center;
}

#formulaire_formidable_contact2 button.submit_main{
  appearance: none;
  border: 1px solid transparent;
  background: #0d6efd;   /* bootstrap primary */
  color: #fff;
  padding: .65rem 1.1rem;
  border-radius: .6rem;
  font-weight: 600;
  cursor: pointer;
  transition: transform .05s ease-in-out, filter .15s ease-in-out;
}

#formulaire_formidable_contact2 button.submit_main:hover{
  filter: brightness(.95);
}

#formulaire_formidable_contact2 button.submit_main:active{
  transform: translateY(1px);
}

/* Loading icone zone */
#formulaire_formidable_contact2 .image_loading{
  display: inline-block;
  min-width: 1px;
}

/* ===== Responsive layout “comme Bootstrap cols” ===== */
/* Sur desktop: 2 colonnes pour les champs “classiques” */
@media (min-width: 768px){
  #formulaire_formidable_contact2 .editer_selection_1,
  #formulaire_formidable_contact2 .editer_input_1,
  #formulaire_formidable_contact2 .editer_input_2,
  #formulaire_formidable_contact2 .editer_email_1,
  #formulaire_formidable_contact2 .editer_input_3,
  #formulaire_formidable_contact2 .editer_selection_2,
  #formulaire_formidable_contact2 .editer_selection_3{
    width: calc(50% - .5rem);
  }

  /* Message en pleine largeur */
  #formulaire_formidable_contact2 .editer_textare_
