/* Only dubeg css :: state default ( disabled ) ; */
.debug * {
  outline: 1px solid yellow;
}
/* theme */
h2 {
  overflow:initial;
  margin-bottom: 16px;
}

/* styles */
.flex {
  display: flex;
}
.flex-1 {
  flex:1;
}
.flex-column {
  flex-direction: column;
}
.justify-between {
  justify-content:space-between;
}
.justify-center {
  justify-content:center;
}
.cover {
 object-fit: cover;
}
.no-pointer-event {
  pointer-events: none;
}
.cursor-default {
  cursor: default
}
.cursor-pointer {
  cursor: pointer
}
.dim {
  transition: opacity .2s;
}
.dim:hover {
  opacity:.8;
}
.lh-title {
  line-height: 1.5em;
}
.clip {
  position:fixed;
  position:absolute;
  clip:rect(1px 1px 1px 1px);
  clip:rect(1px, 1px, 1px, 1px);
}
img {
  max-width: 100%;
  height:auto;
}

#ELECCIONS_COUNTDOWN {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
@media (max-width: 550px) {
  #ELECCIONS_COUNTDOWN {
   transform: scale(.7);
 }
 #section-countdown {
   padding-bottom: 10px;
 }
}
@media (max-width: 370px) {
  #ELECCIONS_COUNTDOWN {
   transform: scale(.6);
 }
}


@media (max-width: 600px){
  .social-icons {
    display: none;
  }
}


#mainmenu .social-icons {
  display: none;
}

header div#logo svg {
  width:100px;
}

.tracking-in-expand {
  animation: tracking-in-expand 0.7s cubic-bezier(0.215, 0.610, 0.355, 1.000) both;
}
@keyframes tracking-in-expand {
  0% {
    letter-spacing: -0.5em;
    opacity: 0;
    filter: blur(12px);
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 1;
  }
}
.slide-in-top {
  animation: slide-in-top 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}
@keyframes slide-in-top {
  0% {
    transform: translateY(-220px) scale(.97);
    opacity: 0;

  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes slide-in-top-mobile {
  0% {
    transform: translateY(-220px) scale(.97);
    opacity: 0;

  }
  100% {
    transform: translateY(-50px);
    opacity: 1;
  }
}
.e-title-animted {
  background-color: rgba(255, 255, 255, .25);
  text-align: center;
  padding: 30px 60px;
  /*text-shadow: 0px 1px 1px #999;*/
  position:absolute;
  right:0;
  left:0;
  top:100px;
  animation: slide-in-top 2s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}
@media (max-width: 760px) {
  .e-title-animted {
    position: initial;
    background-color: rgba(255, 255, 255, .5);
    top:0;
    margin:0;
    padding: 0px;
    animation: slide-in-top-mobile 2s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
    /*transform: translateY(-50px);*/

  }

}
.e-title-animted__title  {
  color:#00C4B2;
  max-width: 100% !important;
  margin:0;
  animation: tracking-in-expand 1.7s cubic-bezier(0.215, 0.610, 0.355, 1.000) both;
}
@media (max-width: 760px) {
  .e-title-animted__title  {
    font-size: 1.8em !important;
    padding: 30px 0;
  }
}
body:not(.side-layout) header:not(.smaller):not(.header-mobile).header-light.transparent {
  background-color:rgba(255, 255, 255, .5);
}
#mainmenu a {
  text-transform: uppercase;
  font-weight: bold !important;
  padding: 30px 17px;
}
#mainmenu a:hover {
  color:#00C4B2 !important;
}
@media (max-width: 1085px) {
  #mainmenu a {
    padding: 30px 10px
  }
}
@media (max-width: 1200px) {
  header.header-light > .container {
    max-width: 100%;
  }
}
section#section-cta {
  padding:180px 0;
}
@media only screen and (max-width: 600px) {
  section#section-cta {
    padding:90px 0;
  }
}
.post-image .post-info .inner {
  padding: 6px 20px 3px;
}
.post-info .inner span {
  line-height: 1.3em;
  display: block;
}
.post-image img {

  border-radius: 5px 5px 0 0;
  -moz-border-radius: 5px 5px 0 0;
  -webkit-border-radius: 5px 5px 0 0;
}
.post-text {
  border-radius: 0 0 10px 10px;
  padding-bottom: 6px;
  line-height: 1.3em;
}

