a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%;
	vertical-align: baseline
}
html {
	line-height: 1
}
ol, ul {
	/*list-style: none*/
}
table {
	border-collapse: collapse;
	border-spacing: 0
}
caption, td, th {
	text-align: left;
	font-weight: 400;
	vertical-align: middle
}
blockquote, q {
	quotes: none
}
blockquote:after, blockquote:before, q:after, q:before {
	content: "";
	content: none
}
a img {
	border: none
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
	display: block
}
body, html {
	position: relative;
	width: 100%;
	min-height: 100vh
}
body {
	background: #fff;
	font-size: 16px;
	font-size: 1rem
}
body, button, input, label {
	font-family: GillSansStd, Arial, Helvetica sans-serif
}
* {
	box-sizing: border-box
}
a {
	text-decoration: none
}
img {
	max-width: 100%
}
@media screen and (max-width:768px) {
.desktop {
	display: none!important
}
}
sup {
	font-family: Arial, Helvetica sans-serif;
	vertical-align: super
}
.sky {
	color: #43b6e9
}
.nb {
	font-family: Arial, Helvetica sans-serif;
	font-size: 1em
}
.cap {
	text-transform: capitalize
}
.bold {
	font-weight: 700;
	font-size: .85em
}
h2.title {
	text-transform: uppercase;
	text-align: center;
	color: #2d2a67;
	font-size: 1.75em;
	line-height: 1.2857;
	margin: 0 0 .75em 0;
	font-weight: 100;
}
.family h2.title {
	margin: 0 0 1.16667em;
	line-height: 1.2;
	font-size: 1.875em
}
.banquepop-button {
	display: block;
	position: relative;
	top: 0;
	background-color: #192a6b;
	text-align: center;
	color: #fff;
	text-transform: uppercase;
	font-weight: 500;
	font-size: .875em;
	width: 20.7em;
	padding: 1.2em 2em;
	margin: 0 auto;
	box-sizing: border-box;
	/*box-shadow: 0 1.42857em .714286em -1.42857em rgba(0,0,0,.5);*/
	transition: box-shadow .2s ease, top .2s ease;
	line-height: 1.55em;
}
@media screen and (min-width:769px) {
.banquepop-button {
	font-size: 1em;
	width: 33em;
	padding: 1em;
	/*box-shadow: 0 1.25em .625em -1.25em rgba(0,0,0,.5)*/
}
.banquepop-button:hover {
	top: -.3em;
	/*box-shadow: 0 1.55em .625em -1.25em rgba(0,0,0,.5);*/
	/*transition: box-shadow .2s ease, top .2s ease*/
}
}
.banquepop-button:active {
	top: -.3em;
	/*box-shadow: 0 1.55em .625em -1.25em rgba(0,0,0,.5);
	transition: box-shadow .2s ease, top .2s ease*/
}
.banquepop-button.outline {
	color: #43b6e9;
	background-color: transparent
}
.visual-circle {
	position: relative;
	border-radius: 100%;
	border: .125em solid transparent
}
.visual-circle img {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	height: auto
}
.visual-circle img.group {
	width: 72.79412%
}
.visual-circle img.advisor {
	width: 69.11765%
}
.visual-circle img.phone {
	width: 64.70589%
}
.visual-circle img.liberte {
	width: 60%;
}
.visual-circle img.plus {
	width: 56%
}
.visual-circle img.armor {
	width: 48%
}
.visual-circle img.euro {
	width: 30%;
	right:0.9em;
	bottom:0.6em;
}
.visual-circle img.niveau {
	width: 55%;
}
.visual-circle img.cards {
	width: 58%;
	bottom:0.6em;
}
@media screen and (min-width:769px) {
.mobile {
	display: none!important
}
h2.title {
	font-size: 2.375em;
	line-height: 1.2105;
	margin: 0 0 1.3158em
}

}
header {
	padding-bottom: .875em;
	overflow: hidden
}
header img {
	display: block;
	width: 100%
}
header .background-banner {
	position: absolute;
	width: 100%;
	height: 0;
	z-index: -1;
	background-color: #2d2a67;
	padding-bottom: 121.25%
}
header .background-text {
	position: relative;
	top: .9375em;
	left: .9375em;
	width: 108.4375%;
	height: 0;
	padding-bottom: 186.296875%
}
header .background-text svg {
	width: 100%;
	height: auto
}
header .background-text h1 {
	position: absolute;
	top: 1.25em;
	left: 1.25em;
	color: #fff;
	text-transform: uppercase
}
.youth header .background-text h1 .line {
	font-size: 1.375em;
	line-height: 1.18182
}
.pro header .background-text h1 .line {
	font-size: 1.1875em;
	line-height: 1.21053
}
.family header .background-text h1 .line {
	font-size: 1em;
	line-height: 1.25
}
header .background-text h2 {
	position: absolute;
	bottom: 5.5em;
	left: 3.5em;
	text-transform: uppercase;
	text-align: left;
	color: #2d2a67;
	font-weight: 100;
}
header .background-text h2 .line-1, header .background-text h2 .line-2 {
	display: block
}
header .background-text h2 .line-2 {
	margin-top: 0em;
	font-size: 1.50em;
	width: 87%;
}
header .background-text h2 .line-2 .small {
	font-size: 1.25em;
	color:#8e949a;
}
header .background-text h2 .line-2 .big {
	font-size: 2.375em
}
header .background-text h2 sup {
	font-size: .5em
}
.family header .background-text h2 .line-1 {
	font-size: 1.625em;
	line-height: 1.14
}
.pro header .background-text h2 .line-1, .youth header .background-text h2 .line-1 {
	font-size: 1.4375em;
	line-height: 1.30435
}
@media screen and (min-width:769px) {
header {
	padding-bottom: 1em
}
header .background-banner {
	padding-bottom: 49.84615385%
}
header .background-text {
	top: 3.3125em;
	left: 4em;
	width: 91.69230769%;
	padding-bottom: 68.19312821%
}
header .background-text h1 {
	top: 1.5625em;
	left: 4.0625em
}
.youth header .background-text h1 .line {
	font-size: 2.125em;
	line-height: 1.1765
}
.pro header .background-text h1 .line {
	font-size: 2em;
	line-height: 1.1875
}
.family header .background-text h1 .line {
	font-size: 1.625em;
	line-height: 1.23077
}
header .background-text h2 {
	bottom: 6em;
	left: 2.175em;
	width: 87.1%;
	text-align: center;
	line-height:1.3
}
header .background-text h2 .line-2 {
	margin-top: 0;
	font-size: 2.375em;
	width: 100%;
}
header .background-text h2 .line-2 .small {
	font-size: 1.8em;
}
header .background-text h2 .line-2 .big {
	font-size: 3.25em
}

header .background-text h2 .line-1, .youth header .background-text h2 .line-1 {
	font-size: 2.375em;
	line-height: 1.8
}
}
.features-thumbnails {
	margin: 0 auto 4.3em auto;
	width: 18.125em
}

