/*! locomotive-scroll v4.1.3 | MIT License | https://github.com/locomotivemtl/locomotive-scroll */
html.has-scroll-smooth {
  overflow: hidden; }

html.has-scroll-dragging {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.has-scroll-smooth body {
  overflow: hidden; }

.has-scroll-smooth [data-scroll-container] {
  min-height: 100vh; }

[data-scroll-direction="horizontal"] [data-scroll-container] {
  height: 100vh;
  display: inline-block;
  white-space: nowrap; }

[data-scroll-direction="horizontal"] [data-scroll-section] {
  display: inline-block;
  vertical-align: top;
  white-space: nowrap;
  height: 100%; }

.c-scrollbar {
  position: absolute;
  right: 0;
  top: 0;
  width: 11px;
  height: 100%;
  transform-origin: center right;
  transition: transform 0.3s, opacity 0.3s;
  opacity: 0; }
  .c-scrollbar:hover {
    transform: scaleX(1.45); }
  .c-scrollbar:hover, .has-scroll-scrolling .c-scrollbar, .has-scroll-dragging .c-scrollbar {
    opacity: 1; }
  [data-scroll-direction="horizontal"] .c-scrollbar {
    width: 100%;
    height: 10px;
    top: auto;
    bottom: 0;
    transform: scaleY(1); }
    [data-scroll-direction="horizontal"] .c-scrollbar:hover {
      transform: scaleY(1.3); }

.c-scrollbar_thumb {
  position: absolute;
  top: 0;
  right: 0;
  background-color: black;
  opacity: 0.5;
  width: 7px;
  border-radius: 10px;
  margin: 2px;
  cursor: -webkit-grab;
  cursor: grab; }
  .has-scroll-dragging .c-scrollbar_thumb {
    cursor: -webkit-grabbing;
    cursor: grabbing; }
  [data-scroll-direction="horizontal"] .c-scrollbar_thumb {
    right: auto;
    bottom: 0; }

    


/** Custom Stuff **/


/*************************/
.large-copy {
    font-size: 32px;
    line-height: 50px;
}
@media only screen and (max-width: 1800px) {
    .large-copy {
    font-size: 28px;
    line-height: 46px;
}
}@media only screen and (max-width: 768px) {
    .large-copy {
    font-size: 20px;
    line-height: 36px;
}
}@media only screen and (max-width: 480px) {
    .large-copy {
    font-size: 14px;
    line-height: 24px;
}
}



/**  **/
#sectionPin {
  height: 100vh;
  overflow: hidden;
  display: flex;
  left: 0;
  /*background-color: #8eeaaa;*/
}
.pin-wrap {
  height: 100vh;
  display: flex;
  position: relative;
  justify-content: flex-start;
  align-items: center;
  padding: 50px 10vw;
}

