:root {
    --primary-font: 'Poppins', Helvetica, Arial, sans-serif;
    --secondary-font: 'Open-Sans', Helvetica, Arial, sans-serif;
    --bs-body-font-size: 1.125rem; /* 18px */
    --bs-body-color: #000000;
    --bs-body-line-height: 1.5;
    --bs-link-hover-color: #007BC2;
    --bs-dropdown-link-active-color: #007BC2;
    --bs-dropdown-link-active-bg: #FFFFFF;
    --bs-dropdown-item-padding-y: 0.5rem !important;
    --bs-nav-link-color:#001e61;
    --bs-navbar-color:#000000;
    --bs-navbar-nav-link-padding-x: 1rem !important;
    /* rajout padding pour item li menu*/

    --main-menu-active-bg: transparent;
    --main-menu-active-color: #1869B4;

    --logo-height: calc(3.8rem + 1.4vw);

    --link-color: #0082ca;
    --primary-theme-color: #000000;
    --secondary-theme-color: #1d2c45;
    --tertiary-theme-color: #375383;
    --light-grey-color:#b5c0cd;
    --topbar-link-color: #001e61;
    --topbar-bg: #E1EBFF;
    --topbar-border: #d6d6d6;
    --topbar-book-color: #007BC2;
    --language-switcher-bg-color: #FFF;
    --title-font-color: #000000;
    --title-blue-color: #001e61;
    --bg-blue-color: #E1EBFF;
    --bg-grey-color: #f5f5f6;
    --bg-dark-blue-color:#001e61;
    --bg-orange-color:#F7931E;
    --bg-light-orange-color:#FEF7EF;
    --bg-color:#FFFFFF;
    --footer-color: #FFFFFF;
    --footer-bg: #001e61;
    --footer-bloc-title-color: #FFF;
    --footer-bloc-border-color: rgba(255, 255, 255, 0);

    --accordion-background: #fff;
    --accordion--border: 1px solid #dee2e6 !important;

    --floating-cta-background: #007BC2;
    --floating-cta-color: #FFF;
    --floating-cta-font: 'nexa';


    --cta-style-1-bg: #0082ca;
    --cta-style-1-color: #FFF;
    --cta-style-1-border: 2px solid #0082ca;
    --cta-style-1-border-radius: 10px;
    --cta-hover-style-1-bg: #001e61;
    --cta-hover-style-1-color: #FFF;
    --cta-hover-style-1-border: 2px solid #001e61;
    --cta-hover-style-1-border-radius: 10px;

    /* cta blue book */
    --cta-style-2-bg: #1d2c45;
    --cta-style-2-color: #FFF;
    --cta-style-2-border: 2px solid #1d2c45;
    --cta-style-2-border-radius: 10px;
    --cta-hover-style-2-bg: #FFFFFF;
    --cta-hover-style-2-color: #1d2c45;
    --cta-hover-style-2-border: 2px solid #1d2c45;
    --cta-hover-style-2-border-radius: 10px;


    --cta-style-3-bg: transparent;
    --cta-style-3-color: #001e61;
    --cta-style-3-border: 3px solid #001e61;
    --cta-style-3-border-radius: 10px;
    --cta-hover-style-3-bg: #001e61;
    --cta-hover-style-3-color: #ffffff;
    --cta-hover-style-3-border: 3px solid #001e61;
    --cta-hover-style-3-border-radius: 10px;


    --view-staff-card-height: 440px;
    --view-staff-image-height: 220px;

    --legal-font-size: 16px;
    --legal-font-color: #000000;



}
img {
    border-radius: 35px;
}
img.noborder, .ui-blogpost--img img, .ui-blogpost--header img{
    border-radius: 0px !important;
}
sub,
sup {
    position: relative;
    font-size: 0.45em;
    line-height: 0;
    vertical-align: baseline;
}

