/*--------------------------------------------------------------
  # Fonts
--------------------------------------------------------------*/

@import url('./fonts.css');


/*--------------------------------------------------------------
  # General
--------------------------------------------------------------*/
*,
*:before,
*:after {
  /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
  -webkit-box-sizing: inherit;
  -moz-box-sizing: inherit;
  box-sizing: inherit;
}Making real relationships

html {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

html, body {
  height: 100%;
  color: #404040!important;
  font: 400 16px/16px 'Mont', Arial, arial, sans-serif;
}

p {
  margin: 0;
  padding: 0;
}

.widget {
  padding: 0;
}

#pg-117-0,
#pl-117 .so-panel {
  margin-bottom: 0px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
  color: #1d4051;
}

/* h3 {
  font: bold 25px/25px 'Mont', Arial, sans-serif;
}

h2 {
  font: bold 51px/50px 'Mont', Arial, sans-serif;
} */

ul,
ol {
  margin: 0 0 1.5em;
  padding: 0;
}

ul li,
ol li {
  margin: 0 0 0 15px;
}

a {
  color: #222;
  text-decoration: none;
}

input,
textarea {
  border: 1px solid #a7a7a7;
  padding: 17px;
  width: 100%;
  margin-bottom: 12px;
}

button, input, optgroup, select, textarea {
  font: inherit;
}

fieldset {
  border: none !important;
}

th {
  text-align: left;
}

form {
  margin: 0;
}

figure {
  margin: 0;
}

figure img {
  width: 100%;
}

b, strong {
  font-weight: bold;
}

#main b, #main strong {
  font-weight: 600;
}


.align-center,
.align-table-center,
.align-table-center th,
.align-table-center td {
  text-align: center;
}

.bg-grey {
  background-color: #bababa;
}

.bg-soft-grey {
  background-color: #efeef1;
}

.bg-blue {
  background-color: #1d4051
}

.text-white {
  color:#fff;
}
.text-blue {
  color: #1d4051;
}

.text-grey {
  color: #939393;
}

.text-soft-grey {
  color: #ddd;
}

.title-section {
  background-color: #fff;
  border-top: 1px solid #eaeaea;
  border-bottom: 1px solid #eaeaea;
  color: #2043a4;
  font: normal 24px/28px 'Mont', sans-serif;
  padding: 25px 0;
  display: inline-block;
  width: 100%;
  margin-bottom: 47px;
  text-align: center;
}

.panel-grid-cell  .widget-title {
  font: normal 22px/25px 'Mont', sans-serif;
  color: #1c45a1;
}

.page-template-default .textwidget {
  margin: 27px 0 37px 0;
}

.screen-reader-text {
  display: none;
}

*.unselectable {
   -webkit-touch-callout: none; /* iOS Safari */
     -webkit-user-select: none; /* Safari */
      -khtml-user-select: none; /* Konqueror HTML */
        -moz-user-select: none; /* Firefox */
         -ms-user-select: none; /* Internet Explorer/Edge */
             user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome and Opera */
}

.hidden {
  display: none;
}

.page-template:not(.elementor-editor-active) .hidden-block {
  display: none;
}

.button-custom,
.form .button-custom {
  font: italic normal 32px/32px 'Mont', sans-serif;
  display: inline-block;
  background-color: transparent;
  color: #fff;
  border: 1px solid #fff;
  padding: 14px 47px;
  text-align: center;
  text-decoration: none;
  margin-bottom: 7px;
  transition: background .3s, color .3s;
  cursor: pointer;
}

.button-custom.full {
  width: 100%;
}

.button-custom:hover {
  background-color: #58ca68 !important;
  color: #fff !important;
}


/* =Clearfix
-------------------------------------------------------------- */
.clearfix:after,
.clearfix:before,
#container:after,
#container:before,
.widget-wrapper:after,
.widget-wrapper:before {
  content: ' ';
  display: table;
}

.clearfix:after,
#container:after,
.widget-wrapper:after {
  clear: both;
}

.ie7 .clearfix,
.ie7 #container,
.ie7 .widget-wrapper {
  zoom: 1;
}

/* =Fi Clearfix
-------------------------------------------------------------- */

#main .content {
  margin-top: 41px;
}

#content {
  min-height: 100%;
  padding-bottom: 557px;  /* ha de ser el mateix que el footer perque el footer es absolut */
  position: relative;
  /* font: 400 20px/1.66 'Mont', Arial, arial, sans-serif; */
  font: 400 1.4rem/2.1rem 'Mont', Arial, arial, sans-serif;
}

.container {
  width: 1230px;
  margin: 0 auto;
  position: relative;
  box-sizing: border-box;
}

.container-large {
  width: 90%;
  margin: 0 5%;
  position: relative;
}

.container-full {
  position: relative;
}

.full-height {
  height: 100%;
}


.btn-common {
  font: 400 16px/23px 'Mont', sans-serif;
  background-color: #fff;
  border: 1px solid #2043a4;
  color: #2043a4;
}

.btn-common:hover {
  background-color: #2043a4;
  border: 1px solid #2043a4;
  color: #fff;
}

.btn,
.btn:focus,
.btn:active {
  outline: none;
}

.circular-img {
  position: relative;
  width: 200px;
  height: 0px;
  padding-bottom: 200px;
  overflow: hidden;
  border-radius: 50%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.page-template .title h2,
.page-template .title h3,
.page-template .title h4,
.page-template .title h5 {
  color: #1d4051;
}

.page-template .text-white h1,
.page-template .text-white h2,
.page-template .text-white h3,
.page-template .text-white h4,
.page-template .text-white h5,
.page-template .text-white h6,
.page-template .text-white {
  color: #fff !important;
}

h1, .page-template .title h1 {
  /* font: bold 60px/60px 'Mont', Arial, sans-serif; */
 font: bold 4.4rem/4.6rem 'Mont', Arial, sans-serif
}

h2, .page-template .title h2 {
  /* font: bold 60px/60px 'Mont', Arial, sans-serif; */
 font: bold 3.8rem/4.1rem 'Mont', Arial, sans-serif
}

h3, .page-template .title h3 {
 /*font: bold 51px/50px 'Mont', Arial, sans-serif; */
 font: bold 3.2rem/3.5rem 'Mont', Arial, sans-serif;
}

h4, .page-template .title h4 {
  /* font: bold 27px/27px 'Mont', Arial, sans-serif; */
 font: bold 2.3rem/2.5rem 'Mont', Arial, sans-serif;
}


h5 .page-template .title h5 {
  /* font: bold 27px/27px 'Mont', Arial, sans-serif; */
 font: bold 1.7rem/2rem 'Mont', Arial, sans-serif;
}

.page-template .column-align-left .elementor-container {
  margin-left: 0;
}

.text-vw h2 {
  font: bold 3.6vw/4vw 'Mont', Arial, sans-serif;
  margin: .7vw 0;
}

.text-vw p {
  font: normal 1.1vw/1.5vw 'Mont', Arial, sans-serif;
}

@media screen and (max-width: 1200px) {

  .text-vw h2 {
    font: bold 3.9vw/4.4vw 'Mont', Arial, sans-serif;
    margin: .7vw 0;
  }

  .text-vw p {
    font: normal 1.4vw/1.9vw 'Mont', Arial, sans-serif;
  }

}

@media screen and (max-width: 768px) {

 .text-vw h2 {
  font: bold 6.8vw/7.4vw 'Mont', Arial, sans-serif;
   margin: .7vw 0;
  }

  .text-vw p {
    font: normal 2.8vw/3.4vw 'Mont', Arial, sans-serif;
  }

}

@media screen and (max-width: 1024px) {

  h1, .page-template .title h1 {
   font: bold 4rem/4rem 'Mont', Arial, sans-serif
  }

  h2, .page-template .title h2 {
   font: bold 3.2rem/3.2rem 'Mont', Arial, sans-serif
  }

  h3, .page-template .title h3 {
   font: bold 2.5rem/2.5rem 'Mont', Arial, sans-serif;
  }

  h4, .page-template .title h4 {
   font: bold 1.6rem/1.6rem 'Mont', Arial, sans-serif;
  }


  h5 .page-template .title h5 {
   font: bold 1.2rem/1.2rem 'Mont', Arial, sans-serif;
  }

}

@media screen and (max-width: 768px) {

  h1, .page-template .title h1 {
   font: bold 3.5rem/3.5rem 'Mont', Arial, sans-serif
  }

  h2, .page-template .title h2 {
   font: bold 2.7rem/2.7rem 'Mont', Arial, sans-serif
  }

  h3, .page-template .title h3 {
   font: bold 2rem/2.3rem 'Mont', Arial, sans-serif;
  }

  h4, .page-template .title h4 {
    font: bold 1.6rem/1.9rem 'Mont', Arial, sans-serif;
  }


  h5 .page-template .title h5 {
   font: bold 1.1rem/1.1rem 'Mont', Arial, sans-serif;
  }

}

/*--------------------------------------------------------------
  # Elementor and custom
--------------------------------------------------------------*/


/* .container {
  padding-left: 0;
  padding-right: 0;
} */

body .elementor-widget-heading .elementor-heading-title {
  color: #1d4051;
  font-family: "Mont", Arial, sans-serif;
  font-weight: 600;
}

body .elementor-element .elementor-widget-text-editor {
  color: #1d4051;
  font-family: "Mont", Arial, sans-serif;
}


@media screen and (min-width: 1024px) {

  /* .elementor-column-gap-default>.elementor-row>.elementor-column>.elementor-element-populated {
    padding: 0 !important;
  } */

}

/*--------------------------------------------------------------
  # Errors
--------------------------------------------------------------*/

.verror {
  border: 1px solid #f00;
}

.msg-error {
  color: #f00;
}

/*--------------------------------------------------------------
  # Admin Bar
--------------------------------------------------------------*/

/* #wpadminbar {
  position: relative !important;
} */

/*--------------------------------------------------------------
  # Gallery
--------------------------------------------------------------*/

#gallery {
  position: relative;
  overflow: initial;
}