.features-thumbnails img {
	display: block;
	width: 100%;
	height: auto;
	margin-bottom: 1.875em
}
.features-thumbnails .features-text {
	color: #2d2a67;
	font-size: 1.125em;
	line-height: 1.4444;
	text-align: center;
	margin: 0 0 2.22222em
}
.features-thumbnails .features-text sup {
	font-size: .5555555em
}
.features-thumbnails ul li {
	display: block;
	padding: 0;
	margin: 0 0 2.5em 0;
}
.features-thumbnails .thumbnail {
	width: 18.125em;
	margin: 0 auto
}
.features-thumbnails .thumbnail .visual-circle {
	background-color: #f6f6f6;
	width: 7.8125em;
	height: 7.8125em;
	margin: 0 auto 1.625em;
	border-color: #f6f6f6
}
.features-thumbnails .thumbnail p {
	text-align: center;
	font-size: 1.125em;
	line-height: 1.5;
	text-transform: uppercase;
	color: #2d2a67;
}
.features-thumbnails .thumbnail p sup, .features-thumbnails .thumbnail sup {
	font-size: .5em
}
.features-thumbnails .thumbnail .second {
	font-size: 1em;
	text-align: center;
	line-height: 1.3em;
	text-transform: inherit;
	font-weight: 100;
}
.features-thumbnails .thumbnail .second_1 {
	font-size: 1em;
	text-align: center;
	line-height: 1.2em;
	text-transform: inherit;
	font-weight: 100;
}
@media screen and (min-width:769px) {
.features-thumbnails {
	margin: 3.5em auto;
	width: 96.41026%
}
.features-thumbnails .features-wrap {
	display: table;
	padding-left: 2em;
	width: 100%;
	margin-bottom: 3.75em
}
.features-thumbnails .features-wrap:after {
	display: table;
	content: "";
	clear: both
}
.features-thumbnails .features-wrap .cell-img {
	width: 15em;
	display:block;
	margin: 0;
}
.features-thumbnails .features-wrap .features-text {
	width: 28em;
	margin: 0 0 0 2em;
	text-align: left
}
.features-thumbnails .features-wrap .cell-img, .features-thumbnails .features-wrap .cell-text {
	display: table-cell;
	vertical-align: middle
}
.features-thumbnails .features-video {
	margin: 0
}
.features-thumbnails .features-text {
	font-size: 1.375em;
	line-height: 1.4545;
	margin: 0 0 2.5em
}
.features-thumbnails .features-text sup {
	font-size: .5454545em
}
.features-thumbnails ul:after {
	display: table;
	content: "";
	clear: both
}
.features-thumbnails ul.col-3 li {
	width: 33.33333%
}
.features-thumbnails ul.col-4 li {
	width: 25%
}
.features-thumbnails ul li {
	margin: 0 0 2em 0;
	float: left;
}
.features-thumbnails ul li:last-child {
	margin: 0
}
.features-thumbnails .thumbnail {
	
}
.features-thumbnails .thumbnail .visual-circle {
	width: 8.5em;
	height: 8.5em;
	margin: 0 auto 1.875em auto;
}
.avec-carte {
	min-height: 54px;
}
}
@font-face {
	font-family: GillSansStd;
	src: url(gillsans-std.e1acc184.eot);
	src: url(gillsans-std.e1acc184.eot?#iefix) format("embedded-opentype"), url(gillsans-std.515cac62.woff2) format("woff2"), url(gillsans-std.3d9658c0.woff) format("woff"), url(gillsans-std.f342f327.ttf) format("truetype");
	font-weight: 100;
	font-style: normal
}
@font-face {
	font-family: GillSansStd;
	src: url(gillsansbold.e0908080.eot);
	src: url(gillsansbold.e0908080.eot?#iefix) format("embedded-opentype"), url(gillsansbold.1b64e553.woff) format("woff"), url(gillsansbold.67f1fc06.ttf) format("truetype");
	font-weight: 700;
	font-style: normal
}
@font-face {
	font-family: GillSansStd;
	src: url(gillsans-semibold.aa3f2f4b.eot);
	src: url(gillsans-semibold.aa3f2f4b.eot?#iefix) format("embedded-opentype"), url(gillsans-semibold.203ce245.woff) format("woff"), url(gillsans-semibold.2cce4491.ttf) format("truetype");
	font-weight: 500;
	font-style: normal
}

.accordion {
    width: 100%;
    height: auto;
	font-weight: 100;
}
.accordion > div {
    cursor: pointer;
}
.accordion-item {
    margin: 1em 0;
}
.accordion-button {
	position: relative;
    height: auto;
	margin: 0 0.6em;
	padding: 1em;
}
.accordion-button h4 {
	font-size:1.85em;
	text-transform:uppercase;
}

.accordion-button .question {
    
    display: block;
	text-align: center;
}

.accordion-marker {
	
    display:block;
	position: absolute;
	top:1.5em;
	right: 1em;
	width: 1.5em;
    height: 1.05em;
    float: right;
    color: #9aa7af;
	background:url("arrow.svg") center top no-repeat;
	background-size: 1.2em;
}
.accordion-marker i {
    padding-top: 3em;
    padding-left: 3em;
}
.accordion-marker .fa-plus {
    color: #9aa7af;
}
.accordion-content {
    
    max-height: 0;
    overflow: hidden;
    transition: max-height 350ms ease-in-out;
}
.accordion > div.active .accordion-marker {
    background-position:bottom;
}
.accordion > div.active .question {

}
.accordion > div.active .accordion-marker .fa-minus {
    color: #fff;
}
.accordion > div.active .accordion-content {
    max-height: 80em;
}

.forfaits h2.title{
	margin: 0 0 0.5em;
}

.forfaits .main-item {
	padding: 1em 0em 0em 0em;
	color:#1b2f76;
	font-weight: 100;
}
.accordion .item {
	padding: 0em 0em 1em 0em;
	color:#1b2f76;
	position: relative;
}
.forfaits .item .cell-img{width: 8em; margin: 0 auto 1em auto;}
.forfaits .titre_forfait{font-size: 1.3em; font-weight: 100;}
.forfaits .baseline_forfait{font-size: 0.9em; font-style: italic;}
.essentiel{
	background-color:#e8f3f7;
	/*color:#4396b6;*/
    color:#1a3177;
}
.confort{
	background-color:#dceef2;
	color:#1a3177;
}
.premium{
	background-color:#bfe0e9;
	color:#1a3177;
}
.forfaits hr{
	 border: 0.2em solid #ffffff;
	 background-color:#ffffff;
	 color:#ffffff;
	 margin:1.2em 0;
}
.accordion-content hr{
	 border: 0.2em solid #ffffff;
	 background-color:#ffffff;
	 color:#ffffff;
	 margin:.2em 0 1.2em 0;
}
.forfaits .sep_small{border: 0.145em solid #192a6b;
	 background-color:#192a6b;
	 color:#192a6b;
	 margin:1.2em auto 0.5em auto;
	width: 3em;
}
.forfaits .item .option{padding: 1em;}
.option:after{
	content: "";
  display: table;
  clear: both;
}
.forfaits .item .last{
	position: relative;
	/*background: url(corner.png) right no-repeat; */
}
.forfaits .item .option .description{text-align: left; padding: 0 0.5em 0 1em; width: 80%; float: right;}
.forfaits .item .option .description p{
	padding: 0; 
	line-height: 1.1em;
}
.forfaits .item .option .picto img{float: left; width: 3em; }
.forfaits .item .corner{
	width: 3.5em; 
	height: 3.5em; 
	background-image: url("corner.png");
	background-size: cover;
	position: absolute; 
	bottom: 0; 
	right:0; 
}
.forfaits .item h4 {
	font-size:1.85em;
	text-transform:uppercase;
}
.forfaits .item p{
	font-size:1.2em;
	padding-top:0.7em;
}
.forfaits .item p sup {
	font-size: .55em;
    line-height: 0em;
}
.forfaits .item {
	margin: 0 0.65em;
	text-align:center;
}
.forfaits .item .promo{
	border: .26em solid #4db5cc;
	color: #4db5cc;
	margin: 1em 0;
	padding: 0.5em 0;
	font-size: 1.45em;
	line-height: 1.3em;
}
.pourcent{
	display: block;
	font-size: 1.85em;
	float: left;
	margin: .25em .4em .25em .35em;
}
.promo_txt{
	font-size: .75em;
	line-height: 1em;
	display: block;
	text-align: left;
}

@media screen and (min-width:769px) {
.forfaits .item {
	width:31%;
	float: left;
}
.forfaits:after {
  content: "";
  display: table;
  clear: both;
}
}

.features{
	margin-top: 5em;
	font-weight: 100;
}
.features .white{
	color:#ffffff;
}
.features {
	color:#ffffff;
}
.features .feature{
	padding-top: 2em;
}
.features .feature:after {
	display: table;
	content: "";
	clear: both
}

.features .feature .text, .features .feature .visual {
	position: relative
}
.features .feature .visual {
	text-align: center
}
.features .feature .visual .picture {
	display: block;
	width: 100%;
	height: auto;
	margin: 0 0 2em
}
.features .feature .visual .visual-circle {
	display: inline-block;
	margin: 0 auto 2em auto;
	width: 13.75em;
	height: 13.75em;
	border-color: hsla(0,0%,100%,.4)
}
.features .feature h3 {
	color: #010a48;
	text-transform: uppercase;
	font-size: 1.15em;
	line-height: 1.3;
	margin: 0 1em 1em 1em;
}
.features .feature .text hr {
	background: #fff;
	color: #fff;
	border: .0625em solid #fff;
	margin: 0 0 2.125em .9375em
}
.features .feature p {
	color: #fff;
	font-size: 1em;
	line-height: 1.625;
	width: 18.125em;
	margin: 0 auto .85em
}
.features .feature .text p sup {
	font-size: .55em
}
.features .feature.white {
	background-color: #fff
}
.features .feature.white .visual .visual-circle {
	border-color: rgba(45,42,103,.15)
}

.features .feature.blue {
	background-color: #80c1d2
}
.features .feature.yellow {
	background-color: #f7d37b
}
.features .feature.green {
	background-color: #b0df99
}
.features .feature.orange {
	background-image: linear-gradient(224deg, #9eabb7, #c8ccd1);
	color:#ffffff;
}
.features .feature ul{
	padding-left:1em;
	margin:1em 0em 1em 1em;
}
.features .feature ul li{
	list-style:disc;
	padding:0.3em 0em 0.3em 0em;
	font-size:1em;
	line-height:1.2em;
}

.features .feature.purple {
	background-color: #bfafd4
}
.features .feature.pink {
	background-color: #e4b6c3
}
.features .feature  sup{
	font-size: .5em
}

@media screen and (min-width:769px) {
.features .feature {
	/*height: 33em;*/
}
.features .feature.right .visual {
	float: right;
}
.features .feature.right .visual:after {
	display: table;
	content: "";
	clear: both
}
.features .feature.right .visual .picture {
	float: right
}
.features .feature ul{
	margin:1em 0em 1em 2em;
}
.features .feature ul li{
	font-size:1.15em;
	line-height:1.4em;
}
.features .feature.right .text h3 {
	margin-left: 2em;
}

.features .feature.right .text p {
	margin-left: 2em;
}
.features .feature .text, .features .feature .visual {
	width: 50%;
	height: 50%;
	float: left
}
.features .feature .text.line1{
	padding-left: 2em;		
}
.features .feature .visual .visual-circle {
	display: block;
	position: absolute;
	top: 13em;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 16em;
	height: 16em
}
.features .feature .visual .picture {
	/*height: 100%;*/
	width: auto;
	margin: 0
}
.features .feature .text {
	display: table;
}
.features .feature .text .center {
	display: table-cell;
	vertical-align: middle
}
.features .feature .text h3 {
	font-size: 1.5em;
	margin: 0 0 1em 0;
}
.features .right .text h3 {
	font-size: 1.5em;
	margin: 0 0 1em 2em;
}
.features .feature .text hr {
	margin: 0 0 2em 0
}
.features .feature .text p {
	line-height: 1.6;
	font-size: 1.15em;
	width: 22em;
	margin: 0
}
}
footer {
	background-color: #f6f6f6;
	padding: 2em 0 1em 0;
}
footer .content {
	margin: 0 auto;
	width: 18.125em
}
footer .legals {
	font-size: .6em;
	line-height: 1.7;
	color: #2d2a67;
	font-family: Arial, Helvetica sans-serif;
	padding-top:2em;
}
footer .legals sup {
	vertical-align: baseline
}
footer .background-text {
	position: relative;
	width: 96%;
    margin: 0 auto;
}
footer .background-text img {
	display: block;
	width: 100%
}
footer .background-text .content {
	position: relative;
	width: 95%
}
footer .background-text .banquepop-button {
	width: 18.5em
}
@media screen and (min-width:769px) {
footer {
	padding: 3.2em 0 1em 0;
}
footer .content {
	width: 96%
}
footer .background-text {
	width: 90%;
	margin: 2em auto 0 auto;
}
footer .background-text .content {
	bottom: 2em;
	width: 90%
}
footer .background-text .banquepop-button {
	width: 33em
}
}