sup {
    top: -1em;
}
main {
    /*margin-top:105px !important;*/
    margin-top:0 !important;
}
header{
    z-index: 150;
}
footer {
    z-index: 100; /* devant le menu fixe page privacy policy*/
}
footer .footer {
    padding: 2.5rem 0 0 0 !important;
}
.footer nav .navbar-nav {
    --bs-nav-link-padding-y: 0.3rem !important;
}
.dropdown-menu {
    --bs-dropdown-item-padding-y: 0.5rem !important;
}
.popup-entity-popup.popup-entity-white {
    background:var(--bg-dark-blue-color) !important;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-weight: 600;
    font-family: var(--primary-font);
}
h1,
.h1 {
    line-height: 1.1;
    color: var(--primary-theme-color);
    font-size: 2.5rem !important; /*48px*/
    font-weight: 400 !important;
    margin-bottom:2rem;
    /*text-transform: uppercase;*/
}
h1.underline, h2.underline, h3.underline {
position: relative;
  padding-bottom: 30px;
}
.underline::after {
  content: '';
  width: 9rem;
  height: 5px;
  background-color: #c2dfe3;
  position: absolute;
  bottom: 0;
  /*margin-left: auto;
  margin-right: auto;*/
  left: 0;
  right: 0;
  z-index: 1;
}
h2,
.h2 {
    line-height: 1.2;
    color: var(--primary-theme-color);
    font-size: 1.8rem !important; /*35px*/
    font-weight: 600 !important;
    text-align: center;
margin:1rem 0 2rem;
    /*text-transform: uppercase;*/
}
h3, .h3 {
    color: var(--secondary-theme-color);
    font-size: 1.35rem !important;
    line-height: 1.4;
    font-weight: 600 !important;
    margin: 2rem 0 1rem;;
}
h4, .h4 {
    color: var(--tertiary-theme-color);
    font-size: 1.35rem !important;
    line-height: 1.4;
    font-weight: 600 !important;
    margin-bottom: 0;
  line-height: 1.8;
}
h4 a{
    color:inherit;
}
h4 a:hover{
    color:var(--primary-theme-color);
}
h5, h5 {
    line-height: 1.25;
    font-size: 1.25rem !important;
}
/* key points big number*/
h3.big-number {
    font-size: 5rem !important; 
    font-weight: 300 !important;
    text-transform: uppercase;
    font-family: var(--primary-font);
    margin-bottom: 0;
}
h3.big-title {
    font-size: 2.4rem !important; 
    font-weight: 400 !important;
    text-transform: uppercase;
    font-family: var(--primary-font);
    color:var(--primary-theme-color);
}

/* mobile titles */
@media (max-width: 768px) {
    h1, .h1 {
        font-size: 1.6rem !important;
    }
    h2,.h2 {
        font-size: 1.4rem !important;
    }
    h3, .h3, h4 {
        font-size: 1.2rem !important;
    }
    h4.key-points {
        font-size: calc(1.1rem + .6vw) !important;
    }
    h3.topoffer {
        font-size: calc(1rem + .5vw) !important;
    }
    h3.big-number {
        font-size: 3.375rem !important; /*54px*/
        }
    h3.big-title {
        font-size: 1.85rem !important; 
        }
    .bloc-key-points {
        display: block;
    }
    p, p.bigcopy, li {
        font-size: 1.225rem !important;
        line-height: 1.3 !important;
    }
    p.legal {
    font-size: var(--legal-font-size) !important;
    }
}

a:hover,
.link:hover {
    color: #007BC2;
}
b, strong {
    font-weight: 600 !important;
}
p a,
p a.link,
li a,
li a.link {
    text-decoration: underline;
    text-decoration-line: underline;
    text-decoration-color: var(--tertiary-theme-color);
    text-underline-offset: 5px;
}

/* Header Homepage */
.hide-mobile {
    display: inline-block !important;
}

@media (max-width: 768px) {
    .hide-mobile {
        display: none !important;
    }
}

/* creation nouvelle classe noarrwolink pour ne pas mettre de fleche en after car cela pose probleme avec le soulignement*/
a.noarrow-link {
    position: relative;
    padding-right: 0px;
    text-transform: capitalize;
    font-family: var(--primary-font);
    font-weight: 600;
    text-decoration: underline;
    text-decoration-line: underline;
    text-underline-offset: 7px;
    text-decoration-color: var(--tertiary-theme-color);
    color: var(--tertiary-theme-color);
    line-height: 1;
    font-size: 1,25rem;
}

