/*!
 *
 * Copyright 2014 Frederic Houle
 * Proudly designed and built by Nixa
 * http://www.nixa.ca
 *
 */


/* GENERAL
   ================================================== */

/* COLORS */

:root {
    --Blue-Primary-900: #041D37;
    --Blue-Primary-800: #113458;
    --Blue-Primary-700: #23476C;
    --Blue-Primary-600: #27517E;
    --Blue-Primary-500: #2A5A90;
    --Blue-Primary-400: #2E63A1;
    --Blue-Primary-300: #316DB3;
    --Blue-Primary-250: #4280C7;
    --Blue-Primary-200: #5490D7;
    --Blue-Primary-100: #69A3E8;
    --Blue-Primary-75: #7EB2EF;
    --Blue-Primary-50: #9BC5F8;
    --Blue-Primary-25: #AECEF3;

    --Violet: #B254FB;
    --White: #FFFFFF;

    --Roboto: 'Roboto', Arial, Helvetica, sans-serif;
    --Roboto-Condensed: 'Roboto Condensed', Arial Narrow, Verdana, sans-serif;
}

.pt-sm-5rem {
    padding-top: 5rem !important;
}

@media (max-width: 575px) {
    .pt-sm-5rem {
        padding-top: 3rem !important;
    }
}

/*----- Typoragphy -----*/

body {
	overflow-x:hidden;
    font-size: 18px;
}

body, .main-para, .main-para span, p, .main-heading span, .inner-sub-heading, .ico-text-right p, #mast-nav li > a, input, button, select, textarea, #mast-nav li > a{
   font-family: var(--Roboto);
}

.pad-bottom-main {
    padding-bottom: 40px;
}

.pad-top-main {
    padding-top: 40px;
}

.pad-bottom-0 {
    padding-bottom: 0 !important;
}

p{
    line-height: 22px;
}

.btn-hero{
	margin: 30px 0 0 0 !important;
	width: 280px !important;
	font-family: var(--Roboto-Condensed);
	float: right;
	background: #aacf38 !important;
}

.btn-green{
    background: #aacf38 !important;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--Roboto-Condensed);
    margin-bottom: 15px;
    font-weight: 700;
}

h1 span{
    color: #1070b8;
}

h1 a{
    width: 100%;
    padding: 15px 0 !important;
    margin: 44px auto;
    display: block !important;
}

h3 {
    font-weight: 600;
    font-size: 26px;
    margin-bottom: 12px;
}

.main-para span {
    font-weight: 600;
    font-size: 21px;
}

.main-para{
	margin-bottom: 20px;
    font-size: 18px;
    font-weight: 200;
    line-height: 22px;
}

.bottom-margin{
    margin-bottom: 20px !important;
}

legend {
	line-height: 25px;
}

.lead{
    margin-bottom: 15px;
    font-size: 18px;
    font-weight: 600;
    line-height: 22px;
}

.lead b{
	font-weight: 600;
}

/*Table*/

.table th{
    border: 0;
}

.table td{
    border-top: 0;
    border-bottom: 1px solid #ddd;
}


/*----- Helpers -----*/

.btn{
    -webkit-transition: background 0.6s ease;
    -moz-transition: background 0.6s ease;
    -ms-transition: background 0.6s ease;
    transition: background 0.6s ease;

    font-weight: 700;
}

.btn:hover, .btn:focus {
	background-position: 0;
	-webkit-transition: background 0.6s ease;
    -moz-transition: background 0.6s ease;
    -ms-transition: background 0.6s ease;
    transition: background 0.6s ease;
    outline: none;
}

.btn-lg, .btn-lg-alt, .btn-group-lg>.btn {
    padding: 15px 0;
    font-size: 16px;
    line-height: 1.33;
    width: 100%;
}

.btn-lg-alt {
    width: auto;
    padding-left: 25px;
    padding-right: 25px;
}

.link-primary {
    -webkit-transition: color 0.6s ease;
    -moz-transition: color 0.6s ease;
    -ms-transition: color 0.6s ease;
    transition: color 0.6s ease;
    font-weight: 500;
    color: #38c2cf;
}

.link-primary:hover, .link-primary:focus {
    color: #3fd4e2 !important;
}

.link-primary:active, .link-primary:active:focus {
    color: #34aeb9 !important;
}

.no-border-bottom {
    border-bottom: none !important;
}

hr {
    margin: 50px 0;
    border: 0;
    border-top: 1px solid #eeeeee;
    border-bottom: 0;
    clear: both;
}

.tiny-hr{
    margin: 20px 0;
}

label {
    cursor: default;
}

.newsletter-email{
	font-family: sans-serif !important;
}

textarea:focus, input[type="text"]:focus, input[type="password"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="date"]:focus, input[type="month"]:focus, input[type="time"]:focus, input[type="week"]:focus, input[type="number"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="color"]:focus, .uneditable-input:focus {
    -webkit-box-shadow: 0 0 6px rgba(0, 0, 0, 0.4)!important;
    -moz-box-shadow: 0 0 6px rgba(0, 0, 0, 0.4)!important;
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.4)!important;
    outline: none;
    border: 1px solid #cccccc;
}

.text-justify{
	text-align: justify;
}

.widget ul{
	margin: 10px 0 0 20px;
	color: #4F6367;
}

.newsletter-email {
	border: none !important;
	padding:10px !important;;
}
.newsletter-email:focus {
	border: none !important;
	padding:10px !important;;
}
.newsletter-email:hover{
	border: none !important;
	color:#38c2cf !important;
	padding:10px !important;;
}


#infolettre label.error{
	position:absolute;
}

.inactivelink{
	pointer-events: none;
   cursor: default;

}

.inactivelink a{
	opacity: 0.5;

}


/*----- Colors ------*/

.main-color{
    color: #38c2cf;
}

.second-color{
    color: #126eb9;
}

.main-para, p {
    margin-bottom: 15px;
    font-size: 18px;
}

