/* ------------------------------------ *\
  CONTENTS
\* ------------------------------------ */

/**
* LANGUAGE SWITCHER BLOCKS........
* TOP BAR BLOCKS..................
* TOP BAR MENU BLOCKS.............
* RESPONSIVE BLOCKS...............
* Preventing FOUC.................
*/

/* ------------------------------------ *\
  ==LANGUAGE SWITCHER BLOCKS
\* ------------------------------------ */
.top-bar ul.dropdown-language-item {
  background-color: #fff;
  margin-left: 4rem;
}

.top-bar .accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after {
  border-color: #777 transparent transparent;
  right: .5rem;
}

.top-bar .accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a:hover::after {
  border-color: #931111 transparent transparent;
}

.block-amu-irphe-dropdownlanguage .language-link {
  font-family: Montserrat, sans-serif;
  font-weight: 600;
}

.dropdown-language-item li {
  color: #777;
  font-size: 1.05rem;
  font-weight: 500;
  line-height: 2;
  transition: color .15s ease-in;
}

.dropdown-language-item li:hover {
  cursor: pointer;
}

.dropdown-language-item .dropbutton-toggle button {
  color: #555;
}

.top-bar a {
  transition: all .3s ease 0s;
}

.top-bar a:hover {
  cursor: pointer;
}

.topbar-responsive .menu a {
  color: #777;
  font-family: Montserrat, sans-serif;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.25;
  transition: color .15s ease-in;
}

.js .dropbutton-multiple .dropbutton-widget {
  padding-right: 1rem;
}

.block-authenticationtop .menu a,
.block-amu-irphe-authenticationtop .menu a {
  padding: 0;
}

/* Authentification button */
.block-authenticationtop .menu li a,
.block-amu-irphe-authenticationtop .menu li a {
  font-size: 1.5rem;

  /* font-size: 1rem; */
}

/* Sign in */
.block-authenticationtop .menu li a::before,
.block-amu-irphe-authenticationtop .menu li a::before {
  content: "\f2f6";

  /* content: "\f2f5"; */
  font-family: "Font Awesome 5 Pro", sans-serif;
  text-indent: -9999px;
}

.topbar-responsive .menu li:last-of-type {
  margin-right: 0;
}

.user-logged-in .block-authenticationtop .menu li:first-child,
.user-logged-in .block-amu-irphe-authenticationtop .menu li:first-child,
.user-logged-out .block-authenticationtop .menu li:nth-child(2),
.user-logged-out .block-amu-irphe-authenticationtop .menu li:nth-child(2) {
  display: none;
}

.block-authenticationtop .menu > li > a > span {
  margin-left: .5rem;
}

.block-amu-irphe-authenticationtop .menu > li > a::before {
  margin-right: .5rem;
}

/* ------------------------------------ *\
  ==TOP BAR BLOCKS
\* ------------------------------------ */
.sticky-topbar {
  transition: padding .25s ease;
  z-index: 100;
}

.sticky.is-stuck {
  z-index: 100;
}

.top-bar {
  border-bottom: 1px solid #ccc;
}

.is-stuck .top-bar {
  padding: 0 1rem;
  transition: padding .25s ease;
}

#block-amu-recherche-main-menu,
#block-languageswitcher {
  display: inline-block;
  float: right;
}

#topbar-responsive {
  display: flex;
  width: 100%;
}

.top-bar p {
  margin: 0;
}

.top-bar-right {
  align-items: center;
  display: flex;
}

.topbar-responsive {
  background: #fff;
  padding: .75rem .5rem;
}

.top-bar-center {
  margin: 0 auto;
}

.topbar-responsive .topbar-responsive-logo {
  color: #fefefe;
  vertical-align: middle;
}

.topbar-responsive .menu {
  background: #fff;
}

.topbar-responsive .menu a:hover,
.dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent.is-active > a::after {
  color: #931111;
  border-color: #931111 transparent transparent;
}

.diffusion--private .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent.is-active > a::after {
  color: #fff;
  border-color: #fff transparent transparent;
}

.topbar-responsive .menu .topbar-responsive-button {
  border-color: #fefefe;
  border-radius: 5000px;
  color: #fefefe;
  transition: color .15s ease-in, border-color .15s ease-in;
}

.topbar-responsive .menu .topbar-responsive-button:hover {
  border-color: #c6d1d8;
  color: #c6d1d8;
}

.dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a::after {
  border-color: #777 transparent transparent;
}

.dropdown.menu.medium-horizontal > li.opens-right > .is-dropdown-submenu {
  border-radius: 4px;
}

.diffusion--private .top-bar-center .dropdown li > ul > li > ul {
  position: relative;
  border: none;
}

.dropdown.menu > li.is-active > a {
  color: #931111;
}