#gallery .control {
  cursor: pointer;
  z-index: 999;
   position: absolute;
}

#gallery .control.previous {
  left: 0px;
  top: 217px;
}

#gallery .control.next {
  right: 0px;
  top: 217px;
}

#gallery .item {
  /* display: none; */
  float: left;
  overflow: hidden;
  height: 0;
  opacity: 0;
  transition: opacity 1s;
}
#gallery .item.current {
  /* display: block; */
  height: initial;
  opacity: 1;
}

#gallery #thumbnails {
  margin: 11px 0 77px 0;
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

#gallery #thumbnails .thumb-img {
  width: 41px;
  margin: 0 3px;
  cursor: pointer;
}

#gallery #thumbnails .thumb-img.current {
  opacity: .5;
}

#gallery .image {
  max-height: 600px;
  max-width: 81%;
}
#gallery .image img {
  width: 100%;
}
#gallery .description {
  font: normal 18px/21px 'Mont', Arial, sans-serif;
  margin-top: 27px;
}


@media screen and (max-width: 870px) {

  #gallery .control img {
   width: 27px;
  }

}


/*--------------------------------------------------------------
  # Overlay
--------------------------------------------------------------*/

#overlay {
  background-color: rgba(0,0,0,.5);
  color: #fff;
  position: fixed;
  top: 0;
  left: 0px;
  padding: 19px 38px;
  font-size: 37px;
  display: none;
  width: 100%;
  height: 100%;
  line-height: 600px;
  text-align: center;
  z-index: 99999;
}

/*--------------------------------------------------------------
  # Loader https://projects.lukehaas.me/css-loaders/
--------------------------------------------------------------*/

.loader,
.loader:before,
.loader:after {
  background: #ffffff;
  -webkit-animation: load1 1s infinite ease-in-out;
  animation: load1 1s infinite ease-in-out;
  width: 1em;
  height: 4em;
}
.loader {
  color: #ffffff;
  text-indent: -9999em;
  margin: 88px auto;
  position: relative;
  font-size: 11px;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}
.loader:before,
.loader:after {
  position: absolute;
  top: 0;
  content: '';
}
.loader:before {
  left: -1.5em;
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}
.loader:after {
  left: 1.5em;
}
@-webkit-keyframes load1 {
  0%,
  80%,
  100% {
    box-shadow: 0 0;
    height: 4em;
  }
  40% {
    box-shadow: 0 -2em;
    height: 5em;
  }
}
@keyframes load1 {
  0%,
  80%,
  100% {
    box-shadow: 0 0;
    height: 4em;
  }
  40% {
    box-shadow: 0 -2em;
    height: 5em;
  }
}

/*--------------------------------------------------------------
  # Loader 2
--------------------------------------------------------------*/

.loader-2:after {
  -webkit-animation: load1 1s infinite ease-in-out;
  animation: load1 1s infinite ease-in-out;
  width: 150px;
  text-align: left;
  display: inline-block;
  content: '..';
}



@-webkit-keyframes load1 {
  0% {
    content: '';
   }
  25% {
    content: '..';
   }
  50% {
    content: '....';
  }
  75% {
    content: '......';
  }
  100% {
    content: '........';
  }
}
@keyframes load1 {
  0% {
    content: '';
  }
  25% {
    content: '..';
   }
  50% {
    content: '....';
  }
  75% {
    content: '......';
  }
  100% {
    content: '........';
  }
}


/*--------------------------------------------------------------
  # Grid
--------------------------------------------------------------*/
.row-flex {
  display: flex;
}

.row-flex .col {
  flex-grow: 1; /* default 0 */
}

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

.form input,
.form textarea {
  background-color: transparent;
  border:none;
  color:#fff;
  border-bottom: 1px solid #fff;
  padding: 17px 0 4px 0;
}

.form .form-group {
  margin-bottom: 51px;
}
.form label,
.form  ::placeholder {
  font: bold 1.4rem/2.1rem 'Mont', Arial, arial, sans-serif;
  color: #fff;
}

.form input:active,
.form textarea:active,
.form input:focus,
.form textarea:focus {
  background-color: transparent;
  border:none;
  color:#fff;
  border-bottom: 1px solid #fff;
  outline: none;
}

.form textarea {
  border:none !important;
  border-top: 1px solid #fff !important;
  background-color: #264658 !important;
  padding-top: 11px;
  height: 211px;
}

.form input[type="submit"] {
  background-color: transparent;
  color:#fff;
  border: 1px solid #fff;
  padding: 17px 27px;
  cursor: pointer;
  display: inline-block;
  width: initial;
  min-width: 257px;
}

.form .button-custom.full {
  width: 100%;
}

.form a {
  color:#9c9c9c;
}

.form .verror {
  border: none;
  border-bottom: 1px solid #f00 !important;
}

.form .msg-error {
  font: 400 .9rem/.9rem 'Mont', Arial, arial, sans-serif;
}


/*--------------------------------------------------------------
  # Socials
--------------------------------------------------------------*/

.socials  a {
  display: inline-block;
  width: 47px;
  height: 41px;
  background: url(/wp-content/uploads/2020/04/footer-socials.png) no-repeat;
  background-size: cover;
  margin-left: 44px;
}

.socials a.facebook {
  background-position: 8px 0px;
}

.socials a.instagram {
  background-position: -69px 0px;
}

.socials a.linkedin {
  background-position: -93px 0px;
}

.socials a.youtube {
  background-position: -149px 0px;
}

.socials a.twitter {
  background-position: -242px 0px;
}

.socials a.linkedin {
  background-position: -333px 0px;
}

/*--------------------------------------------------------------
  # Header
--------------------------------------------------------------*/

#header {
  /* position: -webkit-sticky;
  position: sticky;
  top: 0; */
  background-color: transparent;
  z-index: 9999;
  height: 0;
}

#nav-bar {}

#.logo-wrapper {
  width: 12%;
  z-index: 9999;
  vertical-align: top;
  text-align: center;
}

#logo {
  width: 101px;
  height: 107px;
  display: inline-block;
  background-size: 100%;
  background-repeat: no-repeat;
}

#logo-responsive-wrapper {
  text-align: center;
  position: relative;
  background-color: #fff;
  z-index: 9999;
}

#logo-responsive {
  display: none;
  margin: 7px 0;
  width: 37%;
}

#buttons-responsive {
  background-color: #1d4051;
  display: none;
  position: relative;
  height: 43px;
  z-index: 999;
}

.logo-responsive {
  float: right;
  margin: 0 7px 0 0;
  display: inline-block;
  color: #fff;
  font-size: 31px;
}

#button-open-menu {
  width: 36px;
  position: relative;
  margin: 5px 0 0 3px;
  padding: 0;
  cursor: pointer;
}

header.header-blue #logo {
  background-image: url(/wp-content/uploads/2020/03/logo-blue.png) !important;
}

@media screen and (max-width: 768px) {

  #logo-responsive {
    display: inline-block;
    margin: 11px 0;
  }

}

/*--------------------------------------------------------------
  # Page
--------------------------------------------------------------*/

#page {
  padding: 47px 0 0 0;
}

#page.container #page-content {
  padding: 47px 0 0 0;
}

/*
#page-content.container {
  padding: 0 0 0 0;
} */


@media screen and (max-width: 1280px) {

  #page {
    padding: 47px 15px;
  }

}



/*--------------------------------------------------------------
  # Users Form
--------------------------------------------------------------*/


#dialog-modal.partners-dialog {
  padding: 0;
  outline: none;
  background-color: #fff;
  box-shadow: 2px 3px 8px 0px #d6d1d1;
  overflow: hidden;
}

.ui-dialog.ui-widget:focus,
.ui-dialog.ui-widget:active {
  outline: none;
  border: none;
}