::selection {
    background: var(--Blue-Primary-300);
    color: var(--White);
    text-shadow: none;
}

a:hover, a:focus {
    color: initial;
}

.hover-75:hover {
    opacity: 0.75;
}

#news {
    background: var(--White);
    color: #000 !important;
}

#news .master-heading > span {
    color: #000 !important;
    border:none;
}

#news .main-para {
    color: #777 !important;
}

#news .main-para span{
    color: #4F6367 !important;
}

.news-heading-block h3 {
    font-size: 22px;
}

.news-heading-block h5 {
    background: #38c2cf;
    padding: 4px 9px;
    font-size: 13px;
    margin-top: 15px;
}

#newsletter {
    background: #e8b63f;
}

.newsletter-email {
    border: solid 1px #e8b63f !important;
}

.master-heading span {
	border-bottom: solid 2px #7fb7e6;
	margin-bottom: 30px !important;
	display: block;
	padding-bottom: 15px;
    font-size: 30px;
    font-weight: 700;
}

.about-block h3 {
    font-family: var(--Roboto-Condensed);
        margin-bottom: 12px;
}

.about-block p{
    margin-top: 0;
}

#contact .btn-green{
    background-color: #38cf74 !important;
}

#contact .contact-heading-block h5{
    background: #38cf74 !important;
}

.contact-heading-block h3 {
    font-size: 24px;
    margin-bottom: 10px;
    font-family: var(--Roboto-Condensed);
}

.contact-heading-block h5 {
    background: #38c2cf;
    padding: 5px 10px;
        font-size: 16px;
    letter-spacing: .8px;
    font-weight: 600 !important;
}

.about-block h5 {
    background: #38c2cf;
    margin-top: 10px;
    padding: 6px 13px;
}

.about-policy-block h5 {
    background: #38c2cf;
}

.optionlist {
    list-style-type: none;
}

.optionlist li {
    position: relative;
    padding-left: 15px;
    margin-bottom: 10px;
}

.optionlist li:last-child {
    margin-bottom: 0;
}

.optionlist li i {
    position: absolute;
    left: 0;
    top: 6px;
    font-size: 10px;
    color: #38c2cf;
}

.optionlist li .list-marker-icon {
    width: 10px;
    height: 10px;
    background: url("../images/icons/list-marker.svg") no-repeat center;
    position: absolute;
    left: -2px;
    top: 6px;
}



.checklist {
    padding-left: 30px;
    position: relative;
}

.checklist i {
    left: 0;
    top: 2px;
    position: absolute;
}

.ico-text-right p {
    color: #126eb9 ;
}

.services-content-block h5 {
    background: #126eb9;
}

#service-hypo{
    border-color: rgba(170, 207, 56, 0.43);
}

.help-title {
    position: relative;
    padding-left: 55px;
    min-height: 65px;
}

.help-title .services-hash {
    position: absolute;
    left: 0;
    top: -22px;
}

#quote {
    background: #38c2cf;
}

#greetings {
    background: #38c2cf url(../images/people.png) 50% 0 repeat fixed;
    position: relative;
}

#greetings:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(49, 109, 179, 0.7);
    z-index: 1;
}

.milestone-count {
    color: #38c2cf;
}

.milestone-content-block h4 {
    background: #38c2cf;
}

.nav-active{
    border-bottom: solid 4px #38c2cf;
}

#milestones .outlined-btns {
    display: inline-block;
    margin-top: 16px;
}

#milestones ul li {
    color: #333333;
}

#mast-nav li > a.active {
    border-bottom: solid 4px #38c2cf;
}

/*----- Grid system ------*/

.page {
    padding-top: 30px;
    padding-bottom: 30px;
}

/* HEADER  */

.header-container {
    background: white;
    padding: 32px 0;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.07);
    position: relative;
}

.header-container  #logo a {
    width: initial;
    font-family: var(--Roboto-Condensed);
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 145%;
    padding: 8px 18px;
    margin: initial;
}

.header-container a .lock-icon {
    background: url("/images/icons/lock.svg") no-repeat;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin-right: 5px;
    vertical-align: middle;
}

@media(max-width: 767px) {
    .header-container  #logo a {
        width: 50%;
    }
}

#intro {
    padding-top: 20px;
}

body.intro-alt #intro{
    background: #16476f !important;
}

#logo {
    font-family: var(--Roboto-Condensed);
    font-size: 15px;
    font-weight: 500;
}

.logo{
    width: 308px;
    margin: 0 auto;
    max-width: none;
}

#logo .tagline{
    display: block;
}

.head-logo {
    margin: 17px 10px;
}

#img-main {
    width: 100%;
    max-width: 376px;
    height: auto;
}

.header-link-container {
    text-align: right;
}

#logo a {
    font-size: 16px;
    color: var(--White);
	background-color: var(--Blue-Primary-300);
    font-weight: 600;
    /*border: 2px solid #7fb7e6;*/
    padding: 5px;
    transition: all 600ms ease;
    display: inline-block;
    margin: 3px;
    width: 135px;
    text-align: center;
}
#logo a:hover{;
    background-color: var(--Blue-Primary-500);
    color: var(--White);
}

.keyboard-navigation #logo a:focus {;
    outline: 2px solid var(--Violet);
    color: var(--White);
}

#logo .span2 a{
	margin-top: 20px;
	display: block;
	text-align: right
}

#logo .fa-lock{
	margin-right: 10px;
}

.home #logo a.btn-header-lg {
    width: 446px;
    border-color: #38c2cf;
    background-color: #38c2cf;
    color: var(--White); !important;
}

.home #logo a.btn-header-lg:hover, .home #logo a.btn-header-lg:focus {
    border-color: #000;
    background-color: #000;
}

.home-logo-link {
    border: none !important;
    background: transparent !important;
    transition: all 600ms ease;
    width: auto;
}

