/* -------------------------------------------------------------------------- */
/*                                  GLOBAL                                    */
/* -------------------------------------------------------------------------- */

*
{
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	background-repeat: no-repeat;
	background-position: center;
}

img 
{
    max-width: 100%;
    height: auto;
}

html
{
	height: 100%;
}

body,
html
{
	margin: 0;
	padding: 0;
	font-size: 90%;
	background-color : white;
}

body
{
	font-size: 1em; /* 14pt */
	font-family: 'Source Sans Pro', sans-serif;
	color: #3d3e42;
	position: relative;
	min-height:100%;
}

@media only screen and (min-width: 769px)
{
	#fullpage
	{
		/*margin-top: 85px;*/
	}
}

/* -------------------------------------------------------------------------- */
/*                                  GRILLE                                    */
/* -------------------------------------------------------------------------- */

.section
{
	width: 100%;
	position: relative;
	overflow: hidden;
}

@media only screen and (min-width: 769px)
{
	.section
	{
		min-height: 100vh;
	}
}

/* --------- */
/* Container */
/* --------- */

.container
{
	padding: 0;
	width: 100%;
	z-index:2;
	position: relative;
}

@media only screen and (min-width: 600px)
{
	.container
	{
		padding: 70px 0;
	}
	
	.formulaire .section .container
	{
		padding: 0 0 20px 0;
	}
	
	.formulaire .section:first-child .container
	{
		padding: 70px 0 10px 0;
	}
	#boutons_envoi .container {
		padding: 0 0 50px 0;
	}
}

@media only screen and (min-width: 600px) and (max-width: 960px)
{
	.container
	{
		padding-left: 30px;
		padding-right: 30px;
	}
}

.container.sticky_top
{
	top:0;
	transform: none;
}

.container.sticky_bottom
{
	top: auto;
	bottom:0;
	transform: none;
	padding-bottom: 0;
}

@media only screen and (min-width: 769px)
{
	.container.sticky_bottom-b
	{
		top: auto;
		bottom:0;
		transform: none;
		padding-bottom: 0;
		position: absolute;
	}
	
	.container.sticky_bottom
	{
		position: absolute;
	}
	
	.container.sticky_top
	{
		position: absolute;
	}
}



/* ------- */
/* Rangées */
/* ------- */

.row
{
	max-width: 100%;
	width: 960px;
	padding: 0;
	margin: auto;
}

@media only screen and (max-width: 600px)
{
	.row
	{
		padding: 15px;
	}
}

@media only screen and (min-width: 601px) and (max-width: 768px)
{
	.row
	{
		padding: 25px;
	}
}

@media only screen and (min-width: 1200px)
{	
	.row
	{
		width: 1200px;
	}
}

.row::after,
.row-inside::after
{
    content: "";
    clear: both;
    display: block;
}

.row.space_top
{
	margin-top: 50px;
}

@media only screen and (min-width: 769px)
{
	.row-inside
	{
		width: calc(100% + 30px);
		margin-left: -15px;
	}
}

/* -------- */
/* Colonnes */
/* -------- */

[class*="col-"]
{
    float: left;
    padding: 15px;
	position: relative;
    /*border: 1px dashed pink;*/
}

/* For mobile phones: */
[class*="col-"]
{
    width: 100%;
}

@media only screen and (max-width: 600px)
{
.col-s-0 {width: 0; padding: 0!important;}
.col-s-1 {width: 8.33%;}
.col-s-2 {width: 16.66%;}
.col-s-3 {width: 25%;}
.col-s-4 {width: 33.33%;}
.col-s-5 {width: 41.66%;}
.col-s-6 {width: 50%;}
.col-s-7 {width: 58.33%;}
.col-s-8 {width: 66.66%;}
.col-s-9 {width: 75%;}
.col-s-10 {width: 83.33%;}
.col-s-11 {width: 91.66%;}
.col-s-12 {width: 100%;}
}
@media only screen and (min-width: 600px)
{
    /* For tablets: */
    .col-m-0 {width: 0;}
	.col-m-1 {width: 8.33%;}
    .col-m-2 {width: 16.66%;}
    .col-m-3 {width: 25%;}
    .col-m-4 {width: 33.33%;}
    .col-m-5 {width: 41.66%;}
    .col-m-6 {width: 50%;}
    .col-m-7 {width: 58.33%;}
    .col-m-8 {width: 66.66%;}
    .col-m-9 {width: 75%;}
    .col-m-10 {width: 83.33%;}
    .col-m-11 {width: 91.66%;}
    .col-m-12 {width: 100%;}
}