/*******************************************/
.hero {
    position: relative;
    min-height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.hero.dark-section {
    overflow: hidden;
}

.hero-media {
    /*position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;*/
}

.image-fill {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    object-position: center top;
}

.hero-inner {
    position: relative;
    width: 100%;
    margin: 3rem 0 1.5rem;
}

.hero-inner-button {
    font-weight: 700;
    font-family: Montserrat,sans-serif;
    text-align: center;
    text-transform: uppercase;
    filter: drop-shadow(0 4px 15px rgba(0,0,0,.1));
    border-radius: 5px;
    transition: all .2s linear;
    padding: 1rem;
    border-width: 2px;
}

.btn-bravo-green {
    background-color: #92B73C!important;
}
.btn-bravo-green-ugly {
    background-color: #A6B73C!important;
}

.btn-bravo-orange {
    background-color: #FA8334!important;
}
.btn-bravo-orange-ugly {
    background-color: #F6931D!important;
}


/*************/
.panelz {
  /* min height incase content is higher than window height */
  min-height: 100vh;
  display: flex;
  justify-content: space-around;
  align-items: center;
  /* outline: 10px solid hotpink; */
  /* turn above on to see the edge of panels */
}

.bg-orange {
    background-color: #ff644e;
    color: #fff;
}
.bg-tan {
    background-color: #f9f2e2;
    color: #393a3b;
}
.bg-red {
    background-color: #e04141;
    color: #fff;
}
.bg-green {
    background-color: #00a79c;
    color: #fff;
}
.home-section-2 {
    text-align: center;
}
.home-section-2 h6 {
    font-weight: bold;
    text-transform: uppercase;
}


/*************/
.feature-image {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100%;
    min-height: 470px;
}
.feature-image.with-parallax {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}
.parallax-image {
    position: absolute;
    left: 0;
    top: -20%;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 120%;
    -o-object-fit: cover;
    object-fit: cover;
}
.with-parallax {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
    width: 100%;
    height: 100%;
}
.dot-gif {
    position: relative;
    z-index: 1;
    width: 30%;
    max-width: 160px;
}

.button {
    background-color: transparent;
    display: inline-flex;
}
.button-text {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    height: 3rem;
    padding: .25rem 1rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    border-style: solid;
    border-width: 3px;
    border-radius: 50px;
    background-color: transparent;
    -webkit-transition: .2s;
    transition: .2s;
    font-size: 1.25rem;
    line-height: 1.75rem;
    font-weight: 700;
    text-transform: uppercase;
}
.button-text {
    /*color: #ff644e;*/
}
.button-arrow {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 3rem;
    height: 3rem;
    margin-left: .5rem;
    padding: .8rem;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    border-style: solid;
    border-width: 3px;
    border-radius: 50%;
    -webkit-transition: .2s;
    transition: .2s;
}

.button-text {
    height: 2.75rem;
    padding-top: 0;
    padding-bottom: 0;
    border-width: 2px;
    border-color: #000;
    font-size: 1rem;
}
.button-arrow {
    width: 2.75rem;
    height: 2.75rem;
    border-width: 2px;
    border-color: #000;
}

/**********************************/


/**********************************/

.bravo-marquee {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    width: 100vw;
    padding-top: 2.4rem;
    padding-bottom: 2.4rem;
    position: relative;
}
.bravo-media-wrapper {
    display: inline-block;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    position: relative;
}
.bravo-marquee-list-item {
    display: inline-block;
    padding-right: 2rem;
    padding-left: 2rem;
}


.bravo-marquee .bravo-media-wrapper {
    animation: marquee 10s linear infinite;
    -webkit-animation: marquee 10s linear infinite;
    -o-animation: marquee 10s linear infinite;
}



/***************************************************/

/* Lists */

ul[role="list"] {
    list-style: none;
}

ul[role="list"] li:before {
    content: '\2013';
    position: absolute;
    margin-left: -20px;
}

.article-body ul[role="list"] li:before {
    content: '';
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    background-color: var(--color-orange);
    margin-top: 10px;
    margin-left: -32px;
}


/* Numbered Lists */

.numbered-list {
    border-top: 2px solid #111;
}
.numbered-list-item {
    padding-top: 1.5rem;
    padding-right: 3rem;
    padding-bottom: 2rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    border-bottom: 2px solid #111;
}

.numbered-list-item {
    padding-right: 0;
}

.list-item, .numbered-list-item {

}

.item-number {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 3.25rem;
    height: 3.25rem;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 50%;
    font-family: 'Ringside Narrow', sans-serif;
    font-size: 1.5rem;
}
.item-number {
    background-color: #111;
    color: #fff;
}

.background-color-black .item-number {
    color: black;
    background: white;
}
.orange-numbers .item-number {
    background: #ff644e;
}
.background-color-black .list-item,
.background-color-black .numbered-list,
.background-color-black .numbered-list-item {
    border-color: white;
}


.otc-list-icon {
    max-width: 110px;
    display: block;
    margin: 0px auto;
}



/* Team Hover */

.team-member-row:hover .team-member-image {
  display: flex;
  opacity: 100%;
}


.team-members-wrapper {
    padding-left: 340px;
}
.team-member-row {
    position: relative;
    /*display: -ms-grid;
    display: grid;*/
    padding-top: 1rem;
    padding-bottom: 1rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    /*grid-auto-columns: 1fr;
    grid-column-gap: 16px;
    grid-row-gap: 16px;
    -ms-grid-columns: 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr;
    -ms-grid-rows: auto;
    grid-template-rows: auto;*/
    border-bottom: 2px solid #111;
    -webkit-transition: background-color .3s;
    transition: background-color .3s;
}
.team-member-row:hover {
    background-color: #f1b400;
}
.team-members-list {
    border-top: 2px solid #000;
}
.team-member-image {
    position: absolute;
    left: -340px;
    top: 0;
    width: 300px;
    height: 310px;
    background-image: url("../img/background-image.svg");
    background-position: 50% 50%;
    background-size: cover;
    opacity: 0;
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
}
.team-member-image.not-set {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 4rem 3rem;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #111;
    background-image: none;
}


.team-brand-logo {
    max-height: 100%;
    -webkit-filter: invert(100%);
    filter: invert(100%);
}


@media screen and (max-width:991) {
.team-members-wrapper {
    padding-left: 200px;
}
.team-member-image {
    left: -210px;
    width: 190px;
    height: 230px;
}
}

@media screen and (max-width:767px) {
.team-members-wrapper {
    padding-left: 0;
}
.team-member-image {
    display: none;
}
}




.overlap-top {
    position: relative;
    z-index: 2;
    margin-top: -12rem;
}


.video-fill {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}


.w-background-video {
    position: relative;
    overflow: hidden;
    height: 500px;
    color: #fff;
}
.w-background-video>video {
    background-size: cover;
    background-position: 50% 50%;
    position: absolute;
    margin: auto;
    width: 100%;
    height: 100%;
    right: -100%;
    bottom: -100%;
    top: -100%;
    left: -100%;
    object-fit: cover;
    z-index: -100;
}
.w-background-video>video::-webkit-media-controls-start-playback-button {
    display: none!important;
    -webkit-appearance: none;
}



/************/
.von-zu {
  text-align: center;
  margin: 1em 0 0;
}

.h1.von-zu {
  font-family: 'samt 7017';
  font-weight: normal;
  font-style: normal;
  font-size: 4.5rem;
}

.von-zu svg {
  display: block;
  margin: 1em auto 0;
}

.von-zu svg * {
  stroke-dashoffset: 2000px;
  stroke-dasharray: 2000px;
}

.von-zu.animating svg * {
  animation: dash2 2s linear infinite alternate;
}

@keyframes dash2 {
  0% { stroke-dashoffset: 1990px;}
  100% { stroke-dashoffset: 1900px;}
}

.emulated-gap {
  --gap: 50px;
  position: relative;
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  margin: calc(-1 * var(--gap)) 0 0 calc(-1 * var(--gap));
  width: calc(100% + var(--gap));
}

.emulated-gap > * {
  margin: var(--gap) 0 0 var(--gap);
}





/*****************/
.page-hero {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    min-height: 100vh;
    /*max-height: 100vh;*/
    /*min-height: 100vh;*/
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
}
.page-hero.background-color-black.dark-section.flex-align-center, .page-hero.background-color-black.flex-align-center {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}
.page-hero-media {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    min-height: 400px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    align-self: stretch;
}
.page-hero-content {
    /*display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 4rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    height: 100%;*/
}

.page-hero-media {
    width: 100%;
    min-height: 100vh;
}


/*.image-fill {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}*/





.page-hero-row {
  min-height: 100vh;
}

.page-hero-content {
  padding: 4rem;
}
@media (min-width: 992px) {
  .page-hero-content {
    /*max-width: 400px;
    margin-left: 3rem;
    margin-right: auto;*/
  }
}
.page-hero-content p {
  padding: 1rem 0;
}
.page-hero-content img {
  max-width: 100%;
  padding: 1rem 0;
}

.img-full {
  height: 100vh;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 767px) {
  .img-full {
    height: 500px;
  }
}
@media (max-width: 540px) {
  .img-full {
    height: 300px;
  }
}

.sticky-top {
  display: table;
  z-index: 1050;
}
@media (max-width: 767px) {
  .sticky-top {
    position: relative;
  }
}



/*****************/

/*.marquee {
    overflow: hidden;
}
.marquee.background-color-black.locations-marquee {
    width: 100vw;
    max-width: 100%}
.marquee-text {
    padding-bottom: 1rem;
    font-size: 16vw;
    line-height: 1;
    font-weight: 700;
    text-transform: uppercase;
}
.marquee-text.orange {
    color: #eb5429;
}


.marquee.marquee-about, .marquee.marquee-bfa {
    font-size: 16vw;
    text-align: center;
}

.marquee-text {
    padding-bottom: 0;
    line-height: 1.5;
}*/



/* Marquee */

/*.marquee-wrapper {
  position: relative;
  width: 100vw;
  max-width: 100%;
  overflow-x: hidden;
}
.marquee-bfi {
    --width: 104vw;
  --timing: 12s;
}
.marquee-bfa {
    --width: 140vw;
  --timing: 15s;
}
.marquee-about {
    --width: 290vw;
  --timing: 22s;
}
.marquee-clean-impact {
    --width: 228vw;
    --timing: 20s;
}

@media (max-width: 767px) {
  .marquee-bfi {
    --width: 104vw;
    --timing: 6s;
  }
  .marquee-bfa {
    --width: 140vw;
    --timing: 8s;
  }
  .marquee-about {
    --timing: 12s;
  }
  .marquee-clean-impact {
    --width: 228vw;
    --timing: 10s;
    }
}
.logos-marquee .logos-wrapper {
    animation: marquee 10s linear infinite;
}
.locations-marquee .locations-marquee-text {
  white-space: nowrap;
}
.marquee-inner {
  will-change: transform;
    width: fit-content;
  animation: marquee-two 70s linear infinite;
  animation-play-state: running;
}
.marquee .marquee-text {
  display: inline-block;
  white-space: nowrap;
  width: var(--width);
  will-change: transform;
  animation: marquee var(--timing) linear infinite;
  animation-play-state: running;
  text-shadow: var(--width) 0 currentColor, calc(var(--width) * 2) 0 currentColor, calc(var(--width) * 3) 0 currentColor, calc(var(--width) * 4) 0 currentColor;
}


@keyframes marquee {
  0% {
      transform: translateX(0);
  }
  to {
      transform: translateX(-100%);
  }
}

@keyframes marquee-two {
  0% {
      transform: translateX(0);
  }
  to {
      transform: translateX(-50%);
  }
}

*/


/*********************************/
.book {
  margin: 0 auto;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
  display: grid;
  font-family: 'Al-Jazeera-Arabic-Regular', sans-serif;
  direction: rtl;
  grid-template-areas: "logo publisher" "pre-title title" "pre-author author" "artwork artwork";
  grid-template-columns: 20.89%;
  grid-template-rows: 10.34% 11.72% 6.35%;
  height: 582.4908px;
  max-width: 360px;
  width: 100%;
}

.book__logo {
  grid-area: logo;
}

.book__publisher {
  align-items: center;
  display: flex;
  grid-area: publisher;
}

.book__pre-title {
  grid-area: pre-title;
}

.book__title {
  align-items: center;
  display: flex;
  font-size: 1.25em;
  font-weight: bold;
  grid-area: title;
}

.book__pre-author {
  grid-area: pre-author;
}

.book__author {
  align-items: center;
  display: flex;
  grid-area: author;
}

.book__artwork {
  grid-area: artwork;
  overflow: hidden;
  position: relative;
}

.hiker-logo {
  display: block;
  fill: currentcolor;
  height: 100%;
  padding: 0.7em;
  transform: scaleX(-1);
}

.book--the-case-of-the-marber {
  background-color: #f9f2e2;
  color: #393a3b;
}
.book--the-case-of-the-marber .book__artwork,
.book--the-case-of-the-marber .book__pre-author,
.book--the-case-of-the-marber .book__author {
  background-color: #5C9EA1;
  color: #f9f2e2;
}
.book--the-case-of-the-marber .book__logo,
.book--the-case-of-the-marber .book__publisher,
.book--the-case-of-the-marber .book__pre-author,
.book--the-case-of-the-marber .book__author {
  border-bottom: 1px solid;
}
.book--the-case-of-the-marber .hiker-artwork {
  fill: #393a3b;
  position: relative;
  display: block;
  top: 1em;
  width: 75%;
  margin: 0px auto;
}

.book--smashing {
  background-color: #fff;
  color: #891B1F;
}
.book--smashing .book__logo,
.book--smashing .book__publisher,
.book--smashing .book__pre-title,
.book--smashing .book__title {
  border-bottom: 1px solid;
}
.book--smashing .book__artwork {
  background-color: #98D6F7;
}
.book--smashing .smashing-cat {
  position: absolute;
  bottom: -2em;
  left: -3em;
  width: 120%;
  transform: scaleX(-1);
}

.book--conference {
  background-color: #4a4a4a;
  color: #fff;
}
.book--conference .book__logo,
.book--conference .book__publisher,
.book--conference .book__pre-title,
.book--conference .book__title {
  border-bottom: 1px solid;
}
.book--conference .book__artwork {
  background-color: #fff;
  background-image: linear-gradient(106deg, #d24d57 0%, #d24d57 25%, #59abe3 25%, #59abe3 50%, #4daf7c 50%, #4daf7c 75%, #f5d65a 75%, #f5d65a 100%);
}
.book--conference .frontendne-logo {
  fill: #fff;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}

.book--1984 {
  background-color: #f9f2e2;
  color: #393a3b;
}
.book--1984 .book__artwork,
.book--1984 .book__pre-author,
.book--1984 .book__author {
  background-color: #df7020;
  color: #f9f2e2;
}
.book--1984 .book__logo,
.book--1984 .book__publisher,
.book--1984 .book__pre-author,
.book--1984 .book__author {
  border-bottom: 1px solid;
}
.book--1984 .redact {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}




/* Orange (Default) Button */
.button {
    color: var(--color-orange);
  display: inline-flex;
}
.button .button-text,
.button .button-arrow {
    border-color: var(--color-orange);
}
.button:hover .button-text,
.button:hover .button-arrow {
    color: #fff;
  background-color: var(--color-orange);
}

/* Black Button */

.button.button-black {
    color: #000;
}
.button.button-black .button-text,
.button.button-black .button-arrow {
    border-color: #000;
}
.button.button-black:hover .button-text,
.button.button-black:hover .button-arrow {
    color: #fff;
  background-color: #000;
}

/* White Button */

.button.button-white {
    color: #fff;
}
.button.button-white .button-text,
.button.button-white .button-arrow {
    border-color: #fff;
}
.button.button-white:hover .button-text,
.button.button-white:hover .button-arrow {
    color: #000!important;
  background-color: #fff;
}

/* Move arrow */

.button .button-arrow svg {
    transition: transform 0.2s;
}
.button:hover .button-arrow svg {
    transform: translateX(3px);
}

.button.button-external .button-arrow svg {
    transform: rotateZ(-45deg);
}

.button.button-download .button-arrow svg {
    transform: rotateZ(90deg);
}


/***********************/
.ct-preloader {
  position: absolute;
  height: 100vh;
  width: 100vw;
  background: #000;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}

#bar {
  width: 100%;
  height: 2px;
  background: #fff;
}

.ct-content {
  display: grid;
  place-items: center;
  height: 100vh;
}

.ct-title {
  font-size: 50px;
  font-weight: 900;
  text-align: center;
  position: relative;
}


/************************/
#service-box {
    margin-top: 2.5rem;
}
.service-card {
    border:1px solid #fff;
    transition: background-color 0.5s ease;
    border-collapse: collapse;
}
.service-card:hover,
.service-active  {
    background-color: #5C9EA1;
    color: #fff;
}
.service-card.no-hover:hover,
.service-active.no-hover  {
    background-color: transparent;
}
.services-toggler  {
    padding: 2.5rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    /*cursor: pointer;*/
    width: 100%;
    height: 100%;
}
/*elementi box head*/
.services-title {
    font-size: 2rem;
    font-weight: 500;
    line-height: 2;
}
.service-card:hover .services-title,
.service-active .services-title {
    color: #fff;
}

.toggler {
    display: flex;
    align-items: center;
    /*margin-top: 2.5rem;*/
}
.toggler .toggler-icon {
    width: 40px;
    height: 40px;
    border: 1px solid #fff;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.toggler .toggler-icon .services-plus {
    width: 20px;
    height: 20px;
}
.service-card:hover .services-plus,
.service-active .services-plus {
    fill: #fff;
}


.service-card:hover .toggler .toggler-icon,
.service-active .toggler .toggler-icon{
    border: 1px solid #fff;
}

.toggler {
    margin: 0;
    /*margin-left: 1rem;*/
    font-size: 1.5rem;
    font-weight: 500;
    text-transform: uppercase;
}
.service-card:hover .toggler,
.service-active .toggler {
    color: #fff;
}

.accordion {
    display: flex;
}
/*elementi accordion*/
.service-card-content {
    border: 1px solid #000; border-top: 0;
}
.service {
    padding: 1rem;
    text-align: center;
}
.service-icon-container {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.service-card:hover .service-icon-container svg *,
.service-active .service-icon-container svg * {
    fill: #fff !important;
}
#service-orbit {
    position: absolute;
    max-width: 60%;
}
.service-title {
    font-size: 2rem;
    font-weight: 500;
    text-align: center;
}
.service-subtitle {
    margin-top: 1.25rem;
    font-size: 1.5rem;
    font-weight: 500;
}
.service-lead {
    margin-top: 1.25rem;
    font-size: 1rem;
    font-weight: normal;
}


/*******/
.btn-marquee {
display: block;
left: 0px;
min-width: 180px;
opacity: 1;
overflow: hidden;
position: relative;
right: 0px;
text-align: center;
transform: translate(0px, 0%);
transition: color 0.15s ease-in-out 0s, background-color 0.15s ease-in-out 0s, border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s, -webkit-box-shadow 0.15s ease-in-out 0s;
visibility: inherit;
white-space: nowrap;
}


.btn-marquee span {
display: block;
position: relative;
transform: translateX(0px);
transition: all 0.3s cubic-bezier(0, 0.5, 0.5, 1) 0s;
width: 100%;
z-index: 1;
}

.btn-marquee span::before {
-webkit-box-align: center;
-webkit-box-pack: center;
align-items: center;
content: attr(data-content);
display: flex;
height: 100%;
justify-content: center;
left: 0px;
position: absolute;
top: 0px;
transform: translateX(calc(100% + 2.1em));
transition: all 0.3s cubic-bezier(0, 0.5, 0.5, 1) 0s;
width: 100%;
z-index: 1;
}


.btn-marquee:hover span{
    -webkit-animation: marquee-btn 3.5s linear infinite;
    -o-animation: marquee-btn 3.5s linear infinite;
    animation: marquee-btn 3.5s linear infinite;
}

@keyframes marquee-btn {
    0% { transform: translateX(0px); }
    100% { transform: translateX(calc(-100% - 2.1em)); }
}

.toggler span {
    margin: 0;
    /*margin-left: 1rem;*/
    font-size: 1.5rem;
    font-weight: 500;
    text-transform: uppercase;
}



/***************/
.homepage-security-tags {
    overflow: hidden;
    /*background: linear-gradient(90deg,rgba(255,247,238,.85),#eef5ff);*/
    width: 100%;
    border-radius: 6px;
}

@media screen and (min-width: 1024px) {
.logos-marquee {
    width: 200%;
    padding: 1.125rem 0;
    }
}

.logos-marquee {
    width: 100%;
    display: flex;
    padding: 1rem 0;
    box-sizing: border-box;
    overflow: hidden;
}

@media screen and (min-width: 1024px) {
    .logos-wrapper {
        width: 200%;
        display: flex;
        flex-direction: row;
    }
}

.logos-wrapper {
    width: 400%;
    display: flex;
    flex-direction: row;
}

.logos-wrapper {
    -webkit-animation: marquee 18s linear infinite;
    animation: marquee 18s linear infinite;
}

@media (min-width: 1280px) {
    .marquee-item {
        margin: 0 2.125rem;
    }
}

.marquee-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    margin: 0 16px;
}

@media (min-width: 1280px) {
    .marquee-item__icon {
        width: 24px;
        height: 24px;
        margin-right: 10px;
    }
}

.marquee-item__icon {
    fill: #262626;
    width: 41px;
    height: 41px;
    margin-right: 14px;
}

@media (min-width: 1280px) {
    .marquee-item__title {
        font-size: 105px;
    }
}

.marquee-item__title {
    white-space: nowrap;
    overflow: hidden;
    margin: 0;
    padding: 0;
    font-weight: 700;
    font-size: 41px;
    line-height: 100%;
    letter-spacing: .1em;
    color: #262626;
    text-align: center;
    text-transform: uppercase;
}


/**********************************/

@-webkit-keyframes marquee {
    0% {
    transform: translateX(0);
}
to {
    transform: translateX(-100%);
}
}@keyframes marquee {
    0% {
    transform: translateX(0);
}
to {
    transform: translateX(-100%);
}
}


/**********************************/

.c-scrolling-title-wrapper {
  font-size: 0;
  padding: 40px;
  border-top: 1px solid white;
  border-bottom: 1px solid white;
  overflow: hidden;
}

.c-scrolling-title {
  white-space: nowrap;
  text-transform: uppercase;
  font-weight: var(--font-weight);
  opacity: 0;
  visibility: hidden;
}
.c-scrolling-title.is-visible {
  opacity: 1;
  visibility: visible;
}
.c-scrolling-title__content {
  margin: 0;
  padding: 0;
  display: inline-block;
  font-size: 22vw;
}
.u-split-char {
  transform-origin: right;
}




/*************/
.feature-image .et_pb_image_wrap {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100%;
    min-height: 470px;
}
.feature-image.with-parallax > .et_pb_image_wrap {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}
.feature-image .et_pb_image_wrap img {
    position: absolute;
    left: 0;
    top: -20%;
    right: 0;
    bottom: 0;
    width: 100% !important;
    height: 120%;
    -o-object-fit: cover;
    object-fit: cover;
}
.with-parallax .et_pb_image_wrap {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
    width: 100%;
    height: 100%;
}


.parallax_image_wrap {
  overflow: hidden;
  max-width: 1400px;
  margin: 2rem auto;
}
.parallax_image_wrap img {
  width: 100%;
  display: block;
  margin-top: -25%;
  margin-bottom: -25%;
}




/********/
.rev-container{width:100%; height:60vh; padding:0px 2em; margin:0 auto; background-color:transparent; overflow:hidden; }
.flex {display: flex;}
.flexCenter {align-content: center;justify-content: center;}
.col1, .col2, .col3 {
    margin-right: 0px;
}
.imgSel img{border-radius:6%; width:100%; padding:.4em;}




/*******/
.promo-cards .dsm_card_badge_text, #promo-cards .dsm_card_badge_text {
    background-color: transparent;
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    color: #ffffff;
}

.dsm_card_0.dsm_card .et_pb_module_inner {
    background-color: ;
}

#promo-cards .dsm_card_1.dsm_card .et_pb_module_inner {
    background-color: #ffffff;
}
#promo-cards .dsm_card_2.dsm_card .et_pb_module_inner {
    background-color: #000000;
}
#promo-cards .dsm_card_3.dsm_card .et_pb_module_inner {
    background-color: #000000;
}

.dsm_card_3.dsm_card {

}



.feature-image-alt .et_pb_image_wrap img {
    -o-object-fit:  contain;
    object-fit: contain;
}