.home-logo-link:hover {
    filter: brightness(70%);
    -webkit-filter: brightness(70%);
}

/*------ Navigation ------*/

#masthead {
    display: block;
    width: 60px;
    overflow: auto;
    height: 100%;
    background: var(--Blue-Primary-50);

    -webkit-transition: all 0.6s ease;
    -moz-transition: all 0.6s ease;
    -ms-transition: all 0.6s ease;
    transition: all 0.6s ease;
}

#masthead:hover, #masthead.in-focus {
     width: 430px;
}

#masthead .social-icons {
    margin-top: initial;
}

#masthead .info-menu {
    margin-top: 72px;
}

.info-menu {
    margin-top: 72px;
    opacity: 0;
    color: var(--White);
    font-size: 20px;
    line-height: 25px;
    bottom: 0;
    -webkit-transition: opacity 0.6s ease;
    -moz-transition: opacity 0.6s ease;
    -ms-transition: opacity 0.6s ease;
    transition: opacity 0.6s ease;
}

.social-icons li {
    border-top: 1px solid rgba(42, 90, 144, 0.30);
}

.social-icons li:last-child {
    border-bottom: 1px solid rgba(42, 90, 144, 0.30);
}

.social-icons li:last-child {
    border-bottom: 1px solid rgba(42, 90, 144, 0.30);
}

.social-icons li span, .social-icons li a {
    color: var(--Blue-Primary-500);
    font-family: var(--Roboto-Condensed);
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    vertical-align: middle;
}

.social-icons .contact-icons {
    display: inline-block;
    margin-left: 32px;
    width: 20px;
    height: 20px;
}

.social-icons .phone-icon {
   background: url("../images/icons/phone.svg") no-repeat center;
}

.social-icons .envelop-blue-icon {
    background: url("../images/icons/envelop-blue.svg") no-repeat center;
}

.social-icons .fb-icon {
    background: url("../images/icons/fb.svg") no-repeat center;
}

.social-icons .locator-icon {
    background: url("../images/icons/locator.svg") no-repeat center;
}

#masthead:hover .info-menu, #masthead.in-focus .info-menu {
    opacity: 1;
}

#mast-nav .menu-head {
    background: var(--Blue-Primary-900);
    text-align: left;
    display: flex;
    align-items: center;
    position: relative;
    left: -48px;
}

#masthead:hover .menu-head, #masthead.in-focus .menu-head {
    left: 0;
}


.credits{
    width: 480px;
}

#mast-nav {
    margin-top: 0;
}

#mast-nav .menu-icons {
    display: inline-block;
    width: 20px;
    height: 20px;
    padding: 20px;
    text-align: center;
}

#mast-nav .chevron-white-icon {
    background: url("../images/icons/chevron-white.svg") no-repeat center;
    scale: 0.7;
    transform: rotate(180deg);
}

#mast-nav .house-icon {
   background: url("../images/icons/house.svg") no-repeat center;
    scale: 0.9;
}

#mast-nav .profile-icon {
    background: url("../images/icons/profile.svg") no-repeat center;
}

#mast-nav .suitcase-icon {
    background: url("../images/icons/suitcase.svg") no-repeat center;
    scale: 0.9;
}

#mast-nav .money-icon {
    background: url("../images/icons/money.svg") no-repeat center;
}

#mast-nav .leaf-icon {
    background: url("../images/icons/leaf.svg") no-repeat center;
}

#mast-nav .shield-icon {
    background: url("../images/icons/shield.svg") no-repeat center;
}

#mast-nav .envelop-icon {
    background: url("../images/icons/envelop.svg") no-repeat center;
}

#mast-nav .calculator-icon {
    background: url("../images/icons/calculator.svg") no-repeat center;
}

#mast-nav .folder-icon {
    background: url("../images/icons/folder.svg") no-repeat center;
    scale: 0.9;
}

#mast-nav .lock-icon {
    background: url("../images/icons/lock.svg") no-repeat center;
    scale: 0.9;
}

#mast-nav .color1 {
    background: var(--Blue-Primary-800);
}

#mast-nav .color2 {
    background: var(--Blue-Primary-700);
}

#mast-nav .color3 {
    background: var(--Blue-Primary-600);
}

#mast-nav .color4 {
    background: var(--Blue-Primary-500);
}

#mast-nav .color5 {
    background: var(--Blue-Primary-400);
}

#mast-nav .color6 {
    background: var(--Blue-Primary-300);
}

#mast-nav .color7 {
    background: var(--Blue-Primary-250);
}

#mast-nav .color8 {
    background: var(--Blue-Primary-200);
}

#mast-nav .color9 {
    background: var(--Blue-Primary-100);
}

#mast-nav .color10 {
    background: var(--Blue-Primary-75);
}

#mast-nav .color11 {
    background: var(--Blue-Primary-50);
}

#mast-nav li {
    text-align: left;
    display: block;
}

#mast-nav li > a.active {
    border-bottom: 0;
}

#mast-nav li > a:hover {
    color: var(--White); !important;
    opacity: 0.75;
    background: transparent;
    margin-left: 8px;
}

#mast-nav li > a, #mast-nav li.menu-head  {
    color: var(--White);
    font-family: var(--Roboto-Condensed);
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    -webkit-transition: all 0.6s ease;
    -moz-transition: all 0.6s ease;
    -ms-transition: all 0.6s ease;
    transition: all 0.6s ease;
}

#mast-nav li > a {
    margin-left: 0;
    margin-right: 0;
    display: flex;
    align-items: center;
}

#mast-nav li > a i {
     padding: 20px;
    width: 20px;
    height: 20px;
    text-align: center;
}

.featured-link span {
    text-decoration: underline;
}

.credits {
    margin-top: 0;
    font-size: 14px;
}

.dropdown {
    height: 60px;
    overflow: hidden;
    -webkit-transition: all 0.6s ease;
    -moz-transition: all 0.6s ease;
    -ms-transition: all 0.6s ease;
    transition: all 0.6s ease;
}