@media only screen and (min-width: 769px)
{
    /* For desktop: */
    .col-1 {width: 8.33%;}
    .col-2 {width: 16.66%;}
    .col-3 {width: 25%;}
    .col-4 {width: 33.33%;}
    .col-5 {width: 41.66%;}
    .col-6 {width: 50%;}
    .col-7 {width: 58.33%;}
    .col-8 {width: 66.66%;}
    .col-9 {width: 75%;}
    .col-10 {width: 83.33%;}
    .col-11 {width: 91.66%;}
    .col-12 {width: 100%;}
	
    .offset-col-1 {margin-left: 8.33%;}
    .offset-col-2 {margin-left: 16.66%;}
    .offset-col-3 {margin-left: 25%;}
    .offset-col-4 {margin-left: 33.33%;}
    .offset-col-5 {margin-left: 41.66%;}
    .offset-col-6 {margin-left: 50%;}
    .offset-col-7 {margin-left: 58.33%;}
    .offset-col-8 {margin-left: 66.66%;}
    .offset-col-9 {margin-left: 75%;}
    .offset-col-10 {margin-left: 83.33%;}
    .offset-col-11 {margin-left: 91.66%;}
    .offset-col-12 {margin-left: 100%;}
}

.no-padding
{
	padding: 0!important;
}

.no-padding-top
{
	padding-top: 0!important;
}

@media only screen and (min-width: 769px)
{
	/* For mobile */
	.no-padding-b
	{
		padding: 0;
	}
}

@media only screen and (min-width: 600px) and (max-width: 768px)
{
	/* For mobile */
	.no-padding-m
	{
		padding: 0 !important;
	}
	
	 .no-padding-m-right 	{ padding-right: 0 !important; }
	 .no-padding-m-left 		{ padding-left: 0 !important; }
	 .no-padding-m-top 		{ padding-top: 0 !important; }
	 .no-padding-m-bottom 	{ padding-bottom: 0 !important; }
	
	.yes-padding-m
	{
		padding: 15px !important;
	}
	
	.row:first-child
	{
		padding-bottom: 0;
	}
	.row:nth-child(n+2)
	{
		padding-top: 0;
	}
}

@media only screen and (max-width: 601px)
{
	/* For mobile */
	.no-padding-s
	{
		padding: 0 !important;
	}
	
	 .no-padding-s-right 	{ padding-right: 0 !important; }
	 .no-padding-s-left 		{ padding-left: 0 !important; }
	 .no-padding-s-top 		{ padding-top: 0 !important; }
	 .no-padding-s-bottom 	{ padding-bottom: 0 !important; }
	
	.yes-padding-s
	{
		padding: 15px !important;
	}
	
	.hide-s
	{
		display:none;
	}
}

/* -------------------------------------------------------------------------- */
/*                                 COULEURS                                   */
/* -------------------------------------------------------------------------- */