a.noarrow-link:hover {
    color: var(--primary-theme-color);
    text-decoration-color: var(--primary-theme-color);
    cursor: pointer;
}

a.noarrow-link::after {
    content: none;
}

/* arrow link qui marche avec affichage de la fleche mais ne pas mettre de text underline*/
a.arrow-link {
    font-family: var(--secondary-font);
}

a.arrow-link::after {
    content: '\f061';
    font-family: 'Font Awesome 6 Pro';
    display: inline;
    line-height: 18px;
    font-size: 16px;
    margin-left: 10px;
}
a.arrow-link:hover {
    color: var(--primary-theme-color);
    cursor: pointer;
}
/* used for intro copy after H1 title */
p.bigcopy {
    /*color: var(--primary-theme-color);*/
    font-size: var(--bs-body-font-size);
    line-height: var(--bs-body-line-height);
    /*line-height: 1.4;
    font-size: 1.625rem;*/
}
/* TOP BAR AND MENU */
.topbar {
    /*box-shadow: 1px 1px 6px #d4d4d4;
    -webkit-box-shadow: 1px 1px 6px #d4d4d4;
    height:66px !important;*/
}
.navbar {
    /* fixe le pb affichage du hamburger avec grand logo sur mini mobile*/
    --bs-navbar-toggler-padding-x:0.45rem !important;
    }
.menu--top-bar ul.navbar-nav li a.phone.nav-link,
a .phone {
    font-family: var(--primary-font) !important;
}
.dropdown-item.active,
.dropdown-item:active {
    color: var(--primary-theme-color) !important;
    background-color: #FFFFFF;
    font-weight: 600;
}
.region-nav-main .dropdown a span {
    padding: 0 0 0 0.45em;
}
.region-nav-main ul.navbar-nav {
    margin: 0 !important;
    font-family: var(--primary-font) !important;
    font-weight: 500 !important;
    font-size: 20px !important;
    padding: 0 !important;
    line-height: 1.8rem;
}
/* add location icone to footer */
.fa-location:before {
    content:"\f3c5";
}

.topbar a:before {
    padding-right: 10px !important;
}

.menu--top-bar ul.navbar-nav li a.phone.nav-link {
    color: var(--primary-theme-color) !important;
    font-weight: 500 !important;
}
.region-nav-main ul li a.dropdown-item.item-submenu, li a.item-submenu {
    padding-left:30px;
}
@media (min-width: 768px) {
    .menu--top-bar ul.navbar-nav li a.phone.nav-link {
        padding: 16px 18px !important;
        font-size: 1.1rem;
        float: right !important;
    }
    .region-nav-main .dropdown a span {
        padding: 9px !important;
    }
    .region-nav-main ul li a.dropdown-item.item-submenu {
    padding-left:30px !important;
}
}
@media (max-width: 991.98px) {
    button.navbar-toggler {
        width: 45px !important;
    }
    .region-nav-main .dropdown a span {
        top:0 !important;
        }
    .navbar-nav .nav-link {
        padding-left: 0;
        padding-right: 0;
    }
    .region-nav-main ul li a.dropdown-item.item-submenu {
    padding-left:30px !important;
    }
}

.navbar-brand {
    margin-right: 0 !important;
}
.navbar-brand img {
    margin-right: 0 !important;
}


.navbar-nav .show>.nav-link,
.navbar-nav .nav-link.active {
    font-weight: 600;
    color: inherit;
}
.navbar-nav .show>.nav-link, .navbar-nav a.book.nav-link.active {
    color:white;
}
.navbar-nav .show>.nav-link, .navbar-nav a.book.nav-link.active:hover {
    color:var(--primary-theme-color);
}
.region-nav-main ul li a {
    color: var(--title-font-color) !important;
    line-height: 1.4;
    font-size: 20px;
    font-family: var(--primary-font);
    font-weight: 500;
}
.region-nav-main ul li a:hover {
    color:var(--tertiary-theme-color) !important;
}
/* cible le CTA Candidacy on mobile*/
.region-nav-main ul li a.vg-text-primary {
    color:var(--tertiary-theme-color) !important;
}
.footer .navbar-nav .nav-link {
    color:white;
}