.dropdown:hover {
    height: 220px;
}

.dropdown-menu li a {
    font-size: 15px !important;
    padding-left: 90px;
    padding-bottom: 10px;
}

.dropdown-menu {
    position: relative;
    background-color: transparent;
    float: none;
    width: 100%;
    box-shadow: none;
    border: 0;
    top: 0;
    margin: 0;

}
.dropdown-menu .sub-menu {
    left: 100%;
    position: absolute;
    top: 0;
    visibility: hidden;
    margin-top: -1px;
}

.dropdown-menu li:hover .sub-menu {
    visibility: visible;
}

.dropdown:hover .dropdown-menu {
    display: block;
}

#menu-toggle {
	position: absolute;
	right: 20px;
	top: 13px;
	z-index: 9999;
	display: none;
}

#menu-toggle i {
	font-size: 35px;
	color: #333;
}
#menu-toggle .list-icon {
    background-image: url(../images/icons/list-dark.svg);
    display: inline-block;
    width: 32px;
    height: 32px;
    background-repeat: no-repeat;
    background-size: 100%;
}

#menu-toggle:hover{
	color: inherit !important;
}

body.nav-in #masthead{
	height: 600px;
    max-height: 100vh;
    overflow: auto !important;
}

body.nav-in #menu-toggle {
    position: fixed;
}

body.nav-in #menu-toggle i{
	color: var(--White);
}

body.nav-in #menu-toggle .list-icon {
    background-image: url(../images/icons/list-light.svg);
}

/* INTRO TEXT */

.form-intro{
    padding: 10px;
    background: url(../images/bg-form.png);
    background-position: 0px 320px;
    background-repeat: no-repeat;
    background-size: contain;
}

.three-badges{
    padding-bottom: 20px;
}

.three-badges img{
    display: block !important;
}

.form-intro form{
    background: var(--White);
    padding: 30px;
    -webkit-border-radius: 16px;
    -moz-border-radius: 16px;
    -ms-border-radius: 16px;
    border-radius: 16px;
}

.form-intro input, .form-intro textarea, .form-line input{
    width: 95%;
    padding: 10px 2%;
    font-size: 16px;
    margin-bottom: 12px;
    box-shadow: none;
    border-radius: 0;
    border-width: 2px;
    font-weight: 600;
}

.form-intro input:focus, .form-intro textarea:focus {
    outline: none;
    box-shadow: none !important;
    border-color: #cccccc !important;
    border-width: 2px !important;
    border-style: solid !important;
}

input:focus:invalid:focus, textarea:focus:invalid:focus, select:focus:invalid:focus {
    outline: none;
    box-shadow: none !important;
}

.form-intro input[type="checkbox"]{
    width: auto;
}

.form-intro input[type="text"], .form-intro input[type="email"]{
    height: 34px;
}

.controls{
	min-height: 40px;
}

.controls > .radio:first-child, .controls > .checkbox:first-child{
	padding-top: 0;
}

.form-intro .btn{
    width: 100%;
}

.intro_detail{
    margin: 20px 0 0 0;
}

.intro_detail h4{
    margin-bottom: 0;
}

.intro_detail span, .services-courtage span{
    font-size: 20px;
    font-weight: 300;
    background: #38c2cf;
    color: var(--White);
    padding: 3px;
    border-radius: 50%;
    margin-right: 15px;
    width: 20px;
	display: inline-block;
	text-align: center;
}

.num-card {
    padding-left: 40px;
    position: relative;
}

.services-courtage span{
	position: absolute;
    left: 5px;
    top: 9px;
}
.services-courtage h4 strong{
    display: block;
    padding-top: 7px;
}
.services-courtage h4{
	font-size: 18px !important;
    line-height: 22px;
}
.intro_detail p{
    padding-left: 46px;
    font-size: 16px;
}

/* ABOUT */

.about-padding{
	padding-left: 30px;
}

.about-policy-block h3{
    border-bottom: 2px solid #38c2cf;
    margin-bottom: 20px;
    padding-bottom: 5px;
    font-family: var(--Roboto-Condensed);
}


/* SERVICES */

.services-content-block {
    border: 8px solid #ebecef;
    background: var(--White);
    text-align: justify;
}

.services-hash {
    font-size: 79px;
}

.services-content-block-text{
    min-height: 320px;
}

.services-content-block h3 {
    margin-top: 21px;
    margin-left: 15px;
    font-size: 24px;
    font-family: var(--Roboto-Condensed);
    font-weight: 600;
}

.services-title{
    max-width: 100%;
}

#taux .termes{
	background: var(--Blue-Primary-75);
    vertical-align: middle;
}

#taux .taux{
	background: #38c2cf;
}

#taux .meilleur{
	background: var(--Blue-Primary-300);
    vertical-align: middle;
}

#taux td, #taux td{
	padding: 14px 0 14px 10px;
}

#taux th{
	color: var(--White);
	font-size: 15px;
    font-weight: 500;
}

#taux td{
	font-size: 16px;
}

#taux tr td:first-child{
	color: var(--Blue-Primary-500);
	font-weight: 300;
}

#taux tr td:nth-child(2){
	color: var(--Blue-Primary-300);
	font-weight: 600;
}

#taux tr td:nth-child(3){
	color: #aacf38;
	font-weight: 600;
}



#security-nav ul{
    margin: 0;
    padding: 0;
    list-style: none;
    width: 270px;
    max-width: 100%;
}

#security-nav ul li a, #security-nav ul li span {
    background: #eee;
    padding: 15px;
    font-family: var(--Roboto-Condensed);
    display: block;
    color: var(--White);
    font-weight: 500;
}

#security-nav ul li a:hover, #security-nav ul li span:hover {
    color: var(--White); !important;
    text-decoration: none;
}

.links-to-scroll {
    cursor: pointer;
}

.links-to-scroll:hover {
    opacity: 0.90;
}