/* ------------------------------------ *\
  ==TOP BAR MENU BLOCKS
\* ------------------------------------ */

.wrap {
  position: relative;
}

.menu-icon__container {
  height: 32px;
  width: 32px;
}

.top-bar .dropdown .is-dropdown-submenu a {
  padding: .85rem .75rem 0;
}

.top-bar .dropdown .is-dropdown-submenu-item:last-child a {
  padding-bottom: .75rem;
}

.topbar-responsive .menu li .menu li .menu li a {
  padding-left: 2rem;
}

.bar1,
.bar2,
.bar3 {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #ccc;
  border-radius: 8px;
  color: #ccc;
  display: block;
  font-size: 10px;
  height: 4px;
  left: 0;
  padding: 0;
  position: absolute;
  top: 0;
  transition: all .2s ease-in;
  transform: rotate(0deg);
  width: 32px;
}

.bar2 {
  top: 12px;
}

.bar3 {
  top: 24px;
}

.bar1.active {
  top: 12px;
  transform: rotate(-135deg);
  transition: all .2s ease-in;
}

.bar2.active {
  background-color: transparent;
  left: 100px;
  transition: all .2s ease-in;
}

.bar3.active {
  top: 12px;
  transform: rotate(135deg);
  transition: all .2s ease-in;
}

.menu-icon::after {
  box-shadow: none;
  height: 0;
}

.top-menu nav {
  background-color: #333d47;
  border-bottom: 1px solid #333d47;
}

.top-menu .menu {
  float: right;
}

.top-menu .menu > li {
  display: inline-block;
}

.top-menu ul a {
  color: #fff;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  padding: .5rem 1rem;
}

.diffusion--private .topbar-responsive .menu li .menu a:hover {
  color: #1779ba;
}

.top-menu ul a:hover {
  color: #fff;
}

.top-menu ul a:hover + span {
  display: block;
  border-bottom: 1px dotted white;
  margin: -8px .5rem 0;
}

.user-logged-out a[href*="logout"] {
  display: none;
}

.user-logged-in a[href*="login"] {
  display: none;
}

.user-logged-in .top-menu ul a[href*="logout"]::after {
  content: "\f08b";
}

.top-menu ul a[href*="login"]::after {
  content: "\f2f6";
}

.user-logged-in .top-menu ul li:hover a::after,
.top-menu ul li:hover a::after {
  color: #fff;
}

.top-menu ul a[href*="login"]::after,
.user-logged-in .top-menu ul a[href*="logout"]::after {
  font-family: "Font Awesome 5 Pro", sans-serif;
  color: #fff;
  font-weight: 500;
  font-size: 1.25rem;
  margin-left: .5rem;
  position: absolute;
  top: 8px;
}

.diffusion--private .top-menu ul a[href*="login"]::after,
.diffusion--private .user-logged-in .top-menu ul a[href*="logout"]::after {
  color: #fff;
}

#block-privatespace .menu li {
  margin-top: .05rem;
}

#block-privatespace .menu li:last-child {
  margin-right: 2.5em;
}

.block-amu-irphe-main-menu li.is-selected > a {
  color: #931111;
  transition: none;
}

.block-amu-irphe-main-menu .dropdown.menu.medium-horizontal > li.is-selected > a::after {
  border-color: #931111 transparent transparent;
  transition: none;
}

.top-menu ul a.is-active {
  color: #fff;
}

.top-menu ul a.is-active + span {
  background-color: #fff;
  height: 2px;
  display: block;
  margin: -8px .5rem 0;
}

.top-bar-center .is-dropdown-submenu-parent.is-active .first-sub {
  display: block;
}

/* ------------------------------------ *\
  ==RESPONSIVE BLOCKS
\* ------------------------------------ */