.block.block-menu.navigation.menu--copyright .navbar-nav{
    flex-direction: row;
}

.block.block-menu.navigation.menu--copyright .navbar-nav .nav-item{
    margin-right: 20px;
}

.paragraph-cta.style-1,
a.fik.nav-link,
.paragraph-cta.style-2,
a.book.nav-link,
.paragraph-cta.style-3,
div#block-languageswitcher a {
    text-transform: uppercase;
    /*text-transform: capitalize;*/
    /*font-weight: 400;
   font-family: var(--secondary-font) !important;*/
   font-size: 1rem !important;
   letter-spacing: .04rem;
}
.paragraph-cta.style-1,
a.fik.nav-link,
.paragraph-cta.style-2,
a.book.nav-link,
.paragraph-cta.style-3 {
    padding: 0.8rem 1.5rem !important;
}
.paragraph-cta.style-3 {
    font-weight: 600 !important;
}
a.fik.nav-link, a.book.nav-link {
    margin:2px 10px !important;
}
.paragraph-cta.style-1, .paragraph-cta.style-2, .paragraph-cta.style-3 {
    margin:2px auto !important;
}
/*a.book.nav-link {
    padding: 11px 18px !important;
    margin: 2px !important;
}*/
@media screen and (max-width: 727px) {

    .paragraph-cta.style-1,
    a.fik.nav-link,
    .paragraph-cta.style-2,
    a.book.nav-link,
    .paragraph-cta.style-3 {
        padding: 11px 15px !important;
    }
    a.fik.nav-link, a.book.nav-link {
    margin:2px 5px !important;
}
    a.book.nav-link {
        font-size: 0.85rem !important;
    }
    .navbar-brand img {
        height: calc(3.7rem + 1.3vw) !important;
    }
    .navbar-nav .show>.nav-link, .navbar-nav a.book.nav-link.active {
        font-size: 0.81rem !important;
        margin: 4px 5px !important;
    }
}


/* Accordeon */
.accordion-item a.accordion-button {
    color: var(--title-font-color) !important;
}


h3.accordion-header {
    font-size: calc(0.9rem + .5vw) !important;
    text-transform: inherit !important;
    color: var(--title-font-color) !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
}

@media (max-width: 724px) {
    h3.accordion-header {
        padding: 1rem 0.9rem 0.5rem;
        font-size: calc(1.2rem + .6vw) !important;
    }
}

/* ICONS */
.fa:before,
.fa-classic:before,
.fa-regular:before,
.fa-solid:before,
.far:before,
.fas:before {
    padding-right: 8px !important;
    /* padding-right: 0 !important; espace apres les icones */
}

blockquote p {
    color: var(--primary-theme-color) !important;
    font-family: var(--secondary-font) !important;
    font-weight: 500 !important;
    font-size: var(--bs-body-font-size) !important;
    line-height: 1.2 !important;
}

blockquote {
    margin: 1rem 0 !important;
    padding: 1rem 0rem 0.4rem 1.5rem !important;
    border-left: 1px solid var(--secondary-theme-color);
}

@media screen and (max-width: 727px) {
    blockquote p {
        line-height: calc(1.3rem + 1.5vw);
    }
}

/* fix issue too much white space on mobile menu */
@media (max-width: 991.98px) {
    .region-nav-main .dropdown a {
        white-space: normal;
        /* old: break-spaces */
    }
    .block.block-menu.navigation.menu--copyright .navbar-nav {
        flex-direction: column;
    } 
}

/* footer */
.block.block-menu.navigation.menu--copyright .navbar-nav {
    justify-content: center !important;
    text-align: center !important;
}
.menu--find-us-on li.nav-item {
    margin: 0 20px 0 0 !important;
}