.keyboard-navigation .links-to-scroll:focus {
    outline: 2px solid var(--Violet);
}

#security-nav ul li .link1 {
    background: var(--Blue-Primary-500)
}

#security-nav ul li .link2 {
    background: var(--Blue-Primary-400)
}

#security-nav ul li .link3 {
    background: var(--Blue-Primary-300)
}

#security-nav ul li .link4 {
    background: var(--Blue-Primary-250)
}

#security-nav ul li .link5 {
    background: var(--Blue-Primary-200)
}

#security-nav ul li .link6 {
    background: var(--Blue-Primary-100)
}

#security-nav ul li .link7 {
    background: var(--Blue-Primary-75)
}

#security-nav.affix{
  position: fixed;
  top: 10px
}

#affix-row{
    position: relative;
}

.affix-top{
  position: static;
}

.affix-bottom{
    position: absolute;
    bottom: 0;
}

#affix-row h3:after, #affix-row-alt h3:after {
    display: block;
    content: '';
    width: 25px;
    height: 4px;
    position: absolute;
    top: 46px;
    left: 0;
}

#affix-row-alt h3:after {
    top: calc(100% - 24px);
    background: #126eb9;
}

#assurance-hypotheque{
    border: 0;
}



/* CHIFFRES */

.widget{
    border: 8px solid #ebecef;
    padding: 20px 20px 20px 20px;
}


/* NEWS */

.news-link{
    background: #38c2cf;
    color: var(--White);
    padding: 14px 18px;
    display: block;
    margin-top: 15px;
    -webkit-transition: all 0.6s ease;
    -moz-transition: all 0.6s ease;
    -ms-transition: all 0.6s ease;
    transition: all 0.6s ease;
}

.news-link:hover{
    background: #000;
    color: var(--White); !important;
}

.news-block{
    border: 8px solid #ebecef;
}

.news-ending-block{
    margin-top: 0px;
    margin-bottom: 20px;
}

.news-ending-block h5{
    font-size: 12px;
    background: #38c2cf;
    text-transform: uppercase;
    color: var(--White);
    margin-top: 0px;
    padding: 3px 8px;
    font-weight: normal !important;
}

.share p{
    font-size: 20px;
    color: #ccc;
    margin-top: 7px;
}

.share i {
    font-size: 27px;
    color: var(--White);
    background: #ccc;
    width: 35px;
    padding: 3px;
    height: 35px;
    text-align: center;
    line-height: 35px;
    border-radius: 50%;
    -webkit-transition: all 0.6s ease;
    -moz-transition: all 0.6s ease;
    -ms-transition: all 0.6s ease;
    transition: all 0.6s ease;
}

.share i:hover{
    background: #38c2cf;
}

/* TESTIMONIALS */

.testi-snd span{
	border-top: 0px solid #000000;
}

.testimonial-heading {
	color: #AFEEF7;
    font-size: 21px;
    margin-bottom: 0;
}

.testimonial-heading span{
    font-size: 21px;
    padding-top: 10px;
    display: inline-block;
}

.testi-snd span{
    border: 0;
}

/* CALCULATRICE */

.calc-list{
	margin: 0;
	padding: 0;
}

.calc-item{
	list-style: none;
	margin-top: 30px;
}

.calc-item span{
    min-height: 40px;
    display: block;
}

.calc-item a {
    color: var(--Blue-Primary-700);
	padding: 26px;
	display: block;
    border: 1px solid var(--Blue-Primary-200);
    transition: all 400ms ease;
}

.calc-item a:hover{
    border: 1px solid var(--Blue-Primary-400);
    box-shadow: 0 8px 16px 0 rgba(42, 90, 144, 0.15);
    scale: 1.03;
}

.calc-item h2 {
    margin-bottom: 5px;
    font-weight: 500;
    font-size: 26px !important;
    position: relative;
    padding-left: 40px;
    line-height: 30px;
}

.calc-item h2 i {
    position: absolute;
    left: 0;
    top: 2px;
}

/*----- Form -----*/

.form-line {
    height: 87px;
}

.form-line .devise {
    font-size: 50px !important;
    float: right;

}

.tooltip {
    position:absolute;
    z-index:1020;
    display:block;
    visibility:visible;
    padding:5px;
    font-size:11px;
    opacity:0;
    filter:alpha(opacity=0);
    font-size: 15px;
}

.tooltip.in {
    opacity:.9;
    filter:alpha(opacity=90)
}

.tooltip.top {
    margin-top:-2px
}

.tooltip-inner {
    max-width:400px;
}

/*----- Results -----*/

.result{
    border: 8px solid #EEEEEE;

}

.result-inner{
    background: #38c2cf;
    color: var(--White);
    padding: 10px;
    margin-bottom: 20px;
}

.result-inner span{
    font-size: 90px;
    text-align: center;
    display: block;
}

/* CONTACT */

.social-icons li {
    padding: 6px 0;
}

.contact-form input, .contact-form textarea {
	padding: 10px 8px;
    font-size: 14px;
    margin-bottom: 12px;
    height: auto;
    box-shadow: none;
    border-radius: 0;
}

.contact-form input:focus, .contact-form textarea:focus {
    outline: none;
    box-shadow: none !important;
}

.contact-form .btn-lg{
	max-width: 250px;
	float: right;
}

.error_form_message{
    font-size: 14px;
    margin-top: -9px;
    margin-bottom: 10px;
    display: block;
    color: #ef5555;
}

@media (max-width: 768px) {
    .error_form_message{
        margin-bottom: 15px;
    }
}

/* INVESTMENTS */
.section-bg {
    position: relative;
}

.section-bg .container {
    position: relative;
    z-index: 2;
}

.section-bg .section-bg-bg {
    z-index: 1;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: .2;
    background-size: cover;
    background-position: center center;
    filter: grayscale(1);
}

/* FOOTER */

/*----- Pre Footer -----*/