/* Small only */
@media screen and (max-width: 39.9375em) {

  #block-amu-recherche-main-menu,
  #block-languageswitcher {
    width: 100%;
  }

  .topbar-responsive .menu a {
    padding: .875rem 0;
  }

  .topbar-responsive .menu .topbar-responsive-button {
    margin: .875rem 0;
    width: 100%;
  }

  .top-bar-right {
    display: block;
    margin-bottom: 1rem;
    padding: 0 .5rem;
    position: relative;
  }

  .topbar-responsive .top-bar-title {
    position: relative;
    width: 100%;
  }

  .topbar-responsive .top-bar-title span {
    border: 1px solid #fefefe;
    border-radius: 5px;
    padding: .25rem .45rem;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
  }

  .topbar-responsive .top-bar-title span .menu-icon {
    margin-top: .5rem;
    height: 100%;
    width: 100%;
  }

  .topbar-responsive .menu li.is-accordion-submenu-item {
    border-bottom: 0;
    padding: .25rem 0;
  }

  .topbar-responsive .menu li.is-accordion-submenu-item a {
    color: #555;
    padding: .25rem 0;
  }

  .top-bar-center {
    margin: 0;
  }

  .top-bar .is-accordion-submenu-parent:hover {
    background-color: #fff;
  }

  .top-bar ul.dropdown-language-item li {
    padding-left: .5rem;
    padding-right: .5rem;
  }

  .top-bar .language-link:hover {
    color: #931111;
  }

  .top-bar .menu.is-accordion-submenu.is-active {
    background-color: #fff;
  }

  .diffusion--private .topbar-responsive .menu li .menu a,
  .path-private .topbar-responsive .menu li .menu a {
    color: #fff;
  }

  .diffusion--private .topbar-responsive .menu li .menu a:hover,
  .path-private .topbar-responsive .menu li .menu a:hover {
    color: #fff;
  }

  .diffusion--private .top-bar .is-accordion-submenu-parent:hover {
    background-color: #5398a9;
  }

  .diffusion--private .top-bar .menu.is-accordion-submenu.is-active {
    background-color: #5398a9;
  }

  .diffusion--private .top-bar .accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after {
    border-color: #fff transparent transparent;
  }

  .top-bar ul.dropdown-language-item li.dropbutton-toggle {
    margin-right: .25rem;
  }

  .topbar-responsive .menu li.is-accordion-submenu-item a:hover {
    color: #931111;
  }

  #topbar-responsive {
    display: flex;
    flex-direction: column;
    padding: .5rem;
  }

  .top-bar-right .cell {
    width: 100%;
  }

  .topbar-responsive-links {
    height: 100vh;
  }

  .title-bar-left .title-bar-title img {
    height: 3.5rem;
    width: auto;
  }

  .is-stuck .topbar-responsive {
    padding: .25rem;
  }

  .is-stuck .title-bar-left .title-bar-title img {
    height: 2.5rem;
    width: auto;
  }
}

/* Small Up */
@media screen and (min-width: 64em) {
  .is-stuck .top-bar-right #block-dropdownlanguage,
  .is-stuck .top-bar-right #block-amu-irphe-dropdownlanguage {
    top: 3.4rem;
  }
}

/* Medium Up */
@media screen and (min-width: 64em) {
  #topbar-responsive {
    margin-left: 88px;
  }

  .topbar-responsive {
    padding: .75rem 1.5rem;
  }

  #block-dropdownlanguage,
  #block-amu-irphe-dropdownlanguage {
    position: absolute;
    right: 2.5rem;
    top: 4rem;
  }

  .block-amu-recherche-main-menu {
    padding: 1rem 0;
  }

  .top-bar-right {
    margin-top: 1.5rem;
  }
}

/* Medium Down */
@media screen and (min-width: 40em) {
  .topbar-responsive .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a.is-active::after {
    border-color: #fff transparent transparent;
  }
}

/* Medium Down */
@media screen and (max-width: 64em) {
  .block-logocompany__content a {
    display: block;
    width: 120px;
  }

  .dropdown-language-item a,
  .topbar-responsive .menu a,
  .dropdown-language-item span {
    font-size: .95rem;
  }

  .dropdown.menu a {
    padding: .7rem .5rem;
  }
}

/* ------------------------------------ *\
  ==*Preventing FOUC
\* ------------------------------------ */

/* Small only */
@media screen and (max-width: 39.9375em) {
  #topbar-responsive {
    display: none;
  }

  .top-bar-right {
    border-bottom: 1px solid #ccc;
    padding: 0;
  }

  .title-bar-left {
    margin-bottom: .25rem;
  }

  .top-bar-center {
    border-top: 1px solid #ccc;
    margin-top: .5rem;
  }

  .top-bar .menu li {
    border-bottom: 1px solid #ccc;
    padding: .5rem;
  }

  .top-bar .dropdown-language-item li {
    padding: .5rem 1rem;
  }

  .top-bar .dropdown-language-item .dropbutton-toggle {
    padding: 0;
  }

  .top-bar .dropdown-language-item li span {
    font-size: .95rem;
    display: block;
    padding: .875rem 0;
    line-height: 18px;
  }

  .top-bar .js .dropbutton-multiple .dropbutton-widget {
    padding-right: 0;
  }

  .top-bar-right .cell.small-12 {
    margin: 0;
  }

  .menu.is-active {
    background-color: #eee;
  }
}

/* Medium and up */
@media screen and (min-width: 40em) {
  .top-bar-title span {
    display: none;
  }

  /* Langues selecteur */
  .js .dropbutton-widget .dropbutton {
    margin-top: .5rem;
    padding: .5rem 1rem;
  }
}
