/*
	'########::::'###::::'########:::'#######::'########::::'###::::'########:::'#######::::::::'######:::'#######::'##::::'##:
	##.....::::'## ##::: ##.... ##:'##.... ##: ##.....::::'## ##::: ##.... ##:'##.... ##::::::'##... ##:'##.... ##: ###::'###:
	##::::::::'##:. ##:: ##:::: ##: ##:::: ##: ##::::::::'##:. ##:: ##:::: ##: ##:::: ##:::::: ##:::..:: ##:::: ##: ####'####:
	######:::'##:::. ##: ########:: ##:::: ##: ######:::'##:::. ##: ########:: ##:::: ##:::::: ##::::::: ##:::: ##: ## ### ##:
	##...:::: #########: ##.. ##::: ##:::: ##: ##...:::: #########: ##.. ##::: ##:::: ##:::::: ##::::::: ##:::: ##: ##. #: ##:
	##::::::: ##.... ##: ##::. ##:: ##:::: ##: ##::::::: ##.... ##: ##::. ##:: ##:::: ##:'###: ##::: ##: ##:::: ##: ##:.:: ##:
	##::::::: ##:::: ##: ##:::. ##:. #######:: ##::::::: ##:::: ##: ##:::. ##:. #######:: ###:. ######::. #######:: ##:::: ##:
	..::::::::..:::::..::..:::::..:::.......:::..::::::::..:::::..::..:::::..:::.......:::...:::......::::.......:::..:::::..::                                                                                                                         
	Projet : SAM
	Author : Fred Fillon
	Copyright : farofaro.com 2023
*/                                                                                                                                                          
html{
	display: flex; flex-direction: column; min-height: 100vh;
}
body {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}
footer {
	flex-shrink: 0;
} 
main{
	flex: 1 0 auto;
}
body, p {
    font: 18px/24px "Segoe UI";
}
button:focus {
    outline: 0px !important;
}
.jumbotron {
	background-image: url("../media/images/accueil.jpg");
	/* height: 400px; */
	margin-bottom: 30px;
	margin-top: 0px;
	/* background-position: 0% 100%; */
	/* background-position: -0px +05px; */
    background-repeat: no-repeat;
    background-size: cover;
	background-position: bottom;
	position:relative;	
	border-radius: 0;
}
/* Toggle Button */
/* Define the shape and color of the hamburger lines */
.navbar-toggler span {
    display: block;
    background-color: #888888;
	border:1px solid #fff;
	border-radius:1px;
    height: 2px;
    width: 22px;
    margin-top: 5px;
    margin-bottom: 5px;
    position: relative;
    left: 0;
    opacity: 1;
    transition: all 0.35s ease-out;
    transform-origin: center left;
}
/* top line needs a little padding */
.navbar-toggler span:nth-child(1) {
    margin-top: 0.3em;
}
/**
	* Animate collapse into X.
*/
/* top line rotates 45 degrees clockwise and moves up and in a bit to close the center of the X in the center of the button */
.navbar-toggler:not(.collapsed) span:nth-child(1) {
    transform: translate(15%, -33%) rotate(45deg);
}
/* center line goes transparent */
.navbar-toggler:not(.collapsed) span:nth-child(2) {
    opacity: 0;
}
/* bottom line rotates 45 degrees counter clockwise, in, and down a bit to close the center of the X in the center of the button  */
.navbar-toggler:not(.collapsed) span:nth-child(3) {
    transform: translate(15%, 33%) rotate(-45deg) ;
}
/**
	* Animate collapse open into hamburger menu
*/
/* top line moves back to initial position and rotates back to 0 degrees */
.navbar-toggler span:nth-child(1) {
    transform: translate(0%, 0%) rotate(0deg) ;
}
/* middle line goes back to regular color and opacity */
.navbar-toggler span:nth-child(2) {
    opacity: 1;
}
/* bottom line goes back to initial position and rotates back to 0 degrees */
.navbar-toggler span:nth-child(3) {
    transform: translate(0%, 0%) rotate(0deg) ;
}
.navbar .logo{
	max-height: 80px;
    margin: 10px 10px;
	transition: .3s ease;
}
.navbar {
	background: linear-gradient(to left, #48BCFF, #2381D2);
	height:120px;
	box-shadow: 0 1px 10px -6px rgba(0, 0, 0, 0.42), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 4px 5px -2px rgba(0, 0, 0, 0.1);
	transition: .3s ease;
}
.navbar-brand,
.navbar-nav .nav-link {
	color: #fff;
	transition: .3s ease;
}
.navbar-brand:hover,
.navbar-nav .nav-link:hover {
	opacity:0.75;
}
.navbar-dark .navbar-nav .nav-link{
	font-size: 16px;
    padding-top: 10px;
    padding-bottom: 8px;
    border-radius: 0px;
    padding-left: 0;
    padding-right: 0;
    margin-left: 15px;
    margin-right: 15px;
	text-transform: uppercase;
	color:#FFF;
	transition: .3s ease;
}
.navbar-dark .navbar-nav .nav-link:hover{
	border-bottom: 2px solid #ffffff;
}
.navbar-dark .navbar-nav .nav-link.active{
	font-weight: bold;
    border-bottom: 2px solid #ffffff;
}
.dropdown-menu {
	background-color: #48BCFF;
}
.dropdown-item {
	color: #fff;
}
.dropdown-item:hover {
	background-color: #ffcc00;
}
.lang-selector {
	position: relative;
	display: inline-block;
	margin-left: 20px;
	margin-right: 20px;
	margin-top:7px;
}
.lang-selector .current-lang  {
	width: 30px;
	height: 30px;
	border-radius: 50%;
	margin-right: 5px;
	border: 1px solid white;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
	background-color: #fff;
}
.lang-selector .arrow {
	position: relative;
	cursor: pointer;
}
.lang-selector .arrow::after {
	content: "";
	display: inline-block;
	margin-left: 5px;
	border: solid white;
	border-width: 0 2px 2px 0;
	padding: 3px;
	transform: rotate(45deg);
	transition: transform 0.3s;
}
.lang-selector .dropdown-content {
	display: none;
	position: absolute;
	top: calc(100% + 10px);
	left: 50%;
	transform: translateX(-50%);
	width: 70px;
	background-color: #48BCFF;
	border-radius: 10px;
	border:1px solid #fff;
	padding: 5px;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
	z-index: 1;
	text-align:center;
}
.lang-selector:hover .arrow::after {
	transform: rotate(45deg) translateY(-3px);
}
.lang-selector:hover .dropdown-content,
.lang-selector .current-lang:focus + .arrow::after {
	display: block;
}
.lang-selector .flag , .lang-smart .flag{
	width: 30px;
	height: 30px;
	border-radius: 50%;
	margin: 3px;
	border: 1px solid white;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
	background-color: #fff;
	margin-top:10px;
	margin-bottom:10px;
	transition: .3s ease;	
}
.lang-selector .flag:hover{
	opacity:0.75;
}
.lang-smart .flag {
	border:none;
	/* float:left; */
}
.lang-smart{
	width:100%;
	margin:0px;
	background: linear-gradient(to left, #48BCFF, #2381D2);
	border-bottom:1px solid rgba(255,255,255,0.25);
}
/*   /NAV */
.home-title{
	font: Italic 27px/39px Roboto !important;
    letter-spacing: 0;
    color: #2381D2 !important;
    font-style: italic;
    background-color: whitesmoke;
    padding: 10px 10px 10px 10px !important;
    border-radius: 5px;
    text-align: center;
    line-height: 1 !important;
	display: inline-block;
	clear:both;
	margin-left: 100px;
	margin-top: 30px;
}
.home-subtitle{
	font: Bold Italic 40px/39px Roboto;
    background-color: #2381D2;
    letter-spacing: 0;
    color: #FFFFFF;
    padding: 10px 10px 10px 10px !important;
    border-radius: 5px;
    line-height: 1 !important;
	display: inline-block;
	clear:both;
	margin-left: 117px;
	margin-bottom:300px;
	margin-top:-3px;
}
.bloc-accidents .rounded-block{
	margin-left:10px;
	margin-right:10px;
}
.rounded-block.picto::after{
    content: " ";
    width: 98px;
    height: 98px;
    left: -moz-calc(50% - 48px);
    left: -webkit-calc(50% - 48px);
    left: -o-calc(50% - 48px);
    left: calc(50% - 48px);
    position: absolute;
    /* margin-top: -88px; */
	top:-50px;
    background-repeat: no-repeat;
}
.rounded-block.gray{
	background-color: #F4F7FB ;
}
.picto.frais::after {
	background-image: url(../media/ico/picto-frais-01.png);
}
.picto.assistance::after {
	background-image: url(../media/ico/picto-assistance-01.png);
}
.picto.protection::after {
	background-image: url(../media/ico/picti-shield-01.png);
}
.picto.clock::after {
	background-image: url(../media/ico/picto-clock-01.png);
}
.picto.calendar::after {
	background-image: url(../media/ico/picto-calendar-01.png);
}
.picto.zen::after {
	background-image: url(../media/ico/picto-zen-01.png);
}
.picto.family::after {
	background-image: url(../media/ico/picto-family-01.png);
}
.btn-primary{
	background-color: #2381D2 !important;
	font: Bold 20px/12px Roboto;
    letter-spacing: 0;
    line-height: 1.25em;
	color:#fff;
	transition: .3s ease;	
    padding: 15px 10px;
}
.btn-info{
	background-color: white !important;
    border: 2px solid #2381D2 !important;
    color: #2884D3 !important;
    border-radius: 5px;
	transition: .3s ease;	
	font-size: 15px;
    padding: 12px 24px;
	font: Bold 20px/12px Roboto;
    letter-spacing: 0;
    line-height: 1em;
}
.btn.picto img {
	width:20px;
	margin-right:15px;
	margin-left:15px;
}
.btn.picto{
	padding-right:20px;
}
.btn{
	border-radius: 5px 5px 5px 5px;
}
.btn:hover{
	opacity: .75;
}
.btn-godown{
	margin-top:40px;
	display: block;
	text-align: center;
	position:absolute;
	bottom:20px;
	left: 0;
	right: 0;
	margin: auto;
}
.btn-godown .arrow::after {
	content: " ";
    display: inline-block;
    margin-left: 5px;
    border: solid #ffffff;
    border-width: 0 6px 6px 0;
    padding: 6px;
    transform: rotate(45deg);
    transition: transform 0.3s;
    box-shadow: 3px 3px 3px #929292;
}
.btn-abs-bottom{
	position:absolute;
	bottom:30px;
	left: 0;
	/* transform: translateX(-50%); */
	width:100%;
}
.t4cols .btn-abs-bottom{
	width:80%;
	left: 50%;
    transform: translate(-50%, -50%);
	bottom:-10px;
}
.t4cols .equal-height-row .col-md-3{
	padding-left:20px;
	padding-right:20px;
}
.bord-droite{
	border-right: 2px solid #F4F7FB;
}
.card-img-top {
	height: 200px;
	object-fit: cover;
}
.rounded-block, .button-block {
	padding: 20px;
}
.rounded-block {
	background-color: #fff;
	border-radius: 10px;
	text-align: center;
	padding-bottom:40px;
}
.rounded-block.shadow{
	-webkit-box-shadow: 3px 3px 11px -1px rgba(0,0,0,0.34);
    -moz-box-shadow: 3px 3px 11px -1px rgba(0,0,0,0.34);
    box-shadow: 3px 3px 11px -1px rgba(0,0,0,0.34);
}
.rounded-block.shadow-strong{
	-webkit-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.15);
    -moz-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.15);
    box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.15);
    border-radius: 10px !important;
}
.rounded-block.shadow:not(.picto) {
	padding:0px;
}
.rounded-block.picto{
	padding-bottom:20px !important;
	padding-bottom:40px !important;
}
.block-title  {
	text-align: center;
    letter-spacing: 0;
	color: #000000;
    opacity: 1;
    margin-top: 35px !important;
	font: Bold 22px/24px "Roboto" !important;
}
.t4cols .block-title {
	/* margin-top: 20px; */
	margin-bottom: 10px;
}
.t4cols .orange-bar{
	min-width:50px;
}
.block-title-italic{
	font: Italic 30px/24px Roboto !important;
    text-align: center !important;
    letter-spacing: 0;
    color: #3E435D !important;
    opacity: 1;
    position: relative;
	margin-top:10px;
	min-height:48px;
}
.block-title-bold{
	/* margin-bottom: 20px; */
	margin-bottom: 10px;
	text-align: center;
    font: Italic Bold 30px/39px Roboto !important;
    letter-spacing: 0;
    color: #3E435D;
    position: relative;
}
.block-text-bold{
	text-align: center;
    font: bold italic 30px/39px "Roboto";
    letter-spacing: 0;
    color: black ;
    margin-top: 10px ;
    padding-bottom: 10px ;
}
.block-text-testimonial{
	border-radius: 15px;
    padding: 10px 10px 10px 10px;
    text-align: left;
    font: Italic 18px/24px "Segoe UI" !important;
    letter-spacing: 0;
    color: #414660;
}
.block-text-testimonial::before {
    content: '"';
    width: 10px;
    height: 10px;
    position: absolute;
    top: 20px;
    left: 20px;
    font-size: 50px;
    color: #EFB43D;
}
.block-liste{
	text-align: center;
    list-style: none;
    margin-top: 10px;
    margin-left: 0;
    margin-bottom: 0px;
    padding-left: 0;
    font-weight: 400;
    color: #3E435D !important;
    padding-bottom: 10px;
}
.block-liste li{
	margin-bottom: 25px;
    line-height: 1.3em;
}
.block-person{
	background-color: white;
    border-radius: 40px;
    width: 60%;
	margin-top: -35px;
    display: table;
    margin-left: auto;
    margin-right: auto;
}
.block-person .photo{
	padding-right: 15px;
	display: table-cell;
    vertical-align: middle;
}
.block-person .photo img{
	width: 60px;
    height: 60px;
	border-radius: 50%;
	object-fit: cover;
}
.block-person-details{
    display: table-cell;
    vertical-align: middle;
}
.block-person .name {
	text-align: left;
    font: Bold 16px/24px "Segoe UI" !important;
    letter-spacing: 0;
    color: #3E435D !important;
}
.block-person .function {
	text-align: left;
    font: 16px/20px "Segoe UI";
    letter-spacing: 0;
    color: #3E435D !important;
}
.orange-bar, .black-bar {
	width: 10%;
	height: 4px;
	margin: 10px auto;
}