.bg_blue 	{ background-color: #8dd1d3; }
.bg_green 	{ background-color: #aac71b; }
.bg_blanc 	{ background-color: #ffffff; }
.bg_noir	{ background-color: #262729; }

.bg_blue h2, .bg_green h2, .bg_blue p, .bg_green p { color: white; }
.bg_blue h2:after, .bg_green h2:after { background-color: white; }
.bg_noir, .bg_noir a { color: #999999; }
.bg_noir a:hover { color: white; }
.bg_blue ul, .bg_green ul, .bg_blue ul, .bg_green ul { color: white; }
a { color: #767676; }

#footer { border-top:1px solid #f5f5f5; }
#footer a { color: #767676; }
#header a { 
    color: #767676;
    font-size: 13px;
}

fieldset.step1{
    border: 0!important;
    margin: 0!important;
    padding: 0!important;
    min-width: 0!important;
}

#html5-elem-data-box{
    display: none!important;
}

/* -------------------------------------------------------------------------- */
/*                            STYLES DE TEXTES                                */
/* -------------------------------------------------------------------------- */

.txt_center	{ text-align: center; }
.txt_left	{ text-align: left; }
.txt_right	{ text-align: right; }

.center-phone-number{ line-height:32px; }

@media only screen and (max-width: 600px)
{
	.txt-s-center { text-align: center; }
}

@media only screen and (min-width: 601px) and (max-width: 768px)
{
	.txt-m-center { text-align: center; }
}

h1, h2
{
	font-family: 'Montserrat', sans-serif;
}

h1
{
	margin: 0;
	padding: 25px 0;
	font-weight: normal;
	font-size: 1.7em;
	color: white;
}

h2
{
	font-size: 1.80em;
	font-weight: normal;
}

h2:after
{
	content: " ";
	display: block;
	background-color: #3d3e42;
	height: 3px;
	width: 78px;	
	margin-top: 30px;
}

@media only screen and (max-width: 768px)
{
	h2
	{
		text-align: center;
	}
	
	h2:after
	{
		margin-left: auto;
		margin-right: auto;
	}
}

.txt_center h2:after
{
	margin: auto;
	margin-top: 30px;
}

h3
{
	margin: 0;
	font-size:1.4em;
}

.bouton
{
	border: 2px solid white;
	font-family: 'Montserrat', sans-serif;
	text-transform: uppercase;
	color: white;
	padding: 17px 50px;
	border-radius: 100px;
	text-decoration: none;
	margin-top:25px;
	font-size: 1.1em;
	display: inline-block;
	font-weight: bold;
}


@media only screen and (min-width: 960px)
{
	.bouton
	{
		font-size: 1.3em;
	}
}

p, ul
{
	font-size: 1.28em;
	line-height: 1.4em;
	margin: 0;
}

@media only screen and (min-width: 600px)
{
	h1 { font-size: 3.08em; }
}

ul
{
	margin: 15px 0;
}
ul.formules li
{
	list-style-image : url('../img/puce_thick.png');
}

/* -------------------------------------------------------------------------- */
/*                                FORMULAIRE                                  */
/* -------------------------------------------------------------------------- */

input,
textarea,
button,
.btn
{
	width: 100%;
	padding: 20px;
	font-family: 'Source Sans Pro', sans-serif;
	font-size: 1.1em;
}

a.btn{
	text-decoration:none;
	font-weight:400;
}

.select
{
	width: 100%;
	overflow: hidden;
}

select
{
	font-family: 'Source Sans Pro', sans-serif;
	font-size: 1.1em;	
	padding: 20px;
	border: none;
	border-radius: 0;
	-webkit-appearance: none;
	width: calc(100% + 50px);
	color: #63666b;
}

@media only screen and (min-width: 960px)
{
	input,
	textarea
	{
		font-size: 1.28em;
	}
}

input[type="text"],
input[type="email"],
.select,
textarea
{
	background-color: white;
	border: 2px solid #39b4bc;
	border-radius: 4px;
	margin-bottom: 10px;
}

input[type="submit"],
button,
.btn
{
	background-color: #39b4bc;
	border: none;
	border-radius: 50px;
	text-transform: uppercase;
	color: white;
	font-family: 'Montserrat', sans-serif;
	margin-top: 35px;
	cursor: pointer;
	-webkit-appearance: none;
}

button
{
	margin-top: 0;
}

textarea
{
	resize: vertical;
	min-height: 250px;
}

input[type="submit"]:hover,
.bouton:hover,
button:hover,
.btn:hover
{
	background-color: #3d3e42;
}

.bouton:hover
{
	border-color: #3d3e42;
}

/* -------------------------------------------------------------------------- */
/*                               HEADER & FOOTER                              */
/* -------------------------------------------------------------------------- */

#footer,
#header
{
	padding: 0;
	z-index: 9;
}

#header
{
	font-family: 'Montserrat', sans-serif;
	font-weight: bold;
	color: #39b4bc;
}

#header img
{
	margin-right: 5px;
	vertical-align: middle;
}

#footer
{
	z-index: 4;
	background-color:#ffffff;
}

#footer ul,
#header ul
{
	margin: 0;
	padding: 0;
	width: 100%;
	font-size: 0.9em;
}

#header ul
{
    margin: 9px 0 0 0;
}

#footer li,
#header li
{
    list-style-type: none;
    padding-left: 10px;
	display: inline-block;
	line-height: 25px;
	vertical-align: middle;
}
#header li
{
    line-height: 11px;
    padding-left: 30px;
}

#footer li:after
{
   content: "|";
   margin-left: 10px;
}

#footer li img
{
	display: inline-block;
	margin-bottom: -10px;
}

#footer li:last-child:after
{
	 content: "";
}

/* -------------------------------------------------------------------------- */
/*                                   MODALE                                  */
/* -------------------------------------------------------------------------- */
.langage-modal {
    display: none;
    position: fixed;
    z-index: 10;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0,0,0);
    background-color: rgba(0,0,0,0.4);
}
.langage-modal-content {
    background-color: #fefefe;
    margin: 15% auto;
    padding: 20px;
    border: 1px solid #888;
    width: 335px;
    box-shadow: 0 6px 12px rgba(0,0,0,0.175);
}
.select-langage {
	margin: 0 0 15px;
    list-style: none;
    top: 0;    
    text-align: left;
    line-height: 1.5;
    -webkit-padding-start: 15px;
}
.select-langage a {
	text-decoration: none;
    font-size: 15px;
    color: #3d3e42;
    font-weight: 500;
}
.langage-close {
    cursor: pointer;
    color: #606164;
    float: right;
    font-size: 28px;
    font-weight: bold;
    background-color: inherit;
    border-radius: 0;
    padding: 0;
    width: auto;
}
.langage-close:hover {
    background-color: inherit;
}

.langage-modal h1,
.langage-modal h3{
    padding: 0;
    margin-left: 0;
    margin-right: 0;
	margin-top: 6px;
    margin-bottom: 15px;
    font-size: 1.3rem;
    color:#3d3e42;
}

.langage-active {
	width: 16px;
    height: 11px;
    margin: 19px 0 auto auto;
    margin: 0 0 auto auto;
    cursor: pointer;
    position: relative;
    background-color: inherit;
    border-radius: inherit;
    padding: inherit;
}
.langage-active:hover {
    background-color: inherit;
}
.langage-active-fr {
	background-image: url(../img/flag-france.png);
}
.langage-active-en {
	background-image: url(../img/flag-english.png);
}
.langage-active-it {
	background-image: url(../img/flag-italy.png);
}
.langage-active-pl {
	background-image: url(../img/flag-polski.png);
}
.langage-active-pt {
	background-image: url("../img/flag-portugues.png");
}
#langage-btn-chose:after {
	position: absolute;
    right: -14px;
    content: '\2335';
    bottom: 10px;
    bottom: 2px;
    font-size: 10px;
    color: #3d3e42;
    font-weight: bold;
    /*content: '\25BE';*/

}

/* -------------------------------------------------------------------------- */
/*                                   LANDING                                  */
/* -------------------------------------------------------------------------- */

.section.first
{
	min-height: 100vh;
}

.fleche_down
{
	width: 60px;
	height: 40px;
	background-image: url('../img/landing/landing_page_fleche_down.png');
	background-size: 23px auto;
	margin: auto;
	padding: 25px 0;
	cursor: pointer;
	
	-moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    -webkit-transition: all .2s ease-in;
    transition: all 200ms ease-in;
}

@media only screen and (min-width: 600px)
{
	.fleche_down
	{
		position: absolute;
		left: calc(50% - 30px);
		bottom: 35px;
		padding: 0;
	}
	
	.fleche_down:hover
	{
		background-position: bottom;
	}
	
}


#welcome
{
	padding-top: 0;
}

#welcome .col-14
{
	text-align: center;
}

#welcome .col-14
{
	padding-top: 0;
}

#outil_simple_utilisation img
{
	display: block;
}

.etape_titre
{
	font-family: 'Montserrat', sans-serif;
	font-size: 1.39em;
	margin-bottom: 33px;
}

.etape_nb
{
	font-family: 'Montserrat', sans-serif;
	font-size: 4.17em;
	font-weight: bold;
}

.temoignage p:first-child
{
	font-style: italic;
}

.signature
{
	margin-top: 30px;
	font-size: 0.8em;
}

.temoignage
{
	background-color: white;
	padding: 25px;
	box-shadow: 0px 0px 18px rgba(0, 0, 0, 0.17);
}

@media only screen and (min-width: 768px)
{
	.temoignage
	{
		padding: 60px 80px;
		background-image: url('../img/landing/landing_page_picto_guillemet.png');
		background-position: 30px 60px;
		background-size: 27px 21px;
	}
}

.temoignage p
{
	color: #3d3e42;
}

.portrait
{
	width: 50px;
	height: 50px;
	border-radius: 50px;
	border: 2px solid #3ab4bc;
	background-size: cover;
	float: left;
	margin-right: 15px;
}

@media only screen and (min-width: 769px)
{
	.demi_transparent
	{
		height: 100%;
		width: 50%;
		position: absolute;
		right: 0;
		top: 0;
		background-color: white;
		opacity: 0.2;
		z-index: 1;
	}
}
@media only screen and (max-width: 768px)
{
	.demi_transparent_mobile
	{
		background-color: rgba(255, 255, 255, 0.2);
	}
}

#arguments img
{
	height: auto;
	width: 46px;
	
}

.asterisque
{
	font-size: 0.85em;
	margin-top: 30px;
}

/* Carroussel flickity */
/* ------------------- */

.flickity-page-dots
{
	position: relative;
	bottom: auto;
	margin-top: 50px;
}

@media only screen and (max-width: 768px)
{
	.flickity-page-dots
	{
		margin-top: 20px;
		margin-bottom: 20px;
	}
}

.flickity-page-dots .dot
{
	border-radius: 0;
	margin: 0 15px;
}

.flickity-prev-next-button
{
    display: none;
}

@media only screen and (min-width: 600px)
{
	.flickity-prev-next-button
	{
		display: block;
	}
	
	.flickity-prev-next-button.previous
	{
		margin-left: 40px;
	}
	
	.flickity-prev-next-button.next
	{
		margin-right: 40px;
	}
	
	.flickity-prev-next-button .arrow 
	{
		fill: white;
	}

	.flickity-prev-next-button,
	.flickity-prev-next-button:hover
	{
		background-color: transparent;
	}
}

.carousel-cell
{
	opacity: 0;
	-moz-transition: opacity .2s ease-in;
    -o-transition: opacity .2s ease-in;
    -webkit-transition: opacity .2s ease-in;
    transition: opacity 200ms ease-in;
}

@media only screen and (min-width: 600px) and (max-width: 768px)
{
	.carousel-cell
	{
		padding-left: 50px;
		padding-right: 50px;
	}
	.align-langage, .align-logo {
		width: 50%;
	}
}

.carousel-cell.is-selected
{
	opacity: 1;
}

/* Scroller vertical uberlike */
/* -------------------------- */

@media only screen and (min-width: 768px)
{
	.v-scrolled
	{
		height: 100vh;
	}
	
	.v-scrolled:last-child
	{
		min-height: 50vh;
	}
	
}


/* Formulaire de contact */
/* --------------------- */

#contact_us
{
	font-weight: bold;
	margin-top: 50px;
	font-size: 1.12em;
}

#contact_us:before
{
	content: " ";
	width: 11px;
	height: 16px;
	background-image: url('../img/landing/landing_page_picto_tel.png');
	background-repeat: no-repeat;
	display: inline-block;
    background-size: contain;
    margin-right: 10px;
}

#reseaux
{
	text-align: justify; 
    -moz-text-align-last: justify; /* Code for Firefox */
    text-align-last: justify;
	margin-top: 20px;
}

@media only screen and (min-width: 600px)
{
	#reseaux
	{
		width: 60%;
		margin: auto;
		margin-top: 15px;
	}
}

#reseaux > div
{
	width: 35px;
	height: 35px;
	border-radius: 50px;
	border: 2px solid white;
	display: inline-block;
	cursor: pointer;
	background-size: 60% auto;
}

#reseaux > div:hover
{
	background-color: #3d3e42;
	border-color: #3d3e42;
}

#reseaux #email 		{ background-image: url('../img/landing/landing_page_partage_mail.png'); }
#reseaux #facebook 	{ background-image: url('../img/landing/landing_page_partage_facebook.png'); }
#reseaux #twitter	{ background-image: url('../img/landing/landing_page_partage_twitter.png'); }
#reseaux #linkedin	{ background-image: url('../img/landing/landing_page_partage_linkedin.png'); }
#reseaux #google		{ background-image: url('../img/landing/landing_page_partage_googleplus.png'); }

/* -------------------------------------------------------------------------- */
/*                                                                            */
/* -------------------------------------------------------------------------- */

.full_div,
#quick_access > div > a
{
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
}

.desktop_only
{
	display: none;
}

@media only screen and (min-width: 769px)
{
	.desktop_only
	{
		display: inline-block;
	}
	
	.mobile_only
	{
		display: none;
	}
}

#quick_access
{
	display: none;
}

@media only screen and (min-width: 768px)
{

	#quick_access
	{
		display: block;
		width: 30px;
		position: fixed;
		left:0;
		top: 50%;
		transform: translateY(-50%);
		z-index: 9999;
	}

	.quick_access_item
	{
		height: 15px;
		width: 15px;
		border-radius: 25px;
		border: 2px solid white;
		margin-left: 15px;
		margin-bottom:10px;
		
		-moz-transition: all .2s ease-in;
		-o-transition: all .2s ease-in;
		-webkit-transition: all .2s ease-in;
		transition: all 200ms ease-in;
	}

	.quick_access_item.active
	{
		background-color: white;
	}

	#quick_access.bleu .quick_access_item
	{
		border-color: #8dd1d3;
	}

	#quick_access.bleu .quick_access_item.active
	{
		background-color: #8dd1d3;
	}

}

/* -------------------------------------------------------------------------- */
/*                                                                            */
/* -------------------------------------------------------------------------- */

.nos_formules
{
	margin: 15px 0;
}

.nos_formules:after
{
	content: " ";
	clear: both;
	display: block;
}

.formule
{
	width: 100%;
	float: left;
	margin-right: 5%;
	-webkit-transition: box-shadow 0.5s; /* Safari */
    transition: box-shadow 0.5s;
	margin-bottom: 10px;
}

@media only screen and (min-width: 500px) and (max-width: 768px), (min-width: 1200px)
{
	.formule
	{
		width: 20%;
	}
}

.formule:hover
{
	box-shadow: 0px 0px 12px #90a239;
}

.formule:last-child
{
	margin-right: 0;
}

.formule_entete
{
	background-color: white;
	color: #aac71b;
	font-size: 1.7em;
	text-align: center;
	padding: 8px;
	border-radius: 6px 6px 0 0;
}

.formule_entete b
{
	font-size: 0.8em;
}

.formule_body
{
	border: 1px solid white;
	text-align: center;
	color: white;
	min-height: 160px;
	position: relative;
	border-radius: 0 0 6px 6px;
}

.formule_body > div
{
	position: absolute;
	/*top: 50%;
	transform: translateY(-50%);*/
	top:0;
	margin: auto;
	width: 100%;
	padding: 8px;
}

.formule_body span
{
	font-size: 1.5em;
}

.formule_body hr
{
	color: white;
	background-color: white;
	height: 1px;
	border:0;
	width: 30%;
}

@media only screen and (max-width: 499px), (min-width: 769px) and (max-width: 1199px)
{
	.formule_entete,
	.formule_body
	{
		float: left;
	}
	
	.formule_entete
	{
		width: 40%;
		border-radius: 6px 0 0 6px;
		min-height: 100px;
	}
	
	.formule_body
	{
		width: 60%;
		border-radius: 0 6px 6px 0;
		min-height: 100px;
	}
}

@media only screen and (min-width: 769px) and (max-width: 1199px)
{
	.detail_formules
	{
		display: none;
	}
}

button:disabled,
button:disabled:hover
{
	background-color: #9d9d9d !important;
	cursor: not-allowed;
	color: #cdcdcd;
}

@media only screen and (max-width: 600px) 
{
	body{
		min-height: inherit!important;
	}
	.bg_blanc:first-child {
   		margin-bottom: 50px;
	}
	#langage-btn-chose {
    margin: auto;
    position: relative;
	}
	
	.importOfficeButton{
		margin-top: 10px;
	}
}