/* Customize Blog */
.view-blog--first-item {
    /* width: 65% !important; */
}
.ui-blogpost--text h1{
    color:var(--primary-theme-color) !important;
}
.ui-blogpost--text.c-text {
    margin-bottom: 5% !important;
}
.footer-menu-title {
    font-family: var(--secondary-font) !important;
}
h1.ui-blogpost--title {
    color: var(--primary-theme-color) !important;
    font-size: calc(1.4rem + 1.2vw) !important;
    line-height: 1.1 !important;
    padding: 1% 0.8rem 3% 4%;
    margin: 0;
    max-width: 800px;
    font-weight: 500 !important;
}
.region.region-sidebar-first {
    background: var(--primary-theme-color) !important;
    
   
    padding: 2rem;
}
.ui-blogpost--img-container+.ui-blogpost--wrapper {
    margin: 0 !important;
}
.region.region-sidebar-first h2 {
    /* color: var(--title-font-color) !important; */
    font-size: calc(1rem + 1vw) !important;
}
.region.region-sidebar-first a {
    /* color: var(--title-font-color) !important; */
}
.ui-blogpost--metas {
    font-family: var(--primary-font) !important;
    color: var(--title-grey-color) !important;
    font-size: calc(0.8rem + 0.5vw) !important;
    font-weight: 500;
    padding: 2% 0 0.3rem 0;
}
.ui-blogpost--title {
    font-size: 2rem !important;
    letter-spacing: 0 !important;
    font-family: var(--primary-font) !important;
    color: var(--primary-theme-color);
    font-weight: 500 !important;
        line-height: 1.1 !important;
}
.ui-blogpost--content a.ui-cta--simple,
.ui-blogpost--content a.ui-cta--simple:after {
    font-size: 1.25rem !important;
    text-decoration: none !important;
    font-family: var(--primary-font) !important;
    font-weight: 500 !important;
        color: var(--tertiary-theme-color) !important;
}
.view-blog--first-item .ui-blogpost--content {
    border-bottom: 5px solid var(--bg-blue-color) !important;
}
.blog-cat {
    display: none; /* hide all artciles copy near date, useless*/
}
/* masque le bloc sur mobile, car il y a le CTA */
@media screen and (max-width: 727px) {
    .region.region-sidebar-first {
        display: none;
    }
}

/* customixe liste */
ul {
    margin: .25em 0 .8em .7em;
    padding-left: 0rem;
}
ol {
    margin: 0.2em 0 .8em .7em;
    padding-left: 0.7rem;
}
ul.nav.navbar-nav {
    margin: 0 !important;
    /* corrige affichage du top menu sur mobile*/
}

ul.icon-arrow-list,
ul.icon-check-list,
ul.icon-arrow-big-list,
ul.icon-location-list {
    list-style: none;
}

ul.icon-arrow-list li,
ul.icon-check-list li,
ul.icon-arrow-big-list li,
ul.icon-location-list li {
    padding:0.1rem 0 0.8rem 40px;
    position: relative;
}
ul.icon-arrow-list li {
    padding:0rem 0 0.8rem 30px !important;
}
ul.icon-arrow-list li::before {
    content: "\f101";
    font-family: "Font Awesome 6 Pro";
    position: absolute;
    font-size: 1.2rem;
    color:var(--light-grey-color); /* gris bleu plus discret */
    left: 0;
    top: 0;
}
ul.icon-arrow-list, ul.icon-arrow-big-list, ul.icon-check-list {
    margin: .25em 0 .8em 0em !important;
}
ul.icon-location-list li::before {
    content: "\f3c5";
    font-family: "Font Awesome 6 Pro";
    position: absolute;
    font-size: 1.4rem;
    color: var(--tertiary-theme-color);
    left: 0;
    top: 0;
}

ul.icon-arrow-big-list li::before {
    content: "\f061";
    font-family: "Font Awesome 6 Pro";
    position: absolute;
    font-size: 1.4rem;
    color: var(--tertiary-theme-color); 
    left: 0;
    top: 0;
}

ul.icon-check-list li::before {
    content: "\f00c";
    font-family: "Font Awesome 6 Pro";
    position: absolute;
    font-size: 1.4rem;
    color: var(--tertiary-theme-color);
    left: 0;
    top: 0;
}