#dialog-modal.partners-dialog #dialog-title {
  background: #fff;
  color: #000;
  text-align: center;
  margin: 19px 0 11px 0;
  text-transform: uppercase;
  font: bold 26px/31px 'Mont', sans-serif;
  padding: 0;
}
/* registration */
#dialog-modal.partners-dialog.registration {
   height: initial !important;
   min-height: 410px !important;
   padding: 21px 65px 31px 65px !important;
}

#dialog-modal.partners-dialog #dialog-close-button {
  /* background-image: url(/wp-content/uploads/2018/10/button-dialog-close.png) !important; */
  background-size: 69% !important;
  background-repeat: no-repeat;
  background-position: center;
}

/*--------------------------------------------------------------
  # Effects
--------------------------------------------------------------*/

.blur-effect {
  filter: blur(17px);
  animation: 1.9s ease-out .7s 1 blurAnimation;
  animation-fill-mode: forwards; /* keep style after animation */
}

.blur-effect.fast {
  filter: blur(17px);
  animation: .6s ease-out .3s 1 blurAnimation;
  animation-fill-mode: forwards; /* keep style after animation */
}

@keyframes blurAnimation {
  0% {
    filter: blur(17px);
  }
  100% {
    filter: blur(0);
  }
}

/*--------------------------------------------------------------
  # Main Menu
--------------------------------------------------------------*/

.main-menu {
  vertical-align: top;
  display: inline-block;
  width: 100%;
}

.main-menu .menu-main-menu-container {
  width: 100%;
}

.main-menu {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: absolute;
  z-index: 999999;
  margin-top: 41px;
}

.main-menu .left {
  width: 39%;
  margin-left: 5%;
}

.main-menu .right {
  width: 39%;
  margin-right: 5%;
}

.menu-main-menu li {
  list-style: none;
  display: inline-block;
  vertical-align: middle;
  margin: 0;
}


.menu-main-menu > li {
  margin-top: 0;
  line-height: 60px;
  box-sizing: border-box;
  position: relative;
}

.menu-main-menu > li.menu-item-has-children > a:after {
  content: url(/wp-content/uploads/2020/02/arrow-menu-children.png);
  margin-left: 10px;
  vertical-align: text-top;
}


/* .menu-main-menu li li {
  list-style: none;
  display: inline-block;
  vertical-align: middle;
  max-width: initial;
} */

.menu-main-menu li img {
  max-width: 98px;
  max-height: 68px;
}

/* .menu-main-menu li li.current-menu-item,
.menu-main-menu li li:hover {
  background-color: #fff;
  box-sizing: border-box;
}

.menu-main-menu li li.current-menu-item a,
.menu-main-menu li li:hover a {
  color: #000;
}

.menu-main-menu li li li.current-menu-item:not(:hover) {
  border-right: 4px solid transparent;
} */

.menu-main-menu li a {
  font: normal 28px/28px 'Mont', Arial, sans-serif;
  display: inline-block;
  vertical-align: middle;
  /* padding: 0 34px 0 36px; */
  padding-bottom: 3px;
  text-align: center;
  text-decoration: none;
  color: #fff;
}

.menu-main-menu li a {
   -webkit-touch-callout: none; /* iOS Safari */
     -webkit-user-select: none; /* Safari */
      -khtml-user-select: none; /* Konqueror HTML */
        -moz-user-select: none; /* Firefox */
         -ms-user-select: none; /* Internet Explorer/Edge */
             user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome and Opera */
}

.header-blue .menu-main-menu li a {
  color: #1d4051;
}

.header-blue .menu-main-menu li a:hover {
  color: #939393;
}


.menu-main-menu li.current-menu-item a,
.menu-main-menu li.current-menu-item a:hover {
  border-bottom: 4px solid #fff;
  font-weight: bold;
}

.header-blue .menu-main-menu li.current-menu-item a,
.header-blue .menu-main-menu li.current-menu-item a:hover {
  border-bottom: 4px solid #1d4051;
}

.menu-main-menu > li:first-child a {
  padding-left: 0;
}

.menu-main-menu > li:last-child a {
  padding-right: 0;
}

/* .menu-main-menu li li a {
  text-align: left;
  padding: 15px 14px;
} */

.menu-main-menu {
  position: relative;
  font-size: 0;
  display: flex;
  justify-content: space-between;
}

/* .menu-main-menu .sub-menu {
  position: absolute;
  left: 0px;
  background: #fff;
  min-width: 111%;
  padding: 0;
  margin-left: 0;
  margin-top: 0;
  white-space: nowrap;
  z-index: 999;

  overflow: hidden;

  height: 0;
  opacity: 0;
  transition: opacity .7s

}

.menu-main-menu .sub-menu li {
  position: relative;
  display: block;
  line-height: 21px;
  margin: 0;
}
.menu-main-menu > li > .sub-menu > li {
  min-width: 100%;
  max-width: initial;
}

.menu-main-menu .sub-menu .sub-menu {
  min-width: 70%;
}

.menu-main-menu .sub-menu li li {
  border-bottom: 2px solid #f4f4f4;
  text-align: center;

}

.menu-main-menu .sub-menu li:hover {
  background: #56b963;
}

.menu-main-menu .sub-menu li a {
  text-transform: none;
  font: normal 14px/18px 'Mont', Arial, sans-serif;
  text-transform: uppercase;
  display: inline-block;
  width: 100%;
  text-align: center;
}

.menu-main-menu .sub-menu li li a {
  text-transform: none;
  font: bold 12px/15px 'Mont', sans-serif;
}

.menu-main-menu .sub-menu li li:hover {
  border-bottom: 2px solid #56b963;
}

.menu-main-menu .sub-menu li:hover > a {
  color: #fff;
}

.menu-main-menu .menu-item:hover > .sub-menu {
  opacity: 1;
  height: initial;
  overflow: initial;
}

.menu-main-menu > .menu-item:hover > .sub-menu > li:first-child {
  box-shadow: inset 0px 4px 3px 0px #d2cfcf;
}


.menu-main-menu .sub-menu .sub-menu {
  position: absolute;
  top: 0;
  left: 100%;
  margin-top: initial;
  display: none;
}


.menu-main-menu .sub-menu .menu-item:hover .sub-menu {
  display: block;
} */

@media screen and (max-width: 1400px) {

  .main-menu .left {
    width: 43%;
    margin-left: 1%;
  }

  .main-menu .right {
    width: 43%;
    margin-right: 1%;
  }

  .menu-main-menu li a {
    font: normal 25px/25px 'Mont', Arial, sans-serif;
   }

   .header-blue .menu-main-menu li.current-menu-item a,
   .header-blue .menu-main-menu li.current-menu-item a:hover {
     border-bottom: 2px solid #1d4051;
   }

}

@media screen and (max-width: 1280px) {

  .menu-main-menu li a {
    font: normal 21px/21px 'Mont', Arial, sans-serif;
    padding: 0 7px;
  }

}

@media screen and (max-width: 1024px) {

  /* menus */

  .main-menu {
    background-color: #fff;
    padding: 0;
    margin: 0;
    float: none;
    width: 100%;
    position: absolute;
    display:block;
    z-index: 999;
    top: initial;
    max-height: 0px;
    overflow: hidden;
    height: initial;
    -webkit-transition: max-height .5s ease-in;
    -moz-transition: max-height .5s ease-in;
    -o-transition: max-height .5s ease-in;
    transition: max-height .5s ease-in;
-    box-shadow: 3px 4px 9px 0px black;
  }

  .main-menu.open {
    max-height: 1300px; /* o initial */
  }

  .main-menu .left,
  .main-menu .right {
    width: 100%;
    margin: 0;
  }

  .menu-main-menu {
    display: block;
  }

  .menu-main-menu > .menu-item:hover > .sub-menu > li:first-child {
    box-shadow: none;
  }

  .menu-main-menu > li {
    line-height: initial;
  }

  .menu-main-menu > li:first-child a {
    padding-left: 17px;
  }


  .main-menu .menu-item {
    display: block;
    width: 100%;
    max-width: initial;
  }

  .main-menu .menu-item a {
    padding: 11px 17px;
    color: #1d4051;
    width: 100%;
  }

  .menu-main-menu .sub-menu li {
    height: initial;
  }

  .menu-main-menu li li {
    padding-left: 17px;
  }

  .menu-main-menu .sub-menu li li,
  .menu-main-menu .sub-menu li li:hover {
    border-bottom: 2px solid transparent;
    text-align: center;
-    background: transparent;
  }

  .menu-main-menu .sub-menu li li:hover > a {
    color: #c31e1f;
  }

  .menu-main-menu  li a {
    font: normal 21px/21px 'Mont', Arial, sans-serif;
  }

  .menu-main-menu .sub-menu li a {
    font: normal 16px/19px 'Mont', Arial, sans-serif;
    text-align: left;
-   padding-left: 31px;
-   color: #000;
  }

  .menu-main-menu .sub-menu .sub-menu {
    position: relative;
    top: 0;
    left: 0;
  }

  .main-menu .sub-menu .sub-menu .menu-item {
    margin-left: 31px;
 }

 .menu-main-menu > .menu-left {
    float: none;
  }

  .header-blue .menu-main-menu li.current-menu-item a,
  .header-blue .menu-main-menu li.current-menu-item a:hover {
    border-bottom: none;
  }

  /* submenus */


  .main-menu .sub-menu {
    display: block !important;
    position: relative;
    height: initial;
    top: 0;
    opacity: 1;
  }

  .main-menu .menu-item {
    background-color: #fff;
  }

  .main-menu .sub-menu .menu-item {
    width: 100%;
    box-sizing: border-box;
    white-space: initial;
    background-color: #fff;
  }

  /* fi submenus */

}