#pre-footer{
    background: #F2F8FF;
    color: var(--White);
}

#pre-footer p, #pre-footer a {
    color: var(--Blue-Primary-900);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px;
}

#pre-footer .span12
{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    flex-direction: column;
}

#pre-footer .span12 li a
{
    max-width: 170px;
    display: block;
    opacity: 1;
    max-height: 90px;
    margin: 0 auto;
    margin-top: 15px;
    margin-bottom: 15px;
    transition: all 0.5s ease;
}

#pre-footer .span12 li
{
    padding: 0;
}

#pre-footer .span12 li a img {
    max-height: inherit;

}

@media (min-width: 650px) {
    #pre-footer .span12
    {
        flex-direction: row;
    }
}

#pre-footer .span12 li a:hover{
	color: var(--White) !important;
	opacity: 0.5;
}

#pre-footer ul{
    text-align: center;
    padding: 40px 0;
}

#pre-footer ul li{
    display: inline-block;
    padding: 6px;
}

#foot-logo{
    width: 245px;
}

.foot-social {
    margin-top: 0px;
}

.info-links{
	margin-bottom: 50px;
}

/* Footer */

#mast-footer{
    color: var(--White);
    font-size: 14px;
}

#mast-footer .horizontal-line {
    margin: 24px 0;
    border: 1px solid var(--Blue-Primary-900);
    opacity: 0.06;
}

#mast-footer a {
    margin-left: 5px;
    color: #d0dadc;
}

#mast-footer .footer-nav-category {
    color: var(--Blue-Primary-900);
    font-family: var(--Roboto-Condensed);
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 28px;
    margin-bottom: 15px;
    display: inline-block;
}

#mast-footer a.footer-nav-category:hover, #mast-footer a.footer-nav-item:hover, #mast-footer a.footer-bottom-item:hover {
    opacity: 0.75;
}

#mast-footer .footer-nav-item {
    color: var(--Blue-Primary-700);
    font-family: var(--Roboto-Condensed);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-bottom: 13px;
    display: inline-block;
}

#mast-footer .footer-bottom-item {
    display: inline-block;
    color: var(--Blue-Primary-900);
    font-family: var(--Roboto-Condensed);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px
}

#mast-footer .social-icons {
    margin-top: 0px;
}

#mast-footer .social-icons li{
    border: 0;
    padding: 0;
}

#mast-footer address{
    margin-top: 0;
}

#mast-footer #mast-nav-footer li > a:hover {
    color: #38c2cf !important;
    opacity: 1;
}

#mast-footer #mast-nav-footer{
    padding: 0 !important;
    margin: 0 !important;
    list-style: none;
}

#mast-footer #mast-nav-footer li{
    padding: 0 !important;
    margin: 0 !important;
    text-align: left;
}


#mast-footer #mast-nav-footer li ul{
    padding-left: 15px;
    margin: 0 !important;
    text-align: left;
    list-style: none;
}

.credentials {
    margin: 0 auto;
    margin-top: 30px;
    border-top: solid 0.5px #444343;
    padding-top: 20px;
}

.copyRights {
    display: inline-block;
}

.inline-block {
    display: inline-block;
}

.float-right {
    float: right;
}

@media (max-width: 960px){
    .foot-social {
        text-align: center;
    }

    .credentials {
        text-align: center;
    }

    .credits {
        text-align: center!important;
    }

    .copyRights {
        display: block;
        text-align: center;
    }

    .inline-block {
        display: block;
    }

    .float-right {
        float: none;
        text-align: center;
    }
}

/* Modals */

.modal {
	width: 770px !important;
	margin-left: -385px !important;
}

.modal-body {
	max-height: 490px;
}

#pre-footer .modal-body p, #pre-footer .modal-header h3{
	color: #4F6367;
}

/*----- Lien Nixa -----*/

#contacter a{
    color: var(--White);
    margin: 20px 0 0 0;
    text-decoration: none;
    transition: all 0.2s ease-in-out 0s;
    text-align: left;
    display: block;
    width: 170px;
}

#contacter a:hover {
  opacity: 1;
  transform: rotate(10deg) scale(1.5) rotate(-17deg);
  -ms-transform: rotate(10deg) scale(1.5) rotate(-17deg);
  -moz-transform: rotate(10deg) scale(1.5) rotate(-17deg);
  -webkit-transform: rotate(10deg) scale(1.5) rotate(-17deg);
  -o-transform: rotate(10deg) scale(1.5) rotate(-17deg);
}

#contact .row-fluid ul {
    color: #666666;
}

.row-fluid ul{
	margin:20px 0;
	color: #d0dadc;
}
.row-fluid h4{
	font-size: 19px;
	color: #4f6367;
}
.row-fluid h4 i {
    margin-right: 10px;
}

/*----- Style date mise à jour courtage hypothécaire -----*/

.file-date{
  color: black;
  font-weight: 600;
}


/* MEDIA QUERIES */

/*----- min-width: 980px -----*/

@media (min-width: 980px){
    .span12, .container {
        width: 800px;
    }
}

/*----- min-width: 1200px -----*/

@media (min-width: 1200px){
    .span12, .container {
        width: 960px;
    }
}

/*----- min-width: 1400px -----*/

@media (min-width: 1400px){
    .span12, .container {
        width: 1170px;
    }
}


/*----- max-height: 1120px -----*/

@media (max-height: 1120px){
    .info-menu address{
        display: none;
    }
}

/*----- max-height: 996px -----*/

@media (max-height: 996px){
    .info-menu .menu-info-tel1{
        display: none;
    }
}

/*----- max-height: 770px -----*/

@media (max-height: 770px){
    .info-menu {
        display: none;
    }
}


/*********************************************/
@media (max-width: 1400px) {
    .services-content-block h3 {
        line-height: 25px;
    }
    .services-content-block-text  {
        min-height: 400px;
    }
}