/*fixed header menu plus grand pour GLV */
main {
    /*margin-top: 168px;*/
    margin-top:0;
}
.topbar {
        padding: 3px 0 !important;
}

nav.navbar.navbar-expand-lg {
    display: none;
    /*display: block;
    position: fixed;
    width: 100%;
    background-color: var(--bs-body-bg);
    padding: inherit;
    top: 60px;*/
    
}
@media (max-width: 991.98px) {
    a.navbar-toggler {
        color:var(--topbar-border);
    }
}
@media (max-width: 991.98px) {
    nav.navbar.navbar-expand-lg {
        height: inherit;
        z-index: 99;
    }
}

.sitemap-item {
    margin-top:30px !important;
}
/* affichage Icons List*/
.icon-content {
    align-items: flex-start;
    display: flex;
    margin-bottom: 1%;
}
.icon-content .min-icon {
    align-items: center;
    max-width: 40px;
    max-height: 40px;
    margin-right: 20px;
    /*margin-right: 35px;*/
}
@media screen and (max-width: 727px) {
    .icon-content .min-icon {
        margin-right: 20px;
    }
    .topbar {
        padding: 5px 0 !important;
    }
}

/* customize privacy table content*/
#privacy-table{
    background-color:var(--bg-grey-color);
    top:180px;
    padding:2rem;
    position:fixed;
    max-width: 520px;
}
@media screen and (max-width: 727px) {
    #privacy-table{
        display: none;
    }
}

/** Custom Search node **/
.region-nav-main .nav-item  a.search:after {
    font-size: 20px;
    color: var(--secondary-theme-color);
    font-weight: 800;
    font-family: "Font Awesome 6 Pro";
    content: "\f002";
}

.navbar-expand-lg .navbar-nav .text-white.nav-link,
.navbar-expand-lg .navbar-nav .text-white.nav-link:hover
{
    color: #FFF !important;
    line-height: 1.6 !important;
}

#block-pagetitle h1.page-title{
    color:var(--title-font-color) !important;  
}

div.container:has(div.region-breadcrumb){
    max-width:none !important;
    margin-top:30px !important;
}

div.container:has(div#block-pagetitle){
    margin-top:60px !important;
}

input#edit-submit {
    font-size: 1rem;
    background: var(--cta-style-2-bg);
    color: var(--cta-style-2-color);
    font-weight: 400;
    text-transform: uppercase !important;
    letter-spacing: .04rem;
}

#search-form .form-item__label{
    text-transform: capitalize;
    margin-bottom: 1rem;
    color:var(--title-font-color);
}

#search-form .form-control{
    outline-style: none;
    box-shadow: none;
}

h3.search-result__title {
    padding-top:1rem;
}

h3.search-result__title a {
    font-family: var(--secondary-font);
    font-weight: 600;
    text-decoration: none;
    text-transform: capitalize;
    font-size: 1.8rem;
}

form#search-form + h2 {
    display: none;
}

.item-list .search-result__info{
    display: none !important; 
}

.pager ul.pagination>li a:hover, .pager ul.pagination>li.active a {
    background: var(--cta-style-2-bg);
    color: var(--cta-style-2-color);
    border-color: var(--cta-style-2-bg);
}

@media screen and (max-width: 727px) {
    input#edit-submit {
        margin-left:0;
    }
}

.sitemap a.search::before{  /* Search link on the site map */
    color: var(--link-color) !important;
    text-decoration:underline;
    content: "Search";
}

.sitemap a.search:hover::before{  /* Search link on the site map */
    color: var(--bs-link-hover-color) !important;
    text-decoration:none;
    content: "Search";
}

/**  End Custom Search node   **/

/** VG classes: mobile and desktop display **/
/* Nice to add in the global style */
.vg-d-mobile{
    display: none !important;
}

.vg-d-desktop{
    display: block !important;   
}

@media screen and (max-width: 992px) {
    .vg-d-mobile{
        display: block !important;
    }
    .vg-d-desktop{
        display: none !important;   
    }
}
/** End  classes **/ 

/*.copyright .container {
  border-top: 0 !important;
  margin-top: 0 !important;
  } */

  .footer {
    display: none;
  }