/*--------------------------------------------------------------
  # Dialog
--------------------------------------------------------------*/

[aria-describedby="dialog-modal"] {
  z-index: 10000 !important;
}

.ui-dialog {
  padding: 0  !important;
}
.ui-widget.ui-widget-content {
  border: none  !important;
}
.ui-widget-overlay {
  position: absolute;
  top: 0;
  width:100%;
  height: 100%;
  z-index: 9999 !important;
}

.page-template-page-partners .ui-widget-overlay {
  display: none;
}

#dialog-close-button {
  position: absolute;
  right: 33px;
  top: 17px;
  z-index: 9;
  width: 34px;
  height: 34px;
  border: none;
  cursor: pointer;
  background-repeat: no-repeat;
  background-position: center;
}

.ui-dialog .ui-dialog-content {
  overflow: visible;
}

#dialog-title {
  background: #fff;
  color: #333333;
  text-align: center;
  margin: 62px 0 11px 0;
  font: normal 42px/42px 'Mont', sans-serif;
}

.ui-dialog-titlebar {
  display: none;
}

.text.ui-widget-content {
  margin-bottom: 21px;
}

/*--------------------------------------------------------------
  # Contact
--------------------------------------------------------------*/
.page-contact .title {
  margin-top: 11px;
}

.page-contact .subtitle {
  margin-top: 81px;
  font: normal 22px/22px 'Mont', sans-serif !important;
}

#image-contact {
  width: 100%;
  height: 300px;
  overflow: visible;
}

#image-contact img {
  width: 97%;
}
@media screen and (max-width: 1024px) {

  .page-contact .title br {
    display: none;
  }

}

@media screen and (max-width: 576px) {

  #image-contact {
    /* display: none; */
   height: initial;
  }

  .page-contact .subtitle {
    margin-top: 31px;
  }

}

/*--------------------------------------------------------------
  # Pagination
--------------------------------------------------------------*/


#paginator {
  margin: 21px 0;
}

.pagination {
  text-align:center;
}

.pagination > li {
  display: inline-block;
  margin: 0;
}

.pagination li a {
  border:none;
  margin:0 2px;
  color:#58ca68;
  border-radius: 0;
  font-size: 17px;
  padding: 8px 14px;
  width: 61px;
  text-align:center;
  text-decoration: none;
  border: 1px solid #58ca68;
}

.pagination .prev-page,
.pagination .next-page {
  border: none;
  color:#999;
  font-size: 32px;
}


#paginator-object.pagination li a {
  text-decoration: none;
}

.pagination li:hover a,
.pagination li.active:hover a {
  background: none;
}

.pagination li.active a,
.pagination li.active:hover a {
  background: #58ca68;
  color: #fff;
}

/*--------------------------------------------------------------
  # Form Contact
--------------------------------------------------------------*/

#form-contact {
  margin-top: 41px;
}


#form-contact #name {
  margin-right: 1%;
}

#form-contact-send {
  text-align: center;
  background-color: #c31e1f;
  color: #fff;
  font: normal 21px/21px 'Mont', sans-serif;
  padding: 26px 27px;
  display: inline-block;
  margin: 9px 0 0 0;
  width: 100%;
}

#form-contact #message {
  height: 201px;
}

/*--------------------------------------------------------------
  # Search
--------------------------------------------------------------*/

.search .page-header {
  margin-bottom: 41px;
}

.search .page-content {
  margin-bottom: 21px;
}

.search #search-form {
  margin-top: 21px;
}

.search .search-button {
  background-color: #777;
  cursor: pointer;
  color: #fff;
}

/*--------------------------------------------------------------
  # Form Search
--------------------------------------------------------------*/

#form-search-wrapper .search-form {
  width: 177px;
  display: inline-block;
}

#form-search-wrapper .search-form label {
  display: inline-block;
  width: 89%;
}

#form-search-wrapper .search-form .search-field {
  border: none;
  padding: 2px 7px;
  box-sizing: border-box;
  background: #000;
  color: #fff;
  width: 136px;
  font: normal 15px/15px 'Mont', Arial, sans-serif;
}

#form-search-wrapper .search-form .search-field:focus,
#form-search-wrapper .search-form .search-field:active {
  outline: none;
}

#form-search-wrapper .search-form .search-submit {
  display: inline-block;
  vertical-align: middle;
  margin: 0;
  padding: 0;
  width: 16px;
  height: 18px;
  margin-left: -23px;
  color: transparent;
  font-size: 0;
  border: none;
  background: url(/wp-content/uploads/2020/01/lupa.png) no-repeat;
  background-position: center;
  background-size: 100%;
}


#form-search .search-form {
  width: 177px;
}

#form-search .search-form .search-keyword {
  border: 1px solid #bbb;
  padding: 9px 12px 9px 40px;
  box-sizing: border-box;
  background: #fff;
  font: normal 14px/14px 'Mont', sans-serif;
}

#form-search .search-form .search-submit {
  display: inline-block;
  vertical-align: middle;
  margin: 0;
  padding: 0;
  width: 10%;
  margin-right: -30px;
  height: 15px;
  color: transparent;
  font-size: 0;
  border: none;
  background: url(/wp-content/uploads/2019/01/form-buscar-lupa-2.png) no-repeat #fff;
  background-position: center;
  background-size: 88%;
  z-index: 2;
  position: relative;
}


/*--------------------------------------------------------------
  # Banner cover   http://nicolasgallagher.com/flexible-css-cover-images/
--------------------------------------------------------------*/

.FlexEmbed {
  display: block;
  overflow: hidden;
  position: relative;
}

.FlexEmbed:before {
  content: "";
  display: block;
  width: 100%;
}

.FlexEmbed--3by1:before {
  padding-bottom: 33.33333%;
}

.FlexEmbed--2by1:before {
  padding-bottom: 50%;
}

.FlexEmbed--16by9:before {
  padding-bottom: 56.25%;
}

.FlexEmbed--4by3:before {
  padding-bottom: 75%;
}

.CoverImage {
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  margin: 0 auto 1em;
  /* max-height: 300px; */
  max-width: 100%;
}

/* .CoverImage.h700 {
  max-height: 739px;
}

.CoverImage.h500 {
  max-height: 487px;
} */


#banner-cover {
  margin-top: 0;
  position: relative;
}

.wrapper-banner-title {
  position: absolute;
  top: 0;
  width:100%;
  height: 100%;
  display: flex;
  z-index: 9;
}

.banner-title {
  font: normal bold 93px/93px 'Mont', Arial, sans-serif;
  color: #fff!important;
  text-align: center;
  align-self: center;
  width: 100%;
  text-shadow: 0 0 0 #fff;
  opacity: 0;
  transition: text-shadow 2.1s, opacity 1.9s;
}

.banner-title.shadow {
  opacity: 1;
  /* text-shadow: 11px 4px 15px #000;
  text-shadow: 0px 0px 3px #444; */
  text-shadow: 0px 0px 5px #1d4051;
}

.banner-title small {
  display: block;
  font: normal 33px/33px 'Mont', Arial, sans-serif;
}

.banner-mask {
  position: absolute;
  top: 0;
  width:100%;
  height: 100%;
  background-color: rgba(0, 0, 0, .3);
}

@media screen and (max-width: 1280px) {
  .banner-title {
    font: bold 3.5rem/3.5rem 'Mont', Arial, sans-serif;
  }
}


/*--------------------------------------------------------------
  # Languages
--------------------------------------------------------------*/

#languages-wrapper {
  line-height: 12px;
  display: inline-block;
  color: #222;
  text-align: center;
  vertical-align: text-bottom;
  margin-top: 0;
}

#languages-wrapper #languages-menu  {
  display: inline-block;
  width: 100%;
  position: relative;
}

#languages-wrapper #languages-menu  a {
  display: inline-block;
  color: #fff;
  text-transform: uppercase;
}

#languages-menu ul {
  display: none;
  position: absolute;
  left: 0px;
  background: #000;
  width: initial;
  padding: 0;
  white-space: nowrap;
}

#languages-menu ul a {
  color: #fff !important;
  padding: 4px 7px;
}


#languages-wrapper:hover ul {
  display: block;
}


/*--------------------------------------------------------------
  # Main content
--------------------------------------------------------------*/