@media (max-width: 1199px) {

    .services-content-block-text {
        min-height: 510px;
    }
    .services-content-block-text p{
        text-align: left !important;
    }
    .form-intro{
        background-position: 0 200px;
    }
	.services-courtage h4 {
        height: 75px;
        font-size: 14px !important;
    }
    .services-hash {
        font-size: 50px;
    }
    .help-title {
        padding-left: 25px;
    }
    .news-ending-block h5 {
        padding: 3px 6px;
        font-size: 10px;
    }
}
@media (max-width: 991px) {
    .services-content-block-text {
        min-height: 615px;
    }
	#intro {
	    padding-top: 24px !important;
	}
    .header-link-container {
        margin-top: 77px;
        margin-bottom: 30px;
    }
    .header-link-container:not(:first-child) {
        margin-top: 0;
    }
    .home .header-link-container {
        margin-bottom: 0;
    }
	#masthead {
		width: 100%  !important;
		height: 0;
		overflow: hidden  !important;
		min-height: 0;
	}
	.credits {
		width: 100%  !important;
		overflow: hidden;
	}
	.info-menu{
		display: none !important;
	}
	#mast-nav .menu-head{
		display: none;
	}
	.dropdown {
		height: 200px !important;
	}
	.dropdown-menu{
		display: block;
		padding: 0;
	}
	#menu-toggle{
		display: block;
        z-index: 1000;
	}
    .form-intro input, .form-intro textarea, .form-line input {
        font-size: 14px;
        padding: 5px 3%;
    }
    .pad-bottom-main {
        padding-bottom: 25px;
    }
    .services-courtage h4 {
        height: 95px;
        font-size: 14px !important;
    }
    .btn-lg, .btn-lg-alt, .btn-group-lg>.btn {
        font-size: 16px;
    }
    .services-hash {
        font-size: 35px;
    }
    .help-title {
        padding-left: 17px;
    }
    .services-content-block h3 {
        font-size: 21px;
    }
    .intro-alt .btn-lg {
        margin-top: 10px;
    }
    .news-ending-block h5 {
        padding: 3px 2px;
    }
}
@media (max-width: 767px) {
    .modal {
        width: 95% !important;
        margin: 0 auto !important;
    }

    .services-content-block-text {
        min-height: 0;
    }

    .header-link-container {
        margin-top: 15px;
        margin-bottom: 0;
    }
    #menu-toggle {
        right: 7px;
    }
    #menu-toggle i {
        font-size: 25px;
    }
    .master-heading, .adv-heading, .testimonial-heading, .main-para, p {
        text-align: left !important;
    }
    #mast-nav, #mast-nav ul{
        padding: 0 !important;
        margin: 0 !important;
    }

	#mast-nav li > a i {
		padding: 10px;
	}

    #mast-footer #mast-nav-footer li ul{
        padding: 0 !important;
    }
    .social-icons li {
        padding: 5px 0px;
    }
    .social-icons li:last-child {
        padding: 5px 0px;
    }

	.dropdown {
		height: 150px !important;
	}

	.share .pull-right{
		margin-top: 10px;
	}

	.contact-form .btn-lg {
		max-width: 100%;
	}

    #intro .span8 {
        width: 58.811966%;
    }

	#intro .btn-hero{
        margin-top: 0 !important;
    	width: 100% !important;
        margin-bottom: 20px !important;
	}
	.inner-title{
		text-align: center;
		font-size:23px;
	}

	.master-heading span{
	    font-size: 25px;
        height: auto;
        line-height: 40px;
        font-weight: 600;
	}

	.adv-heading span {
	    font-size: 40px;
	}
	.testimonial-heading span {
	    border: none !important;
	}

	.form-intro {
	    margin-top: 0;
	    background: none;
	}

	.form-intro form {
		padding: 30px 0;
	}

    .intro_detail p {
		padding-left: 0;
	}

    #intro-text h3, .services-content-block h3 {
        text-align: left;
	}

	.intro_detail span {
		display: block;
		margin-bottom: 15px;
	}

    .help-title .services-hash{
        top: -32px;
    }

	.foot-social{
		display: block !important;
	}

	#mast-footer .span4{
		text-align: center;
	}

    #pre-footer {
        padding-bottom: 15px;
    }

    #pre-footer ul {
        padding: 10px 0;
    }

	.credits{
		width: auto;
		margin-top: 0;
	}

	#contacter a {
		text-align: center;
		display: initial;
	}

	.foot-social a > img {
	    float: none;
	}

	.list_carousel{
		margin-left: -10px;
	}

	.contact-heading-block h5{
		font-size:16px;
        max-width: 250px;
        margin: 0 auto;
	}
	#contactForm button{
		margin-bottom: 35px;
	}

	.page {
	    padding-top: 10px !important;
	}
	.pad-bottom-main{
	    padding-bottom: 10px !important;
	}
	.pad-top-main {
    	padding-top:  10px !important;
	}

	#mast-footer #mast-nav li > a {
		text-align: center;
	}

	.logo {
		width: 234px;
		margin: 0 auto 10px;
	}

    .home-logo-link{
        text-align:left !important;
    }
    .services-courtage h4 {
        height: auto;
        margin-bottom: 10px;
        margin-top: 30px;
        font-size: 20px !important;
    }
    .services-courtage span {
        left: 3px;
        top: 6px;
        font-size: 13px;
        padding: 1px;
    }
    .services-content-block p {
        min-height: 1px;

    }
    .num-card {
        padding-left: 35px;
    }
    .num-card p {
        text-align: left !important;
    }
        .services-hash {
        font-size: 50px;
    }
    .help-title {
        padding-left: 27px;
    }
    .services-content-block h3 {
        font-size: 24px;
    }
    .calc-item h3 {
        font-size: 20px;
        padding-left: 35px;
    }
    .calc-item h3 i {
        top: 5px;
    }
        .about-padding {
        padding-left: 15px;
    }
    .intro-alt .btn-lg {
        margin-top: 15px;
    }
    .about-policy-block {
        padding: 3px 15px 5px 15px;
    }
    .about-policy-block:last-child {
        margin-bottom: 15px;
    }
    .about-policy-block h3 {
        text-align: left;
    }
    .news-block {
        min-height: 1px;
    }
    .news-container {
        margin-bottom: 0 !important;
    }
    .news-ending-block h5 {
        padding: 5px 10px;
        font-size: 12px;
    }
    #news .lead {
        margin-top: 15px;
        font-size: 17px;
    }
    .add-bottom {
        margin-bottom: 20px !important;
    }
    .add-top {
        margin-top: 20px !important;
    }
    hr {
        margin: 15px 0;
    }
    #about .inner-title {
        text-align: left;
    }
    .about-block p {
        margin-top: 0;
    }
    #about .btn-lg {
        margin-bottom: 15px;
    }
    .margin-top-sm {
        margin-top: 20px !important;
    }
}