#section-contact {
  padding-top:120px;
  padding-bottom: 140px;
}

.post-author:before {
  content: "Per: ";
}

#body.body--page-index #mainmenu .item-inici a,
#body.body--page-videos #mainmenu .item-videos a,
#body.body--page-sobremi #mainmenu .item-sobremi a,
#body.body--page-agenda #mainmenu .item-agenda a,
#body.body--page-candidatures #mainmenu .item-candidatura a,
#body.body--page-blog #mainmenu .item-news a,
#body.body--page-post #mainmenu .item-news a,
#body.body--page-newspost #mainmenu .item-newspost a,
#body.body--page-incidents #mainmenu .item-incidents a,
#body.body--page-incident #mainmenu .item-incidents a
{
  color: var(--primary-color);
}

#skills.show {
  opacity: 1;
  max-height: initial;
}

@media (max-width: 600px){
  #body.body--page-post #section-blog-post {
    padding-top:0;
  }
  #body.body--page-post .item-title {
    font-size: 30px;
    line-height: 38px;
  }
  #section-top {
    /*background-position: -80% center !important;*/
  }
  #section-top h1 {
    font-size: 2em;
    line-height: 1.2em;
    max-width: 60%;
  }
  #section-top p {
    max-width: 60%;
    font-size: .95em;
  }
  #section-top.vertical-center {
    min-height: 70%;  /* Fallback for browsers do NOT support vh unit */
    min-height: 70vh; /* These two lines are counted as one :-)       */

    /*display: flex;*/
    /*align-items: top;*/
  }
  #mainmenu .social-icons {
    display: block;
  }
  #section-services .f-box.f-icon-left i {
    margin-left: 0;
    min-width: 10px;
    font-size: 26px;
  }
}