#main {
  display: block;
  margin: 0 0 41px 0;
  position: relative;
  z-index: 1;

}

.page #main {
  display: block;
  margin: 200px 0 41px 0;
  position: relative;
  z-index: 99;
  overflow: hidden;
}

.home #main {
  margin-top: 0;
}

#wrapper-content {
  min-height: 300px;
}

#main-content {
  margin: 11px 0;
}

/*--------------------------------------------------------------
  # Newsletter
--------------------------------------------------------------*/
#newsletter-form-wrapper {
  background-color: #932423;
  padding-top: 17px;
  position: absolute;
  right: 0;
  bottom: 175px;
  left: 0;
}

#newsletter-form-wrapper h2 {
  color: #fff;
}

#newsletter-form {
  margin-top: 28px;
  margin-bottom: 27px;
}


#newsletter-text {
  font: normal 12px/16px 'Mont', Arial, sans-serif;
  color: #fff;
  margin: 31px 0 7px 0;
}

#newsletter-form .form-wrapper {
  margin-top: 31px;
}

#newsletter-form .col {
  padding: 0;
}

#newsletter-form .btn {
  background: #bc1a1a;
  border: none;
  padding: 12px 12px;
  font-size: 14px;
  border-radius: 0 4px 4px 0;
  color: #fff;
  text-transform: lowercase;
  font: normal 16px/16px 'Mont', Arial, sans-serif;
}

#newsletter-form input {
  border: none;
  padding: 12px;
  width: 100%;
  margin-bottom: 12px;
  border-radius: 4px 0 0 4px;
}

#newsletter-form-wrapper .content-box{
  margin-top: 47px;
}


/*--------------------------------------------------------------
  # Footer
--------------------------------------------------------------*/

#footer {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  color: #fff;
  width: 100%;
  background-color: #1d4051;
  z-index: 1;
}

#footer .container {
  height: 100%;
  width: 82.5%;
  margin: 0 8.7%;
}

#footer a {
  color: #fff;
}

#footer .top-footer {
  padding: 196px 0 51px 0;
}

#footer .wrapper-bottom-footer {
  padding-bottom: 44px;
}

#footer .bottom-footer {
  border-top: 1px solid #fff;
  padding-top: 17px;
}

#footer .menu-link-footer {
  padding-top: 39px !important;
}

#footer .menu-link-footer .text {
  display: block;
  margin-top: 11px;
  font-weight: bold;
}

#footer .align-middle {
  vertical-align: middle;
}


#footer #foooter-socials {
  text-align: right;
}

#footer .links a {
  font: normal 19px/19px 'Mont', Arial, sans-serif;
  text-transform: uppercase;
  margin-right: 11px;
}

#footer .bottom-footer .links a {
  font: normal 14px/14px 'Mont', Arial, sans-serif;
}

#footer .bottom-footer  .copyright {
  color: #fff;
  font: normal 14px/14px 'Mont', Arial, sans-serif;
  text-align: right;
}

#footer.footer-blue {
  color: #1d4051;
  background-color: #fff;
}
#footer.footer-blue .links a {
  color: #1d4051;
}
#footer.footer-blue .menu-link-footer .text {
  color: #1d4051;
}

#footer.footer-blue .menu-link-footer:hover .image {
  color: #1d4051;
  animation: menuLinkFooterAnimation 1s infinite ease-in-out;
}

/* @keyframes menuLinkFooterAnimation {
  0%   {opacity: 1;}
  50%  {opacity: 0;}
  100%  {opacity: 1;}
} */


#footer.footer-blue .bottom-footer {
  border-top: 1px solid #1d4051;
}

#footer.footer-blue .socials  a {
  background-image: url(/wp-content/uploads/2020/04/footer-socials-blue.png);
}

#footer.footer-blue .bottom-footer  .copyright {
    color: #1d4051;
}


@media screen and (max-width: 768px) {

  #footer .top-footer .links a {
    font: normal 15px/15px 'Mont', Arial, sans-serif;
    display: inline-block;
    margin-bottom: 5px;
  }

  #footer .bottom-footer  .copyright {
    text-align: center;
    margin-top: 17px;
  }

  #footer .wrapper-bottom-footer {
    padding-bottom: 21px;
  }

  #footer .top-footer {
    padding: 77px 0 31px 0;
  }

  #footer #foooter-socials,
  #footer .links,
  #footer .copyright {
    text-align: center;
  }

  #footer .socials  a {
    margin: 0 7px;
  }

}

/*--------------------------------------------------------------
  # checkbox/radio custom
--------------------------------------------------------------*/
.checkbox-custom,
.radio-custom {
  display: none !important;
}

.checkbox-custom + label,
.radio-custom + label {
  margin: 0 11px 0 5px;
  position: relative;
  cursor: pointer;
}

.checkbox-custom + label span,
.radio-custom + label span {
  display: inline-block;
  width: 90%;
  vertical-align: top;
}

.checkbox-custom + label:before,
.radio-custom + label:before {
  content: ' ';
  width: 15px;
  height: 15px;
  vertical-align: 0;
  border-radius: 0;
  border: 1px solid #fff;
  display: inline-block;
  margin-right: 11px;
}

.radio-custom + label:before {
  content: ' ';
  width: 12px;
  height: 12px;
  vertical-align: -1px;
  border-radius: 50%;
  border: 1px solid #fff;
  display: inline-block;
  margin-right: 11px;
}

.checkbox-custom:checked + label:before,
.radio-custom:checked + label:before {
  content: ' ';
  padding: 1px;
  background-color: #fff;
}



/*--------------------------------------------------------------
  # Breadcrumb
--------------------------------------------------------------*/

#breadcrumbs {
  margin: 0 0 14px 0;
  padding: 0;
  font: normal 15px/15px 'Mont', Arial, sans-serif;
  color: #7e7e7e;

}

#breadcrumbs a {
  font: normal 16px/16px 'Mont', Arial, sans-serif;
  color: #000;
}

#breadcrumbs-wrapper {
  margin-bottom: 49px;
}

.breadcrumb-element-wrapper {
  overflow: hidden;
  float: left;
  margin-right: 1px
}

.breadcrumb-element-wrapper .cat {
  padding: 13px 36px 14px 28px;
  font: normal 11px/14px 'Mont', Arial, sans-serif;
  line-height: 1;
  border: 0;
  -webkit-appearance: none;
  color: #000;
  display: inline-block;
  text-transform: initial;
}
.breadcrumb-element-wrapper select.cat {
  background: url(/wp-content/uploads/2019/01/breadcrumb-flecha.png) no-repeat #ededed;
  background-position: 91%;
}

.breadcrumb-element-wrapper .cat:active,
.breadcrumb-element-wrapper .cat:focus {
  border:0px;
  outline:0px;
}
.breadcrumb-element-wrapper .cat option {
  padding: 13px 28px;
  text-align: center;
}

.breadcrumb-element-wrapper .cat option:hover {
  background-color: #c31e1f;
  color: #fff;
}

 /*
 !important perque en cas que en quedi un select nomes
 predomina sobre els estils del "last-of-type select"
*/

.breadcrumb-element-wrapper:first-of-type .cat {
  border-radius: 11px 0 0 11px;
  /*  min-width: 197px;
  background-color: #ededed !important;
  color: #000 !important;  */
}

.breadcrumb-element-wrapper .cat.cat2 {
  background-color: #c6c6c6;
}

.breadcrumb-element-wrapper:last-of-type .cat {
  background-color: #c31e1f;
  border-radius: 0 11px 11px 0;
  color: #fff;
  /* min-width: 167px; */
}


.breadcrumb-element-wrapper option {
  background: #fff;
  color: #000;
}

/*--------------------------------------------------------------
  # Home
--------------------------------------------------------------*/

.home #banner-cover {
  margin-bottom: 0;
}

.avocados-home  {
  overflow: hidden;
}

#video-banner-home {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

.title-home {
  font: italic bold 64px/64px 'Mont', Arial, sans-serif;
  margin: 57px 0;
  text-align: center;
}

.link-see-more a,
 a.link-see-more,
 a.link-get-more,
 a.link-show-more,
 a.link-show-less {
  font: bold 24px/24px 'Mont', Arial, sans-serif;
  color: #1d4051;
  margin-bottom: 88px;
  display: inline-block;
}

.link-see-more a:before,
a.link-see-more:before {
  margin-right: 11px;
  background-image: url(/wp-content/uploads/2020/03/arrow-discover-more.png);
  background-repeat: no-repeat;
  background-size: 100%;
  display: inline-block;
  width: 16px;
  height: 16px;
  content: "";
}

.link-see-more.text-white a:before,
a.link-see-more.text-white:before {
   /* filter: brightness(100); */
   background-image: url(/wp-content/uploads/2020/04/arrow-discover-more-white.png);
}

.link-see-more a:hover:before,
a.link-see-more:hover:before {
  animation: linkSeeMoreAnimation 1s infinite ease-in-out;
}