.backstretch:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgb(255,255,255,0.4);
    background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(230,242,254,1) 75%);
    z-index: 1;
}

.mw-100px {
    max-width: 100px;
}

.mw-170px {
    max-width: 170px;
}

.testimonials-block {
    position: relative;
    z-index: 2;
}

.testimonials-block .main-para {
    font-size: 16px;
    text-align: center !important;
}

.testimonials-block .grid-row {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.testimonials-block .master-heading {
   color: var(--White);
    font-size: 36px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.2px;
    margin-bottom: initial;
}

.testimonials-block .add-bottom {
    margin-bottom: 32px !important;
}

.testimonials-block .add-top {
    margin-top: 32px !important;
}
.testimonials-block .fa-star {
    font-size: 17px;
}

.testimonials-block .testimonial-heading, .testimonials-block .testimonial-heading span {
    color: var(--White);
    font-family: var(--Roboto-Condensed);
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: 32px;
    letter-spacing: 0.2px;
    text-transform: capitalize;
}

.testimonials-block .testimonial-heading span {
    font-weight: 500 !important;
}

.testimonials-block .testimonial-heading {
    text-align: center !important;
}

@media (min-width: 1200px) {
    .broker-img {
        width: 75%;
    }
}

.service-cards, .broker-cards {
    display: flex;
    padding: 32px;
    flex-direction: column;
    align-items: start;
    flex: 1 0 0;
    align-self: stretch;
    border: 1px solid var(--Blue-Primary-200);
    position: relative;
    cursor: pointer;
    transition: all 400ms ease;
}

.broker-cards {
    cursor: default;
    transition: initial;
}

.service-cards:hover {
    border: 1px solid var(--Blue-Primary-400);
    box-shadow: 0 8px 16px 0 rgba(42, 90, 144, 0.15);
    scale: 1.03;
}

.keyboard-navigation .service-cards:focus {
    outline: 2px solid var(--Violet);
}

.service-cards:hover .service-card-number {
    border: 1px solid var(--Blue-Primary-400);
}

.service-card-number, .broker-card-number  {
    position: absolute;
    top: -19px;
    left: 37px;
    border: 1px solid var(--Blue-Primary-200);
    border-radius: 50%;
    background: #fff;
    display: inline-flex;
    width: 37px;
    height: 37px;
    align-items: center;
    justify-content: center;
    color: var(--Blue-Primary-500);
    font-family: var(--Roboto-Condensed);
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 28px;
}

.service-card-title a, .broker-card-title {
    color: var(--Blue-Primary-700);
    font-size: 24px !important;
    font-style: normal;
    font-weight: 700 !important;
    line-height: 30px;
    text-align: initial;
}

.service-card-text, .broker-card-text, .broker-hero-text p {
    color: var(--Blue-Primary-900);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
}

.intro-text-title {
    color: var(--Blue-Primary-900);
    font-size: 36px;
    font-style: normal;
    font-weight: 700;
    line-height: 42px;
}

.intro-text-details {
    color: var(--Blue-Primary-900);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
}

.font-14 {
    font-size: 14px;
}

.font-20 {
    font-size: 20px;
}

.font-32 {
    font-size: 32px;
}

@media(max-width: 1199px) {
    #security-nav.affix {
        position: relative !important;
    }
    #security-nav ul {
        width: 100%;
        margin-bottom: 40px;
    }
}

.contact-title {
    color: var(--Blue-Primary-600, #27517E);
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    text-transform: capitalize;
}

.contact-address a {
    color: var(--Blue-Primary-600);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    text-transform: capitalize;
}

#investment .badges {
    width: 100px;
}

.form-field-container label {
    color: var(--Blue-Primary-900);
    font-family: var(--Roboto-Condensed);
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 145%;
    margin-bottom: 4px;
}

.form-field-container input {
    height: 56px;
    padding: 16px;
    border: 1px solid #D0D5DD;
    margin-bottom: 24px;
}

.form-field-container textarea {
    padding: 16px;
}

.form-field-container input, .form-field-container textarea, .form-field-container .form-error {
    color: #737a87;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 145%;
}

.form-field-container .form-error {
    color: #CB1A14;
    font-feature-settings: 'cv04' on, 'cv03' on;
    font-family: var(--Roboto-Condensed);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 145%;
    padding: 0;
}

.contact-form .btn-motif {
    width: auto;
    padding: 16px 24px;
}

.contact-form input:focus:invalid, .contact-form textarea:focus:invalid {
    color: #737a87;
    border-color: var(--Blue-Primary-300);
}

.keyboard-navigation a:focus,
.keyboard-navigation button:focus {
   outline: 2px solid var(--Violet);
}

.font-64 {
    font-size: 64px !important;
}

@media(max-width: 575px) {
    .font-64 {
        font-size: 56px !important;
    }
}

a.link-404 {
    text-decoration: underline !important;
}

a.link-404:hover {
    color: var(--Blue-Primary-300);
}