/* --------------------------------

Main Components

-------------------------------- */
.cd-horizontal-timeline {
  opacity: 0;
  margin: 2em auto;
  -webkit-transition: opacity 0.2s;
  -moz-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.cd-horizontal-timeline::before {
  /* never visible - this is used in jQuery to check the current MQ */
  content: 'mobile';
  display: none;
}
.cd-horizontal-timeline.loaded {
  /* show the timeline after events position has been set (using JavaScript) */
  opacity: 1;
}
.cd-horizontal-timeline .cd-horizontal-timeline__timeline {
  position: relative;
  height: 130px;
  /*width: 90%;*/
  /*max-width: 800px;*/
  margin: 0 auto;
}
.cd-horizontal-timeline .events-wrapper {
  position: relative;
  height: 100%;
  margin: 0 40px;
  overflow: hidden;
}
.cd-horizontal-timeline .events-wrapper::after, .cd-horizontal-timeline .events-wrapper::before {
  /* these are used to create a shadow effect at the sides of the timeline */
  content: '';
  position: absolute;
  z-index: 2;
  top: 0;
  height: 100%;
  width: 20px;
}
.cd-horizontal-timeline .events-wrapper::before {
  left: 0;
  background-image: -webkit-linear-gradient( left , #f8f8f8, rgba(248, 248, 248, 0));
  background-image: linear-gradient(to right, #f8f8f8, rgba(248, 248, 248, 0));
}
.cd-horizontal-timeline .events-wrapper::after {
  right: 0;
  background-image: -webkit-linear-gradient( right , #f8f8f8, rgba(248, 248, 248, 0));
  background-image: linear-gradient(to left, #f8f8f8, rgba(248, 248, 248, 0));
}
.cd-horizontal-timeline .events {
  /* this is the grey line/timeline */
  position: absolute;
  z-index: 1;
  left: 0;
  top: 64px;
  height: 2px;
  /* width will be set using JavaScript */
  background: #dfdfdf;
  -webkit-transition: -webkit-transform 0.4s;
  -moz-transition: -moz-transform 0.4s;
  transition: transform 0.4s;
}
.cd-horizontal-timeline .filling-line {
  /* this is used to create the green line filling the timeline */
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  background-color: var(--primary-color);
  -webkit-transform: scaleX(0);
  -moz-transform: scaleX(0);
  -ms-transform: scaleX(0);
  -o-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -ms-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
  -webkit-transition: -webkit-transform 0.3s;
  -moz-transition: -moz-transform 0.3s;
  transition: transform 0.3s;
}
.cd-horizontal-timeline .events a {
  position: absolute;
  bottom: 0;
  z-index: 2;
  text-align: center;
  font-size: .9rem;
  padding-bottom: 15px;
  color: #383838;
  /* fix bug on Safari - text flickering while timeline translates */
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);
  line-height: 1.2em;
  font-size:.75em;
}
.cd-horizontal-timeline .events a span {
  display: block;
  font-size:1rem;
  font-weight: bold;
}
.cd-horizontal-timeline .events a::after {
  /* this is used to create the event spot */
  content: '';
  position: absolute;
  left: 50%;
  right: auto;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: -5px;
  height: 12px;
  width: 12px;
  border-radius: 50%;
  border: 2px solid #dfdfdf;
  background-color: #f8f8f8;
  -webkit-transition: background-color 0.3s, border-color 0.3s;
  -moz-transition: background-color 0.3s, border-color 0.3s;
  transition: background-color 0.3s, border-color 0.3s;
}
.no-touch .cd-horizontal-timeline .events a:hover::after {
  background-color: var(--primary-color);
  border-color: var(--primary-color);
}
.cd-horizontal-timeline .events a.selected {
  pointer-events: none;
}
.cd-horizontal-timeline .events a.selected::after {
  background-color: var(--primary-color);
  border-color: var(--primary-color);
}
.cd-horizontal-timeline .events a.older-event::after {
  border-color: var(--primary-color);
}
@media only screen and (min-width: 1100px) {
  .cd-horizontal-timeline {
    margin: 0em auto;
  }
  .cd-horizontal-timeline::before {
    /* never visible - this is used in jQuery to check the current MQ */
    content: 'desktop';
  }
}

.cd-timeline-navigation a {
  /* these are the left/right arrows to navigate the timeline */
  position: absolute;
  z-index: 1;
  top: 50%;
  bottom: auto;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  height: 34px;
  width: 34px;
  border-radius: 50%;
  border: 2px solid #dfdfdf;
  /* replace text with an icon */
  overflow: hidden;
  color: transparent;
  text-indent: 100%;
  white-space: nowrap;
  -webkit-transition: border-color 0.3s;
  -moz-transition: border-color 0.3s;
  transition: border-color 0.3s;
}
.cd-timeline-navigation a::after {
  /* arrow icon */
  content: '';
  position: absolute;
  height: 32px;
  width: 50px;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  -o-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  background: url("../images/icons8-arrow-80.png") no-repeat 142% 50%;
}
.cd-timeline-navigation a.prev {
  left: 0;
  -webkit-transform: translateY(-50%) rotate(180deg);
  -moz-transform: translateY(-50%) rotate(180deg);
  -ms-transform: translateY(-50%) rotate(180deg);
  -o-transform: translateY(-50%) rotate(180deg);
  transform: translateY(-50%) rotate(180deg);
}
.cd-timeline-navigation a.next {
  right: 0;
}
.no-touch .cd-timeline-navigation a:hover {
  border-color: var(--primary-color);
}
.cd-timeline-navigation a.inactive {
  cursor: not-allowed;
}
.cd-timeline-navigation a.inactive::after {
  background-position: 50% 50%;
}
.no-touch .cd-timeline-navigation a.inactive:hover {
  border-color: #dfdfdf;
}

.cd-horizontal-timeline .events-content {
  position: relative;
  width: 100%;
  margin: 2em 0 0 0;
  overflow: hidden;
  -webkit-transition: height 0.4s;
  -moz-transition: height 0.4s;
  transition: height 0.4s;
}
.cd-horizontal-timeline .events-content li {
  position: absolute;
  z-index: 1;
  width: 100%;
  left: 0;
  top: 0;
  -webkit-transform: translateX(-100%);
  -moz-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  -o-transform: translateX(-100%);
  transform: translateX(-100%);
  padding: 0 5%;
  opacity: 0;
  -webkit-animation-duration: 0.4s;
  -moz-animation-duration: 0.4s;
  animation-duration: 0.4s;
  -webkit-animation-timing-function: ease-in-out;
  -moz-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}
.cd-horizontal-timeline .events-content li.selected {
  /* visible event content */
  position: relative;
  z-index: 2;
  opacity: 1;
  -webkit-transform: translateX(0);
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -o-transform: translateX(0);
  transform: translateX(0);
}
.cd-horizontal-timeline .events-content li.enter-right, .cd-horizontal-timeline .events-content li.leave-right {
  -webkit-animation-name: cd-enter-right;
  -moz-animation-name: cd-enter-right;
  animation-name: cd-enter-right;
}
.cd-horizontal-timeline .events-content li.enter-left, .cd-horizontal-timeline .events-content li.leave-left {
  -webkit-animation-name: cd-enter-left;
  -moz-animation-name: cd-enter-left;
  animation-name: cd-enter-left;
}
.cd-horizontal-timeline .events-content li.leave-right, .cd-horizontal-timeline .events-content li.leave-left {
  -webkit-animation-direction: reverse;
  -moz-animation-direction: reverse;
  animation-direction: reverse;
}
.cd-horizontal-timeline .events-content li > * {
  /*max-width: 800px;*/
  margin: 0 auto;
}
/*.cd-horizontal-timeline .events-content h2 {
  font-weight: bold;
  font-size: 2.6rem;
  font-family: "Playfair Display", serif;
  font-weight: 700;
  line-height: 1.2;
  }*/
  .cd-horizontal-timeline .events-content em {
    display: block;
    font-style: italic;
    margin: 10px auto;
  }
  .cd-horizontal-timeline .events-content em::before {
    content: '- ';
  }
/*.cd-horizontal-timeline .events-content p {
  font-size: 1.4rem;
  color: #959595;
  }*/
/*.cd-horizontal-timeline .events-content em, .cd-horizontal-timeline .events-content p {
  line-height: 1.6;
  }*/

  .cd-horizontal-timeline ul,
  .cd-horizontal-timeline ol
  {
    list-style: none;
    padding-left:0;
  }
  .cd-horizontal-timeline ol li a {
  }


  @media only screen and (min-width: 768px) {
    .cd-horizontal-timeline .events-content h2 {
      /*font-size: 7rem;*/
    }
    .cd-horizontal-timeline .events-content em {
      /*font-size: 2rem;*/
    }
    .cd-horizontal-timeline .events-content p {
      /*font-size: 1.8rem;*/
    }
  }
  @media only screen and (max-width: 600px) {
    .cd-horizontal-timeline .events-content h2 {
     font-size:2em;
   }
   .cd-horizontal-timeline .events-content em {
    /*font-size: 2rem;*/
  }
  .cd-horizontal-timeline .events-content p {
    /*font-size: 1.8rem;*/
  }
}

@-webkit-keyframes cd-enter-right {
  0% {
    opacity: 0;
    -webkit-transform: translateX(100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0%);
  }
}
@-moz-keyframes cd-enter-right {
  0% {
    opacity: 0;
    -moz-transform: translateX(100%);
  }
  100% {
    opacity: 1;
    -moz-transform: translateX(0%);
  }
}
@keyframes cd-enter-right {
  0% {
    opacity: 0;
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
    transform: translateX(100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0%);
    -moz-transform: translateX(0%);
    -ms-transform: translateX(0%);
    -o-transform: translateX(0%);
    transform: translateX(0%);
  }
}
@-webkit-keyframes cd-enter-left {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0%);
  }
}
@-moz-keyframes cd-enter-left {
  0% {
    opacity: 0;
    -moz-transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    -moz-transform: translateX(0%);
  }
}
@keyframes cd-enter-left {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0%);
    -moz-transform: translateX(0%);
    -ms-transform: translateX(0%);
    -o-transform: translateX(0%);
    transform: translateX(0%);
  }
}