@keyframes linkSeeMoreAnimation {
  0%   {opacity: 1;}
  50%  {opacity: 0;}
  100%  {opacity: 1;}
}

a.link-get-more,
a.link-show-more,
a.link-show-less {
  font: bold 24px/24px 'Mont', Arial, sans-serif;
  color: #1d4051;
  margin-bottom: 88px;
  display: inline-block;
}

a.link-get-more,
a.link-show-more,
a.link-show-less {
   -webkit-touch-callout: none; /* iOS Safari */
     -webkit-user-select: none; /* Safari */
      -khtml-user-select: none; /* Konqueror HTML */
        -moz-user-select: none; /* Firefox */
         -ms-user-select: none; /* Internet Explorer/Edge */
             user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome and Opera */
}

a.link-get-more:before,
a.link-show-more:before,
a.link-show-less:before {
  margin-right: 11px;
  background-image: url(/wp-content/uploads/2020/03/cross-get-more.png);
  background-repeat: no-repeat;
  background-size: 100%;
  display: inline-block;
  width: 16px;
  height: 17px;
  content: "";
}

a.link-show-less:before {
  background-image: url(/wp-content/uploads/2020/03/icon-get-less.png);
}

/*--------------------------------------------------------------
  # Our technologies
--------------------------------------------------------------*/


#our-technology-top h2 {
  opacity: 0;
  color: #939393;
  animation: 4s ease-out 0s 1 textOurTechnologyTop;
  animation-fill-mode: forwards; /* keep style after animation */
}

@keyframes textOurTechnologyTop {
  0% {
    opacity: 0;
    color: #939393;
  }
  50% {
    opacity: 1;
    color: #939393;
  }
  100% {
    opacity: 1;
    color: #1d4051;
  }
}


#our-technology-top .text100 h2 {
  font: bold 5vw/5vw 'Mont', Arial, sans-serif;
  margin: 0 0 1vw 0;
}


#our-technology-process .process-box .elementor-image-box-img {
  width: initial;
}

#our-technology-process .process-box img {
  width: initial;
  height: 107px !important;
  margin-bottom: 57px;
}

#our-technology-process .process-box {
  color: #999;
  font: bold 1.5rem/2.1rem 'Mont', Arial, sans-serif;
}

#our-technology-process .process-box h3 {
  color: #1d4051;
  font: normal 1.5rem/1.7rem 'Mont', Arial, sans-serif;
  padding-bottom: 37%;
}

#our-technology-process .process-box:first-child h3,
#our-technology-process .process-box:last-child h3 {
  font: bold 1.5rem/1.7rem 'Mont', Arial, sans-serif;
}

#our-technology-process .process-box .line .elementor-text-editor {
  color: transparent;
  background: url(/wp-content/uploads/2020/03/our-technology-line-points.png) no-repeat;
  background-position-x: 15%;
}
#our-technology-process .process-box .line.first .elementor-text-editor {
  background-position-x: -9%;
}

#our-technology-process .process-box .line.last .elementor-text-editor {
   background-position-x: 109%;
}

#our-technology-comparison .img-process {
  text-align: center;
}

#our-technology-comparison .img-process img {
  width: 77%;
}

#banner-cover-video-our-technologies {
  width: 100%;
  position: relative;
  top: 0;
  left: 0;
}
#banner-cover-video-our-technologies video {
  position: absolute;
  top: 0;
  z-index: 0;
}



@media screen and (max-width: 1024px) {

  #our-technology-process .process-box {
    margin-bottom: 31px;
  }

  #our-technology-process .process-box .line {
    background: none;
    display: none;
  }

  #our-technology-process .process-box h3 {
    padding-bottom: 0%;
  }

  #our-technology-process .process-box img {
    margin-bottom: 17px;
  }

}

@media screen and (max-width: 768px) {
  #our-technology-top .text100 h2 {
    font: bold 10vw/10vw 'Mont', Arial, sans-serif;
    margin: 0 0 1vw 0;
  }

  #our-technology-top h2 {
    font: bold 6.5vw/8vw 'Mont', Arial, sans-serif;
    margin: 0 0 1vw 0;
  }


}

/*--------------------------------------------------------------
  # Our services
--------------------------------------------------------------*/
.box-responsibility {
  text-align: center;
  padding: 0 21px;
  color: #939393 !important;
}
.box-responsibility img {
  width: initial;
  height: 105px !important;
}
.box-responsibility h3 {
  font: bold 1.9rem/2.3rem 'Mont', Arial, sans-serif;
  color: #1d4051 !important;
  margin: 43px 0 33px 0;
}
.box-responsibility p {
  font: normal 1rem/1.3rem 'Mont', Arial, sans-serif;
}

.restricted-area {
  cursor: pointer;
}

#dialog-modal.restricted-area-popup {
  padding: 0;
  outline: none;
  background-color: #1d4051;
  overflow: hidden;
  padding: 51px 9%;
  text-align: center;
}

#dialog-modal.restricted-area-popup #dialog-close-button {
  background-image: url(/wp-content/uploads/2020/03/dialog-close-blue-cross.png) !important;
}

#dialog-modal.restricted-area-popup h2,
#dialog-modal.restricted-area-popup h2 a,
#dialog-modal.restricted-area-popup h2 a:focus {
  color: #fff;
  text-decoration: none;
  outline: none;
}

#dialog-modal.restricted-area-popup h2 span {
  font-weight: normal;
}


/*--------------------------------------------------------------
  # Posts
--------------------------------------------------------------*/

.archive .content {
  margin-top: 41px;
}

#list-posts {
  margin-bottom: 41px;
}

#list-posts .content {
  margin-top: 0;
}

.list-posts .title {
  font: normal 30px/30px 'Mont', Arial, sans-serif;
  text-align: inherit;
}

.list-posts .description {
  font: normal 14px/1.95rem 'Mont', Arial, sans-serif;
}

.list-posts .more-info {
  font: italic normal 28px/28px 'Mont', sans-serif;
  color: #58ca68;
  margin-top: 21px;
  display: inline-block;
}

/*--------------------------------------------------------------
  # Single
--------------------------------------------------------------*/
.single .content {
  margin-top: 41px;
}

/*--------------------------------------------------------------
  # History
--------------------------------------------------------------*/

#chronology {
  padding: 0;
  white-space: nowrap;
  overflow: hidden;
  font-size: 0;
}

/* steps */

#chronology #steps-navigation .btn {
  position: absolute;
  top: 49%;
  font: normal 101px/16px "Mont", Arial, sans-serif;
  color: #fff;
  z-index: 9;
  width: 90px;
  height: 50px;
  background-size: 100%;
}

#chronology #steps-navigation .btn:focus,
#chronology #steps-navigation .btn:active {
  text-decoration: none;
  outline: none;
}

#chronology #steps-navigation .btn.disabled {
  opacity: 0;
}

#chronology #steps-navigation .btn:active {
  box-shadow: none;
}

#chronology .btn.prev {
  left: 5%;
  background: url(/wp-content/uploads/2020/03/arrow-prev.png) no-repeat;
}

#chronology .btn.next {
  right: 5%;
  background: url(/wp-content/uploads/2020/03/arrow-next.png) no-repeat;
}

#chronology.text-scroll .btn.next:before {
  /* content: 'Scroll'; desactivat */
  color: #fff;
  font-size: 18px;
  position: absolute;
  top: 0;
  left: 0;
}

/* item chronology */

#chronology .item-chronology {
  position: relative;
  width: 80%;
  display: inline-block;
  white-space: initial;
  vertical-align: top;
  padding: 37px 10% 0 10%;
  font-size: 18px;
  transition: margin-left 1.9s;
  box-sizing: content-box;
  height: 100%;
  overflow: hidden;
  background-size: cover;

}

#chronology .item-chronology  .overlay-history {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  opacity:.5;
  background-color:#1d4051;
  transition: background-color .4s 1s;
}

#chronology .item-chronology .bg-item-chronology {
  position:absolute;
  top:0%;
  left:0%;
  width:100%;
  height:100%;
  background-size: cover;
  background-position: center;
  /* background-size: 120% 120%;
  background-position-x: 50%;
  background-position-y: 50%;
  transition: background-position-x .7s ease-out, background-position-y .7s ease-out ; */
}

#chronology .item-chronology .content-wrapper {
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  /* height: 203px;
  line-height: 217px; */
}

.item-chronology .circular-img {
  width: 77%;
  padding-bottom: 70%;
}

.item-chronology .content-wrapper {
  margin-left: 40%;
  opacity: 0;
  transition: margin-left 2s, opacity 2.5s;
}

.item-chronology.current .content-wrapper {
  margin-left:  0;
  opacity: 1;
}

.item-chronology:first-of-type .content-wrapper {
  margin-left:  0;
  opacity: 0;
  transition: opacity 3s;
}

.item-chronology.current:first-of-type .content-wrapper {
  opacity: 1;
}