.blocs-home .orange-bar{
	margin-bottom:20px;
}

.orange-bar{
	background-color: #f4ad07;
}
.black-bar {
	background-color: #000;
}
.block-image {
	height: 66.66%;
	overflow: hidden;
	border-radius: 10px 10px 0 0;
}
.block-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.white-section{
	background-color: #ffffff;
	padding-bottom: 60px;
    padding-top: 60px;
}
.gray-section{
	background-color: #F4F7FB ;
	padding-bottom: 60px;
    padding-top: 60px;
}
.section-title{
	font: Bold 45px/24px "Roboto";
	text-align: center;
    font-family: Roboto;
    font-weight: bold;
    /* font-style: italic; */
    font-size: 45px;
    line-height: 24px !important;
    letter-spacing: 0;
    color: #2381D2 !important;
    /* opacity: 1; */
	margin-bottom:20px;
}
.section-title-orange{
	color: #EFB43D !important;
	font: Bold 45px/24px "Roboto";
	font-weight: 600;
    font-style: italic;
	text-align: center;
	margin-bottom:20px;
}
.section-text{
	margin-left: auto;
    margin-right: auto;
    width: 90% !important;
	/* font-size: 16px !important; */
	font: 18px/24px "Segoe UI";
    line-height: 24px !important;
	text-align:center;
}
.partenaires .logo {
    border: 10px solid #D5D6DF;
    width: 200px !important;
    height: 200px !important;
    border-radius: 50%;
    overflow: hidden;
    background-color: white;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: center;
}
.partenaires .logo img{
	width:102%;
	max-width:102%;
}
.bg-gray{
	background-color: #F4F7FB ;
}
.footer-copyright {
    text-align: center;
    background: #f4f7fb;
    margin: 0px;
    padding: 0 0 20px 0;
    display: block;
    position: relative;
    color: #3E435D;
}
.footer-lien a{
	text-align: center !important;
    font: Bold 18px/24px "Roboto"!important;
    letter-spacing: 0!important;
    color: #414660!important;
	text-transform: uppercase;
}
hr.gray{
	width:100% !important;
	display: block;
	height: 1px;
	border: 0;
	border-top: 3px solid #F4F7FB;
}
footer hr{
	width:200px !important;
	display: block;
	height: 1px;
	border: 0;
	border-top: 3px solid #fff;
	margin:  20px;
	padding: 0;
	margin-left: auto;
    margin-right: auto;
}
.first-section{
	/* padding-top:120px; */
}
.page-title{
	text-align: center;
    font-family: Roboto;
    font-weight: bold;
    padding-top:85px;
	padding-bottom:10px;
    font-size: 45px;
    line-height: 24px !important;
    letter-spacing: 0;
    color: #2381D2 !important;
    opacity: 1;
}
.page-subtitle{
	color: #2381D2 !important;
    font: Bold 30px/24px Roboto;
    text-align: center;
    letter-spacing: 0;
    opacity: 1;
    margin-bottom: 20px !important;
    margin-left: 0px;
	margin-top:0px;
    height: 60px;
}
.block-subtitle{
	margin-bottom:0px;
	padding-bottom:0px;
}
.page-secondsubtitle{
	font: 18px/24px "Segoe UI";
	text-align: center;
	color:#2381D2 !important;
	font-weight:bold;
	margin-bottom: 30px !important;
}
.pico{
	text-align: center;
}
.marginb-6{
	margin-bottom: 6rem!important;
}
.equal-height-row {
	display: flex;
}
.equal-height-content {
	display: flex;
	flex-direction: column;
}
@media (min-width: 768px) {
	.equal-height-row {
		display: flex;
	}
	.equal-height-content {
		height: 100%;
	}
}
#navbarCollapse {
	/* background: linear-gradient(to left, #48BCFF, #2381D2) !important; */
    width: 100%;
    margin-left: -20px;
    left: 0;
    padding-bottom: 20px;
	padding-top: 11px;
}
.navbar-dark .navbar-toggler {
    margin-right: 20px;
}
.navbar.scrolled{
	max-height:70px;
}
.navbar.scrolled .logo{
	max-height: 50px;
    margin: 0;
}
@media (max-width: 800px)  {
	.home-title,.home-subtitle {
		font-size: 14px !important;
		margin-left:auto !important;
		margin-right:auto !important;
		text-align:center;
	}
	.jumbotron{
		text-align: center;
	}
	.rounded-block.picto {
		margin-bottom:60px !important;
	}
	.btn-primary{
	    font-size: 18px;
	}
	.section-title{
		font-size: 30px;
	}
	.section-text{
		margin-left: auto;
		margin-right: auto;
		width: 80% !important;
		font-size: 16px !important;
		line-height: 24px !important;
	}
	.partenaires .logo, .rounded-block:not(.gray){
		margin-bottom: 40px;
	} 
	.page-title{
		font-size: 30px; 
	}
	.page-subtitle{
		font-size: 24px; 
	}
	.block-title-bold{
		margin-bottom: 0;
		font-size: 20px !important;
	}
	.block-text, p {
		font-size: 14px !important;
	}
	.navbar.scrolled{
		max-height:50px;
	}
	.navbar.scrolled .logo{
		max-height: 30px;
		margin: 0;
	}
	#navbarCollapse {
		background: linear-gradient(to left, #48BCFF, #2381D2) !important; 
		padding: .5rem 1rem;
		z-index: 2;
	}
	.navbar{
		padding:0px !important;
		box-shadow:none;
	}
	.navbar .logo{
		margin-left:20px !important;
	}
	.lang-menu{
		display:none;
	}
	.navbar.fixed-top{
		box-shadow: 0 1px 10px -6px rgba(0, 0, 0, 0.42), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 4px 5px -2px rgba(0, 0, 0, 0.1);
	}
}
@media (min-width: 1200px){
	.container, .container-lg, .container-md, .container-sm, .container-xl {
		max-width: 1360px;
	}
	.equal-height-row.blocs-home{
		align-items: center;
		justify-content: center;
	}
	.blocs-home .col-md-4{
		padding-left:20px;
		padding-right:20px;
	
	}
}
@media (min-width: 1200px and max-width: 1600px){
		-ms-flex: 0 0 27%;
		flex: 0 0 27%;
		max-width: 27%;
	
}

@media (min-width:1600px){
	.blocs-home .rounded-block{
		padding: 24px;
	}
}


@media (max-width: 480px)  {
	.home-subtitle {
		font-size: 14px !important;
		margin-bottom:100px;
		margin-left:auto !important;
		margin-right:auto !important;
		text-align:center;
		max-width:320px;
	}
	.home-title {
		margin-top:0px;
	}
	.btn-godown{
		bottom:0px;
	}
	.block-title-italic{
		font-size:20px !important;
		min-height: 0px ;
	}
	.block-text-bold{
		font-size:22px !important;
	}
	.orange-bar, .black-bar{
		margin: 8px auto;
	}
	.navbar .logo {
		max-width: 230px;
	}
	.rounded-block.picto {
		margin-bottom: 80px !important;
		padding-bottom: 80px !important;
	}
	.equal-height-row{
		display:block;
	}
	.equal-height-content{
		display:block;
	}
.btn-abs-bottom {
bottom: 15px;
}
}