html, body { font-size: 14px; height: 100%; }

body { display: inline-block; /* non-flexbox browsers */ display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; padding-right: 0 !important; padding-left: 0 !important; }

body, h1, h2, h3 { font-family: Arial, Helvetica, sans-serif; }

h1 { font-size: 50px; text-transform: capitalize; letter-spacing: 1px; font-weight: 300; color: #222222; text-align: center; margin: 30px 0; }

h2 { font-size: 18px; color: #000; margin: 0; padding: 10px 0; text-align: center; font-weight: bold; }

h3 { font-weight: 300; color: #929292; font-size: 24px; text-decoration: none; }

p, ul { font-size: 14px; }

.center { text-align: center; }

.pointer { cursor: pointer; }

.cache { display: none; }

.visible { display: block !important; }

.clearBoth { clear: both; }

.aligncenter { text-align: center; margin: 0 auto; display: block; }

.bold { font-weight: bold; }

.italic { font-style: italic; }

.container-site { max-width: 1200px; width: 100%; margin: 0 auto; padding-top: 5px; -webkit-flex: 1 0 auto; flex: 1 0 auto; }

/* Slider */
@media only screen and (max-width: 400px) { #slider { display: none; } }
header { display: inline-block; /* non-flexbox browsers */ display: -webkit-flex; display: flex; }

#ganil_logo { max-width: 200px; z-index: 10; margin-right: 42px; }

@media only screen and (max-width: 900px) { #ganil_logo { width: 250px; margin: 0 auto; } }
.custom-logo { width: 100%; height: auto; }

@media screen and (max-width: 1217px) { header { margin: 0 10px; } }
nav { width: 100%; }

#overlay { display: none; position: fixed; z-index: 2; top: 0; left: 0; bottom: 0; right: 0; background-color: rgba(255, 255, 255, 0.65); }

/* The main menu in the header */
#menu-primary-menu { display: inline-block; /* non-flexbox browsers */ display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; list-style-type: none; margin-top: 10px; z-index: 10; }

.separator { color: #c5c5c5; }

.menu-primary-menu-container ul { list-style-type: none; padding-left: 0; height: auto; width: 100%; margin: 0 auto; }

/* The level 1 menu */
#menu-primary-menu .parents { display: inline-block; }
#menu-primary-menu .link-level1 { padding: 14px 0; -webkit-transition: all 0.3s; transition: all 0.3s; position: relative; z-index: 11; font-size: 14px; text-transform: uppercase; }
#menu-primary-menu a { color: #000; text-decoration: none; cursor: pointer; }

.menu-current { font-weight: bold; color: #3b2568 !important; }

.index11 { z-index: 11; }

/*The sub menu */
.custom-sub-menu { opacity: 1; position: absolute; background-color: #ffffff; left: 0; top: 0; right: 0; padding-top: 110px !important; padding-right: 0; padding-left: 0; z-index: 3; display: none; box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.6); }
.custom-sub-menu li { font-weight: 500; }

.children { padding-bottom: 42px; }

/* The empty div that create the underline under the level 2 titles */
.underline-title-sub-menu { margin-top: 3px; border-top: 1px solid #c5c5c5; height: 2px; }

/* Level 2 title */
.title-sub-menu { font-weight: bold; text-decoration: none; color: #000; font-size: 14px; }

.container-sub-menu { max-width: 1200px; margin-left: auto; margin-right: auto; padding: 15px 0; }

.rows-menu { display: inline-block; /* non-flexbox browsers */ display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; }

.link_menu_level3 { font-size: 14px; }
.link_menu_level3:hover { color: #9082b6 !important; }

.col { width: 24%; }

.sub-menu-4 { display: none; }

@media only screen and (max-width: 1217px) { .container-sub-menu { margin: 0 10px; } }
@media only screen and (max-width: 1200px) { #menu-primary-menu .link-level1 { font-size: 13px; }
  .custom-sub-menu { padding: 0 10px; }
  .title-sub-menu { font-size: 12px; }
  .link_menu_level3 { font-size: 12px; } }
@media only screen and (max-width: 1000px) { #menu-primary-menu .link-level1 { font-size: 12px; } }
@media only screen and (max-width: 900px) { nav { display: none; }
  .link_menu_level3_classic { display: none; }
  .link_menu_level3_responsive { display: inline-block; color: #3b2568 !important; } }
@media only screen and (min-width: 900px) { #menu-primary-menu .link-level1:hover { color: #3b2568 !important; }
  .parent_without_children a:hover, .parent_without_children .link_menu_level3:hover { color: #9082b6 !important; }
  .link_menu_level3_classic { display: block; }
  .link_menu_level3_responsive { display: none; } }
#responsive-nav { display: none; }
#responsive-nav a { font-size: 25px; color: #3b2568; }

.fa-bars { color: #3b2568; }

#menu-primary-menu .glyphicon { color: #fff; float: right; margin: 7px 20px 0 0; cursor: pointer; display: none; }

@media screen and (max-width: 900px) { nav { position: absolute; z-index: 1; top: 90px; width: 75%; min-width: 420px; background-color: #ffffff; }
  #menu-primary-menu { -webkit-flex-direction: column; flex-direction: column; background-color: #3b2568; margin-top: 0; cursor: pointer; }
  #menu-primary-menu li a { font-size: 10px; }
  #responsive-nav { float: left; display: block; margin-left: 20px; }
  .index11, .sub-menu-3, .sub-menu-2, .sub-menu-1 { display: none; }
  #menu-primary-menu .link-level1 { margin: 3px 0; color: #ffffff; line-height: 29px; padding: 0 0 0 10px; }
  .custom-sub-menu { position: relative; padding: 0 0 0 10px !important; height: auto; margin-left: -10px !important; background-color: #9082b6; }
  .first-level { min-height: 30px; }
  .link-level1 { margin: 3px 0; color: #ffffff; line-height: 29px; padding: 0 0 0 10px !important; }
  .container-sub-menu { padding: 0; }
  .children { padding-bottom: 1px; padding-left: 10px; min-height: 30px; text-transform: uppercase; }
  .rows-menu { display: block; }
  .col { width: auto; }
  .title-sub-menu { color: #ffffff !important; padding: 0; font-size: 12px !important; font-weight: normal; line-height: 29px; }
  .underline-title-sub-menu { display: none; }
  .children .sub-menu { margin-left: -20px; background-color: #cdc7e4; padding-left: 20px; }
  .children .sub-menu li { padding-left: 10px; min-height: 25px; }
  .children .sub-menu a { font-weight: normal !important; }
  #menu-primary-menu .glyphicon { display: block; }
  .menu-current { color: #ffffff !important; }
  .sub-menu-3 a { text-transform: none; }
  .link_menu_level4 { color: #3b2568 !important; font-size: 10px; } }
#breadcrumbs { list-style: none; margin: 10px 0 22px 0; padding: 0; overflow: hidden; }
#breadcrumbs li { display: inline-block; vertical-align: middle; margin-right: 10px; cursor: initial; }
#breadcrumbs .separator { font-size: 12px; font-weight: 100; color: #000000; }
#breadcrumbs a, #breadcrumbs li { font-size: 12px; color: #000000; cursor: pointer; text-decoration: none; }
#breadcrumbs a:hover { text-decoration: none; }
#breadcrumbs a .haslink { cursor: pointer; }
#breadcrumbs a .haslink:hover { text-decoration: underline; }

.item-parent a { cursor: pointer; }

@media only screen and (max-width: 1200px) { #breadcrumbs { padding: 0 0 0 10px; } }
/* Level 3 lateral menu */
.lateral_menu { width: 31%; max-width: 370px; }

#level3_parent_title { margin-bottom: 22px; font-size: 14px; font-weight: bold; text-transform: uppercase; }

.level3_menu ul { background-color: #3b2568; padding: 0; }
.level3_menu li { list-style-type: none; padding: 0; transition-duration: 0.5s; min-height: 39px; text-decoration: none; color: #fff; text-transform: uppercase; font-size: 14px; font-weight: bold; line-height: 39px; cursor: pointer; }
.level3_menu a { text-decoration: none; color: #fff; text-transform: uppercase; padding: 0; font-size: 14px; font-weight: bold; line-height: 39px; margin: 0; display: block; width: 100%; height: 100%; }

.lateral-menu-parents { padding-left: 10px !important; }
.lateral-menu-parents .glyphicon { color: #fff; float: right; margin: 9px 20px 0 0; cursor: pointer; }
.lateral-menu-parents:hover, .lateral-menu-parents.active, .lateral-menu-parents.current { background-color: #9082b6; }

.level3-submenu { padding: 0 !important; background-color: #cdc7e4 !important; display: none; margin-left: -10px; }
.level3-submenu li { margin-left: 20px !important; color: #000 !important; text-transform: none !important; padding: 0 !important; font-weight: normal !important; }
.level3-submenu:hover, .level3-submenu li.current { color: #3b2568 !important; }
.level3-submenu a { color: #000 !important; text-transform: none !important; padding: 0 !important; font-weight: normal; }

@media only screen and (max-width: 900px) { .lateral_menu { width: 100%; max-width: 100%; }
  .lateral_menu_single { order: 2; }
  .lateral_menu_single #level3_parent_title { display: none; } }
.bogo-language-switcher { text-align: right; margin-bottom: 0; }
.bogo-language-switcher li { display: inline; margin-left: 15px; }
.bogo-language-switcher a, .bogo-language-switcher li { font-size: 12px; }
.bogo-language-switcher a { color: #929292; }
.bogo-language-switcher a.current { color: #333; }

@media screen and (max-width: 1217px) { .bogo-language-switcher { margin-right: 10px; } }
.container-page { width: 100%; margin: auto; padding: 0; display: inline-block; /* non-flexbox browsers */ display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; }

@media only screen and (max-width: 1200px) { .container-page { padding: 0 10px; width: auto; } }
@media only screen and (max-width: 900px) { .container-page { -webkit-flex-direction: column; flex-direction: column; } }
/* Content above other content */
.content-page { margin-bottom: 42px; color: #000000 !important; font-family: Arial, Helvetica, sans-serif; }

.post-image { overflow: hidden; height: 350px; }

.wp-caption { max-width: 100%; width: auto !important; display: table; }

.wp-caption-text { font-size: 14px; font-style: italic; padding: 7px 0; background-color: #f1f1f1; display: table-caption; caption-side: bottom; }

.gallery-item .wp-caption-text { background-color: #ffffff !important; display: block !important; }

.tag { display: inline-block; }
.tag a { padding: 0; color: #929292; font-size: 12px; }

.container_with_lateral_menu { max-width: 785px; width: 68%; }
.container_with_lateral_menu h3 { margin-top: 0; }
.container_with_lateral_menu img, .container_with_lateral_menu .container-page img { max-width: 100%; height: auto; }

.level4_container { background-color: #f1f1f1; margin-bottom: 22px; }

.level4_title { margin: 20px 0 0 15px !important; text-decoration: none; font-size: 20px; font-weight: normal; color: #000000; }

.level4_title_and_plus { display: inline-block; /* non-flexbox browsers */ display: -webkit-flex; display: flex; position: relative; height: 65px; }

.level4_button_plus { background-color: #3b2568; position: absolute; right: 0; width: 65px; height: 65px; display: inline-block; /* non-flexbox browsers */ display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; cursor: pointer; }

.image_plus_level4 { width: 23px; }

.level4_content { padding: 15px; display: none; }
.level4_content img { max-width: 100%; }

.page_title { color: #3b2568; font-size: 26px; text-transform: none; text-align: left; letter-spacing: 0; margin: 42px 0 10px 0; }

@media only screen and (max-width: 900px) { .page_title { font-size: 4vw; margin: 10px 0; }
  .content-page h2 { font-size: 6vw; }
  .level4_title { font-size: 4vw; }
  .container_with_lateral_menu { order: 1; width: 100%; max-width: 100%; } }
.news-container-list { width: 100%; display: inline-block; /* non-flexbox browsers */ display: -webkit-flex; display: flex; border-bottom: 1px solid #c5c5c5; margin-bottom: 32px; padding-bottom: 32px; }

.news_title_archive { margin: 10px 0; }

.title-news-list { font-size: 18px; color: #000000; margin: 0; }

.image-news-list { padding: 0 20px 0 0; max-width: 250px; }
.image-news-list img { max-width: 250px; height: auto; }

.date-news-archives { font-size: 14px; color: #929292; margin-top: -4px; font-weight: bold; text-transform: uppercase; }

.excerpt-news-list { font-size: 12px; }
.excerpt-news-list .button-read-more { margin-bottom: 0 !important; }

.title_menu_level3 { background-color: #3b2568; min-height: 39px; text-decoration: none; color: #fff; text-transform: uppercase; padding: 0 10px; font-size: 14px; font-weight: bold; line-height: 39px; }

.content_menu_lateral { padding: 15px 0; }

.date-news-single { font-size: 14px; font-weight: bold; color: #929292; margin: 10px 0; text-transform: uppercase; }

.title-news-single { font-size: 16px; color: #000000; margin-bottom: 10px; }

.button-read-more-single { margin-bottom: 10px; border-bottom: 1px solid #c5c5c5; padding-bottom: 10px; }
.button-read-more-single a { padding: 0 !important; color: #929292; font-size: 12px; text-transform: none !important; line-height: normal; font-weight: normal !important; }

#share_buttons { display: inline-block; /* non-flexbox browsers */ display: -webkit-flex; display: flex; }

#facebook_img, #twitter_img, #linkedin_img, #mail_img, #print_img { cursor: pointer; vertical-align: bottom; width: 38px; height: 38px; display: inline-block; margin-right: 7px; }

#facebook_img { background-image: url("../../images/Facebook_Grey.png"); }

#facebook_img:hover { background-image: url("../../images/Facebook_Color.png"); }

#twitter_img { background-image: url("../../images/Twitter_Grey.png"); }

#twitter_img:hover { background-image: url("../../images/Twitter_Color.png"); }

#linkedin_img { background-image: url("../../images/LinkedIn_Grey.png"); }

#linkedin_img:hover { background-image: url("../../images/LinkedIn_Color.png"); }

#mail_img { background-image: url("../../images/Mail_Grey.png"); }

#mail_img:hover { background-image: url("../../images/Mail_Color.png"); }

#print_img { background-image: url("../../images/Print_Grey.png"); }

#print_img:hover { background-image: url("../../images/Print_Color.png"); }

.title_news_single { margin-top: 0 !important; }

.separator_end_post { border-bottom: 1px solid #c5c5c5; }

#quick_information_event { width: 100%; }
#quick_information_event td { padding-bottom: 5px; }

.quick_information_event_title { width: 25%; }

#website_link_event { font-size: 14px; color: #000000; }

#button_event_website { border: 1px solid black; text-transform: uppercase; background-color: #ffffff; width: 100%; padding: 8px; }

.event_date { font-size: 14px; font-weight: bold; color: #000000; text-transform: uppercase; }

.event_place { font-size: 14px; color: #000000; }

.event_type { font-size: 14px; font-weight: bold; color: #eb6608; text-transform: uppercase; }

.event-title-page { font-size: 16px; color: #000000; margin-bottom: 10px; }

#publication_title { font-weight: bold; }

#publication_authors { font-size: 11px; }

#publication_journal { text-decoration: underline; margin-bottom: 10px; }

#publication_journal a { color: #333; }

#homepage { display: inline-block; /* non-flexbox browsers */ display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; padding: 0; }

#homepage h3 { font-weight: bold; font-size: 24px; color: #3b2568; text-transform: uppercase; text-decoration: none; margin: 32px 0; }

@media only screen and (max-width: 1220px) { #homepage { padding: 0 10px; } }
@media only screen and (max-width: 700px) { #homepage { display: block; } }
/* Column of News & Highlights */
#news_homepage_container { max-width: 785px; width: 68%; }

#news_homepage { display: inline-block; /* non-flexbox browsers */ display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; }

/* Column of news */
#news-link-homepage-container { width: 31%; max-width: 370px; }

/* Where a news is displayed */
.news-container-homepage { width: 48%; text-decoration: none; }
.news-container-homepage:hover { text-decoration: none; }

.image-news-homepage img { max-width: 376px; width: 100%; height: auto; }

/* News date */
.date-news-homepage { font-size: 14px; font-weight: bold; color: #929292; margin-top: 10px; text-transform: uppercase; }

/* News title */
.title-news-homepage { font-size: 18px; color: #000000; margin-bottom: 10px; }

/* News link */
.button-read-more { margin-bottom: 18px; color: #929292; font-size: 12px; }

#more-news-homepage { border-top: 1px solid #c5c5c5; margin-top: 32px; width: 100%; }
#more-news-homepage a { color: #929292; font-size: 12px; font-weight: bold; text-transform: uppercase; }

/* News / Event link */
.button-read-more a { color: #929292; font-size: 12px; }

@media only screen and (max-width: 1100px) { .date-news-homepage { font-size: 12px; }
  .title-news-homepage { font-size: 16px; }
  .title-news-homepage { margin: 0; } }
@media only screen and (max-width: 700px) { #news_homepage_container, #news-link-homepage-container { width: 100%; max-width: 100%; } }
@media only screen and (max-width: 500px) { #news_homepage { display: block; }
  .news-container-homepage { width: 100%; }
  .image-news-homepage img { max-width: 100%; } }
#events { margin-top: -3px; width: 100%; max-width: 370px; }

/* Event category */
.event-category-homepage { margin-bottom: 10px; }

/* Event title */
.event-title-homepage { font-size: 18px; color: #000000; margin-bottom: 10px; }

/* Event date */
.event-date-homepage { margin-bottom: 10px; }

/* Event place */
.event-place-homepage { margin-bottom: 10px; }

/* Event link */
#events .button-read-more, .event .button-read-more { padding-bottom: 32px; border-bottom: 1px solid #c5c5c5; margin-bottom: 32px; }

/* Events div to the events page */
#more-event-homepage { margin-top: -29px; }

/* Events link to the events page */
#more-event-homepage a { color: #929292; font-size: 12px; font-weight: bold; text-transform: uppercase; }

@media only screen and (max-width: 1100px) { .event-date-homepage { font-size: 12px; }
  .event-title-homepage { font-size: 16px; }
  .event-place-homepage { font-size: 12px; } }
@media only screen and (max-width: 700px) { #events { max-width: 100%; } }
#direct-access { margin-top: 10px; padding-bottom: 32px; border-bottom: 1px solid #c5c5c5; margin-bottom: 32px; }

.direct-access_link { margin-bottom: 10px; }
.direct-access_link a { font-size: 14px; color: #000000; text-transform: uppercase; text-decoration: none; }

.btn-to-top { position: fixed; bottom: 40px; right: 30px; z-index: 99; border: none; outline: none; background-color: #3b2568; color: white; cursor: pointer; padding: 12px 12px 6px 12px; font-size: 18px; transition: background-color .3s, opacity .5s, visibility .5s; opacity: 0; visibility: hidden; }

.btn-to-top .show { opacity: 1; visibility: visible; }
.btn-to-top:hover { background-color: #555; /* Add a dark-grey background on hover */ }

footer { -webkit-flex-shrink: 0; flex-shrink: 0; margin-top: 42px; }

#footer-informations { background-color: #3b2568; }

.col-footer { font-size: 14px; color: #ffffff; padding: 20px 0; width: 268px; }
.col-footer a { color: #ffffff; text-decoration: none; display: block; }
.col-footer a:hover { text-decoration: none; }
.col-footer img { margin-right: 10px; margin-top: 10px; vertical-align: bottom; }

#footer-informations-container { display: inline-block; /* non-flexbox browsers */ display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; padding: 0; -webkit-flex-wrap: wrap; flex-wrap: wrap; }

@media only screen and (max-width: 1220px) { #footer-informations-container { padding: 0 10px; } }
.btn-submit-footer-newsletter { border: 1px solid #ffffff; background-color: #3b2568; color: #ffffff; cursor: pointer; padding: 6px 8px; font-size: 14px; }

#footer-form-newsletter { background-color: #3b2568; padding: 8px 7px 5px 7px; margin: 0; width: 218px; font-size: 12px; border: 1px solid #ffffff; }

::placeholder { color: #ffffff; font-style: italic; opacity: 0.5; }

#subscribe_newsletter { margin-top: 5px; }

#btn-submit-footer-newsletter { background-color: #3b2568; margin: 0 !important; padding: 5px !important; border: 1px solid #ffffff; }

#newsletter_in_english { font-size: 10px; }

.modal_box { display: none; position: fixed; z-index: 1; top: 50%; left: 50%; margin-top: -50px; /* Negative half of height. */ margin-left: -150px; /* Negative half of width. */ width: 300px; height: 100px; }

.modal_box-content { background-color: #f1f1f1; margin: 15% auto; padding: 20px; border: 1px solid #929292; width: 80%; }
.modal_box-content p { font-size: 12px !important; }

.close { color: #f1f1f1; float: right; font-size: 28px; font-weight: bold; }
.close:hover, .close:focus { color: black; text-decoration: none; cursor: pointer; }

#footer-menu-container { background-color: #2f1e53; }
#footer-menu-container .container-site { display: inline-block; /* non-flexbox browsers */ display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; }

#footer-menu { width: 500px; margin: 0 auto; padding: 10px 0; display: inline-block; /* non-flexbox browsers */ display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; max-width: 100%; }

.col-second-footer { -webkit-flex: 1 1 auto; flex: 1 1 auto; position: relative; text-align: center; }

.col-second-footer + .col-second-footer { border-left: solid 1px white; }

#footer-menu, #footer-menu a { color: #ffffff; font-size: 12px; }

@media only screen and (max-width: 570px) { #footer-menu { width: 100%; }
  .col-footer { margin: 0 auto; } }