.item-chronology .content {
  min-height: 310px;
}

.item-chronology .content .title {
  font: bold 4rem/4rem 'Mont', sans-serif;
  color: #fff;
  margin-bottom: 19px;
}

.item-chronology .content {
  width: 100%;
}


.item-chronology .content .description {
  font: 400 1.4rem/2.1rem 'Mont', Arial, arial, sans-serif;
  display: inline-block;
  color: #fff;
  width: 60%;
}

.item-chronology .content .description h3 {
  font: bold 2.1rem/2.1rem 'Mont', sans-serif;
  margin-bottom: 11px;
  color: #fff;
}

.item-chronology .years {
  position: absolute;
  bottom: 100px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.item-chronology .years .year {
  font: normal 24px/24px 'Mont', Arial, sans-serif;
  color: #fff;
}

.item-chronology .years .year.current {
  font: bold 54px/54px 'Mont', Arial, sans-serif;
}

/* menu */

.item-chronology .main-menu {
  margin-left: -10%;
  margin-top: 0;
  opacity: 0;
  /* transition: margin-left 1.9s, opacity 1s ease-in .2s; */
 transition: opacity 1s ease-in .2s;
}

.item-chronology.current .main-menu {
  opacity: 1;
  margin-left: -10%;
}


.item-chronology .menu-main-menu li a {
  color: #ffff;
}

.item-chronology .menu-main-menu li a:hover {
  color: #939393;
}


.item-chronology .menu-main-menu li.current-menu-item a,
.item-chronology .menu-main-menu li.current-menu-item a:hover {
  border-bottom: 4px solid #fff;
  font-weight: bold;
}

/* menu blue */


.item-chronology .header-blue .menu-main-menu li a {
  color: #1d4051;
}

.item-chronology .menu-main-menu li.current-menu-item a,
.item-chronology .menu-main-menu li.current-menu-item a:hover {
  border-bottom: 4px solid #fff;
  font-weight: bold;
}

.item-chronology .header-blue .menu-main-menu li.current-menu-item a,
.item-chronology .header-blue .menu-main-menu li.current-menu-item a:hover {
  border-bottom: 4px solid #1d4051;
}


/* steps navigation  blue */

#chronology #steps-navigation.text-blue .btn {
  color: #1d4051;
}

#chronology #steps-navigation.text-blue .btn.prev {
  background-image: url(/wp-content/uploads/2020/03/arrow-prev-blue.png);
}

#chronology #steps-navigation.text-blue .btn.next {
  background-image: url(/wp-content/uploads/2020/03/arrow-next-blue.png);
}

.item-chronology.text-blue .content .title {
  color: #1d4051;
}

.item-chronology.text-blue .content .description {
  color: #1d4051;
}
.item-chronology.text-blue .content .description h3 {
  color: #1d4051;
}

/* .item-chronology.text-blue .years .year {
  color: #1d4051;
} */

/* end blue */


@media (max-width: 1400px) {

  .item-chronology .content .title {
    font: bold 4vw/4vw 'Mont', sans-serif;
  }

  .item-chronology .content .description {
    font: 400 1rem/1.4rem 'Mont', Arial, arial, sans-serif;
  }

  .item-chronology .content .description p {
    display: inline;
  }

  .item-chronology .content .description h3 {
    display: block;
  }

  .item-chronology .content .description h3 br {
     display: none;
   }

}

@media (max-width: 1024px) {
  .item-chronology .main-menu {
    display: none;
  }

  .item-chronology .content-wrapper {
    transition: margin-left 1s, opacity 1.7s;
  }

  #chronology .item-chronology {
    transition: margin-left .5s;
  }

}

@media (max-width: 768px) {

  #chronology .content-wrapper {
    height: 91%;
  }

  #chronology #steps-navigation .btn {
    top: 20%;
    font-size: 81px;
    width: 41px;
    height: 20px;
  }

 .item-chronology .content .title {
    font: bold 2rem/2rem 'Mont', sans-serif;
  }

  #chronology .item-chronology {
    width: 90%;
    padding: 7px 5% 0 5%;
  }

  #chronology .item-chronology .content {
    margin-top: 41px;
  }

  .item-chronology .content .description {
    font: 400 1rem/1.4rem 'Mont', Arial, arial, sans-serif;
    width: 100%;
  }

  .item-chronology .content .description h3 {
    font: bold 1.6rem/1.9rem 'Mont', sans-serif;
  }

  #chronology .item-chronology .years {
    flex-wrap: wrap;
    bottom: 3%;
  }

  #chronology .item-chronology .year {
    width: 22%;
    margin-bottom: 11px;
  }

  #chronology .item-chronology .years .year.current {
    font: bold 31px/31px 'Mont', Arial, sans-serif;
  }

}


/*--------------------------------------------------------------
  # Employees
--------------------------------------------------------------*/

#employees {
  margin-bottom: 77px;
}

#employees-invited {
  padding-bottom: 25px;
  margin-bottom: 87px;
  border-bottom: 1px dashed #cccccc;
}

.employees-list .header {
  margin-bottom: 53px;
}

.employees-list .row {
  justify-content: space-between;
  display: flex;
  flex-wrap: wrap;
}

.employees-list .row:before,
.employees-list .row:after {
  content: none;
}

.employees-list .row:after {
  content: ' ';
  flex: 0 0 31.5%;
}

.employees-list .employee {
  padding-bottom: 21px;
  margin-bottom: 31px;
  align-content: start;
  text-align: center;
}

.employees-list .employee {
  margin-bottom: 0;
  transition: margin-bottom .5s;
}

.employees-list .employee.open {
  margin-bottom:230px;
}

.employees-list .employee.open figure {
  position: relative;
}

.employees-list .employee figure:after {
  content: ".";
  color: transparent;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(/wp-content/uploads/2020/02/employee-mask.png) no-repeat;
  background-size: 100%;
  opacity: 0;
  transition: opacity .3s;
}

.employees-list .employee.open figure:after {
  opacity: 1;
}
.employees-list .employee .content {
  height: 120px;
}

.employees-list .employee .info-employee {
  position: absolute;
  left: 0;
  overflow: hidden;
  height: 0;
  opacity: 0;
  padding: 71px 15px 0 15px;
  transition: height .7s, opacity .7s;
  text-align: left;
  font: 400 14px/1.66 'Mont', Arial, arial, sans-serif;
}

.employees-list .employee .info-employee .name {
  font: bold 25px/25px 'Mont', Arial, sans-serif !important;
  margin-bottom: 7px;
  position: relative;
  z-index: 1;
  cursor: pointer;
}

.employees-list .employee .info-employee .info {
  font: bold 25px/25px 'Mont', Arial, arial, sans-serif;
  color: #56b963;
  margin-bottom: 11px;
}

.employees-list .employee .info-employee .description {

}

.employees-list .employee.open .info-employee {
  opacity: 1;
  height: 170px;
  overflow: initial;
  width: 100%;
}

.employees-list .employee.open .info-employee:before {
  font: bold 25px/25px 'Mont', Arial, arial, sans-serif;
  color: #56b963;
  content: url(/wp-content/uploads/2020/01/arrow-green.png);
  position: absolute;
  right:21px;
  top:71px;
}

.employees-list .employee .image,
.employees-list .employee .image img {
  width: 100%;
}

.employees-list .employee .image {
  padding-bottom: 100%;
  height: 0;
  border-radius: 50%;
  margin-bottom: 37px;
}

.employees-list .employee .image img {
  display: none;
}

.employees-list .employee .name {
  font-size: 20px !important;
  margin: 0 0 7px 0;
  padding: 0;
  cursor: pointer;
}

.employees-list .employee .image {
  cursor: pointer;
}

.employees-list .employee .info {
  margin: 0;
  font: normal 16px/19px 'Mont',sans-serif;
}

@media (min-width: 768px) {
  .employees-list .employee {
    flex: 0 0 27%;
  }
}

/* round photo and round mask disabled ----- */
.employees-list .employee .image {
  border-radius: 0;
}
.employees-list .employee.open figure:after {
  opacity: 0;
}
/* end round photo and round mask disabled ----- */


/*--------------------------------------------------------------
  # Questions
--------------------------------------------------------------*/


#list-questions .wrapper-box-questions {
  padding: 111px 0;
  /* min-height: 800px; */
	 min-height: 537px;
}


#list-questions .wrapper-box-questions:nth-child(2n) {
  background-color: #efeef1;
}

#list-questions .box-questions {
  position: relative;
}


#list-questions .box-questions .image {
  position: absolute;
  right: 0;
  width: 39%;
  top: 5%;
}

#list-questions .question {
  margin-bottom: 51px;
  /* width: 99%; */
  width: 77%;
  position: relative;
  color: #1d4051;
}

#list-questions .question .title {
  font: bold 2.8rem/2.8rem 'Mont', Arial, sans-serif;
  color: #1d4051;
  margin-bottom:25px;
  position:relative;
}

#list-questions .question:first-child .title:first-child:before {
  content: ' ';
  width: 69px;
  top: -36px;
  left: 0;
  color: #1d4051;
  height: 2px;
  background-color: #1d4051;
  position: absolute;
}

#list-questions .question .title.text-white {
  color: #1d4051;
}

#list-questions .question .description{
  width: 70%;
}

/* animation description */
#list-questions .normal-questions .question .title {
  cursor: pointer;
  position: relative;

	 margin-bottom:41px;

	-webkit-touch-callout: none; /* iOS Safari */
	 -webkit-user-select: none; /* Safari */
		-khtml-user-select: none; /* Konqueror HTML */
			-moz-user-select: none; /* Firefox */
			 -ms-user-select: none; /* Internet Explorer/Edge */
					 user-select: none; /* Non-prefixed version, currently
																supported by Chrome and Opera */

}

#list-questions .normal-questions .question .title:after {
	position: absolute;
	bottom: -27px;
	left: 0;
  margin-right: 11px;
  background-image: url(/wp-content/uploads/2020/03/cross-get-more.png);
  background-repeat: no-repeat;
  background-size: 100%;
  display: inline-block;
  width: 21px;
  height: 22px;
  content: "";
}

#list-questions .normal-questions .question .title.show:after {
  background-image: url(/wp-content/uploads/2020/03/icon-get-less.png);
}

#list-questions .normal-questions .question .description {
  padding: 0;
  max-height: 0;
  opacity: 0;
  transition: opacity 1.5s, max-height 1.5s;
}

#list-questions .normal-questions .question .title.show + .description {
  padding: 0;
  max-height: 900px;
  opacity: 1;
}
/* fi animation description */

#form-questions {
  margin: 61px 0;
}

#form-questions .title {
  font: bold 2.8rem/2.8rem 'Mont', Arial, sans-serif;
  margin-bottom: 37px;
}

/* Extra questions */

#list-questions .extra-questions:nth-child(2n) {
  background-color: initial;
}
#list-questions .extra-questions {
  padding: 0;
  max-height: 0;
  opacity: 0;
  transition: opacity 1.5s, max-height 2s;
  min-height: initial;
}
#list-questions .extra-questions.show {
  padding: 0;
  max-height: 9000px;
  opacity: 1;
}

#list-questions .extra-questions .question {
  width: 100%;
}

#list-questions .extra-questions .question:first-child .title:first-child:before {
  content: none;
}

#list-questions .extra-questions .question .description {
  width: 100%;
}

/* End Extra questions*/

/*
@media screen and (max-width: 1024px) {

  #list-questions .wrapper-box-questions {
    padding: 11px;
  }

  #list-questions .box-questions .image {
    top: 5% !important;
		max-width: 25%;
  }

  #list-questions .question .title {
    font: bold 2.2rem/2.5rem 'Mont', Arial, sans-serif;
  }

  #list-questions .question .title br {
    display: none;
  }

} */

@media screen and (max-width: 1024px) { /* 768px */

  #list-questions .box-questions .image {
    position: relative;
    right: unset !important;
    width: initial !important;
    max-width: 100%;
    max-height: 331px;
    top: 11px !important;
    margin-bottom: 37px;
  }

  #list-questions .question {
    width: 100%;
  }

  #list-questions .question .description {
    width: 100% !important;
  }
  #list-questions .question:first-child .title:first-child:before {
    content: none;
  }

}

/*--------------------------------------------------------------
  # Partners
--------------------------------------------------------------*/

#map-partners {
  position: relative;
  top: 0;
  margin: 0 15%;
  width: 70%;
  overflow: visible;
  z-index: 99;
}


#world-partners {
  position: relative;
  width: 100%;
  filter: blur(17px);
  animation: 1.9s ease-out 1s 1 worldAnimation;
  animation-fill-mode: forwards; /* keep style after animation */

}

@keyframes worldAnimation {
  0% {
    filter: blur(17px);
  }
  100% {
    filter: blur(0);
  }
}

#world-partners {
   -webkit-touch-callout: none; /* iOS Safari */
     -webkit-user-select: none; /* Safari */
      -khtml-user-select: none; /* Konqueror HTML */
        -moz-user-select: none; /* Firefox */
         -ms-user-select: none; /* Internet Explorer/Edge */
             user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome and Opera */
}


#map-partners .point {
  position: absolute;
  width: 8px;
  padding-bottom: 8px;
  background-color: #1d4051;
  border-radius: 50%;
  cursor: pointer;
  opacity: 0;
  animation: .8s ease-out 2s 1 pointsAnimation;
  animation-fill-mode: forwards; /* keep style after animation */

}

@keyframes pointsAnimation {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

#map-partners .point:before {
  content: '.';
  position: absolute;
  border: 1px solid transparent;
  width: 14px;
  height: 14px;
  top: -3px;
  left: -3px;
  font-size: 0;
}

#map-partners .point-info {
  display: none;
}

.partners-dialog .image {
  width: 30%;
  display: inline-block;
}

.partners-dialog .image img {
  margin-bottom: -3px;
}

.partners-dialog .content {
  display: inline-block;
  vertical-align: top;
  margin-top: 34px;
  width: 67%;
  padding: 0 71px 34px 41px;
  box-sizing: border-box;
}


.partners-dialog .point-info .title {
  font: bold 1.7rem/1.7rem 'Mont', Arial, sans-serif;
  text-transform: uppercase;
  color: #1d4051;
  margin-bottom: 15px;
}

.partners-dialog .point-info .description {
  font: normal 17px/22px 'Mont', Arial, sans-serif;
  color: #a6a6a6;
}

#growing-partners {
  position: absolute;
  top: 0;
  padding-top: 12%;
  left: 10%;
  width: 80%;
  z-index: 99;
  opacity: 1;
  animation: 1s ease-out 1.7s 1 fadeOutGrowingPartners;
  animation-fill-mode: forwards; /* keep style after animation */
}

#growing-partners h2 {
  text-align: center;
}

@keyframes fadeOutGrowingPartners {
  0% {
    opacity: 1;
    margin-top: 0;
  }
  80% {
    opacity: 0;
    margin-top: 0;
  }
  100% {
    opacity: 0;
    margin-top: -1000px;
  }
}


@media screen and (max-width: 1024px) {
  #map-partners {
    margin: 0%;
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .ui-dialog.ui-widget {
    width:90% !important;
  }

  .partners-dialog .image {
    display: none;
  }

  .partners-dialog .content {
    width: 100%;
    margin-top: 34px;
    padding: 27px 31px 21px 41px;
  }
}

/*--------------------------------------------------------------
  # MEDIA QUERYS - #############
--------------------------------------------------------------*/

@media screen and (max-width: 1280px) {
  .container,
  #footer .container  {
    width: 100%;
    padding-left: 15px;
    padding-right: 15px;
    margin: 0;
  }
}

@media screen and (max-width: 1024px) {

  #content {
    font: 400 1.2rem/1.85rem 'Mont', Arial, arial, sans-serif;
  }

  /* header */

  #header {
    /* position: initial; */
    position: fixed;
    top: 0;
    width: 100%;
  }

  #nav-bar.container {
    padding: 0;
  }

  #languages-menu {
    width: 100%;
  }

  #languages-menu #languages-wrapper a {
    padding: 3px 11px;
    width: initial;
    font-size: 17px;
   }

  #buttons-responsive {
    display: block;
  }

  #main {
    margin-top: 17px;
  }

  #header #logo {
    position: absolute;
    right: 11px;
    top: 11px;
    display:none;
  }

  #form-search-wrapper .search-form {
    margin-top: -96px;
  }

}

@media screen and (max-width: 900px) {
  #banner-title {
    font: bold 9vw/9vw 'Mont', sans-serif!important;
    color: #fff!important;
    text-align: center;
    align-self: center;
    width: 100%;
    text-shadow: 0px 2px 3px #524e4e;
  }

 #banner-title small {
    display: block;
    font: bold 5vw/5vw 'Mont', sans-serif!important;
  }

}

@media screen and (max-width: 768px) {

  html, body {
    height: 100%;
    color: #404040!important;
    font: 400 14px/14px 'Mont', Arial, arial, sans-serif;
  }

  #header #header-right-top .sep {
    margin: 0;
  }

  #content {
    padding-bottom: 412px;
  }

  .breadcrumb-element-wrapper {
    width: 100%;
  }

  #form-search .search-form {
    margin-left: 9px;
  }

  #list-products .product {
    width: 100%;
  }

  #footer section {
    margin-bottom: 17px !important;
  }
}


@media screen and (max-width: 700px) {

  /* header */

  /* #.logo-wrapper,
  #header #header-right {
    width: 100%;
  } */

  #.logo-wrapper {
    text-align: center;
  }

  #form-search-wrapper .search-form {
    margin-top: 0;
  }

}

@media screen and (max-width: 576px) {

  #content {
    padding-bottom: 463px;
  }

}